REKAYASA PERANGKAT LUNAK

dokumen-dokumen yang mirip
Perbedaan Pengembangan Software Dan Pengembangan Sistem Informasi

Manajemen Proyek Sistem Informasi DAY-1. Wiratmoko Yuwono, ST

A Layered Technology

Ratna Wardani. Department of Electronic Engineering Yogyakarta State University

BAB 2 LANDASAN TEORI

Enterprise Architecture Planning

Jenis Metode Pengembangan Perangkat Lunak

PRODUK DAN PROSES. Aprilia Sulistyohati, S.Kom. Jurusan Teknik Informatika Universitas Islam Indonesia. Your Logo

PROSES DESAIN. 1. Metodologi Pengembangan Sistem

chapter 7 Integrating quality activities in the project life cycle Empat model proses pengembangan perangkat lunak akan dibahas dalam bagian ini:

Hanif Fakhrurroja, MT

BAB III KONSEP MANAJEMEN PROYEK

Metodologi pengembangan sistem METODOLOGI PENGEMBANGAN SISTEM INFORMASI DIAN PALUPI RINI, M.KOM 1

Hanif Fakhrurroja, MT

THE SOFTWARE PROCESS

Metode-Metode Pengembangan Desain Aplikasi

SOFTWARE ENGINEERING (REKAYASA PERANGKAT LUNAK)

SOFTWARE ENGINEERING (REKAYASA PERANGKAT LUNAK)

Pendekatan-Pendekatan Pengembangan Sistem Hanif Al Fatta M.kom

KONSEP MANAJEMEN PROYEK

1. MODEL WATERFALL KOMUNIKASI PERENCANAAN PEMODELAN PENYERAHAN KE PELANGGAN / PENGGUNA KONSTRUKSI. Permulaan proyek. Analisis perancangan

Bab 4 Metodologi Pengembagan Sistem(Perangkat Lunak)

Pengembangan Sistem Informasi

BAB 2 LANDASAN TEORI. setelah membandingkan kinerja atau hasil yang dirasakannya dengan. diharapkan konsumen dengan apa yang dirasakan konsumen ketika

Pengembangan Sistem Informasi

REKAYASA PERANGKAT LUNAK

MODEL PENGEMBANGAN SISTEM

REKAYASA PERANGKAT LUNAK

BAB 2 LANDASAN TEORI. Untuk mengetahui bentuk hubungan digunakan analisis regresi. Untuk keeratan

Pertemuan 3 Metodologi Pengembangan Sistem Informasi

REKAYASA PERANGKAT LUNAK MATERI TM 14

REKAYASA PERANGKAT LUNAK. 3 sks Sri Rezeki Candra Nursari reezeki2011.wordpress.com

5. Aktivitas generic dalam semua proses perangkat lunak antara lain adalah : a. Spesifikasi dan pengembangan b. Validasi dan evolusi c.

A. Spesifikasi Perangkat Lunak

PEMELIHARAAN PERANGKAT LUNAK (SOFTWARE MAINTENANCE)

