Metodologi Pengembangan Perangkat Lunak dapat diartikan
sebagai proses membuat suatu perangkat lunak baru untuk menggantikan perangkat
lunak lama secara keseluruhan atau memperbaiki perangkat lunak yang telah ada.
Metodologi pengembangan perangkat lunak ini sangat diperlukan agar dapat lebih
cepat dan tepat dalam mendeskripsikan solusi dan mengembangkan perangkat lunak.
Dengan metodologi pengembangan ini nantinya juga dapat membantu untuk mengahasilkan
perangkat lunak yang berkualitas. Metodologi pengembangan perangkat lunak adalah
suatu proses pengorganisasian kumpulan metode dan konvensi notasi yang telah
didefinisikan untuk mengembangkan perangkat lunak. Penggunaan suatu metodologi
sesuai dengan persoalan yang akan dipecahkan dan memenuhi kebutuhan pengguna
akan menghasilkan suatu produk perekayasaan yang berkualitas dan terpelihara
serta dapat menghindari masalah-masalah yang sering terjadi seperti estimasi
penjadwalan dan biaya, perangkat lunak yang tidak sesuai dengan keinginan
pengguna dan sebagainya.
Metodologi
pengembangan perangkat lunak (atau disebut juga model proses atau paradigma
rekayasa perangkat lunak) adalah suatu strategi pengembangan yang memadukan
proses, metode, dan perangkat (tools).
Menurut Pressman
(1997) Komponen metodologi pengembangan perangkat lunak dapat dibagi dalam tiga
unit, yaitu :
1.
Metode, yaitu suatu cara atau teknik pendekatan yang
sistematik yang dipergunakan untuk mengembangkan perangkat lunak. Metode ini
mencakup : Perencanaan proyek dan perkiraan, analisis keperluan sistem dan
perangkat lunak, perancangan struktur data, arsitektur program, prosedur
algoritma, Coding, uji coba dan pemeliharaan.
2.
Alat bantu (Tools), yaitu alat-alat (manual atau
otomatis) yang mendukung pengembangan perangkat lunak. Terdapat 2 alat Bantu
yang dapat digunakan yaitu : alat Bantu manual dan alat Bantu otomatis.
3.
Prosedur, yang dipergunakan untuk mendefinisikan urut-urutan
pekerjaan (daur) dari metode dan alat bantu tersebut.
Secara umum daur
hidup pengembangan perangkat lunak meliputi tahapan-tahapan atau aktivitas
pengembangan yang terdiri dari tahap analisis, tahap perancangan, tahap
implementasi serta tahap pengujian dan perawatan perangkat lunak. Tahap
analisis dan perancangan merupakan tahapan awal yang penting dalam suatu
paradigma pemgembangan perangkat lunak, karena sangat mempengaruhi tahapan
selanjutnya. Sehingga jika terjadi kesalahan pada tahap analisis dan
perancangan, maka akan terdapat juga kesalahan pada tahap implementasi dan
tahapan-tahapan selanjutnya. Tahap implementasi perangkat lunak bertujuan untuk
menerapkan spesifikasi kebutuhan perangkat lunak ke dalam bahasa pemrograman
tertentu. Tahap pengujian perangkat lunak dilakukan untuk menemukan kesalahan (bug)
yang mungkin terdapat di dalam sebuah perangkat lunak. Sedangkan tahap
perawatan perangkat lunak fokusnya adalah pengubahan. Ada tiga pengubahan yaitu
: pembetulan, adaptasi (perbaikan terhadap lingkungan) dan perluasan
(penambahan karena permintaan pemakai).
Model proses pengembangan perangkat lunak terbagi menjadi 5 metode yaitu:
a.
Linear Sequential
Model atau waterfall
b.
Prototyping Model
c.
RAD (Rapid
Application Development) Model
d. Spiral Model
e. Fourth Generation Techniques (4GT)
Karakteristik Perangkat Lunak
Perangkat lunak lebih dikenal sebagai
elemen lojik daripada fisik, oleh karena itu perangkat lunak memiliki
karakteristik yang berbeda dari perangkat keras :
1.
Perangkat
lunak dikembangkan atau direkayasa, jadi tidak diproduksi dalam pengertian klasik.
2.
Merupakan
produk yang unik (tidak ada seri produksi).
3.
Perangkat
lunak tidak pernah akan rusak/aus karena selalu diperbaharui
4.
Tidak
terlihat (invisible).
5.
Perangkat
lunak pada umumnya dibangun sesuai keinginan, jadi tidak dibentuk dari komponen
yang sudah ada.
6.
Fleksibel,
sehingga mudah dimodifikasi.
7.
Dihubungkan
(linked) dengan sistem komputer.
Metode
Pengembangan Perangkat Lunak
“Extreme
Programming”
Extreme Programming yang
selanjutnya disingkat dengan XP merupakan salah satu dari sekian banyaknya
metodologi dalam rekayasa perangkat lunak dan juga merupakan bagian dari
metodologi pengembangan perangkat lunak agile yang dikembangkan oleh Beck, Cunningham, dan Jeffries. Secara
umum Extreme Programming (XP) dapat dijabarkan sebagai sebuah pendekatan
pengembangan perangkat lunak yang mencoba meningkatkan efisiensi dan
fleksibilitas dari sebuah proyek pengembangan perangkat lunak dengan
mengkombinasikan berbagai ide simpel/sederhana tanpa mengurangi kualitas
software yang akan dibangun.
Metode Extreme Programming ini merupakan lightweight discipline pengembangan
perangkat lunak berdasarkan empat core value yaitu :
a.
Komunikasi
(Communication)
Kurangnya komunikasi merupakan penyebab
utama kegagalan pengembangan software, maka XP mengfokuskan pada hubungan
komunikasi yang baik antar tim-klien, anggota tim, dan manajer
proyek.Komunikasi dalam XP dibangun dengan melakukan pemrograman berpasangan (pair
program-ming). Klien harus
dilibatkan dalam proses pengembangan perangkat lunaknya dengan tujuan untuk
memberikan pandangan pengembang sesuai dengan pandangan pengguna sistem yang
dibangun.
b.
Kesederhanaan
(Simplicity)
XP melakukan semua dengan
sederhana dan praktis tanpa mengurangi fungsi utamanya. Diusahakan mengunakan method
yang pendek dan simpel, jangan terlalu rumit dalam membuat desain,
hilangkan fitur yang tidak ada gunanya atau menghapus fungsi yang tidak
terpakai.
c.
Umpan
balik (Feedback)
Selalu mengevaluasi
perkembangan terhadap perangkat lunak yang sedang dikerjakan, segala informasi
harus dikumpulkan setiap interval waktu yang konsisten dan diskusikan
kesalahan-kesalahan yang muncul selama proses pengembangan. Umpan balik
tersebut berfungsi sebagai indikator kemajuan proyek dan menginformasikan
pemimpin proyek apabila perubahan perlu dibuat.
d.
Keberanian
(Courage).
Programmer XP didorong untuk
berani bereksperimen dan menulis ulang kode jika mereka tidak puas dengan kode
yang sudah ada atau desain. Hal ini membantu mempertahankan moral serta integeritas
para pengembang proyek dan dapat mendukung lebih lanjut komunikasi dengan
anggota proyek lainnya.
terimakasih sangt membantu artikelnya
BalasHapusjangan lupa kunjungi website kami http://www.atmaluhur.ac.id/ dan kunjungi blog saya https://zubikaa.blogspot.com/