Software maintenance meliputi kegiatan untuk memperbaiki, meningkatkan, dan mengoptimalkan software setelah implementasi untuk menjaga fungsi dan kesesuaian dengan kebutuhan pengguna. Ada empat jenis maintenance: corrective untuk memperbaiki bug, adaptive untuk menyesuaikan perubahan lingkungan, perfective untuk meningkatkan kualitas, dan preventive untuk mencegah kerusakan.
2. Definisi
• Kegiatan yang dilakukan untuk
memperbaiki, meningkatkan, dan
mengoptimalkan software setelah software
tersebut telah selesai dikembangkan dan
diimplementasikan.
5. Corrective Maintenance
• Jenis maintenance yang dilakukan untuk
memperbaiki kesalahan atau bug pada
software yang telah diimplementasikan.
• Tujuannya: memperbaiki kesalahan atau
bug pada software secepat mungkin agar
software dapat berfungsi sesuai dengan
harapan pengguna dan tidak mengganggu
operasi bisnis.
6. Tahap Corrective Maintenance
• Identifikasi kesalahan atau bug pada
software.
• Pemecahan masalah dan penyelidikan
penyebab kesalahan atau bug.
• Pengembangan solusi untuk memperbaiki
kesalahan atau bug.
• Implementasi solusi ke dalam software
yang terkait.
• Pengujian dan verifikasi hasil perbaikan.
7. Adaptive Maintenance
• Jenis maintenance yang dilakukan untuk
mengadaptasi atau memodifikasi software
agar tetap berfungsi dengan baik pada
lingkungan teknologi atau bisnis yang
berubah.
• Tujuannya: memastikan bahwa software
tetap berfungsi dengan baik dalam
menghadapi perubahan lingkungan yang
terjadi.
8. Tahap Adaptive Maintenance
• Analisis perubahan lingkungan dan
kebutuhan yang terkait dengan software.
• Identifikasi bagian software yang perlu
dimodifikasi atau diadaptasi.
• Pengembangan solusi untuk mengadaptasi
atau memodifikasi software.
• Implementasi solusi ke dalam software
yang terkait.
• Pengujian dan verifikasi hasil modifikasi.
9. Predictive Maintenance
• Jenis maintenance yang dilakukan dengan
menggunakan teknologi dan analisis data untuk
memprediksi potensi kegagalan atau kerusakan
pada peralatan atau sistem sebelum terjadi
• Tujuannya: mencegah kegagalan atau kerusakan
pada peralatan atau sistem yang dapat
mengganggu operasi bisnis dan memperbaikinya
sebelum terjadi kerusakan yang lebih serius atau
memerlukan perbaikan yang lebih mahal.
10. Tahap Predictive Maintenance
• Pengumpulan data dan pemrosesan data.
• Analisis data dan identifikasi tren atau pola
yang dapat menunjukkan potensi
kegagalan atau kerusakan.
• Pengembangan solusi untuk mencegah
kegagalan atau kerusakan.
• Implementasi solusi ke dalam peralatan
atau sistem yang terkait.
• Pengujian dan verifikasi hasil perbaikan.
11. Preventive Maintenance
• Jenis maintenance yang dilakukan secara
teratur dan terencana untuk mencegah
kerusakan atau kegagalan pada peralatan
atau sistem
• Tujuannya: menghindari kerusakan atau
kegagalan yang dapat mengganggu operasi
bisnis dan memperpanjang umur peralatan
atau sistem.
12. Tahap Preventive Maintenance
• Identifikasi peralatan atau sistem yang perlu
diperiksa secara teratur dan terencana.
• Pengembangan jadwal pemeriksaan dan
perawatan yang teratur.
• Pelaksanaan pemeriksaan dan perawatan sesuai
dengan jadwal yang telah ditentukan.
• Penggantian atau perbaikan komponen yang
rusak atau aus sesuai dengan kebutuhan.
• Pengujian dan verifikasi hasil perbaikan.
14. Program Comprehension
• Kemampuan pemelihara software dalam
memahami struktur dan perilaku dari sebuah
program yang sudah ada.
• Program comprehension melibatkan beberapa
aspek, termasuk pemahaman tentang struktur
program, pemahaman tentang algoritma dan
prosedur yang digunakan dalam program, dan
pemahaman tentang ketergantungan dan
interaksi antara bagian-bagian program yang
berbeda.
15. Reengineering
• Proses memperbarui atau mengubah
software yang sudah ada dengan tujuan
memperbaiki kualitas, kinerja, dan
fungsionalitasnya
• Tujuannya: mengurangi kompleksitas dan
meningkatkan kualitas software dengan
cara mengubah struktur, arsitektur, atau
teknologi yang digunakan.
17. Reverse Engineering
• Teknik untuk memahami bagaimana
sebuah software bekerja dengan mengkaji
kembali kode sumbernya
• Tujuannya: memperbaiki dan meningkatkan
software yang telah ada.
18. Tahap Reverse Engineering
• Analisis source code
• Rekonstruksi desain software
• Identifikasi bagian software yang perlu
diperbaiki
• Implementasi perbaikan
19. Migrasi
• Proses memindahkan aplikasi atau sistem
dari satu lingkungan ke lingkungan lain.
• Tujuannya: meningkatkan kinerja, efisiensi,
dan keamanan sistem atau aplikasi yang
ada, atau untuk memenuhi kebutuhan
bisnis yang berubah.
• Migrasi dapat dilakukan pada tingkat
hardware, software, atau data
21. Tahap Retirement
• Identifikasi software yang sudah tidak efektif atau
tidak lagi digunakan.
• Evaluasi konsekuensi penghentian dukungan
atau pemeliharaan terhadap bisnis atau
organisasi.
• Pengembangan rencana penggantian software
yang sudah di-retire.
• Pelaksanaan penggantian software yang sudah
di-retire dengan software yang lebih baru atau
sistem yang lebih modern.