Rekayasa Perangkat Lunak (RPL) adalah disiplin ilmu yang berkaitan dengan perangkat lunak (software). Dikerjakan dengan sistematis berdasarkan alat dan teknik yang sesuai terkait dengan masalah yang dihadapi, batasan batasan dan sumber daya yang tersedia.
RPL memiliki beberapa model dalam mengembangkan sistem yang diperlukan dalam proses rekayasa perangkat lunak, disebut SDLC (System Development Life Cycle / Software Development Life Cycle).
Berikut contoh model SDLC beserta penjelasan singkatnya:
Waterfall Model
Model ini bernama Waterfall karena tiap tahap dilalui dalam aliran yang urut dari awal proses hingga akhirnya, bila ditampilkan dalam diagram, tampak seperti air terjun.
Urutan tahapan waterfall menurut Pressman sebagai berikut:
1. Analysis
2. Design
3. Coding
4. Testing
Sedangkan menurut Sommerville, tahapan disusun sebagai berikut:
1. Requirement definition : Mengumpulkan serta menganalisa kebutuhan yang harus dipenuhi
2. System and software design : Desain sistem berdasarkan kebutuhan yang harus dipenuhi
3. Implementation and Unit testing : Implementasi dalam bentuk kode program
4. Integration and system testing : Menyusun keseluruhan bagian program dan melakukan pengujian
5. Operation and maintenance : Pengoperasian program beserta pemeliharaannya
Kekurangan:
Sulit diadakan perubahan, karena harus melalui fase yang urut seperti pada awal pembuatannya
Incremental Model
Model yang berisi penggabungan mode Waterfall dengan sifat perulangan.
Model ini melakukan sistem Waterfall pada suatu kebutuhan tertentu (spesifik) dan kemudian mengulang proses tersebut dengan penambahan kebutuhan-kebutuhan satu demi satu hingga akhirnya produk menjadi sempurna (memenuhi semua kebutuhan yang dihadapkan).
Kekurangan:
1. Lebih cocok untuk proyek kecil.
2. Terkadang ada kebutuhan-kebutuhan yang saling berkaitan sehingga sulit memetakan kebutuhan mana
yang harus dipenuhi dalam suatu fase increment.
Kelebihan:
1. Cepat terbentuk suatu produk yang dapat langsung digunakan, sekalipun belum memenuhi seluruh
kebutuhan yang diharapkan dari hasil akhirnya.
2. Akomodasi perubahan lebih mudah dilakukan daripada model Waterfall yang biasa.
Spiral Model
Model ini menggabungkan sistem prototype dengan waterfall, dimana sebuah produk dihasilkan lalu dikembangkan prototype produk yang baru berdasarkan analisa permasalahan yang muncul pada penggunaan program yang pertama, kemudian membentuk sebuah program yang lebih baik beserta mengatur perawatannya. Berbagai fase tersebut dikerjakan dengan tahapan-tahapan yang sama dan urut (seperti pada mode Waterfall), kelebihannya dibandingkan dengan model Waterfall dan model Increment adalah produk dapat diupdate dalam waktu lebih cepat dan penganalisaan resiko yang lebih baik.
Tahapan-tahapan yang dilalui dapat disusum sebagai berikut:
1. Komunikasi pelanggan (Customer communication) : membangun komunikasi yang baik dengan
pengguna/customer.
2. Perencanaan (Planning) : mendefinisikan sesumber, batas waktu, informasi-informasi lain seputar proyek
3. Analisis resiko (Risk analysis) : mengidentifikasi resiko managemen dan teknis
4. Rekayasa (Engineering) : pembangunan contoh-contoh aplikasi, misalnya prototype
5. Konstruksi dan peluncuran (Construction and release) : pembangunan, test, install dan support.
6. Evaluasi pelanggan (Customer evaluation) : mendapatkan feedback dari pengguna berdasarkan evaluasi
perangkat Lunak pada fase engineering dan fase instalasi.
Tahapan-tahapan diatas diulang setiap spiral, yaitu fase fase berikut:
1. Pengembangan konseppengguna/customer.
2. Perencanaan (Planning) : mendefinisikan sesumber, batas waktu, informasi-informasi lain seputar proyek
3. Analisis resiko (Risk analysis) : mengidentifikasi resiko managemen dan teknis
4. Rekayasa (Engineering) : pembangunan contoh-contoh aplikasi, misalnya prototype
5. Konstruksi dan peluncuran (Construction and release) : pembangunan, test, install dan support.
6. Evaluasi pelanggan (Customer evaluation) : mendapatkan feedback dari pengguna berdasarkan evaluasi
perangkat Lunak pada fase engineering dan fase instalasi.
Tahapan-tahapan diatas diulang setiap spiral, yaitu fase fase berikut:
2. Pengembangan produk baru
3. Perbaikan
4. Pemeliharaan
Kelemahan:
Biaya yang dibutuhkan cukup besar
Kelebihan:
1. Realistik untuk proyek skala besar
2. pengguna beserta pembuat memahami dengan baik produk tersebut
3. Proses dapat diamati dengan baik
Tidak ada komentar:
Posting Komentar