Maintenance dan Evolution Software


🎯 1. Pengertian Maintenance & Evolution Software

https://images.openai.com/static-rsc-4/6vAgGR2kzTKAKZSr16AqllK2YFpV6peOINqOQGErVIZ0zHBDhtuLEWMNzLPPl8gktxaqnVzoaXtjC3XHMktaEgx3E5OvC-L-esVN-SpCpqxbCyWhnHxgshwlkuKqYp0XdjW7t-QKd_v43XxqEksDTw2J_e9vT1KNFtizxtPMdOl0PewWO4QamDXXBFXQYSwf?purpose=fullsize
https://images.openai.com/static-rsc-4/VW1m8AY-HELIqcb-ZobK0QgCyLD7L-wQT8XGEBfarij12t2JfCb70vjae7NHXk8AqcpSxmYoqIXCpwaZqYMHQfH9qIE2xdCxU2PPV7BGP-JFCosi2mfeFkMjU7wSkAMLXOZZbqR7uJ4lGrTS4RhIBgSBQylV9x7QzrcoT6xOIy2N2KEZcc7zLhdReVbJPSG4?purpose=fullsize
https://images.openai.com/static-rsc-4/vhuwFSRqvC5tLpwHpSIEWwfVuCFt5JCLSsHACVlI6KxN9081ANP4Y9h4lyqunpNZ1exy5ol-zJiEIIHXx_OmuNmghXjep5FUbNNbesZ1zgLUBOxWHedWFjGpjYCVGsNgXNRDmmWH7ne-wNxvz_0WVbQN0Rbfch1f4QSrlCNN1nmTcDE_dUK1ig2hvZdkCkHv?purpose=fullsize

7

Maintenance dan Evolution Software adalah tahap dalam Rekayasa Perangkat Lunak yang berfokus pada pemeliharaan, perbaikan, dan pengembangan lanjutan perangkat lunak setelah sistem diimplementasikan.

πŸ’‘ Narasi:

Setelah software dirilis, pekerjaan belum selesai. Justru sebagian besar biaya dan waktu dalam siklus hidup software dihabiskan pada tahap maintenance dan evolution. Sistem harus terus diperbaiki dan dikembangkan agar tetap relevan.


🎯 2. Tujuan Maintenance Software

TujuanPenjelasan
Memperbaiki bugMengatasi error setelah rilis
Menyesuaikan sistemAdaptasi lingkungan baru
Meningkatkan performaOptimasi sistem
Menambah fiturEvolusi kebutuhan user
Menjaga stabilitasSistem tetap berjalan

πŸ’‘ Narasi:

Tujuan utama maintenance adalah memastikan software tetap berjalan optimal dan sesuai kebutuhan pengguna yang terus berubah.


πŸ”„ 3. Posisi Maintenance dalam SDLC

https://images.openai.com/static-rsc-4/h9S5zJu57OMFnS5shtraL-fkn1Xmo9fbo2noeAvOioGEtXlTnq97NVbPOrDxHppLFrzIy4mJaKEYY3cXWvpp79uXQf3E9O1jdW9jep3EXkmklpB__OC6DSodONdVWufPfDdbs5WNktJYpMOAet1soEFe9X0J1AHo6utpYM5UrMmXySC_8XceGPn2jmp4B1ke?purpose=fullsize
https://images.openai.com/static-rsc-4/PG6HKMBqZRC9JfAAbnwQiJp3A-RohqJTBTJSeKGskx6_NZZ4U_wSjCqPvw6a1uZXh4-BTtybbnJB_D7tdpbgqwgkJP7h375G9rK4Gbqfpyx9jSV2lSpp0q_ibimKzDmDy2pKprWuIWvbtEod3Yw2EmCFKjwPV0M4TNfu5HhjrfDeeXlfVHCm0574r-iO4wrZ?purpose=fullsize
https://images.openai.com/static-rsc-4/AXuQ26JdIMBHO0lhSR-EdpXrSQ2TNCWnsTP-lKWKBVfxHamVqlCxEfBQQTMmSJjgyZM7RnwxWpSU-FdpX_WitIanQV2uj7sKAGXsEJbGsaIoaFlUEqTWAIi6d1vYBBCEoeVDjwx8B2ioIF-HSgJ8td9bCoolrkfsm7lKDxAN44piXoJqezr6iMb2wfFDpaYV?purpose=fullsize