APLIKASI PERHITUNGAN HONOR MENGAJAR DOSEN TIDAK TETAP YANG BERBASIS PRESENSI DENGAN MENGGUNAKAN BARCODE Oleh: Wiwik Sulistiyorini (A

PENGUKURAN TINGKAT KEMATANGAN SISTEM OTOMASI PADA PERPUSTAKAAN UNIVERSITAS KRISTEN PETRA DENGAN MENGGUNAKAN CMMI

SOFTWARE PROJECT MANAGEMENT

Tugas Softskill. Universitas Gundarma. : Sistem Informasi Manajemen. : Waldhi Supriono NPM : Kelas : 2 DB 12

Kematangan Industri Perangkat Lunak Indonesia (KIPI v1.0) Dan Capability Maturity Model (CMM)

Nama : Rendi Setiawan Nim :

REKAYASA PERANGKAT LUNAK. 3 sks Sri Rezeki Candra Nursari reezeki2011.wordpress.com

Systems Development Life Cycle (SDLC)

Perspektif Alur-kerja (workflow) - barisan kegiatan Perspektif Alur Data (Data flow) alur informasi Perspektif Peran/Aksi siapa melakukan apa.

3. The Software Process

Pengujian dan Implementasi Sistem Informasi

Software Proses. Model Proses Perangkat Lunak. Pengembangan Perangkat Lunak. Framework activities 3/20/2018. System Development Life Cycle (SDLC)

Testing dan Implementasi

Kesesuaian Capability Maturity Model Integration Development V1.2 (CMMI Dev. V1.2) Terhadap ISO 9001

Aplikasi yang pendekatannya sistematis, disiplin, bisa terukur untuk pengembangan operasional dan pembuatan software. Tools. Methods.

REKAYASA ULANG (REENGINEERING)

1. PENDAHULUAN 1. PERANGKAT LUNAK DAN PERKEMBANGANNYA

BAB III METODOLOGI. Dalam penyusunan thesis ini kerangka berpikir yang akan digunakan adalah untuk

MAKALAH REKAYASA PERANGKAT LUNAK ( SIKLUS HIDUP PERANGKAT LUNAK )

REKAYASA PERANGKAT LUNAK. 3 sks Sri Rezeki Candra Nursari reezeki2011.wordpress.com

REKAYASA PERANGKAT LUNAK MATERI TM 10

Pertemuan 4 Manajemen Proyek (2) Rekayasa Perangkat Lunak

KONSEP & TEKNIK PEMELIHARAAN PERANGKAT LUNAK. Tugas ke 12 Rekayasa Perangkat Lunak

SDLC SYSTEM DEVELOPMENT LIFE CYCLE. Materi ke-2. Pengembangan Sistem Informasi 5KA28 // 4KA14

REKAYASA PERANGKAT LUNAK. 3 sks Sri Rezeki Candra Nursari reezeki2011.wordpress.com

SIKLUS REKAYASA PERANGKAT LUNAK (SDLC)

BAB 1 PENDAHULUAN Latar Belakang

Chapter 11 Assuring the quality of software maintenance components

Metrik Proses dan Proyek Perangkat Lunak KARMILASARI

BAB I PENDAHULUAN Rumusan Masalah

Komponen-komponen dari Sistem Penjaminan Kualitas Software

BAB II DASAR TEORI. 2.2 Sistem Suku Bunga Secara umum terdapat dua metode dalam perhitungan bunga, yaitu metode Flat dan Efektif.

MANAJEMEN KEBUTUHAN PERANGKAT LUNAK

REKAYASA PERANGKAT LUNAK

136 Pemeliharaan Perangkat Lunak

BAB1. PENDAHULUAN Siklus hidup sistem (SLC) SDLC Systems Development Life Cycle Siklus Hidup Pengembangan Sistem Systems Life Cycle

Pertemuan 12 dan 13 SQA TIK : Menjelaskan konsep dan strategi Software Quality Assurance

PENGGUNAAN KEMBALI (REUSE) PERANGKAT LUNAK

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

Menjadikan KIPI (CMM Versi Indonesia) Diminati Oleh Perusahaan Piranti Lunak Di Indonesia

SOFTWARE TESTING. Ratna Wardani

A. Konsep dan Teknik Pemeliharaan Perangkat Lunak

BAB 2 LANDASAN TEORI

BAB II LANDASAN TEORI. ditulis dan diterjemahkan oleh language software (bahasa Pemrograman) untuk

Bab II Tinjauan Pustaka

BAB 4 Pendekatan-Pendekatan Pengembangan Sistem

REKAYASA BERKOMPONEN

TUGAS KLIPING SISTEM INFORMASI MANAJEMEN V-MODEL

Checklist Audit Mutu ISO 9001:2008

STMIK AMIKOM YOGYAKARTA

BAB 4 PELAKSANAAN PENGUJIAN

Rekayasa Perangkat Lunak

SOFTWARE PROCESS MODEL I Disiapkan oleh: Umi Proboyekti, S.Kom, MLIS

BAB II PENGEMBANGAN SISTEM INFORMASI

What is Behind the Names???

Dibuat Oleh : 1. Andrey ( )

BAB VIII Control Objective for Information and related Technology (COBIT)

Implementasi Sistem dan Maintenace Sistem. Sistem Informasi Universitas Gunadarma 2012/2013

PENDAHULUAN REKAYASA PERANGKAT LUNAK. By PresenterMedia.com

BAB III LANDASAN TEORI. Dalam mendefinisikan istilah bimbingan, para ahli bidang bimbingan dan

Tugas Rekayasa Perangkat Lunak

Tugas Rekayasa Perangkat Lunak

Teknik Informatika S1

Rekayasa Perangkat Lunak DEPARTEMEN PENDIDIKAN NASIONAL UNIVERSITAS PENDIDIKAN INDONESIA 2008

JUDUL UNIT : Melakukan Komunikasi Di Tempat Kerja

Transkripsi:

MODUL 2 REKAYASA PERANGKAT LUNAK Tujuan : lunak Mahasiswa mengenal dan memahami konsep dasar kerekayasaan perangkat Materi : Pandangan umum tentang rekayasa perangkat lunak Proses, metode dan alat bantu Proses perangkat lunak dan model-model proses perangkat lunak

PANDANGAN UMUM TENTANG REKAYASA PERANGKAT LUNAK Pembahasan dan diskusi mengenai rekayasa perangkat lunak merupakan upaya untuk memperoleh perangkat lunak secara ekonomis yang reliabel dan bekerja secara efisien pada perangat keras komputer. Dari segi pelanggan, rekayasa perangkat lunak dimaksudkan untuk memberikan kepuasan kepada pelanggan dan penyampaian produk tepat waktu. Terdapat beberapa definisi rekayasa perangkat lunak, antara lain sebagai berikut : 1. Aplikasi dari suatu pendekatan kuantifiabel, displin dan sistematis dalam pengembangan, operasi dan pemeliharaan sistem perangkat lunak 2. Studi tentang pedekatan-pendekatan dalam pengembangan, operasi dan pemeliharaan sistem perangkat lunak. Rekayasa mencakup : analisis, desian, konstruksi, verifikasi, manajemen Secara umum dalam rekayasa kita akan dihadapkan persoalan-persoalan berikut : Persoalan yang akan dipecahkan Karakteristik entitas persoalan untuk mencari solusi Pendekatan dalam menemukan kesalahan-kesalahan yang dibuat didalam desain dan konstruksi Menyangga hasil rekayasa selama proses adaptasi, selama proses koreksi, serta ketika diperlukan perbaikan Tedapat 3 fase umum dalam rekayasa perangkat lunak : Fase definisi Fase pengembangan Fase pemeliharaan Fase Definisi Berfokus pada apa (what); dimana pada definisi ini pengembang perangkat lunak harus mengidentifikasi informasi apa yang akan diproses, fungsi dan unjuk kerja apa yang

dibutuhkan,tingkah laku sistem seperti apa yang diharapkan,interface apa yang akan dibangun, batasan desain apa yang ada, dan kriteria validasi apa yang dibutuhkan untuk mendefinisikan sistem yang sukses. Kebutuhan (requirement) kunci dari sistem dan perangkat lunak yang didefinisikan. Metode yang diaplikasikan selama fase definisi berbeda, tergantung pada paradigma rekayasa perangkat lunak (atau kombinasi paradigma) yang diaplikasikan. Ada tiga tugas utama yang berada dalam bentuk yang sama; sistem atau rekayasa informasi, perencanaan proyek perangkat lunak, serta analisis keburuhan. Fase Pengembangan Berfokus pada how (bagaimana), yaitu dimana selama masa pengembangan perangkat lunak, teknisi harus mendefinisikan bagaimana data dikunstruksikan, bagaimana fungsi-fungsi diimplementasikan sebagai sebuah arsitektur perangkat lunak, bagaimana detail prosedur akan diimplementasikan, bagaimana interface ditandai (dikarakterisasi), bagaimana rancangan akan diterjemahkan ke dalam bahasa pemrograman (atau bahasa non prosedural), serta bagaimana pengujian akan dilakukan. Metode-metode yang diaplikasikan selama masa pengembangan program akan bervariasi, tetapi ada tiga tugas teknis yang khusus yang harus selalu ada; rancangan perangkat lunak, pemunculan kode,dan pengujian perangkat lunak. Fase Pemeliharaan. Berfokus pada perubahan (change), yang dihubungkan dengan koreksi kesalahan, penyesuaian yang dibutuhkan ketika lingkungan perangkat lunak berkembang, serta perubahan sehubungan dengan perkembangan yang disebabkan oleh perubahan kebutuhan pelanggan. Fase pemeliharaan mengaplikasikan lagi langkah-langkah pada fase definisi dan fase pengembangan, tetapi semuanya tetap tergantung pada konteks perangkat lunak yang ada. Ada empat tipe perubahan yang terjadi selama masa fase pengembangan, yaitu : Koreksi Adaptasi Perkembangan Pencegahan Koreksi Meskipun dengan jaminan kualitas yang terbaik, sepertinya pelanggan akan tetap menemukan cacat pada perangkat lunak. Pemeliharaan korektif (Corrective maintenance) mengubah perangkat lunak, membetulkan cacat atau kerusakan. Adaptasi

Dari waktu ke waktu, lingkungan original ( contohnya CPU, sistem operasi, aturan-aturan bisnis, karakteristik produk eksternal) dimana perangkat lunak dikembangkan akan terus berubah. Pemeliharaan adaptif (Adaptif maintenance) menghasilkan modifikasi kepada perangkat lunak untuk mengakomodasi perubahan pada kebutuhan fungsional original. Perkembangan (Enhancement) Ketika perangkat lunak dipakai, pemakai/pelanggan akan mengenali fungsi-fungsi tambahan yang memberi mereka keuntungan. Perfective maintenance memperluas perangkat lunak sehingga melampaui kebutuhan fungsi originalnya. Pencegahan Keadaan perangkat lunak semakin memburuk sehubungan dengan waktu, dan karena itu, preventive maintenance yang sering juga disebut Rekayasa perangkat lunak, harus dilakukan untuk memungkinkan perangkat lunak melayani kebutuhan para pemakainya. Pada dasarnya preventive maintenance melakukan perubahan pada program komputer sehingga bisa menjadi lebih mudah untuk dikoreksi,disesuaikan, dan dikembangkan. Sekarang, aging software plant memaksa banyak perusahaan untuk mengikuti strategi rekayasa perangkat lunak. Secara global, rekayasa perangkat lunak sering dianggap sebagai bagian dari perekayasaan ulang proses bisnis. Fase dan langkah langkah yang berhubungan, seperti yang digambarkan pada padangan umum kita tentang rekayasa perangkat lunak, harus diimbangi dengan sejumlah aktifitas pelindung, yang meliputi : 1. kontrol dan pelacakan proyek perangkat lunak, 2. Review teknis formal, 3. Jaminan kualitas perangkat lunak, 4. Manajemen konfigurasi perangkat lunak, 5. Penghasilan dan penyiapan dokumen, 6. Manajemen reusabilitas, 7. Pengukuran, 8. Manajemen resiko.

PROSES, METODE DAN ALAT BANTU Rekayasa perangkat lunak merupakan sebuah pempaparan rangkaian teknologi. Untuk mencapai suatu kualitas, banyak pendekatan keteknikan dan komitmen dasar yang mesti diterapkan. Misalnya Total Quality Management, atau pengembangan proses yang terus menerus. tools metode proses fokus kualitas Fokus kepada kualitas merupakan penyangga dalam rekayasa perangkat lunak. Diatas penyangga tersebut, terdapat rangkaian proses yang menjadi dasar dalam rekayasa perangkat lunak. Prosesproses rekayasa perangkat lunak akan menjadi perekat yang menjaga rangkaian teknologi secara bersama-sama mendukung pengembangan perangkat lunak yang tepat waktu dan rasional. Prosesproses tersebut membatasi kerangka kerja untuk serangkaian area proses kunci yang harus dibangun demi efektifitas pengembangan perangkat lunak. Area proses kunci ini akan : membentuk dasar bagi kontrol manajemen proyek perangkat lunak membangun konteks dimana - metoda teknis diaplikasikan - produk dihasilkan - fondasi dibangun - kualitas dijamin - dan perubahan diatur secara rapi. Metode-metode rekayasa memberikan teknik untuk membangun perangkat lunak. Metode-metode tersebut meliputi serangkaian tugas yang luas yang menyangkut : analisis kebutuhan konstruksi program desain pengujian pemeliharaan

Tool-tool rekayasa perangkat lunak memberikan topangan yang otomatis ataupun semi otomatis pada proses-proses dan metode-metode yang ada. CASE (computer aided software engineering) merupakan tool-tool yang terintegrasi dimana keluaran suatu blok tool menjadi masukan bagi blok lain.

PROSES DAN MODEL PORSES PERANGKAT LUNAK Proses perangkat lunak dapat dicirikan sebagai rangkaian dari : Kerangka kerja proses umum, aktivitas kerangka kerja, dan rangkaian tugas. Sebuah kerangka kerja proses umum dibangun dengan mendefinisikan sejumlah kecil aktivitas kerangka kerja yang bisa diaplikasikan ke semua proyek perangkat lunak, tanpa melihat ukuran atau kompleksitasnya. Sejumlah task set tiap koleksi rekayasa perangkat lunak mengerjakan tugastugas, tonggak proyek, hasil usaha perangkat lunak dan bisa dipesan, serta titik jaminan kualitas memungkinkan aktivitas kerangka kerja disesuaikan dengan karakteristik proyek perangkat lunak dan kebutuhan tim proyek. Akhirnya, aktivitas pelindung seperti jaminan kualitas perangkat lunak, manajemen konfigurasi perangkat lunak - lampiran model proses. Aktivitas pelindung tidak tergantung pada satupun aktivitas kerangka kerja dan terjadi pada seluruh proses. Penekanan yang penting saat ini pada kematangan proses. Model komprehensif yang didasarkan atas sekumpulan kapabilitas rekayasa perangkat lunak yang harus ada sebagai organisasi yang mencapai tingkat kematangan proses yang berbeda. Untuk menentukan keadaan suatu organisasi dalam hal kematangan prosesnya, SEI (Software Eng. Institute) menggunakan perkiraan kuesioner serta skema gradasi lima poin. Skema gradasi tersebut menentukan pemenuhan dengan sebuah model kematangan kapabilitas (capability maturity) yang mendefinisikan aktivitas kunci yang dibutuhkan pada tingkat kematangan proses yang berbeda. Pendekatan SEI memberikan sebuah pengukuran terhadap efektivitas global dari sebuah praktek perekayasaan perangkat lunak perusahaan dan membangun lima tingkat kematangan proses, yang didefinisikan dengan cara berikut ini : Level 1: Initial Proses perangkat lunak yang ditandai sebagai ad hoc, dan bahkan kadang-kadang bersifat kacau (chaotic). Level 2 : Repeatable Proses-proses manajemen proyek dasar dibangun untuk mene lusuri masalah biaya, jadual, dan fungsionalitas. Disiplin proses yang perlu ada untuk mengulangi sukses-sukses proyek yang terdahulu dengan penerapan yang sama. Level 3 : Defined Proses perangkat lunak, baik untuk aktivitas manajemen atau perekayasaan didokumentasikan, distandarkan, dan diintegrasikan ke dalam proses perangkat lunak organisasi besar. Semua proyek menggunakan versi proses organisasi yang didokumentasikan dan disahkan untuk pengembangan dan pemeliharaan perangkat lunak. Tingkat ini menyangkut semua ciri yang didefinisikan pada tingkat 3.

Level 4 : Managed Pengukuran detail terhadap proses perangkat lunak dan kualitas produksi dikumpulkan. Produk dan proses perangkat lunak dipahami secara kuantitatif dan dikontrol dengan menggunakan pengukuran secara detail. Tingkat ini termasuk semua karakteristik yang didefinisikan pada tingkat 3. Level 5 : Optimizing Pertambahan proses yang terus-menerus dimungkinkan oleh oleh umpan balik kuantitatif dari proses dan dari gagasan inovatif pengujian serta teknologi. Tingkat ini termasuk semua ciri yang didefinisikan pada tingkat 4. SEI telah menggabungkan area proses kunci dengan masing-masing tingkat kematangan. KPA (key process area) menggambarkan fungsi-fungsi rekayasa perangkat lunak (contohnya perencanaan proyek perangkat lunak, manajemen kebutuhan) yang harus ada untuk memenuhi praktek yang baik pada suatu tingkat tertentu. Setiap KPA digambarkan dengan mengidentifikasikan ciri-ciri sebagai berikut: 1. Tujuan objektif keseluruhan yang harus dicapai oleh KPA. 2. Komitmen kebutuhan ( dibebankan pada organisasi) yang harus dipenuhi untuk mencapai tujuan, dan yang membuktikan dari maksud mencapai tujuan. 3. Kemampuan hal-hal tersebut harus ada (secara organisatoris dan teknis) yang akan memungkinkan organisasi untuk memenuhi komitmennya. 4. Aktivitas tugas-tugas khusus yang dibutuhkan untuk mencapai fungsi-fungsi dari KPA. 5. Metode untuk memonitor implementasi sikap dimana kegiatan dimonitor pada saat dipakai. 6. Metode-metode untuk memverifikasi informasi sikap dimana praktek yang sesuai untuk KPA diverifikasi. Delapan belas KPA (masing-masing menggambarkan pemakaian struktur yang ditulis dia atas) dibatasi oleh model kematangan dan dipetakan ke dalam tingkatan-tingkatan kematangan proses yang berbeda. KPA berikut ini harus dicapai pada tiap-tiap tingkatan kematangan proses Kematangan proses tingkat 2 Manajemen konfigurasi perangkat lunak Kepastian kualitas perangkat lunak Manajemen subkontrak perangkat lunak Penelusuran dan kekeliruan perangkat lunak Perencanaan proyek perangkat lunak Manajemen kebutuhan Kematangan proses tingkat 3 Kajian antarteman Koordinasi antarkelompok

Rekayasa produk perangkat lunak Manajemen perangkat lunak yang terintregasi Program training Definisi proses organisasi Fokus proses organisasi Kematangan proses tingkat 4 Manajemen proses kualitas perangkat lunak Manajemen proses kuantitatif Kematangan proses tingkat 5 Manajemen perubahan proses Manajemen perubahan teknologi Pencegahan cacat/kesalahan Tiap KPA didefinisikan oleh suatu rangkaian praktek kunci yang memberikan kontribusi untuk memenuhi tujuan-tujuannya. Praktek-praktek kunci tersebut adalah aturan (policy), prosedur, dan aktivitas yang harus ada sebelum proses kunci dibangun secara penuh. Model-model proses Perangkat Lunak Untuk menyelesaikan masalah aktual dalam suatu setting industri, rekayasa perangkat lunak dan tim rekayasa mesti menggabungkan stratergi pengembangan dan fase-fase generik. Strategi sering direfer sebagai model proses atau paradigma rekayasa. Model proses yang akan dipilih dalam suatu proyek perangkat lunak dipilih berdasarkan sifat aplikasi dan sifat proyek itu sendiri. Berikut model-model proses perangkat lunak yang populer : 1. Model Sekuensial Linear 2. Model Prototype 3. Model RAD 4. Model-model Evolusioner (Siklus hidup) Model inkremental Model Assembly 5. Teknik Generasi ke-empat