2. A. Kualitas Perangkat Lunak dan Source Code
1. Pengembangan Perangkat Lunak
Aplikasi yang baik, artinya semua fungsi berjalan dengan baik, output yang dikeluarkan sesuai, dan mampu
mengantisipasi kesalahan atau error sehingga aplikasi tidak berhenti secara mendadak.
Proses pengembangan perangkat lunak adalah proses membagi pekerjaan pengembangan perangkat lunak ke
dalam fase yang berbeda. Tujuannya meningkatkan desain, manajemen produk, dan manajemen proyek. Ada
enam metode yang sering digunakan untuk mengembangkan perangkat lunak yaitu :
a. Model Air Terjun Klasik ( Waterfall )
Metode ini pertama kali dikembangkan oleh Winston W. Royce. Terdapat lima tahapan proses, yaitu
communitacion,planning, construction, dan deployment.
3. Communication merupakan tahapan yang pemilik proyek menyampaikan kebutuhan dan permasalahannya
kepada pengembang. Proses perancangan ( planning ) dimulai dengan merumuskan estimasi kerja,
kebutuhan sumber daya, serta perancangan alur kerja. Pada tahap construction mencakup juga tahapan uji
coba pengoperasian perangfkat lunak untuk mengetsahui kekurangannya. Setelah berhasil dibuat,
perangkat lunak disebarluaskan untuk diimplementasikan pada perangkat pengguna secara umum. Model
ini memiliki kelebnihan dan juga kekurangan. Kelebihan metode waterfall yaitu melibatkan berbagai proses
yang sistematis dan komprehensif. Kekurangan lainnya, yaitu sistem dalam metode waterfall merupakan
proses yang baku sehingga pengembang sulit melakukan improvisasi.
b. Prototype
Prototype merupakan sebuah metode yang pengembang dan client dapat saling membantu dalam
merancang suatu sistem.
4. Terdapat beberapa tahapan dalam model prototype sebagai berikut.
1) Mengumpulkan Kebutuhasn
Pengembang dan client membahas mengenai sesuatu yang akan dibutuhkan dalam perancangan sistem
tersebut, Seperti proses I/O, fitur-fitur yang ada pada sistem, dan sebagainya.
2) Membangun Prototype
Setelah kebutuhan sistem terdata, pengembang akan membuat perancangan sistem secara sederhana
terlebih dahulu sebagai contoh dasar atau gambaran sistem yang akan digunakan oleh pengguna.
3) Evaluasi Prototype
Setelah melakukan perancangan sistem, tahapan selanjutnyayaitu mengevasluasi hasilprototype yang
telah dibuat oleh pengembang ( apakah sudah sesuai dengen permintaan client ).
4) Pengkodeaan Sistem
Jika sistem sudah berhasil melalui tahap evaluasi prototype dan tidak ada yang perlu diperbaiki lagi
pengembang akan melakukan proses pengkodean sistem. Pengembang akan mengeksekusi apapun yang
terdapat pada sistem menggunakan bahasa pemograman yang sesuai dengan kebutuhan.
5) Pengujian Sistem
Pada tahapan ini akan dilakukan suatu pengujian untuk mengetahui seberapa besar
keberhasilan sistem tersebut
6) Evaluasi Sistem
Tugas client mengevaluasi sistem untuk mengurangi risiko terjadi error pada sistem
agar sistem dapat dikatakan user friendly
7) Penggunaan Sistem
Sistem yang sudah lolosmelalui semua tahapan, artinya sistem sudah siap digunakan
secara umum oleh user
5. Berikut kelebihan dan kekurangan metode atau model prototype
Kelebihan :
1) Terjalinnya komunikasi yang baik antara pelanggan dan pengembang
g Memudahkan pengembang dalam menentukan kebutuhan pelanggan
2) Penentuan kebutuhan lebih mudah diwujudkan
3) Adanya partisipasi aktif client dalampengembangan sistemsehingga hasil perangkat lunak mudah
disesuaikan dengen kebutuhan dan keinginan pelanggan
4) Hemat waktu
Kekurangan :
1) Proses perancangan dan analisis terlalu singkat
2) Kurang fleksibel dalam menghadapi perubahan
3) Terkadang pengembang membuat kompromi implementasi menggunakan sistem operasi yang tidak
relavan 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 efisiensi biaya yaqng sesuai dengan kebutuhan. Tahap awal metode RAD
yaitu melakukan indentifiksasi tujuan yang dilanjutkan dengan komunikasi dan
perancangan, di mana seluruh pihak terlibat aktif dalam setiap perumusannya. Tahap
kedua yaitu mendesain sistem atau perangkat lunak sesuai kebutuhan yang juga
melibatkan kedua belah pihak.
6. Kelebihan :
1) Adanya prototype
2) Proses pengembangan lebih baik
3) Pengurangan penulisan kode yang kompleks karena keeberadaan rouse code
Kekurangan:
1) Kurang relavan untuk proyek skala besar
2) Diperlukan komitmen yang kuat antarapengembang dan pengguna
3) Membutuhkan sumber daya yang besar untuk proyek yang besar
D. Spiral
Metode ini pertma kali dikenalkan oleh Barry Boehm. Menurut Barry Boehm model
ini sangat berguna untuk melakukan pembangunan proyek – proyek besar dan
prosesnya dilakukan dengan memperhatikan risiko proyek sehingga pada akhirnya
akan menghasilkan proses yang tepat sesuai kebutuhan pengguna. 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 kolaborasi antara tim lintas fungsi dengan pengaturan sendiri.
Agile memiliki kelebihan yaitu, hemat biaya, menambah produktivitas tim,
meningkatkan kualitas perangkat lunak, dan menambah tingkat kepuasan konsumen,
Sedangkan kekurangannya adalah memunculkan permasalahan dari arsitektur ataupun
desain dfan sulitnya memprediksi analisis,desain, dan pengembangan.
7. 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 munkin.Proses pengembangan dimulai dengan merumuskan target sprint
prioritas dari sertiap tim,dilanjutkan dengan pengidentifikasian pekerjaan spesifik
serta proses pewngerjaan sesuai target sprint yang telah ditentukan.