7

πŸ“Œ Posisi:

  • Tahap terakhir dalam SDLC
  • Bersifat berkelanjutan

πŸ’‘ Narasi:

Maintenance bukan tahap akhir yang statis, tetapi proses siklus yang terus berulang mengikuti kebutuhan sistem.


🧩 4. Jenis-Jenis Maintenance

https://images.openai.com/static-rsc-4/82Ugr5vUaMVck_-XoQwmj2MkpoHywYMIppeX9UPhL4W2EF9sypkhRB-D-w4Vm_5EOJB6IZYZsHuXpN78fLo1-ZJutV2sacQgbYqkV5Q6wyj_EnQa75I3MICqfkUHvzm_dwpUDTB7FnbV809xkf45K87LDzmvIbZTDsMbA6Uwpg_cxO5IkAUjEQuITDui7Pkf?purpose=fullsize
https://images.openai.com/static-rsc-4/mUs6J5kRc5b1XRKZA755GLwW9bVuANkj5XVLLl9CXTc2eo5AJ1YtfG6uzxIQ-e5e0BQ2B-l1BulYKeUi4NpknFIslWdYgFJcHIh7281JEptFpuOJddfxXcCtihdfstXOUuc4q6Q2c8JSruXX4WZvvNeMvPEFvUuGAq2REmezj8feKxAGsS4Z-ob486JsJt1c?purpose=fullsize
https://images.openai.com/static-rsc-4/_Nix0ZhJTUtn_NHf40N8MuQYm2F9x4iP7axKkzomWh2gX1lD50ISMDX_a_mUFRCHxDKb_h58XzMeKQ4OkiA-5DWdxN-nMIgs_5s1otKDN7q2ecz8pPlpL4AI21cexS2AWLrkcMzZQQXRlnECWM6nefEcIjK4una1lCY3v6ueqPAz8kO3AXNHI-tBTEoyFQXJ?purpose=fullsize

6

πŸ“Œ Jenis:

  1. Corrective Maintenance
    • Perbaikan bug/error
  2. Adaptive Maintenance
    • Penyesuaian dengan lingkungan baru
  3. Perfective Maintenance
    • Peningkatan fitur/performa
  4. Preventive Maintenance
    • Pencegahan masalah di masa depan

πŸ’‘ Narasi:

Setiap jenis maintenance memiliki tujuan berbeda, mulai dari perbaikan hingga pengembangan.


πŸ› οΈ 5. Corrective Maintenance

https://images.openai.com/static-rsc-4/VYA_UwQ6eSGIxXlk2KsuOdHpEWtQdi-fc03sU2qLQIzNaY6fcq9UzhFQjJ1gIvZFwUrVXBkuTI55USPkWak00WYl2mdiYLjhiTEdxkR8lemn0eZRu3spU1bbDanwxxN0DJL_b5Vzo6GohulkrU089R-0xnyUTl1c_kv-Ed7Pm-yFWp9cIfTjP7Zklzf7OTrs?purpose=fullsize
https://images.openai.com/static-rsc-4/76PgUfbeoYv-2CgPdoNFOvNMLYKIHboem80Gzzox1TNK5cXjXXBxkZQccCGOaTKg-TxWA7DinshDDZLvypEAi6rnfSoODCwh3mOjoy3HAi6sPqjSNwuKGQUXz5sEt9CbkWV6nkONU1xP3qriIz5PM6PmT6y5Fbm4sN7NGgJzO3EBA6YAvMFoYJfadLQYumBu?purpose=fullsize
https://images.openai.com/static-rsc-4/JdHyv_NJtiLMODpLIzsD-20NRgPV8-Mgu1fZw1MywWHpNwiGuXLMYwks94Ixqqo8R6o2heST8BB1DM8otC-AhY9czKLQcK1VQJ8FuZQDTxZRQxKDJVPkF8E-qZurqGq6eweHQ8RMB2oezn9r46I5pimFskpxteXwIjZ9uGhnKlS_YCZxmzvzPYo_gKuiPik3?purpose=fullsize

