DEFINISI PEMELIHARAAN PERANGKAT LUNAK
KATEGORI PEMELIHARAAN PERANGKAT LUNAK
PROSES PEMELIHARAAN PERANGKAT LUNAK
MODEL PEMELIHARAAN PERANGKAT LUNAK
BIAYA PEMELIHARAAN PERANGKAT LUNAK
1. Riza Muhammad Nurman Wednesday, May 16, 2018
Click to edit Master title style
BAB 9
SE
FACULTY
Riza Muhammad Nurman
SOFTWARE ENGINEERING
Pemeliharaan Perangkat Lunak
2. Riza Muhammad Nurman Wednesday, May 16, 2018
Click to edit Master title styleCONTENT
• DEFINISI PEMELIHARAAN PERANGKAT LUNAK
• KATEGORI PEMELIHARAAN PERANGKAT LUNAK
• PROSES PEMELIHARAAN PERANGKAT LUNAK
• MODEL PEMELIHARAAN PERANGKAT LUNAK
• BIAYA PEMELIHARAAN PERANGKAT LUNAK
3. Riza Muhammad Nurman Wednesday, May 16, 2018
Click to edit Master title styleDEFINISI
suatu aktivitas yang sangat luas yang sering digambarkan mencakup semua pekerjaan yang
dibuat di suatu sistem perangkat lunak setelah perangkat lunak beroperasi
keseluruhan dari aktivitas yang diperlukan yang menyediakan dukungan penghematan bagi
suatu sistem perangkat lunak
1. Aktivitas prapenyerahan perencanaan untuk operasi prapenyerahan, keterdukungan,
dan penentuan logistic
2. Aktivitas pascapenyerahan modifikasi perangkat lunak, pelatihan & operasi bantuan
proses dari pemodifikasian suatu komponen atau sistem perangkat lunak setelah
penyerahan kepada suatu kesalahan yang benar, peningkatan pencapaian atau atribut yang
lain, atau penyesuaian kepada suatu lingkungan yang berubah
The maintenance process contains the activities and tasks of the maintainer. This process is
activated when a system undergoes modifications to code and associated documentation
due to an error, a deficiency, a problem, or the need for an improvement or adaptation. The
objective is to modify an existing system while preserving its integrity. Whenever a software
product needs modifications, the development process is invoked to effect and complete the
modifications properly. The process ends with the retirement of the system
Martin, 1983
Pigoski, 1997
IEEE Std. 610.12,
1990
ISO/IEC 12207,
2005
4. Riza Muhammad Nurman Wednesday, May 16, 2018
Click to edit Master title style
Lientz dan Swanson (1980)
KATEGORI
Korektif
Adaptif
Perspektif
Pigoski (1997)
Korektif
Peningkatan
• Pemeliharaan korektif (corrective), meliputi semua
perubahan yang dibuat dengan mencabut secara
nyata kesalahan perangkat lunak.
• Pemeliharaan adaptif (adaptive), meliputi perubahan
yang diperlukan sebagai konsekuensi dari beberapa
mutasi di lingkungan tempat sistem harus beroperasi,
misalnya mengubah suatu sistem untuk membuat
sistem tersebut dapat berjalan pada platform
perangkat keras yang baru, sistem operasi, DBMS, TP
monitor, atau jaringan.
• Pemeliharaan perfektif (perpective), meliputi
perubahan yang dimulai dari permintaan pengguna,
contohnya pemasukan, penyisipan, penghapusan,
perluasan,dam pemodifikasian fungsi, penulisan ulang
dokumentasi, peningkatan kinerja, atau peningkatan
kemudahan penggunaan.
5. Riza Muhammad Nurman Wednesday, May 16, 2018
Click to edit Master title style
Pressman (1992)
KATEGORI - II
Korektif
Adaptif
Perspektif
Preventif
IEEE std. 1219-1998, 1998
Korektif
Adaptif
Perspektif
Darurat
modification of a software
product performed after
delivery to keep a computer
program usable in a
changed or changing
environment
reactive modification of a
software product performed
after delivery to correct
discovered faults
modification of a software
product after delivery to
improve performance or
maintainability
unscheduled corrective
maintenance performed to
keep a system operational
6. Riza Muhammad Nurman Wednesday, May 16, 2018
Click to edit Master title style
ISO/IEC 9000-3 (1991)
KATEGORI - III
Pemecahan
Masalah
Modifikasi
Antarmuka
Peningkatan
Pencapaian
• Pemecahan masalah, yang melibatkan pendeeksian,
analisis, dan koreksi dari ketidaksesuaian peranglat
lunak yang menyebabkan permasalahn operaisonal
• Modifikasi antarmuka, yang diperlukan ketika
perubahan atau penambahan dibuat dalam sistem
perangkat keras yang dikendalikan dengan perangkat
lunak
• Peningkatan pencapaian atau perluasan fungsional,
yang mungkin diperlukan oleh pembeli pada langkah
pemeliharaan
7. Riza Muhammad Nurman Wednesday, May 16, 2018
Click to edit Master title stylePROSES
• Basili et al (1996), membagi proses pemeliharaan
perangkat lunak menjadi 5 tahap, yaitu analysis/
isolation, design, implementation, testing, and
documentation.
• IEEE-1219, membagi proses pemeliharaan
perangkat lunak menjadi tujuh tahap
8. Riza Muhammad Nurman Wednesday, May 16, 2018
Click to edit Master title styleProblem/modification identification, classification,
and prioritization
• Tahap yang meminta perubahan (modification request (MR)) yang dikeluarkan oleh seorang
pengguna, pelanggan, seorang pemrogram, atau seorang
• Program manajer yang ditugaskan sebagai suatu kategori pemeliharaan, suatu prioritas, dan
suatu pengidentifikasi unik.
• Tahapan ini juga meliputi aktivitas untuk menentukan apakah akan menerima atau menolak
permintaan, dan untuk menugaskannya pada suatu batch dari jadwal modifikasi untuk
implementasi.
9. Riza Muhammad Nurman Wednesday, May 16, 2018
Click to edit Master title styleAnalysis
• Tahap ini merencanakan persiapan untuk perancangan, implementasi, pengujian
dan penyerahan
• Analisis dilakukan pada dua tingkatan, yaitu analisis kelayakan dan analisis yang
terperinci
– Analisis kelayakan mengidentifikasi solusi alternative dan menilai biaya-biaya dan
dampaknya
– Analisis yang terperinci menggambarkan kebutuhan untuk modifikasi, merencanakan
suatu strategi pengujian, dan mengembangkan sebuah rencana implementasi
10. Riza Muhammad Nurman Wednesday, May 16, 2018
Click to edit Master title styleDesign
• Modifikasi untuk sistem benar-benar dirancang pada tahap ini
• Tahap ini memerlukan penggunaan semua proyek dokumentasi dan sistem berjalan, basis
data dan perangkat lunak yang ada, dan keluaran dari tahap analisis
• Aktivitasnya meliputi identifikasi dari modul perangkat lunak yang dipengaruhi, modifikasi
dari dokumentasi modul perangkat lunak, penciptaan dari kasus-kasus pengujian untuk
rancangan yang baru, dan identifikasi dari pengujian regresi
11. Riza Muhammad Nurman Wednesday, May 16, 2018
Click to edit Master title styleImplementation
• Tahap ini meliputi aktivitas pengkodean dan pengujian unit, integrasi dari kode yang
dimodifikasi, integrasi dan pengujian regresi, analisis resiko, dan peninjauan ulang
• Tahap ini meliputi suatu test-readiness review untuk menilai kesiapan sistem dan pengujian
regresi.
12. Riza Muhammad Nurman Wednesday, May 16, 2018
Click to edit Master title styleRegression/system test
• Tahap ini digunakan secara bertahap dengan keseluruhan sistem yang diuji untuk
memastikan bahwa kebutuhan utamanya dimodifikasi
• Sebagai tambahan terhadap fungsionalitas dan pengujian antarmuka, tahapan ini meliputi
pengujian regresi untuk mengesahkan ada tidaknya kesalahan baru yang telah ditambahkan
• Terakhir, tahapan ini bertanggung jawab atas kesiapan pembuktian untuk menerima
pengujian.
13. Riza Muhammad Nurman Wednesday, May 16, 2018
Click to edit Master title styleAcceptance test
• Tingkat pengujian ini mempunyai kaitan dengan sistem yang terintegrasi secara penuh dan
melibatkan pengguna, pelanggan atau pihak ketiga yang ditunjuk oleh pelanggan.
• Penerimaan pengujian meliputi pengujian fungsionalitas, pengujian interoperabilitas dan
pengujian regresi
14. Riza Muhammad Nurman Wednesday, May 16, 2018
Click to edit Master title styleDelivery
• sistem yang dimodifikasi diluncurkan untuk operasi da instalasi.
• Tahap ini meliputi altivitas yang memberitahukan kepada masyarakat pengguna, melakukan
pelatihan dan instalasi, dan menyiapkan versi arsip untuk backup
15. Riza Muhammad Nurman Wednesday, May 16, 2018
Click to edit Master title stylePROSES ISO-12207 -1
• ISO-12207 Process implementation
rencana pengembangan & prosedur,
menciptakan prosedur untuk
penerimaan, perekaman, menjajaki
permintaan pemeliharaan, dan
menetapkan suatu antarmuka
organisasional dengan proses
manajemen konfigurasi.
16. Riza Muhammad Nurman Wednesday, May 16, 2018
Click to edit Master title stylePROSES ISO-12207 -2
• ISO-12207 Problem and modification analysis
analisis permintaan pemeliharaan,
salah satu dari laporan masalah atau
permintaan modifikasi, untuk
menggolongkannya, untuk menentukan
lingkupnya dalam hal ukuran, biaya-
biaya dan waktu yang diperlukan, dan
untuk menilai kepentingannya.
17. Riza Muhammad Nurman Wednesday, May 16, 2018
Click to edit Master title stylePROSES ISO-12207 -3
• ISO-12207 Modification implementation
Aktivitas ini memerlukan identifikasi
dari materi yang diperlukan untuk
dimodifikasi dan mengharapkan proses
pengembangan untuk benar-benar
menerapkan perubahan.
18. Riza Muhammad Nurman Wednesday, May 16, 2018
Click to edit Master title stylePROSES ISO-12207 -4
• ISO-12207 Maintenance review/acceptance
Tugas dari aktivitas ini untuk menilai
integritas dari sistem yang dimodifikasi
dan ketika organisasi pemeliharaan
manedapatkan persetujuan untuk
emyelesaikan permintaan pemeliharaan
tersebut. Beberapa proses
pendukungnya antara lain proses
jaminan kualitas, proses verifikasi, proses
validasi, dan proses tinjauan ulang
gabungan.
19. Riza Muhammad Nurman Wednesday, May 16, 2018
Click to edit Master title stylePROSES ISO-12207 -5
• ISO-12207 Migration
Aktivitas ini terjadi ketika sistem
perangkat lunak dipindahkan dari satu
lingkungan ke lingkungan yang lain.
Pemindahan tersebut diperlukan agar
rencana migrasi dapat dikembangkan
dan pengguna dari sistem diberi jarak
penglihatannya, suatu alas an mengapa
lingkungan lama tidak lagi didukung, dan
suatu uraian tentang lingkungan baru.
20. Riza Muhammad Nurman Wednesday, May 16, 2018
Click to edit Master title stylePROSES ISO-12207 -6
• ISO-12207 Software Retirement
Aktivitas pemeliharaan yang terakhir
terdiri dari pengunduran diri suatu sistem
peranglat lunak yang memerlukan
pengembangan dari suatu rencana
retirement dan pemberitahuan kepada
pengguna.
21. Riza Muhammad Nurman Wednesday, May 16, 2018
Click to edit Master title styleMODEL
Quick Fix Model Boehm’s Model
1 2
22. Riza Muhammad Nurman Wednesday, May 16, 2018
Click to edit Master title styleMODEL - II
Osborne’s Model
3
23. Riza Muhammad Nurman Wednesday, May 16, 2018
Click to edit Master title styleMODEL - III
Iterative Enhancement Model
Reuse Oriented Model
4
5
24. Riza Muhammad Nurman Wednesday, May 16, 2018
Click to edit Master title styleBIAYA
• Canning (1972) menyatakan pemeliharaan
perangkat lunak diibaratkan sebagai suatu
“gunung es terapung” untuk menggambarkan
masa yang maha besar. Dari biaya dan
permasalahan potensial yang sebenarnya
• Arthur (1988) menunjukkan bahwa
pemeliharaan perangkat lunak mengkonsumsi
60% dampai 80% dari siklus biaya yang
beredar. Survey ini juga menyatakan bahwa
biaya pemeliharaan sebagian besar berkaitan
dengan peningkatan (75 – 80%) daripada
pengkoreksian.
• Biaya pemeliharaan perangkat lunak secara
rutin di US diperkirakan sebesar lebih dari $70
(Sutherland, 1995).
• Contoh lainnya pada Nokia Inc. menggunakan
$90 million untuk mengatasi Y2K-bug
(Koskinen, 2003).
• Total biaya pemeliharaan perangkat lunak