Pengertian Pemeliharaan Perangkat Lunak
Maintenance software atau pemeliharaan perangkat lunak yakni proses memodifikasi sistem perangkat lunak atau bagian-bagian perangkat lunaknya sesudah penggunaan oleh kosumen atau klien untuk memperbaiki kerusakan, meningkatkan kinerja, manfaat, atau mutu dan optimalitas untuk menyesuaikan metode perangkat lunak dengan lingkungan yang selalu berubah-ubah. Dari definisi di atas, hal ini menegaskan bahwa proses pemeliharaan perangkat lunak yakni proses yang sidatnya post-delivery, artinya dilakukan sesudah metode perangkat lunak digunakan oleh konsumen ataupun klien.
Source: www.lynda.com |
Aktivitas pemeliharaan metode ini dimulai sejak sistem perangkat lunak sudah diserahkan ke pasaran dan dipakai oleh pelanggan atau klien dan meliputi segala kegiatan yang mempertahankan operasional tata cara dan kesesuaian tata cara dengan keperluan pengguna.
Menurut Pigoski berpendapat bahwa pemeliharaan perangkat lunak, yakni sebuah kegiatan keseluruhan yang dikerjakan dalam menawarkan santunan yang murah dan efektif kepada sistem perangkat lunak. Aktivitas dapa berbentukpre-delivery dan post-delivery. Aktivitas pre-delivery berupa perencanaan untuk operasi post-delivery, supportabilitas dan penentuan logistik. Sedangkan aktivitas post-delivery berupa penyesuaian perangkat lunak, pembinaan dan mengoperasikan help desk.
Kategori Pemeliharaan Perangkat Lunak
Pemeliharaan perangkat lunak terbagi menjadi beberapa kategori menurut Lientz dan Swanson, adalah pemeliharaan adaptif, korektif dan perfektif. Berikut penjelasan dari ketiga unsur kategori pemeliharaan perangkat lunak :
- Pemeliharaan Adaptif mencakup segala pergeseran yang dibutuhkan sebagai konsekuensi dari pergeseran lingkungan di mana tata cara beroperasi, mirip pergeseran metode operasi, perangkat keras, DBMS, jaringan komputer ataupun lain sebagainya.
- Pemeliharaan Korektif meliputi segala pergantian yang dilaksanakan dalam menetralisir kerusakan positif ataupun celah pada sistem perangkat lunak.
- Pemeliharaan Perpektif mencakup segala perubahan yang berawal dari permintaan pengguna.
Kategori pemeliharaan perangkat lunak berdasarkan IEEE terbagi ke dalam empat klasifikasi, yakni sebagai berikut :
- Pemeliharaan Korektif adalah pergantian reaktif pada perangkat lunak yang dikerjakan setelah penggunaan perangkat lunak oleh konsumen dalam memperbaiki kerusakan yang ditemukan.
- Pemeliharaan Adaptif ialah pergantian pada perangkat lunak yang dilaksanakan sesudah penggunaan perangkat lunak oleh klien atau pelanggan biar perangkat lunak tersebut dapat digunakan pada lingkungan yang berubah.
- Pemeliharaan perfektif yakni perubahan pada perangkat lunak yang dijalankan sehabis penggunaan perangkat lunak oleh klien atau konsumen guna meningkatkan kinerja dan optimalitas perangkat lunak.
- Pemeliharaan Emergensi yaitu pemeliharaan korektif yang tidak dijadwalkan untuk mempertahankan operasional metode.
Permasalahan Pemeliharaan Perangkat Lunak
Pemeliharaan suatu tata cara lazimnya ialah kegiatan yang menghasbiskan biaya. Hal ini dikarenakan menyertakan fungsionalitas metode yang sedang beroperasi jauh lebih mahal ketimbang menambahkan fungsionalitas metode saat tahap pengembangan.
Faktor yang membedakan antara pengembangan dengan pemeliharaan yang berakibat pada mahalnya ongkos pemeliharaan yakni :
- Stabilitas Sistem, Setelah metode dipasarkan, lazimnya tim pengembang dibubarkan dan setiap anggota melakukan pekerjaan pada proyek yang gres. Tim yang lalu bertanggung jawab terhadap pemeliharaan tidak memiliki pemahaman yang menyeluruh perihal peragkat lunak yang bersangkutan sehingga butuh waktu dan perjuangan komplemen dalam mengetahui perangkat lunak tersebut.
- Tanggung Jawab Kontraktual, Kontrak untuk pemeliharaan perangkat lunak lazimnya terpisah dari perjanjian untuk pengembangan perangkat lunak.
- Keahlian Staff, Staf pemeliharaan kerap kali kurang berpengalaman dan tidak terbiasa dengan domain aplikasi. Proses pemeliharaan perangkat lunak kadang kala dianggap selaku proses yang tidak membutuhkan skill yang tinggi dibanding dengan pengembangan perangkat lunak yang memerlukan skill yang tinggi, hal ini menimbulkan staff bab pemeliharaan seeringkali yakni staff dengan level junior.
- Usia dan Struktur Program, seiring dengan usia program, struktur dari acara juga ikut berganti sehingga kian sukar untuk diketahui dan diubah. Beberapa bagian perangkat lunak tidak dikembangkan dengan teknik RPL terbaru, sehingga tidak pernah dikontrol dengan baik dan kemungkinan dokumentasi tata cara mampu saja hilang atau inkosisten sehingga sukar untuk dimengerti.
Model Pemeliharaan Perangkat Lunak
Quick-Fix Model
Pendekatan tipikal guna pemeliharaan perangkat lunak adalah dengan mengubah aba-aba atau skrip program terlebih dulu, kemudian menciptakan pergeseran yang diharapkan pada dokumentasi program. Melalui pendekatan ini disebut pendekatan quick-fix model. Idealnya sesudah skrip diubah, maka dokumentasi terkait perancangan, kebutuhan, analisis, pengujian dan hal-hal lain yang terkait dengan perangkat lunak tersebut mesti diubah juga dengan menyesuaikan dedngan perubahan pada skrip acara. Akan tetapi realitanya di lapangan menunjukkan bahwa perubahan pada skrip program kadang tidak didokumentasikan disebabkan oleh waktu dan ongkos sehingga tim pemelihara tidak sempat untuk merubah dokumentasi acara.
Iterative-Enhacement Model
Model siklus hidup evolutionary menawarkan pendekatan alternatif guna pemeliharaan perangkat lunak. Model ini menyaakan bahwa kebutuhan metode tidak dapat dikumpulkan dan diketahui pada tahap awal, sehingga sistem dibangun dengan memperbaiki kebutuhan dari desain bangunan metode sebelumnya berdasarkan timbal balik dari pengguna. Kelebihan dari mode ini yakni dokumentasi dari sistem selalu berganti seiring dengan perubahan pada skrip program.
Full-Reuse Model
Model ini memandang pemeliharaan selaku sebuah masalah dari pengembangan perangkat lunak berorientasi guna ulang atau daur ulang. Full-reuse diawali dengan analisis keperluan, rancangan, arahan dan pengujian dari sisem versi sebelumnya yang telah ada. Model ini mendukung evolusi tata cara untuk mempermudah penyesuaian kedepannya. Model Full-reuse cocok untuk dipakai pada pengembangan metode-metode yang berhubungan. Model ini mengumpulkan bagian-komponen yag reusable pada level abstraksi yang berlawanan-beda dan menjadikan pengembangan sistem ke depannya menjadi lebih irit.
Proses Pemeliharaan Perangkat Lunak
Ada beberapa model proses pemeliharaan perangkat lunak. Model-model ini mengorganisasikan pemeliharaan perangkat lunak menjadi serangkaian aktivitas terkait dan menentukan urutan dari masing-masing acara.
Proses Pemeliharaan Versi IEEE-12 19
Standar IEE mengorganisasikan proses pemeliharaan menjadi tujuh tahap Pada tiap tahap, kriteria IEE memutuskan input dan output pada tiap tahap, mengelompokan dan mengkaitkan acara-kegiatan, mendukung proses-proses , kendali dan sekumpulan metrik.
- Identifikasi, pembagian terstruktur mengenai dan penentuan prioritas modifikasi. Pada tahap ini, usul pergantian yang diajukan oleh pelanggan, pengguna, programmer atau manajer ditetapkan sebagai klasifikasi pemeliharaan dan menetapkan prioritas. Tahap ini juga meliputi aktivitas dalam memilih apakah undangan tersebut disetujui atau tidak dan memutuskan ke dalam acara pengimplimentasiannya.
- Analisis. Pada tahap ini mencakup perencanaan awal untuk perancangan, implimentasi, pengujian dan penjualan. Tahap ini berisikan dua level, analisis feasibilitas yang memilih penyelesaian alternatif beserta efek dan biaya penyelesaian tersebut dan juga analisis detail yang menentukan keperluan untuk memodifikasi, seni manajemen pengujian dan membangun rencana pengimplimentasian.
- Perancangan. Modifikasi sistem dirancang pada tahap ini. Kegiatan ini memakai keseluruhan dokumentasi sistem dan proyek, basidata dan perangkat lunak yang ada, dan output dari tajap analisis. Kegiatan ini mencakup identifikasi modul yang terpengaruh, modifikasi dokumentasi modul perangkat lunak, pembangunan masalah uji untuk desain yang baru dan kenali pengujian regresi.
- Implementasi. Tahap ini mencakup kegiatan coding dan unit testing, integrasi modul yang sudah dimodifikasi, integration dan regression testing, analisis resiko, dan kajian. Tahap ini juga meliputi kajian kesiapan pengujian untuk menetapkan kesiapan untuk pengujian metode dan regresi
- Regression/system testing. Pada tahap ini keseluruhan tata cara diuji untuk memastikan kesesuaian dengan keperluan permulaan dan juga adaptasi keperluan tersebut. Selain pengujian fungsional dan antarmuka, tahap ini juga mencakup pengujian regresi untuk memvalidasi tidak ada kerusakan baru yang timbul
- Acceptance testing. Pengujian ini fokus pada metode yang telahterintegrasi sepenuhnya dan melibatkan pengguna, pelanggan, atau pihak ketiga yang dirancang oleh pelanggan. Pengujian ini mencakup pengujian fungsional, interoperabilitas, dan regresi
- Delivery. Pada tahap ini, sistem dirilis untuk diinstal dan dioperasikan. Aktivitas ini mencakup pemberitahuan terhadap pengguna, melakukan instalasi dan training, serta menyiapkan backup dari perangkat lunak versi sebelumnya
EmoticonEmoticon