Pengertian Pemeliharaan Perangkat Lunak
Maintenance software atau pemeliharaan perangkat lunak ialah proses memodifikasi tata cara perangkat lunak atau unsur-bagian perangkat lunaknya sehabis penggunaan oleh kosumen atau klien untuk memperbaiki kerusakan, mengembangkan kinerja, faedah, atau mutu dan optimalitas untuk menyesuaikan tata cara perangkat lunak dengan lingkungan yang selalu berubah-ubah. Dari definisi di atas, hal ini memastikan bahwa proses pemeliharaan perangkat lunak ialah proses yang sidatnya post-delivery, artinya dikerjakan sehabis tata cara perangkat lunak dipakai oleh konsumen ataupun klien.
Source: www.lynda.com |
Aktivitas pemeliharaan tata cara ini dimulai sejak metode perangkat lunak sudah diserahkan ke pasaran dan dipakai oleh pelanggan atau klien dan mencakup segala aktivitas yang menjaga operasional metode dan kesesuaian sistem dengan keperluan pengguna.
Menurut Pigoski berpendapat bahwa pemeliharaan perangkat lunak, adalah sebuah kegiatan keseluruhan yang dilakukan dalam menyediakan bantuan yang murah dan efektif kepada sistem perangkat lunak. Aktivitas dapa berbentukpre-delivery dan post-delivery. Aktivitas pre-delivery berbentukperencanaan untuk operasi post-delivery, supportabilitas dan penentuan logistik. Sedangkan acara post-delivery berupa penyesuaian perangkat lunak, pelatihan dan mengoperasikan help desk.
Kategori Pemeliharaan Perangkat Lunak
Pemeliharaan perangkat lunak terbagi menjadi beberapa klasifikasi menurut Lientz dan Swanson, yakni pemeliharaan adaptif, korektif dan perfektif. Berikut penjelasan dari ketiga unsur klasifikasi pemeliharaan perangkat lunak :
- Pemeliharaan Adaptif meliputi segala pergeseran yang diharapkan sebagai konsekuensi dari perubahan lingkungan di mana metode beroperasi, mirip pergeseran tata cara operasi, perangkat keras, DBMS, jaringan komputer ataupun lain sebagainya.
- Pemeliharaan Korektif mencakup segala perubahan yang dijalankan dalam menghilangkan kerusakan aktual ataupun celah pada sistem perangkat lunak.
- Pemeliharaan Perpektif mencakup segala pergantian yang berawal dari usul pengguna.
Kategori pemeliharaan perangkat lunak menurut IEEE terbagi ke dalam empat klasifikasi, adalah selaku berikut :
- Pemeliharaan Korektif yakni pergeseran reaktif pada perangkat lunak yang dilakukan sesudah penggunaan perangkat lunak oleh konsumen dalam memperbaiki kerusakan yang didapatkan.
- Pemeliharaan Adaptif adalah perubahan pada perangkat lunak yang dijalankan sehabis penggunaan perangkat lunak oleh klien atau pelanggan supaya perangkat lunak tersebut mampu digunakan pada lingkungan yang berganti.
- Pemeliharaan perfektif ialah pergantian pada perangkat lunak yang dikerjakan setelah penggunaan perangkat lunak oleh klien atau pelanggan guna mengembangkan kinerja dan optimalitas perangkat lunak.
- Pemeliharaan Emergensi adalah pemeliharaan korektif yang tidak dijadwalkan untuk menjaga operasional sistem.
Permasalahan Pemeliharaan Perangkat Lunak
Pemeliharaan sebuah sistem biasanya merupakan aktivitas yang menghasbiskan biaya. Hal ini dikarenakan menambahkan fungsionalitas tata cara yang sedang beroperasi jauh lebih mahal daripada menambahkan fungsionalitas sistem 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 baru. Tim yang lalu bertanggung jawab terhadap pemeliharaan tidak memiliki pemahaman yang menyeluruh tentang peragkat lunak yang bersangkutan sehingga perlu waktu dan usaha komplemen dalam memahami perangkat lunak tersebut.
- Tanggung Jawab Kontraktual, Kontrak untuk pemeliharaan perangkat lunak umumnya terpisah dari perjanjian untuk pengembangan perangkat lunak.
- Keahlian Staff, Staf pemeliharaan sering kali kurang terlatih dan tidak sudah biasa dengan domain aplikasi. Proses pemeliharaan perangkat lunak seringkali dianggap sebagai proses yang tidak membutuhkan skill yang tinggi dibanding dengan pengembangan perangkat lunak yang memerlukan skill yang tinggi, hal ini menjadikan staff bab pemeliharaan seeringkali yaitu staff dengan level ingusan.
- Usia dan Struktur Program, seiring dengan usia acara, struktur dari acara juga ikut berubah sehingga makin susah untuk diketahui dan diubah. Beberapa unsur perangkat lunak tidak dikembangkan dengan teknik RPL modern, sehingga tidak pernah dikelola dengan baik dan kemungkinan dokumentasi sistem bisa saja hilang atau inkosisten sehingga sukar untuk diketahui.
Model Pemeliharaan Perangkat Lunak
Quick-Fix Model
Pendekatan tipikal guna pemeliharaan perangkat lunak adalah dengan mengganti kode atau skrip program terlebih dahulu, kemudian menciptakan pergeseran yang dibutuhkan pada dokumentasi program. Melalui pendekatan ini disebut pendekatan quick-fix versi. Idealnya setelah skrip diubah, maka dokumentasi terkait perancangan, kebutuhan, analisis, pengujian dan hal-hal lain yang terkait dengan perangkat lunak tersebut harus diubah juga dengan menyesuaikan dedngan perubahan pada skrip acara. Akan namun realitanya di lapangan memperlihatkan bahwa perubahan pada skrip acara kadang tidak didokumentasikan disebabkan oleh waktu dan ongkos sehingga tim pemelihara tidak sempat untuk mengganti dokumentasi program.
Iterative-Enhacement Model
Model siklus hidup evolutionary memberikan pendekatan alternatif guna pemeliharaan perangkat lunak. Model ini menyaakan bahwa kebutuhan metode tidak dapat dikumpulkan dan diketahui pada tahap awal, sehingga tata cara dibangun dengan memperbaiki keperluan dari desain bangunan tata cara sebelumnya berdasarkan timbal balik dari pengguna. Kelebihan dari mode ini adalah dokumentasi dari sistem senantiasa berganti seiring dengan pergeseran pada skrip program.
Full-Reuse Model
Model ini menatap pemeliharaan selaku suatu kasus dari pengembangan perangkat lunak berorientasi guna ulang atau daur ulang. Full-reuse diawali dengan analisis kebutuhan, rancangan, aba-aba dan pengujian dari sisem versi sebelumnya yang telah ada. Model ini mendukung evolusi tata cara untuk membuat lebih mudah modifikasi kedepannya. Model Full-reuse cocok untuk dipakai pada pengembangan tata cara-metode yang berkaitan. Model ini menghimpun unsur-bagian yag reusable pada level abstraksi yang berlainan-beda dan mengakibatkan pengembangan sistem ke depannya menjadi lebih hemat.
Proses Pemeliharaan Perangkat Lunak
Ada beberapa versi proses pemeliharaan perangkat lunak. Model-versi 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, standar IEE menetapkan input dan output pada tiap tahap, mengelompokan dan mengkaitkan aktivitas-acara, mendukung proses-proses , kendali dan sekumpulan metrik.
- Identifikasi, pembagian terstruktur mengenai dan penentuan prioritas adaptasi. Pada tahap ini, usul pergantian yang diajukan oleh konsumen, pengguna, programmer atau manajer ditetapkan selaku klasifikasi pemeliharaan dan menetapkan prioritas. Tahap ini juga mencakup kegiatan dalam menentukan apakah usul tersebut disetujui atau tidak dan memutuskan ke dalam acara pengimplimentasiannya.
- Analisis. Pada tahap ini mencakup perencanaan permulaan untuk perancangan, implimentasi, pengujian dan penjualan. Tahap ini terdiri dari dua level, analisis feasibilitas yang memilih penyelesaian alternatif beserta efek dan biaya solusi tersebut dan juga analisis rincian yang menentukan kebutuhan untuk memodifikasi, strategi pengujian dan membangun rencana pengimplimentasian.
- Perancangan. Modifikasi sistem dirancang pada tahap ini. Kegiatan ini menggunakan keseluruhan dokumentasi metode dan proyek, basidata dan perangkat lunak yang ada, dan output dari tajap analisis. Kegiatan ini mencakup kenali modul yang terpengaruh, penyesuaian dokumentasi modul perangkat lunak, pembangunan masalah uji untuk desain yang gres dan identifikasi pengujian regresi.
- Implementasi. Tahap ini meliputi kegiatan coding dan unit testing, integrasi modul yang sudah dimodifikasi, integration dan regression testing, analisis resiko, dan kajian. Tahap ini juga mencakup kajian kesiapan pengujian untuk menetapkan kesiapan untuk pengujian tata cara dan regresi
- Regression/system testing. Pada tahap ini keseluruhan metode diuji untuk memastikan kesesuaian dengan kebutuhan permulaan dan juga modifikasi kebutuhan tersebut. Selain pengujian fungsional dan antarmuka, tahap ini juga meliputi pengujian regresi untuk memvalidasi tidak ada kerusakan gres yang muncul
- Acceptance testing. Pengujian ini konsentrasi pada tata cara yang telahterintegrasi sepenuhnya dan melibatkan pengguna, konsumen, atau pihak ketiga yang dirancang oleh konsumen. Pengujian ini meliputi pengujian fungsional, interoperabilitas, dan regresi
- Delivery. Pada tahap ini, sistem dirilis untuk diinstal dan dioperasikan. Aktivitas ini meliputi pemberitahuan kepada pengguna, melaksanakan instalasi dan pembinaan, serta menyiapkan backup dari perangkat lunak versi sebelumnya
EmoticonEmoticon