Suwun mas bro mbak sist

Minggu, 08 Januari 2012

pemeliharaan perangkat lunak

 Pendahuluan
 Istilah pemeliharaan perangkat lunak digunakan untuk menjabarkan aktivitas dari analis sistem (software engineering) yang terjadi pada saat hasil produk perangkat lunak sudah dipergunakan oleh pemakai (user).
 Biasanya pengembangan produk perangkat lunak memerlukan waktu antara 1 sampai dengan 2 tahun, tetapi pada pase pemeliharaan perangkat lunak menghabiskan 5 sampai dengan 10 tahun
 Aktivitas yang terjadi pada pase pemeliharaan antara lain:

 Penambahan atau peningkatan atau juga perbaikan untuk produk perangkat lunak
 Adaptasi produk dengan lingkungan mesin yang baru
 Pembetulan permasalahan yang timbul

 Aktivitas pada penambahan atau perbaikan produk perangkat lunak :


 Penambahan fungsi-fungsi baru
 Perbaikan tampilan dan modus interaktif
 Perbaharui dokumen ekstemal
 Perbaharui dokumentasi internal
 Perbaharui karakteristik perfomansi dari system

 Adaptasi terhadap lingkungan yang baru mencakup aktivitas:

 Pemindahan perangkat lunak ke mesin yang berlainan
 Modifikasi untuk dapat mempergunakan protokol atau disk drive tambahan


 Sedangkan pada pembetulan mencakup aktivitas:

 Pembenaran kesalahan yang timbul setelah produk perangkat lunak dipergunakan oleh user (pemakai)

 Aktivitas pemeliharaan
 Pemeliharaan PL menghabiskan biaya terbesar dari seluruh anggaran pengembangan atau pembuatan perangkat lunak.
 Pemeliharaan menghabiskan 70% dari seluruh biaya pengembangan perangkat lunak.
 Pase pemeliharaan sekitar 60% digunakan untuk anggaran penambahan atau perhaikan perangkat lunak, sisanya untuk adaptasi atau pembetulan.

 Atribut utama dari perangkat lunak yang mudah dalam pemeliharaan
 Perangkat lunak dikerjakan per modul
 Perangkat lunak mempunyai kejelasan
 Dokumentasi internal yang baik dan jelas
 Dokumen-dokumen pendukung lainnya

 Pemeliharaan perangkat lunak dapat dibedakan menjadi:
 Corrective Maintenance
Corrective maintenance terjadi pada saat produk dipakai dan hasil yang didapat oleh pamakai baik berupa kesalahan yang timbul maupun kesalahan dalam bentuk keluaran yang tidak sesuai.
 Adaptive maintenance
Aktivitas yang kedua ini terjadi karena pertumbuhan atau perkembangan perangkat lunak atau perangkat keras sehingga memerlukan modifikasi dari perangkat lunak yang telah dibuat.
 Perfective maintenance
Aktivitas ini terjadi pada saat perangkat lunak yang telah dibuat dan dilakukan uji cobs kemudian dipergunakan oleh user. Setelah dipergunakan oleh user mungkin timbul permintaan tambahan fungsi sesuai dengan keinginan pemakai.
 Preventive maintenance
Pemeliharaan yang terakhir dilakukan untuk menghadapi kemajuan perangkat lunak atau perangkat keras di masa mendatang, umpamanya penambahan fungsi­fungsi atau melengkapi fungsi-fungsi yang telah ada.

 Karakteristik Pemeliharaan
 Pemeliharaan terstruktur dan tidak terstruktur
 Biaya pemeliharaan

 Aliran tindakan permintaan pemeliharaan
 1.a. Pemeliharaan terstruktur
 Pada gambar di atas terlihat pemeliharaan terstruktur dimulai dari permintaan akan pemeliharaan dan menentukan konfigurasi dari perangkat lunak yang akan diadakan pemeliharaan. Jika merupakan seluruh perangkat lunak maka tindakan yang diambil adalah evaluasi perancangan dan menentukan rencana pendekatan yang akan digunakan untuk melakukan pemeliharaan. Kemudian dilanjutkan dengan melaku­kan modifikasi+perancangan dan penulisan ulang program (rekode). Langkah terakhir adalah me-review program yang telah ditulis. Jika diterima maka berarti tugas pemeliharaan telah selesai. Sedangkan jika konfigurasi merupakan program per modul maka kegiatan yang dilakukan adalah evaluasi program. Jika diperlukan modifikasi yang cukup besar maka tindakan yang diambil adalah pembuatan ulang yang dilanjutkan dengan review hasil. Jika hasil akhir memenuhi kriteria maka berarti perangkat lunak siap.
 1.b. Pemeliharaan tidak terstruktur
 Tidak mempunyai dokumentasi yang baik
 Tidak menggunakan metodologi perancangan
 Tidak mengikuti langkah-langkah di atas

 2. Biaya pemeliharaan

 Biaya pemeliharaan perangkat lunak yang dikeluarkan dalam pase pemeliharaan meningkat dengan cepat, hal ini dapat dilihat pada gambar herikut:

