2. Proses perangkat lunak sangat rumit dan,
seperti semua proses intelektual. bergantung
pada penilaian manusia. Karena dibutuhkan
penilaian dan kreatifitas. keberhasilan usaha
untuk mengotomasi proses perangkat lunak
menjadi terbatas.
RPL - 03 - Proses-Proses Perangkat Lunak 2
3. Satu alasan mengapa otomasi proses
memiliki cakupan yang terbatas adalah
adanya keragaman proses perangkat
lunak. Tidak ada proses yang ideal dan
organisasi berbeda yang mengembangkan
pendekatan yang benar-benar berbeda
dalam pengembangan perangkat lunak
RPL - 03 - Proses-Proses Perangkat Lunak 3
4. • Penspesifikasian perangkat lunak. Fungsionalitas perangkat
lunak dan batasan operasinya harus didefinisikan.
• Perancangan dan implenmentasi perangkat lunak. Perangkat
lunak yang meme-nuhi persyaratan harus dibuat.
• Pemvalidasian perangkat lunak. Perangkat lunak tersebut
harus divalidasi untuk menjamin bahwa perangkat lunak
bekerja sesuai dengan apa yang diinginkan pelanggan.
• Pengevolusian perangkat lunak. Perangkat lunak harus dapat
berkembang untuk menghadapi kebutuhan pelanggan yang
berubah.
RPL - 03 - Proses-Proses Perangkat Lunak 4
5. • Model air terjun (waterfall). Model ini mengambil kegiatan
proses dasar seperti spesifikasi, pengembangan, validasi,
dan evolusi, dan merepresentasikannya sebagai fase-fase
proses yang berbeda
• Pengembangan evolusioner. Pendekatan ini berhimpitan dengan
kegiatan spesifikasi, pengembangan, dan validasi.
• Pengembangan sistem formal. Pendekatan ini didasarkan atas
pembuatan spesifikasi sistem matematis dan pentransformasian
spesifikasi ini, dengan me-makai metode matematis, untuk
membangun program.
• Pengembangan berdasarkan pemakaian ulang. Pendekatan ini
didasarkan atas adanya komponen yang dapat dipakai ulang
dalam jumlah yang signifikan.
RPL - 03 - Proses-Proses Perangkat Lunak 5
6. Model pertama yang diterbitkan untuk
proses pengembangan perangkat lunak
diambil dari proses rekayasa lain
(Royce. 1970).
Berkat penurunan dari satu fase ke
fase yang lainnya, model ini dikenal
sebagai `model air terjun' atau siklus
hidup perangkat lunak
RPL - 03 - Proses-Proses Perangkat Lunak 6
7. o Analisis dan defenisi persyaratan. Pelayanan, batasan, dan
tujuan sistem ditentukan melalui konsultasi dengan user
sistem.
o Perancangan sistem dan perangkat lunak. Proses perancangan
sistem membagi persyaratan dalam sistem perangkat keras atau
perangkat lunak. Kegiatan ini menentukan arsitektur sistem
secara keseluruhan.
o Implementasi dan pengujian unit. Pada tahap ini, perancangan
perangkat lunak direalisasikan sebagai serangkaian program
atau unit program.
o Integrasi dan pengujian sistem. Unit program atau program
individual diintegrasikan dan diuji sebagai sistem yang
lengkap untuk menjamin bahwa persyaratan sistem telah
dipenuhi.
o Operasi dear pemeliharaan. Biasanya (walaupun tidak
seharusnya), ini merupakan fase siklus hidup yang paling
lama. Sistem diinstal dan dipakai.
RPL - 03 - Proses-Proses Perangkat Lunak 7
9. Pengembangan evolusioner berdasarkan pada
ide untuk mengembangkan implementasi awal,
memperlihatkannya kepada user untuk
dikomentari, dan memperbaikinya versi demi
versi sampai sistem yang memenuhi persyaratan
diperoleh
Tidak ada kegiatan spesifikasi,
pengembangan, dan validasi yang terpisah,
alih-alih kegiatan--kegiatan ini dilakukan
pada saat yang bersamaan dengan umpan balik
yang cepat untuk masing-masing kegiatan
RPL - 03 - Proses-Proses Perangkat Lunak 9
11. o Pengembangan eksploratori yang bertujuan
bekerja dengan pelanggan untuk
menyelidiki persyaratan mereka dan
mengirimkan sistem akhir.
o Prototipe yang dapat dibuang (throw-
away) yang bertujuan untuk memahami
persyaratan pelanggan dan dengan
demikian mengembangkan definisi
persyaratan yang lebih baik untuk
sistem.
RPL - 03 - Proses-Proses Perangkat Lunak 11
12. Pengembangan sistem formal merupakan
pendekatan terhadap pengembangan perangkat
lunak yang memiliki kesamaan dengan model air
terjun, tetapi proses pengembangannya
didasarkan pada transformasi matematis dari
spesifikasi sistem menjadi program yang dapat
dijalankan
RPL - 03 - Proses-Proses Perangkat Lunak 12
13. Pada sebagian besar proyek perangkat
lunak, terjadi pemakaian ulang, Hal ini
biasanya terjadi secara informal ketika
orang yang bekerja di proyek tersebut
mengetahui adanya rancangan atau kode
yang mirip dengan yang dibutuhkan
RPL - 03 - Proses-Proses Perangkat Lunak 13
14. o Analisis komponen. Komponen-kompo-nen untuk
implementasi spesifikasi tersebut akan dicari.
o Modifikasi persyaratan. Pada tahap ini,
persyaratan dianalisis dengan menggunakan
informasi mengenai komponen yang telah didapat.
o Perancangan sistem dengan pemakaian ulang. Pada
fase ini, kerangka kerja sistem dirancang, atau
kerangka kerja yang telah ada dipakai ulang.
o Pengembangan dan integrasi. Perangkat lunak yang
tidak dapat dibeli akan dikembangkan dan
komponen dan sistem COTS diintegrasikan untuk
membentuk sistem.
RPL - 03 - Proses-Proses Perangkat Lunak 14
15. o pengembangan inkremental, di mana
spesifikasi, perancangan, dan implementasi
perangkat lunak dibagi menjadi serangkaian
inkremen yang dikembangkan secara
bergantian
o pengembangan spiral, di mana pengembangan
sistem seolah beralur membentuk spiral ke
luar dari garis awal sampai sistem
pengembangan akhir.
RPL - 03 - Proses-Proses Perangkat Lunak 15
17. o Pelanggan tidak perlu menunggu sampai seluruh sistem
jika Inkremen yang pertama sudah memenuhi persyaratan
mereka maka perangkat lunak dapat segera digunakan.
o Pelanggan dapat memakai inkremen yang pertama sebagai
bentuk prototipe dan mendapatkan pengalaman yang dapat
menginformasikan persyaratan untuk inkremen sistem
berikutnya.
o Risiko untuk kegagalan proyek secara keseluruhan lebih
rendah.
o Karena layanan dengan prioritas tertinggi, ini berarti
bahwa pelanggan akan memiliki kemungkinan yang kecil
untuk menemui kegagalan perangkat lunak pada inkremen
sistem yang paling penting.
RPL - 03 - Proses-Proses Perangkat Lunak 17
18. Model spiral dari proses perangkat lunak
yang pada awalnya diusulkan oleh Boehm (1988)
sekarang telah dikenal luas. Bukannya
merepresentasikan proses perangkat lunak
sebagai serangkaian kegiatan dengan
penelusuran ke belakang dari satu kegiatan ke
yang lainnya, proses ini direpresentasikan
sebagai spiral
RPL - 03 - Proses-Proses Perangkat Lunak 18
19. o Penentuan tujuan. Tujuan yang spesifik untuk fase proyek
didefinisikan. Batasan pada proyek dan produk diidentifikasi
dan rencana manajemen yang rinci dibuat. Risiko proyek
diidentifikasi.
o Penilaian dan pengurangan risiko. Untuk setiap risiko proyek
yang diidentifi-kasi, dilakukan analisis yang rinci.
Dilakukan langkah-langkah untuk mengurangi risiko tersebut.
o Pengembangan dan validasi. Setelah evaluasi risiko, model
pengembangan untuk sistem kemudian dipilih.
o Perencanaan. Proyek ditinjau dan selanjutnya dibuat
keputusan apakah akan diteruskan dengan untai spiral
berikutnya. Jika diputuskan untuk terus, maka dibuat rencana
untuk fase proyek berikutnya.
RPL - 03 - Proses-Proses Perangkat Lunak 19
20. Spesifikasi perangkat lunak, ditujukan untuk
menetapkan layanan apa yang dituntut dari sistem dan
batasan pada-operasi dan pengembangan sistem.
Kegiatan ini sering disebut rekayasa persyaratan.
Rekayasa persyaratan merupakan tahap yang sangat
kritis dari proses perangkat lunak karena kesalahan
pada tahap ini pada akhirnya menimbulkan masalah
lain pada perancangan dan implementasi sistem.
RPL - 03 - Proses-Proses Perangkat Lunak 20
21. o Studi kelayakan. Dibuat perkiraan mengenai apakah user yang
diidentifikasi puas menggunakan perangkat lunak dan
teknologi perangkat keras yang dipakai pada saat ini. Studi
kelayakan seharusnya murah dan cepat. Hasilnya harus
menginformasikan keputusan apakah kita akan terus dengan
analisis yang lebih rinci, atau tidak
o Elisitasi dan analisis persyaratan. Ini merupakan proses
penurunan persya-ratan sistem melalui observasi sistem yang
ada, diskusi dengan user yang akan memakai dan yang
mengadakan, analisis pekerjaan, dll.
o Spesifikasi persyaratan. Spesifikasi persyaratan adalah
kegiatan menerjemahkan informasi yang dikumpulkan pada
kegiatan analisis menjadi dokumen yang mendefinisikan
serangkaian persyaratan.
o Validasi persyaratan. Kegiatan ini memeriksa apakah
persyaratan dapat direalisasikan, konsisten, dan lengkap.
RPL - 03 - Proses-Proses Perangkat Lunak 21
23. o Perancangan arsitektural. Subsistem-subsistem yang membentuk
sistem dan hubungan mereka diidentifikasi dan didokumentasi.
o Spesifikasi abstrak. Untuk setiap subsistem, spesifikasi
abstrak dari layanan dan batas operasinya harus ditentukan.
o Perancangan interface. Untuk setiap subsistem, interface
dengan subsistem dirancang dan didokumentasi.
o Perancangan komponen. Layanan dialokasikan pada komponen
yang berbeda dan interface komponen-komponen ini dirancang.
o Perancangan struktur data. Struktur data yang dipakai pada
implementasi sistem dirancang secara rinci dan
dispesifikasi.
o Perancangan algoritma. Algoritma yang digunakan untuk
memberikan layanan dirancang secara rinci dan dispesifikasi.
RPL - 03 - Proses-Proses Perangkat Lunak 23
24. Metodis terhadap perancangan
perangkat lunak adalah metode
terstruktur' yang merupakan serangkaian
notasi dan panduan untuk perancangan
perangkat lunak.
RPL - 03 - Proses-Proses Perangkat Lunak 24
25. • Model aliran data, di mana sistem dimodelkan dengan
menggunakan transformasi data yang terjadi pada saat
pemrosesannya.
• Model relasi entitas merupakan teknik normal yang dipakai
untuk mendeskripsikan struktur database.
• Model struktural, di mana komponen-komponen sistem dan
interaksinya didokumentasikan.
• Metode berorientasi objek mencakup model inheritansi
(pewarisan) sistem, model hubungan statis dan dinamis di
antara objek, dan model bagaimana objek berinteraksi saw
sama lain ketika sistem sedang dijalankan.
RPL - 03 - Proses-Proses Perangkat Lunak 25
26. Validasi perangkat lunak atau, lebih umum,
verifikasi dan validasi (V & V) ditujukan
untuk menunjukkan bahwa sistem sesuai dengan
spesifikasinya dan bahwa sistem memenuhi
harapan pelanggan yang membelinya.
Validasi melibatkan proses pemeriksaan,
seperti inspeksi dan peninjauan, pada setiap
tahap proses perangkat lunak dari definisi
persyaratan user sampai pengembangan program
RPL - 03 - Proses-Proses Perangkat Lunak 26
27. proses pengujian tiga tahap di mana komponen-komponen sistem diuji, sistem
yang terintegrasi diuji dan, akhirnya, sistem diuji dengan data pelanggan
RPL - 03 - Proses-Proses Perangkat Lunak 27
28. bagaimana rencana uji merupakan penghubung
antara kegiatan pengujian dan pengembangan
RPL - 03 - Proses-Proses Perangkat Lunak 28
29. • Pengujian unit. Komponen individual diuji untuk menjamin operasi
yang benar. Setiap komponen diuji secara independen, tanpa komponen
sistem yang lain.
• Pengujian modul. Sebuah modul merangkum komponen-komponen yang
berhubungan, sehingga dapat diuji tanpa modul sistem yang lain.
• Pengujian subsistem. Fase ini melibatkan pengujian sekumpulan modul
yang telah diintegrasikan menjadi subsistem. Proses pengujian
subsistem dengan demikian harus terkonsentrasi pada deteksi
kesalahan interface modul dengan menjalankan interface ini berkali-
kali.
• Pengujian sistem. Subsistem diintegrasikan untuk membentuk sistem.
Proses ini berkenaan dengan penemuan kesalahan yang diakibatkan
dari interaksi yang tidak diharapkan antara subsistem dan masalah
interface subsistem.
• Pengujian penerimaan. Ini merupakan tahap akhir proses pengujian
sebelum sistem diterima untuk penggunaan operasional.
RPL - 03 - Proses-Proses Perangkat Lunak 29
30. Fleksibilitas sistem perangkat lunak
merupakan salah satu alasan utama mengapa
makin banyak perangkat lunak yang digunakan
pada sistem besar dan kompleks. Begitu telah
dibuat keputusan untuk membuat perangkat
keras, akan sangat mahal untuk mengubah
rancangannya.
RPL - 03 - Proses-Proses Perangkat Lunak 30