7

πŸ“Œ Fokus:

  • Perbaikan bug
  • Debugging

πŸ’‘ Narasi:

Jenis ini paling umum dilakukan setelah sistem digunakan oleh user.


πŸ”„ 6. Adaptive Maintenance

https://images.openai.com/static-rsc-4/AsMYzxTZU_WFdOYYV42zknyhtF8of61i8iV-TFrZ2-nqUm6o_-wEVtdWPCGII_6j7ppfDhXDKVdyH1r76Debd9AV1E69lySS4PnNBB4ncLZ-6FEJFAmiuzyd336D4ZmcAM36ZdSDhp4y9t0_n7GI_heu1J530ik7nnBO52h4P-x0h2H6vCklnsmO2eyYgRGi?purpose=fullsize
https://images.openai.com/static-rsc-4/0_hiGP0GSUNDo4aBb4oBTXwl117H1WyPakP7aA1LGBn7D6IqrrO5oOQbhfb5wZjuahtPsJTL0TMLD9KQDiTA8_IzIT8ZQOVe9tIAqQmxC3Q8FrlHPczITLiK43r_clUvcc1Zd8jmkEBgN5StzTJebg9PPgh5_x5EAN2N6DKv2hGygTzcFQuLtJw81eJ5pdFL?purpose=fullsize
https://images.openai.com/static-rsc-4/QCEUt1iziLrGM9E8FFuuy4oVhsh4SoK6DwC6nJXUAR15kUalQtxf-yz89rncqpJfEavXwQeCzEiEB5nj2TUK4cLYN7mf-GPgUkRUjPogwTlw4U0_Jc-YTxeU4fXHXKum83iVRtcKicN_jDR1v8DVmNEGWechJ287B-5fv8HatwwnQRmM8rhdLAyao6VSJoKq?purpose=fullsize

6

πŸ“Œ Fokus:

  • Update sistem operasi
  • Migrasi platform

πŸ’‘ Narasi:

Software harus mengikuti perkembangan teknologi agar tetap berjalan.


πŸš€ 7. Perfective Maintenance

https://images.openai.com/static-rsc-4/9dutUi_7GFCfc9mZedvU_96iT_VOmgahJ92-OKWMOzfvwDafdyk5vpm0GwWdFa9ow4WqZHEeCIETHNdolPdtE52jI-ZlTEpW_0UuoAU70tqSAJVAQGi2Kdvwh2WDMxaTWw5XN0Q-BAFbB1a0LrZ9w7GH8kI8tSpDCdfPDdmZzCDHrdcfXriRJkp8bj-kOKZv?purpose=fullsize
https://images.openai.com/static-rsc-4/uGhYMTgWMJ2gGiVnhwsoX3uj5YYoJ3YuaRe4mg-nt-aOigzXaQF7d3bMzVK9ryM-L2hWVp2mn4lOc66FzsDiyTzC4GByTDSp9wEnFUfarl44a_PONdJMDAZCMQ_fQTRXJxIzmoF1Kw0AdKRLw7m0Ypj6QRj6Oj9u3JLP9XHsgn4H71lnPJ-UaM1m1pka0N_c?purpose=fullsize
https://images.openai.com/static-rsc-4/bj6BD882dtzYZDrQ941xAttNdyZDWU8Wtdm1lv-J55m6cGaZHLmchMMFVby0EFdUtjyiPhKXg8mE8987mqWDO-_3qS24YEhFGrVxmNVUqW49oNVeEO9s-wyKfOQ-SkDLHqJ3e-fVqvPt6asnBd5KabiW8e5wO0EumMPoCwV2-Xj_vFQX89rM6JwcwYscT0uH?purpose=fullsize

7

πŸ“Œ Fokus:

  • Penambahan fitur
  • Optimasi performa