Selain biaya yang umum dalam pase pengembangan Bering timbul biaya-biaya tak berwujud (intangible cost). Biaya-biaya ini ditimbulkan karena:
 Ketidakpuasan pemakai (user) akibat tidak selesainya perangkat lunak sesuai dengan waktu yang telah ditentukan pada pase pemeliharaan
 Pengurangan kualitas perangkat lunak
 Penambahan tenaga kerja baru

 Maintainability

Maintainability dapat didefinisikan kemudahan dalam mengerti perangkat lunak, pcmbenaran, adaptasi dan atau perbaikan. Faktor-faktor yang mempengaruhi maintanability:
 Control
 Ukuran kuantitatif

 1. Kontrol
 Pokok-pokok maintainability dari perangkat lunak dipengaruhi oleh perancangan, pengkodean dan uji coba yang jelas mempunyai pengaruh jelek pada kemampuan pemeliharaan dari perangkat lunak yang dihasilkan, begitu juga konfigurasi perangkat lunak yang jelek menghasilkan pengaruh yang buruk.

Sejumlah fak'tor yang mempunyai hubungan dengan lingkungan pengembangan dan kontrol adalah:
 Staf yang memenuhi syarat
 Kemudahan dalam mengerti sistem
 Mudah dalam menangani sistem
 Mudah dalam standarisasi bahasa pemrograman
 Mudah dalam standarisasi sistem operasi
 Tersedianya test case
 Perangkat keras yang tepat untuk pengerjaan pemeliharaan

 2. Ukuran kuantitatif

Ukuran kuantitatif dari suatu maintainability perangkat lunak secara tidak langsung berpengaruh pada aktivitas pemeliharaan. Berikut akan dijabarkan sejumlah metrik (ukuran) maintainability yang mempunyai pengaruh dalam aktivitas pemeliharaan:
 Waktu pengenalan masalah
 Waktu delay (tunda) administrasi
 Alat bantu pemeliharaan
 Waktu analisis permasalahan
 Waktu perubahan spesifikasi
 Waktu modifikasi (pembenaran)
 Waktu uji coba
 Waktu total


 Perbaikan Maintainability Selama Pengembangan

• Aktivitas analisis
• Aktivitas perancangan artsitektural
• Aktivitas perancangan terinci
• Aktivitas penerapan
• Aktivitas lainnya

 Aktivitas analisis:

 Mengembangkan standarisasi petunjuk
 Menentukan kendala untuk dokumen pendukung
 Menentukan prosedur yang menjamin kualitas
 Menentukan perbaikan produk
 Menentukan sumber daya yang diperlukan untuk pemeliharaan
 Memperkirakan biaya pemeliharaan

 Aktivitas perancangan artsitektural:

 Menekankan kejelasan dan modularity sebagai kriteria perancangan
 Merancang kemudahan-kemudahan dalam perbaikan
 Menggunakan notasi standard untuk dokumentasi jari aliran data, fungi, struktur, dan lain-lain
 Menggunakan prinsip informasi hiding, data abstraction, dan dekomposisi hirarki top down (atas bawah)

 Aktivitas perancangan terinci:

 Menggunakan notasi standar untuk algoritma, struktur data, prosedur
 Menentukan pengaruh yang ditimbulkan dan penangan hal-hal yang ditimbulkan

 Aktivitas penerapan:
 Menggunakan prinsip penyusunan sate masukan dan satu keluaran
 Menggunakan standar penyusunan
 Menggunakan gaya pengkodean yang jelas dan simpel
 Menyediakan dokumentasi singkat untuk setiap modul
 Mengikuti petunjuk pada dokumentasi standar


 Aktivitas lainnya:

 Mengembangan petunjuk pemeliharaan
 Mengembangkan uji coba yang cocok
 Menyediakan dokumentasi uji coba

 Tugas Pemeliharaan
