Pemeliharaan merupakan fase akhir pada siklus hidup pengembangan software. Pengembangan software didefinisikan oleh IEEE sebagai berikut:
Modifikasi produk software setelah digunakan oleh user, untuk mengoreksi kesalahan, meningkatkan kinerja, atau atribut lainnya, atau untuk beradaptasi dengan produk baru atau lingkungan yang berubah.
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
“ Pemeliharaan sistem berawal begitu sistem baru menjadi operasional dan berakhir masa hidupnya”
Jenis Pemeliharaan :
•Pemeliharaan Korektif
Pemeliharaan perangkat lunak dengan melakukan perbaikan kesalahan yang terjadi pada perangkat lunak. Kesalahan dapat bersumber dari kesalahan perancangan, kesalahan logika atau kode program.
•Pemeliharaan Adaptif
Pemeliharaan perangkat lunak dengan melakukan penyesuaian fungsi-fungsi yang ada pada perangkat lunak sehingga lebih memudahkan user. Misalnya ada perubahan terhadap hardware atau sistem operasi yang digunakan, atau perubahan dari eksternal misalnya perubahan aturan bisnis, kebijakan pemerintah, atau alur kerja. Kebutuhan perubahan adaptif hanya bisa dikenali dan dimonitor oleh lingkungan tempat sistem itu dioperasikan.
•Pemeliharaan Penyempurnaan/perfektif
Pemeliharaan perangkat lunak dengan melakukan pengembangan / peningkatan terhadap perangkat lunak yang telah ada. Pemeliharaan perfektif mengacu pada peningkatan fungsionalitas atau kinerja sistem untuk meningkatkan layanan terhadap user. Software yang berhasil diterapkan biasanya cenderung mengalami pemeliharaan jenis ini, karena biasanya setelah berhasil menggunakan software, user cenderung ingin mencoba hal-hal baru diluar fitur yang sudah ditawarkan.
•Pemeliharaan Preventif
Pemeliharaan perangkat lunak dengan perombakan secara total atau melakukan perekayasaan kembali pada perangkat lunak yang ada.
Siklus Hidup Pemeliharaan Sistem (SMLC)
Tahapan SMLC :
•Memahami Permintaan Pemeliharaan
•Mentransformasi permintaan pemeliharaan menjadi pengubahan
•Menspesifikasi perubahan
•Mengembangkan perubahan
•Menguji perubahan
•Melatih pengguna dan melakukan test penerimaan
•Pengkonversian dan meluncurkan operasi
•Mengupdate Dokumen
•Melakukan pemeriksaan Pasca implementasi
Maintainability (Kemampuan pemeliharaan sistem)
Prosedur untuk peningkatan maintainability :
•Menerapkan SDLC dan SWDLC
•Menspesifikasi definisi data standar
•Menggunakan bahasa pemrograman standart
•Merancang modul-modul yang terstruktur dengan baik
•Mempekerjakan modul yang dapat digunakan kembali
•Mempersiapkan dokumentasi yang jelas, terbaru dan komprehensif
•Menginstall perangkat lunak, dokumentasi dan soal-soal test di dalam sentral repositor sistem CASE atau CMS (change management system)
Tiga pendekatan untuk menyusun Pemeliharaan sistem :
•Pendekatan Pemisahan: Pemeliharaan dan Pemeliharaan
•Pendekatan Gabungan: Menggabungkan personalia penyusun dan pemelihara menjadi sebuah kelompok utama sistem informasi
•Pendekatan Fungsional: Variasi dari pendekatan gabungan dengan memindahkan tenaga profesional sistem dari sistem informasi dan menugasi mereka pada fungsi bisnis untuk penyusunan maupun pemeliharaan.
Ada 5 CASE Tools yang membantu pemeliharaan sistem dari sistem lama dan membantu memecahkan kemacetan timbunan sistem baru yang belum dikerjakan :
•Rekayasa Maju (Forward engineering)
•Rekayasa Mundur (Reverse engineering)
•Rekayasa Ulang (Reengineering)
•Restrukturisasi (restrukturing)
•Sistem Pakar Pemeliharaan (Maintenance expert system)
Mengelola Pemeliharaan Sistem
•Menetapkan Kegiatan Pemeliharaan Sistem
•Mengawali dan merekam kegiatan pemeliharaan sistem tidak terjadwal (Form Maintenance Work Order : Pekerjaan yang diperlukan/dilakukan, waktu yang diperkirakan dibandingkan dengan waktu yang sebenarnya, kode pemeliharaan, biaya pemeliharaan)
•Menggunakan sistem perangkat lunak helpdesk
•Mengevaluasi aktivitas pemeliharaan sistem
•Mengoptimalkan program pemeliharaan sistem
Karakteristik Pemeliharaan
Karakteristik pemeliharaan dapat dibedakan menjadi 2 yaitu:
-pemeliharaan terstruktur dan tidak terstruktur
-biaya pemeliharaan
Pemeliharaan terstruktur dan tidak terstruktur
Aliran tindakan yang dilakukan sebagai tindakan dari permintaan akan pemeliharaan dapat digambarkan:
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 melakukan 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. Sedangkan pemeliharaan tidak terstruktur adalah:
-tidak mempunyai dokumentasi yang baik
-tidak menggunakan metodologi perancangan
-tidak mengikuti langkah-langkah di atas
Biaya pemeliharaan
Biaya pemeliharaan perangkat lunak yang dikeluarkan dalam fase pemeliharaan meningkat dengan cepat, hal ini dapat dilihat pada gambar berikut:
Selain biaya yang umum dalam fase pengembangan sering 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 fase pemeliharaan
-pengurangan kualitas perangkat lunak
-penambahan tenaga kerja Baru
Tidak ada komentar:
Posting Komentar