πŸ’‘ Narasi:

Jenis ini berhubungan langsung dengan peningkatan kepuasan pengguna.


🧠 8. Preventive Maintenance

https://images.openai.com/static-rsc-4/ohitmbQU1U6dmvSoLbKuyL_5x3a6FaOUOkdCNzd2-91hmkLaffFNmiaQ0d3KvyzFVPuA1FOb5IuFJCIR4q_uc8toO_ta9TW5wPEwAsbA8CxFIi3eyrDhyrsAzGCMngbpiS927j4pyxZhWaEuJiJvrjCwe1TbaPFRtJWgUFmHW5vWZMNKWNZNni-A7enqpW-M?purpose=fullsize
https://images.openai.com/static-rsc-4/CkEpP54P0LhAtI1DE2Z7BJG1QPCGvpJcyImpWSxevIdOW3YhI2J8d3SuikVlyOMXpbWNXCxsRI_UZ5LN40YTXKVeV8NpCAXbtMzLENee6KmUhTiqAhCi8PSqn-nipG9mKrJimvnRVYrAYQi9vx1E3p69_6mpncG2ghgajxUI-ew8p4n8RsqMebmyFGlTZ_TG?purpose=fullsize
https://images.openai.com/static-rsc-4/z2AMgFQRyOCAnl5Js4CRDuMo8FMKF2qZD0VCO5vUJ32Npoddy3FPyCagHdQ4gwouwDzP6n9nTirDgD822QvsSa1wy-3kcd_avyG3XlS0Wg4iv7OlqxKaqxDdE5qkA8QWAWNJTNS_DNzBgEFz1ySGlW0yTktxYVdILN8TC_kqsRsZebDt3uaHorXNvrDpkT8y?purpose=fullsize

6

πŸ“Œ Fokus:

  • Refactoring kode
  • Pencegahan error

πŸ’‘ Narasi:

Dilakukan untuk menghindari masalah di masa depan.


πŸ“Š 9. Perbandingan Jenis Maintenance

JenisTujuanContoh
CorrectivePerbaikanBug fix
AdaptivePenyesuaianUpdate OS
PerfectivePeningkatanFitur baru
PreventivePencegahanRefactoring

πŸ”„ 10. Software Evolution

https://images.openai.com/static-rsc-4/ox4fG0Gejf1wNbpc_VXyg5GRoZvCzuTIqUxFaFM0Obq1PWg9jPx1EWh1so2f_rDHSfyFQoFcmLYYBgmqBZF-wwv6Q5MYtUYu7UDGsMi8c85HHqvytHtpUNsKxLNWN808YjS4-I7smFRm30bTHh-d2OKxAQy5aTLRqIu7-p7g6CQCVeb4iaSZGR9GcDF4FwOE?purpose=fullsize
https://images.openai.com/static-rsc-4/VW1m8AY-HELIqcb-ZobK0QgCyLD7L-wQT8XGEBfarij12t2JfCb70vjae7NHXk8AqcpSxmYoqIXCpwaZqYMHQfH9qIE2xdCxU2PPV7BGP-JFCosi2mfeFkMjU7wSkAMLXOZZbqR7uJ4lGrTS4RhIBgSBQylV9x7QzrcoT6xOIy2N2KEZcc7zLhdReVbJPSG4?purpose=fullsize
https://images.openai.com/static-rsc-4/OoUXWxek6sJeXHkmTUOOWmE7OjhIsTWKeJROIrWkmUKTdHvNGXtIH4TrnX3dCIo9QmYmmPWXJZKo9-BnS6LBr80JS_dqmWo1y7icsASPqQHrti2hEP4dTMU3xh453fsn6yhgXOWgYEgs21fccuChVdxT0cHrnBb09NIcmOhiRTagv9Hc6brF0SmNcrjd6Wvz?purpose=fullsize

8

πŸ“Œ Konsep:

  • Software berkembang seiring waktu
  • Berdasarkan feedback user

πŸ’‘ Narasi:

Software yang tidak berevolusi akan menjadi usang dan ditinggalkan pengguna.