Tugas yang ada pada pemeliharaan sebetulnya telah dipersiapkan sebelum terjadinya permintaan pemeliharaan. Tugas ini diawali dengan pembentukan: organisasi pemeliharaan (baik secara informal atau secara formal), prosedur pelaporan dan evaluasi harus dijabarkan dan urutan tindakan ditentukan untuk masing-masing permintaan pemeliharaan. Selain itu sistem pencatatan untuk aktivitas pemeliharaan juga harus ditentukan, review dan kriteria evaluasi didefinisikan.


 Bentuk tanggung jawab organisasi pemeliharaan
 Pelaporan

 Seluruh permintaan akan pemeliharaan seharusnya dibuat dalam satu bentuk formulir standar. Umumnya pembuat atau pengembangan perangkat lunak membuat satu bentuk formulir atau dokumentasi standar untuk permintaan pemeliharaan yang dikenal dengan nama Maintenance Request Form (MRF atau formulir permintaan pemeliharaan) atau Software Problem Request (laporan permasalahan perangkat lunak).

Jika diketemukan kesalahan oleh pemakai pada perangkat lunak, maka deskrip~i dari keadaan yang menimbulkan kesalahan dijabarkan secara lengkap (meliputi pemasukan data, uji coba, dan lain-lain) MRF adalah dokumen yang digunakan sebagai dasar untuk perencanaan tugas pemeliharaan. Biasanya organisasi pembu;at atau pengembangan perangkat lunak mengembangkan Software Change Report (SCR atau laporan perubahan perangkat lunak) yang berisikan:
 Usaha yang dilakukan untuk memenuhi MRF
 Modifikasi yang diperlukan
 Priortitas permintaan
 Perkiraan hasil modifikasi

SCR ini nantinya akan diajukan ke hak kontrol perubahan &belum perencanaan pemeliharaan dimulai.

 Aliran tindakan
 Pencatatan

Pencatatan merupakan aktivitas yang tidak dapat ditinggalkan pada pemeliharaan, karena pada pencatatan akan digunakan untuk mengukur kualitas dari program yang telah dimodifikasi.
 Data yang dicatat antara lain:
 Identifikas program
 Jumlah ban perintah dari program cumber
 Jumlah instruksi yang berorientasi ke bahasa mesin
 Bahasa pemrograman yang digunakan
 Tanggal pemasangan program
 Jumlah program yang dapat di-run (dijalankan) semenjak dipasang (diinstall)
 Jumlah proses yang gagal digabungkan dengan nomor 6
 Tingkat perubahan program dan identifikasi
 Jumlah penambahan perintah pada program yang diuhah
 Jumlah penghapusan perintah pada program yang diubah
 Jumlah jam kerja yang dihabiskan pada perubahan
 Tanggal perubahan program
 Identifikasi dari software engineering
 Identifikasi dari MRF
 Tipe pemeliharaan
 Tanggal awal dan berakhir pemeliharaan
 Jumlah total jam kerja pada aktivitas pemeliharaan
 Manfaat yang didapat dari aktivitas pemeliharaan

 Evaluasi
Eavluasi biasanya jarang dilakukan karena kurangnya data yang dicatat, apabila pencatatan dilakukan dengan benar, maka dapat dilakukan evaluasi. Evaluasi dilakukan terhadap:
 Jumlah rata-rata kegagalan proses per program pada saat dipasang
 Jumlah total waktu yang dihabiskan untuk masing-masing kategori pemeliharaan
 Jumlah rata-rata perubahan program yang dilakukan per bahasa program atau per tipe pemeliharaan
 Jumlah rata-rata yang dilukiskan untuk penambahan atau penghapusan baris perintah dari program yang diubah
 Jumlah rata-rata yang dihabiskan per bahasa
 Persentase permintaan pemeliharaan per tipe (lihat aliran tindakan)

 Any Questions?
End of Session

Tidak ada komentar: