Pada kesempatan kali ini saya
akan mengulas tentang Rekayasa Perangkat
Lunak terkhusus pada model pengembangan perangkat lunak. Seperti kita ketahui
model pengembangan perangkat lunak terdapat banyak jenis seperti Waterfall model, RAD, Prototype, Incremental,
dan Spiral. Namun kali ini saya akan membahas tentang salah satu dari model
pengembangan rekayasa perangkat lunak tersebut yaitu model Incremental.
Pada model ini pengembangan
perangkat lunak yang akan dikerjakan dilakukan secara bertahap-tahap dan
penambahan fitur maupun fungsi pada perangkat lunak dilakukan sedikit demi
sedikit (increment) secara berulang seiring waktu (calender time) hingga
software tersebut menjadi sempurna.
Untuk lebih jelasnya agan bisa
melihat pada ilustrasi di bawah ini.
Pada gambar diatas kita dapat
melihat proses pengembangan dimulai dari Analysis yaitu mengkaji dan mencari
tahu apa keinginan konsumen terhadap perangkat lunak / program yang dia
inginkan atau program seperti apa yang mereka inginkan.
Dari proses analysis kita dapat
menyimpulkan requirement program dan berlanjut pada proses kedua yaitu Design.
Pada tahap design kita dapat menyusun interface atau tampilan awal dari
program. Dalam hal ini selain aspek estetika kita juga harus mengedepankan
faktor user friendly agar pengguna mudah mempelajari dan mengoperasikan program dengan mudah dan tepat
guna.
Selesai berimajinasi tentang
masalah interface, sekarang kita sampai ke tahap selanjutnya yang banyak
ditakuti yaitu proses Coding. Pada tahap ini kita tidak perlu membuat koding
secara sempurna, kita cukup membuat coding sederhana yang mencakup semua
kebutuhan dasar program yang diinginkan konsumen. Asalkan program bisa
dijalankan dan telah mencakup kebutuhan dasar program yang telah dianalisis
sebelumnya, maka itu sudah lebih dari cukup pada tahap increment pertama ini.
Selesai berpusing ria mengkoding,
kini kita tiba ditahap akhir inkremen yaitu tahap Testing. Pada tahap ini
program inti (Core Product) telah selesai dibuat dan selanjutnya akan diberikan
pada konsumen untuk diuji apakah sudah sesuai dengan keinginan dan kebutuhan
dasar konsumen.
Jadi setelah program inti telah
berhasil dibuat maka pada saat itu program sudah dapat digunakan secara
fungsional. Nah pada saat ini kita akan melanjutkan ke tahap inkremen kedua
yang mana akan diberi fitur tambahan sebagai pelengkap program inti dan proses
ini dilakukan berulang-ulang dan dilengkapi secara bertahap. Sehingga program
awal yang berupa Core Product dapat berkembang dan makin sempurna seiring waktu
(Calender Time).
Jadi jika kita mengambil contoh
program yang diinginkan oleh konsumen adalah program pengolah kata (word
processing) seperti Ms. Word. Maka di proses inkremen pertama difokuskan pada
pembuatan program dasar yang sudah bisa digunakan untuk fungsi paling krusial
dan mendasar dari sebuah program word processing yaitu sudah bisa digunakan
untuk mengetik kata dan format paragraf. Lalu pada inkremen selanjutnya mungkin
bisa saja ditambahkan fungsi penambahan grafik dan tabel dan pada inkremen
selanjutnya ditambahkan fungsi pengaturan format tanggal dan waktu. Dan proses
inkremen ini berlanjut sampai program tersebut sudah sempurna fiturnya.
Setelah tangan saya kram
menerangkan panjang lebar mengenai bagaimana proses kerja dari model
pengembangan Increment, maka sekarang kita membahas kelebihan dan
kekurangan dari model Incremental.
Kelebihan model Incremental:
-
Tidak memerlukan terlalu banyak anggota dalam
pengerjaan programnya karena dikerjakan sedikit demi sedikit. Dan jika program
sudah mulai berkembang penambahan anggota tim dalam pengerjaan dapat
ditambahkan sesuai kebutuhan sehingga lebih fleksibel, hemat, dan optimal.
-
Software sudah dapat segera dapat digunakan
sejak penyelesaian proses increment pertama karena program awal sudah memenuhi
persyaratan paling inti atau kritis dari kebutuhan pengguna.
-
Tingkat kegagalan keseluruhan pada program yang
menggunakan model incremental sangat kecil karena dilakukan secara bertahap dan
sedikit demi sedikit secara mendetail meskipun pada beberapa inkremen dapat
ditemukan kesalahan namun tidak efeknya tidak besar terhadap program secara
keseluruhan.
Kekurangan model Incremental:
-
Hanya cocok untuk pembuatan program yang
berskala kecil saja personel yang bekerja tidak terlalu banyak dan dilakukan
secara sedikit demi sedikit dan bertahap
-
Pengembangan bisa berlangsung lama dan panjang
atau mungkin saja tidak terbatas karena proses penambahan bisa kembali dilakukan
jika di lain waktu setelah dianalisis dan ditemukan fitur tambahan yang baru
untuk menunjang kebutuhan konsumen yang semakin bertambah seiring waktu
Sekian penjelasan dari saya sendiri, semoga bisa membantu
teman-teman sekalian untuk lebih mengenal bagaimana proses pengembangan
perangkat lunak dan dapat diterapkan sesuai kebutuhan. Jika ada yang ingin
mengkoreksi dan ingin menambahkan maka dimohon bantuannya
Thank You dan jangan lupa cendolnya donk gan
Jazakumullah Khaeran Katsira,
BalasHapusArtikelnya sangat membantu saya, untuk melengkapi tugas Presentasi di Mata kuliah RPL. Semoga artikel yang di Search Dapat bernilai ibadah . Amin