πŸ“ˆ 11. Hukum Evolusi Software (Lehman’s Laws)

πŸ“Œ Contoh:

  • Software harus terus berubah
  • Kompleksitas meningkat
  • Kualitas menurun jika tidak dirawat

πŸ’‘ Narasi:

Hukum ini menjelaskan bahwa software bersifat dinamis dan harus terus dikembangkan.


⚠️ 12. Tantangan Maintenance

TantanganPenjelasan
Kode lamaSulit dipahami
Dokumentasi kurangSulit dikembangkan
Kompleksitas tinggiRisiko error
Biaya tinggiMaintenance mahal

🧰 13. Tools Maintenance

https://images.openai.com/static-rsc-4/Fa_dpH9gQWz_PUcO_C1pvunFfTb4T1RSV8rqSawkwKEvDqjBSa8lO1xl2G2UwSzxO9WsNTqJ9rbhxfU9WZGczYaDoAY-Qh4dw6KYtFbfyuk1PQWy3R8qkoVA3wIJ1aRSbtNu3riwn0ANILYks1_JyxQD9yELM6X7yMRyRSL3KeQqzhTt3VdOwvdKmGyagBxk?purpose=fullsize
https://images.openai.com/static-rsc-4/uCj6HhnIsqLr_BJxiuQnYj72bpc120KJgNhq9e2Pr97bBwcjt_mDaUrxTp6q2_cyrfu2ZcG2P3dq8SnPsKD74nNBu8ue1RDraOn35z7wwGNz0mZnDp7_X3qCPMip-q4_Sr2QSZvhV5el4RqrmZv9mNpN1GWZ7gARDg2YFGh8OS9qvheD8Y5WKeW5hdjT0DpA?purpose=fullsize
https://images.openai.com/static-rsc-4/28UHyABriGKxcv9wpnWzJIbZXgMXfyJqW8tcd_1kgIoye_Mu1lD9bHtg-Bsj-RTs-xenYZUJrGGiHFycQsuIfmoj86dii5lbphFePjccg6lSiXm4PQOsgbySC-Xhnro0KiV8E_y8rgo4WSzbnRjNkOrwoIkkBvA-oCR6G2ayGdKyrpvy3Fi0frsF0hhNe04L?purpose=fullsize

6

πŸ“Œ Tools:

  • Git
  • Jira

πŸ’‘ Narasi:

Tools membantu dalam pelacakan bug dan pengelolaan perubahan sistem.


πŸ§ͺ 14. Studi Kasus

πŸ“Œ Sistem Akademik:

  • Bug nilai β†’ corrective
  • Update kurikulum β†’ adaptive
  • Tambah fitur KRS β†’ perfective

πŸ’‘ Narasi:

Satu sistem dapat mengalami berbagai jenis maintenance sekaligus.


πŸ“Š 15. Alur Maintenance

TahapOutput
Identifikasi masalahBug/feedback
AnalisisPenyebab
PerbaikanUpdate sistem
TestingValidasi
ReleaseVersi baru

🧠 16. Best Practice

  • Dokumentasi lengkap
  • Gunakan version control
  • Lakukan testing setelah update
  • Refactoring rutin
  • Monitoring sistem

πŸŽ“ 17. Kesimpulan

  • Maintenance adalah tahap terpanjang dalam SDLC
  • Software harus terus berevolusi
  • Terdapat berbagai jenis maintenance
  • Penting untuk menjaga kualitas sistem

πŸ’‘ Narasi Penutup:

Mahasiswa harus memahami bahwa software yang baik bukan hanya yang berhasil dibuat, tetapi yang mampu bertahan dan berkembang dalam jangka panjang.


πŸ“Œ 18. Latihan / Diskusi

  1. Apa itu software maintenance?
  2. Sebutkan jenis maintenance!
  3. Apa itu software evolution?
  4. Mengapa maintenance penting?
  5. Berikan contoh maintenance!

πŸ“Ž 19. Tugas Praktik

  • Analisis maintenance sistem kampus
  • Buat laporan bug
  • Rancang update fitur