Dokumen tersebut membahas enam metode pengembangan perangkat lunak, yaitu model air terjun klasik, prototype, rapid application development, spiral, agile, dan scrum. Metode-metode tersebut memiliki kelebihan dan kekurangan masing-masing dalam proses pengembangan perangkat lunak.
2. Proses pengembangan perangkat lunak menurut Dwi Maryono dalam Cakap Mengaplikasikan
Informatika Kelas XII SMA dan MA, adalah proses membagi pekerjaan pengembangan perangkat
dalam fase yang berbeda. Tujuan meningkatkan desain, manajemen produk, dan manajemen
Sedikitnya enam metode yang sering digunakan untuk mengembangkan perangkat lunak.
1. Pengembangan Perangkat Lunak
a. Model Air Terjun Klasik (Waterfall)
Metode ini pertama kali dikembangkan oleh Winston W. Royce. Model ini sangat
sederhana, tetapi cukup baik dan ideal untuk pengembangan perangkat lunak.
Terdapat lima tahapan proses, yaitu communication, planning, modelling,
construction, dan deployment.
3. Communication merupakan tahapan yang pemilik proyek menyampaikan kebutuhna dan
permasalahannya kepada pengembang. Selanjutnya, bersama-sama mereka mengumpulkan data-
data yang diperlukan dan merumuskan ke dalam fitur-fitur perangkat lunak.
4. Proses perencanaan (planning) dimulai dengan merumuskan estimasi kerja, kebutuhan sumber
daya, serta perencanaan alur kerja. Dilanjutkan dengan tahap perencanaan struktur data,
arsitektur, tampilan, dan algoritma perangkat lunak.
b. Prototype
Prototype merupakan sebuah metode yang pengembang dan client dapat saling
membantu dalam merancang satu sistem.
5. Terdapat beberapa tahapan dalam model prototype sebagai berikut.
1. Mengumpulkan kebutuhan
2. Membangun Prototype
3. Evaluasi Prototype
4. Pengkodean Sistem
5. Pengujian Sistem
6. Evaluasi Sistem
7. Penggunaan Sistem
Berikut kelebihan dan kekurangan metode atau model prototype.
Kelebihan:
1). Terjalinnya komunikasi yang baik antara pelanggan dan pengembang.
2). Memudahkan pengembang dalam menentukan kebutuhan pelanggan.
3). Penentuan kebutuhan lebih mudah diwujudkan.
4). Adanya partisipasi aktif client dalam pengembangan sistem sehingga hasil perangkat
lunak mudah disesuaikan dengan kebutuhan dan keinginan pelanggan.
5). Hemat waktu.
6. Kekurangan:
1). Proses perencanaan dan analisis terlalu singkat.
2). Kurang fleksibel dalam menghadapi perubahan.
3). Terkadang pengembang membuat kompromi implementasi menggunakan sistem
operasi yang tidak relevan dan algoritma yang tidak efisien.
C. Model rapid Application Development (RAD)
Rapid Application Development (RAD) merupakan metode yang menggunakan pendekatan
iterative dan incremental, tetapi lebih menitikberatkan pada tenggat waktu dan efisien biaya yang
sesuai dengan kebutuhan .
Kelebihan:
1). Adanya prototype.
2). Proses pengembangan lebih cepat.
3). Pengurangan penulisan kode yang kompleks karena keberadaan reuse code
Kekurangan:
1). Kurang relevan untuk proyek skala besar.
2) Diperlukan komitmen yang kuat antara pengembang dan pengguna.
3). Mebutuhkan sumber daya yang besar untuk proyek yang besar.
7. d. Spiral
model spiral merupakan gabungan dari model prototype dan model waterfall.
e. Agile
Agile merupakan metode pengembangan perangkat lunak jangka pendek yang
didasarkan pada pengembangan berulang, dimana persyaratan dan solusinya
berkembang melalui kalaborasi antara tim lintas fungsi dengan pengaturan sendiri.
f. Scrum
scrum merupakan metode yang menggunakan teknik pendekatan agile. Metode ini
menggunakan kerangka kerja dimana orang dapat mengatasi masalah adaptif yang
kompleks, tetapi juga secara produktif dan kreatif memberikan produk dengan nilai
setinggi mungkin.