1. Defenisi Perawatan Perangkat Lunak
Pemeliharaan atau perawatan perangkat lunak merupakan proses memodifikasi system perangkat lunak atau komponennya sesudah penggunaan oleh konsumen untuk memperbaiki kerusakan, meningkatkan kinerja , manfaat, atau kualitas lainnya atau untuk menyesuaikan system perangkat lunak dengan lingkungan yang berubah. Definisi ini menegaskan bahwa proses pemeliharaan atau perawatan perangkat lunak merupakan proses yang bersifat post-deliferi, artinya dilakukan sesudah system perangkat lunak di gunakan oleh konsumen.
Dari defenisi tersebut kesimpulan yang sanggup diambil ialah perawatan perangkat lunak.
a. Adalah kegiatan PosT-delivery
- Tidak ada aktifitas perawatan dikala pembangunan PL.
- Aktifitas perawatan dilakukan sesudah product PL beroperasi/berproduksi.
b. Dilakukan dengan:
- Memperbaiki (to correct)
- Meningkatkan kinerja (to improve)
- Menyusuaikan (to adapt)
c. Dengan tujuan menjaga:
- Operasional
- Responsivitas
- Integrity
2. Kategori Perawatan Perangkat Lunak
Lientz dan swanson membagi pemeliharaan perangkat lunak kedalam tiga komponen, yakni pemeliharaan korektif, adaptif dan perfektif.
a. Pemeliharaan korektif, meliputi semua perubahan yang dilakukan untuk menghilangkan kerusakan actual pada perangkat lunak.
b. Pemeliharaan adaptif, meliputi semua perubahan yang di butuhkan sebagai konsekuensi dari perubahan lingkungan dimana system beroprasi, misalkan perubahan perangkat keras, system operasi, DBMS, atau jaringan computer.
c. Pemeliharaan perfektif, meliputi semua perubahan yang berasal dari undangan pengguna.
Persentase dari masing-masing kategori pemeliharaan sanggup dilihat pada diagram berikut ini :
Pigoski menggabungkan pemeliharaan adaptif dan perfektif sebagai enhancement lantaran kedua tipe ini tidak bersifat korektif, namun merupakan peningkatan kemampuan perangkat lunak.
Namun sebagian organisasi menggunakn istilah pmeliharaan perangkat lunak kalau itu berkaitan dengan perubahan kecil pada system perangkat lunak disebut dengan pengembangan perangkat lunak.
Idealnya pemeliharaan dilarang mengurangi reabilitas dan struktur dari system, alasannya akan menyusahkan perubahan dimasa yang akan dating.
Idealnya pemeliharaan dilarang mengurangi reabilitas dan struktur dari system, alasannya akan menyusahkan perubahan dimasa yang akan dating.
3. Model Tradisional
Perawatan perangkat lunak Model tradisional mendefinisikan bahwa perwatan perangkat lunak ialah aktifitas yang dimulai sesudah perangkat luank dioperasikan. Model tradisional mempunyai banyak pendapat – pendapat perihal apa itu model tradisional perawatan perangkat lunak, antara lain;
a) Menurut Sharpley (1977), Difokuskan pada perawatan koreksi dan langkah –langkahnya terdiri dari :
a. Verivikasi problem.
b. Diagnosis problem.
c. Reprogramming.
d. Verivikasi baseline.
b) Menurut Yau dan Collofello (1980) :
a. Menentukan objektif perawatan.
b. Memahami program.
c. Genetate perubahannya .
d. Perhitungkan efek ‘bandulan’nya.
e. Lakukan tes regresi.
c) Menurut Calliss and Calliss (1992), mengelompokkan model perawatan :
a. Berorientasi proses (Boehm 76, Chapin 87, Yau&Collofello 80)
- Memandang dari sisi aktivitas-2 yang dilakukan
- Cara melukan aktivitas2 tsb
b. Berorientasi organisasional (Pressman 92, Gamalel-Din dan Osterweil 88)
- Memandang dari sisi aktifitas-2 yang dilakukan
- Aliran gosip diantara aktifitas tsb.
d) Menurut Scacchi (2001), Evolusi Model perangkat lunak tradisional telah usang menjadi software engineering. Life cycle perangkat lunak yang klasik yang populer yaitu “Waterfall” dan model stepwise refinement secara luas tertulis dan dibahas oleh semua buku pada praktek pemrograman modern dan rekayasa perangkat lunak. Model incremental merilis model yang berafiliasi bersahabat dengan praktek industri yang sering terjadi di lapangan. Military standard mendasarkan pada model yang mempunyai format tertentu menurut model life cycle klasik ke dalam praktek yang dibutuhkan untuk pemerintahan. Masing-masing empat model ini memakai hal-hal yang bernafsu atau karakteristik makroskopik ketika ingin menggambarkan evolusi perangkat lunak.Suatu langkah yang progresif, evolusi perangkat lunak sering dijelaskan dalam beberapa langkah, menyerupai spesifikasi kebutuhan, disain persiapan, dan implementasi. Hal tersebut pada umumnya hanya mempunyai sedikit atau tidak ada sama sekali karakteristik lebih lanjut selain dari daftar atribut produk dari langkah-langkah yang dilaluinya . Lebih lanjut, model ini ialah tidak terikat pada pengembangan organisasi, pilihan bahasa program, tempat aplikasi perangkat lunak dan lain lain. Singkatnya, model tradisional ialah context-free dibandingkan dengan context-sensitive. Tetapi semua life cycle model ini telah dipakai pada beberapa waktu yang kemudian dan kita mengacu pada model tradisional serta memperlihatkan karakteristik masing-masing pada gilirannya.
4. Perawatan dan Konfigurasi
Ketika sebuah perangkat lunak telah dianggap layak untuk dijalankan, maka tahapan gres menjadi muncul yaitu perawatan perangkat lunak. Ada beberapa tipe perawatan yang biasa dikenal dalam dunia perangkat lunak menyerupai terlihat pada diagram di Gambar di bawah ini :
Gambar 2. Tipe-tipe perawatan.
- Tipe perawatan corrective dilakukan kalau terjadi kesalahan atau biasa dikenal sebagai bugs. Perawatan bisa dilakukan dengan memperbaiki instruksi program, menambah bagian yang dirasa perlu atau malah menghilangkan bagian-bagian tertentu.
- Tipe perawatan routine biasa juga disebut preventive maintenance dilakukan secara rutin untuk melihat kinerja perangkat lunak ada atau tidak ada kesalahan.
- Tipe perawatan sistem upgrade dilakukan kalau ada perubahan dari komponen-komponen yang terlibat dalam perangkat lunak tersebut. Sebagai pola perubahan platform sistem operasi dari versi usang ke versi gres menjadikan perangkat lunak harus diupgrade.