PENGEMBANGAN
PERANGKAT LUNAK
Tujuan
Bagian ini menj elaskan t entang pengembangan perangkat lunak, meliput i
pengertian, aktivit as, model proses, dan met ode pengembangannya. Set elah
mempelajari bagian ini dengan baik, pembaca diharapkan dapat:
Pokok Bahasan
Pokok bahasan pada bagian ini meliput i:
19
20
Kebutuhan pemakai
Pengembangan
Perangkat Lunak
Perangkat lunak
Orang (people)
Individu, kelompok, atau bagian organisasi yang menj adi pelaksana
pekerjaan, seperti analis sist em, pemrogram, penguj i perangkat
lunak, dan pihak-pihak lainnya t ermasuk pemakai dan pelanggan.
Proyek (proj ect )
Pekerjaan pengembangan perangkat lunaknya sendiri, yang dikelola
sesuai prinsip-prinsip manaj emen proyek.
Produk (product )
Kode sumber (source code), execut able programs, model-model, dan
dokumen-dokumen yang dihasilkan sebagai produk selama
pelaksanaan pengembangan.
Proses (process)
Kumpulan akt ivit as yang digunakan unt uk menghasilkan perangkat
lunak. Setiap akt ivitas dilaksanakan dengan menggunakan
pendekatan at au met ode teknis tert ent u.
Alat bantu
Kumpulan perangkat bantu atau kakas otomat is dan semi-otomat is
yang akan digunakan untuk mendukung aktivit as-akt ivit as dari proses.
21
Proses
template
Orang
Proyek
partisipan
otomasi
Alat Bantu
hasil
Produk
persiapan pengembangan
perancangan sistem
Semua akt ivitas yang di atas akan selalu berulang seiring dengan munculnya
kebutuhan unt uk membuat perangkat lunak yang lain j ika:
perangkat lunak yang ada sudah t idak dapat memenuhi kebut uhan
lagi akibat adanya perubahan lingkungan dan teknologi.
22
2.
Penentuan standar yang akan dij adikan acuan, misalnya standar dari
IEEE (lihat di htt p:/ / standards.ieee.org) atau MIL-STD-498 (lihat di
ht tp:/ / www.sepo.spawar.navy.mil/ sepo/ docs.html), sert a alat bantu
dan perangkat implementasi yang akan digunakan.
3.
4.
kebut uhan lingkungan sist em, mencakup kebut uhan perangkat keras,
perangkat lunak, dan komunikasi data.
kebut uhan lain, sepert i unj uk kerj a, keselamat an, keamanan, dan
sebagainya.
23
Pembahasan rinci untuk akt ivitas perancangan sistem akan disampaikan pada
Bab 3.
lunak akan
perangkat
lunak akan
24
perangkat
lunak akan
2.
3.
4.
5.
2.
3.
25
4.
5.
26
Analisis
Kebutuhan
Perancangan
Pengkodean
Pengujian
Pengoperasian
2.
Perancangan
Transformasi set iap spesifikasi kebut uhan menj adi modul-modul
perancangan yang lebih rinci sehingga menghasilkan model solusi
dalam bent uk rancangan st rukt ur data, arsit ekt ur perangkat lunak,
antar muka, dan prosedur-prosedur atau algorit ma.
3.
Pengkodean
Menerj emahkan model perancangan ke dalam bentuk yang dapat
dimengert i oleh mesin (komputer) dengan menggunakan perangkat
implementasi tert entu.
4.
Penguj ian
Memeriksa kebenaran logika int ernal dan fungsi perangkat lunak
unt uk menemukan kesalahan-kesalahan, dan memast ikan bahwa
perangkat lunak yang dihasilkan sesuai dengan kebutuhan yang sudah
didefinisikan sebelumnya.
5.
Pengoperasian
Penggunaan perangkat lunak oleh pemakai di lingkungan sebenarnya.
Unt uk menj aga supaya perangkat lunak yang dioperasikan ini tet ap
berj alan sebagaimana mest inya, dilakukan proses pemeliharaan.
Versi lain dari model proses wat erfall adalah model proses linear sequent ial
(lihat Gambar 2.4). Pada model proses ini, setiap akt ivitas dilaksanakan secara
linear, tanpa umpan balik unt uk memperbaiki t ahap sebelumnya.
27
R ekayasa Sistem /
Inform asi
Analisis
P erancangan
Pengkodean
Pengujian
2.
Perancangan cepat
Melakukan perancangan secara cepat dengan fokus pada hal-hal yang
akan langsung t erlihat oleh pemakai, seperti antarmuka pemakai dan
fungsi-fungsi dasar.
3.
28
4.
5.
Pengumpulan
Kebutuhan
Perbaikan
Prototype
Evaluasi
Prototype
Perancangan
Cepat
Bangun
Prototype
29
bagi perangkat lunak. Hasil penambahan yang pert ama biasanya merupakan
produk inti yang mewakili kebut uhan dasar dari sistem. Produk int i inilah yang
nant inya akan ditambah t erus-menerus sampai didapat produk yang lengkap
dan memenuhi kebut uhan pemakai (lihat Gambar 2.6).
penambahan
pertama
Analisis
penambahan
kedua
Perancangan
Analisis
Implementasi
Perancangan
Pengujian
Implementasi
hasil penambahan
pertama
Pengujian
hasil penambahan
kedua
.
.
.
penambahan
ke-n
Analisis
Perancangan
Implementasi
Pengujian
hasil akhir /
produk lengkap
Perencanaan
Mendefinisikan tuj uan, kendala, sumber daya, wakt u, dan informasi
lain yang berhubungan dengan proyek.
2.
Analsis resiko
Mengenali, menganalisis dan menilai resiko teknis dan manaj emen.
3.
Rekayasa
Membangun satu atau beberapa produk yang merepresent asikan
aplikasi.
30
4.
Evaluasi pemakai
Mendapat kan umpan balik dari pemakai berdasarkan hasil evaluasi
produk yang direkayasa.
PERENCANAAN
EVALUASI PEMAKAI
ANALISIS RESIKO
REKAYASA
2.
3.
Use case-driven
Menggunakan use case sebagai art ifak utama unt uk menetapkan
perilaku sist em yang diinginkan dan unt uk mengkomunikasikan
perilaku sist em tersebut kepada para st akeholder sist em.
4.
Risk-driven
Menghilangkan atau mengurangi
menghambat kesuksesan proyek.
resiko-resiko
yang
dapat
31
32
2.
3.
4.
3.
4.
5.
6.
2.
3.
Manaj emen konfigurasi dan perubahan (conf igurat ion and change
management )
Mengendalikan perubahan dan memelihara art ifak-artifak proyek.
Manaj emen proyek (proj ect management )
Mendeskripsikan berbagai strat egi pekerj aan dengan proses yang
berulang.
Lingkungan (environment )
Menangani infrastruktur yang dibut uhkan unt uk mengembangkan sist em.
33
2.
Syst em Flowchart
Menggambarkan kerangka proses program dilihat dari masukan,
proses dan keluarannya.
3.
Program Flowchart
Menggambarkan urut-urut an logika proses dari program.
34
Salah sat u t eknik yang paling populer unt uk met ode ini adalah Teknik
Terst rukt ur (St ruct ured Technique) yang meliputi analisis, perancangan, dan
pemrograman. Pada t eknik ini, hasil analisis dan perancangan dimodelkan
dengan menggunakan alat bant u pemodelan sepert i:
1.
2.
3.
4.
5.
Diagram E-R
Digunakan untuk menggambarkan hubungan (relat ionship) antara
ent itas-entitas dilihat dari aspek datanya (at au hubungan antar
tempat penyimpanan).
6.
7.
Pseudo-code
Digunakan unt uk menuliskan algorit ma set iap modul program.
Penj elasan rinci untuk met ode pengembangan berorientasi aliran dat a ini akan
disampaikan pada Bab 5 dan 8.
Mengident ifikasi entit as-ent it as atau it em-it em yang menj adi obj ek
informasi kunci berikut operasi-operasinya.
2.
3.
35
Beberapa t eknik pengembangan perangkat lunak berorient asi st rukt ur data ini
diantaranya adalah:
Jadwal
Mahasiswa
Kuliah
Kontrak
Kuliah
Konteks
Pengambilan
Kuliah
Penjadwalan
Penilaian
Gambar 2.9 Sudut Pandang Met ode Berorient asi Obj ek vs Fungsi
Beberapa t eknik pengembangan perangkat lunak yang berorientasi obj ek ini
diantaranya adalah:
Obj ect Oriented Analysis (OOA) dan Obj ect Oriented Design (OOD)
dari Pet er Coad dan Edward Yourdon (1990).
36
Pembahasan rinci untuk met ode pengembangan obj ek dij elaskan pada Bab 6
dan 9.
37
Rangkuman
1.
2.
3.
4.
Daftar Pustaka
[DAV93] Davis, Alan M., Soft ware Requirements: Obj ects, Functions and
Stat es , Prentice-Hall Int ernat ional Edit ions, Englewood Cliffs, New
Jersey, 1993.
[DOD94] US Department of Defense, MIL-STD-498 Software Development and
Document ation, 1994.
[IEE93]
The Inst itute of Elect rical and Electronics Engineers, IEEE Std
610.12-1993 Standard Glossary of SW Engineering Terminology ,
1993.
[IEE98]
[JAC99] Jacobson, Ivar; Booch, Grady; and Rumbaugh, James The Unified
Soft ware Development Process , Addison Wesley, Reading,
Massachusett s, 1999.
38
[LAR98] Larman, Craig, Applying UML and Pat erns An Introduct ion to
Obj ect-Orient ed Analysis and Design , Prent ice-Hall PTR, Upper
Saddle River, New Jersey, 1998.
[PRE01] Pressman, Roger S., Soft ware Engineering: A Practioner s
Approach , Fift h Edit ion, MacGraw-Hill Int ernat ional Editions, 2001.
[RAT99] Rat ional Software, The Rat ional Unified Process , November, 1999.