Maintenance dalam pengembangan Software System
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, meliputi :
1. penambahan fungsi-fungsi baru
2. perbaikan tampilan dan modus interaktif
3. perbaharui dokumen ekstemal
4. perbaharui dokumentasi internal
5. perbaharui
karakteristik perfomansi dari sistem
Adaptasi produk
dengan lingkungan mesin yang baru, meliputi :
1. pemindahan perangkat lunak ke mesin yang berlainan
2. modifikasi untuk dapat mempergunakan protokol atau disk
drive tambahan.
Pembetulan permasalahan
yang timbul, meliputi :
1. pembenaran
kesalahan yang timbul setelah produk perangkat lunak dipergunakan oleh
user
(pemakai).
Aktivitas pemeliharaan menghabiskan biaya terbesar
dari seluruh anggaran pengembangan atau pembuatan perangkat lunak. Hal ini merupakan yang sering kali
terjadi jika pemeliharaan menghabiskan 70% Bari seluruh biaya pengembangan
perangkat lunak. Sedangkan pada pase pemeliharaan sekitar 60% digunakan untuk
anggaran penambahan atau perbaikan perangkat lunak, sisanya untuk adaptasi atau
pembetulan. Dari besarnya biava yang dihabiskan untuk pase pemeliharaan maka
tidak heran apabila tujuan dari pengembangan atau pembuatan perangkat lunak
adalah menghasilkan sistem perangkat lunak yang dapat diandalkan dan mudah
dalam pemeliharaannya. Atribut utama dari perangkat lunak yang mudah dalam
pemeliharaan adalah:
- Perangkat lunak
dikerjakan per modul
- Perangkat
lunak mempunyai kejelasan
- Dokumentasi
internal yang baik dan jelas
- Dokumen-dokumen
pendukung lainnya
Alasan biaya pemeliharaan lebih tinggi dari pada biaya pengembangan, berikut adalah beberapa faktor yang menyebabkannya :
1. Stabilitas Tim, biasanya tim pengembang dan tim
pemelihara adalah orang yang berbeda karena tim pengembang biasanya sudah lari
ke proyek baru sehingga tim pemeliharanya tidak begitu paham atas sistem yang
dikembangkan.
2. Tanggung Jawab Kontrak, kontrak bagi pengembang dan
pemelihara kebanyakan terpisah atau diberikan kepada perusahaan yang berbeda
dan bahkan bukan pengembang sistem aslinya, akibatnya tidak ada insentif bagi
pengembang untuk membuat sistem yang mudah untuk diubah.
3. Keahlian Staff, staff pemelihara kebanyakan tidak
berpengalaman dalam hal pemeliharaan software dan staff pemelihara sering
diaangap tidak memerlukan keahlian yang mendalam di bidang software.
4. Umur dan Struktur Program, program yang sudah tua biasanya
strukturnya sudah terdegradasi oleh perkembangan jaman sehingga sangat sulih
dipahami oleh pemelihara.
Pemeliharaan perangkat lunak jika ditinjau dari
daur siklus pengembangan perangkat lunak dapat dikelompokkan sebagai
herikut:
- Perluasan dan
analisis merupakan perwujudan kembali dari fase analisis pada daur
siklus pengembangan.
- Pembenaran
merupakan perwujudan kembali dari fase analisis, perancangan
dan penerapan.
Selain itu juga seluruh alat
bantu yang digunakan pada pengembangan perangkat lunak dapat digunakan pada
pemeliharaan perangkat lunak.
Aktivitas
analisis selama pemeliharaan perangkat lunak meliputi: Pengertian skope dan
pengaruh yang ditimbulkan akibat dari perubahan, selain itu juga batasan (kendala)
yang terjadi akibat perubahan. Sedangkan pada perancangan dan fase pemeliharaan
meliputi perancangan kembali dari perubahan-perubahan yang diinginkan, dimana
perubahan ini akan diterapkan sehingga menyebabkan dokumentasi internal dan
program sumber juga harus diperbaharui, dan test case yang baru harus dirancang
untuk memulai keakuratan hasil modifikasi, Selama itu juga dokumen pendukung
(keperluan, spesifikasi perancangan, rencana uji coba, prinsip pengoperasian,
petunjuk pemakaian) harus diperbaharui untuk memperlihatkan hasil
perubahan.
Pemeliharaan Perangkat Lunak adalah
proses umum pengubahan/pengembangan perangkat lunak setelah diserahkan ke
konsumen. Perubahan mungkin berupa perubahan sederhana untuk membetulkan error
koding atau perubahan yg lebih ekstensif untuk membetulkan error
perancangan/perbaikan signifikan untuk membetulkan error spesifikasi/akomodasi
persyaratan baru.
Menurut McCall (1997) kriteria yang mempengaruhi kualitas software terbagi menjadi tiga aspek penting yaitu :
1. Sifat sifat operasional dari software (Product Operations).
2. Kemampuan software dalam menjalani perubahan (Product Revision).
3. Daya adaptasi atau penyesuaian software terhadap lingkungan baru (Product Transition).
Jenis-Jenis
Pemeliharaan Software
1. Corrective
(perubahan yang dilakukan guna memperbaiki kesalahan)
Perawatan perangkat lunak
korektif melibatkan mengembangkan dan menyebarkan solusi untuk masalah
("bug") yang timbul selama penggunaan program perangkat lunak.
Pengguna komputer akan melihat masalah kinerja dengan perangkat lunak, seperti
pesan error yang datang pada layar atau program pembekuan atau menabrak,
berarti perawatan perangkat lunak perbaikan perlu dilakukan. Seringkali
perbaikan ini secara permanen memecahkan masalah, tetapi tidak selalu. Beberapa
perbaikan bertindak sebagai solusi sementara sambil pemrogram komputer bekerja
pada solusi yang lebih permanen.
2. Perfective
(perubahan untuk meningkatkan kualitas sistem tanpa merubah fungsinya)
Tidak ada program
perangkat lunak yang berisi nol kekurangan atau area yang perlu diperbaiki.
Perawatan perangkat lunak perfektif melibatkan pemrogram komputer bekerja untuk
meningkatkan cara fungsi program perangkat lunak atau seberapa cepat proses
permintaan. Programmer juga dapat terlibat dalam perawatan perangkat lunak
perfektif untuk meningkatkan tata letak menu perangkat lunak dan antarmuka
perintah. Terkadang programmer perlu melakukan pemeliharaan perfektif pada
perangkat lunak karena pengaruh luar, seperti peraturan pemerintah baru yang
mempengaruhi bagaimana bisnis beroperasi.
3. Adaptive
(perawatan berdasarkan perubahan lingkungan)
Bidang teknologi
terus berubah melalui hardware dan pengembangan perangkat lunak. Perawatan
perangkat lunak Adaptive mengatasi perubahan ini. Perubahan dalam kecepatan
prosesor, misalnya, akan mempengaruhi bagaimana perangkat lunak melakukan pada
sebuah komputer. Software berinteraksi dengan program perangkat lunak lain pada
komputer atau jaringan, yang berarti perubahan dalam satu program dapat
memerlukan perubahan dalam program lain. Seorang pengguna akhirnya akan
memperkenalkan perangkat lunak baru ke komputer atau jaringan, yang juga dapat
mempengaruhi bagaimana perangkat lunak lain yang sudah ada beroperasi.
4. Preventative
(Meningkatkan reliability, future maintainability, future enhancement
(reverse engineering dan re-engineering))
Ketika
pemrogram komputer terlibat dalam perawatan perangkat lunak preventif mereka
mencoba untuk mencegah masalah dengan program perangkat lunak sebelum terjadi.
Programmer berusaha mencegah pemeliharaan korektif sebanyak mungkin, sementara
juga mengantisipasi kebutuhan pemeliharaan adaptif sebelum pengguna mengalami
masalah. Programer komputer yang pengujian perangkat lunak, sebagai perusahaan
otomotif menguji kendaraan yang mereka buat, untuk memastikan perangkat lunak
dapat menangani beban data yang tinggi dan operasi stres lain tanpa masalah.
Programmer komputer juga menguji perangkat lunak dengan pengguna program lain
kemungkinan akan digunakan pada komputer mereka, membuat masalah kompatibilitas
yakin tidak muncul.
Manfaat Pemeliharaan Software
Ada beberapa manfaat dari pemeliharaan software, yaitu
sebagai berikut :
1. Dapat memastikan kesesuaian dengan kebutuhan
fungsionalitas teknis software.
2. Dapat memastikan kesesuaian kebutuhan pihak
manajerial mengenai jadwal dan budget.
3. Dapat meningkatkan efisiensi software berikut juga
aktifitas pemeliharaannya.sumber :
https://aninditasf.blogspot.com/2018/06/maintenance-dalam-pengembangan-software.html?m=1
http://alia52.blogstudent.mb.ipb.ac.id/files/2014/10/Urgensi-Maintenance-dalam-Pengembangan-Software-System.pdf
Komentar
Posting Komentar