Pengertian Pemeliharaan Perangkat Lunak
Maintenance software atau pemeliharaan perangkat lunak adalah proses memodifikasi tata cara perangkat lunak atau unsur-unsur perangkat lunaknya setelah penggunaan oleh kosumen atau klien untuk memperbaiki kerusakan, mengembangkan kinerja, faedah, atau mutu dan optimalitas untuk menyesuaikan tata cara perangkat lunak dengan lingkungan yang senantiasa berganti-ubah. Dari definisi di atas, hal ini menegaskan bahwa proses pemeliharaan perangkat lunak yaitu proses yang sidatnya post-delivery, artinya dikerjakan sehabis metode perangkat lunak dipakai oleh pelanggan ataupun klien.
Source: www.lynda.com |
Aktivitas pemeliharaan sistem ini dimulai sejak tata cara perangkat lunak sudah diserahkan ke pasaran dan dipakai oleh konsumen atau klien dan meliputi segala aktivitas yang menjaga operasional metode dan kesesuaian sistem dengan kebutuhan pengguna.
Menurut Pigoski beropini bahwa pemeliharaan perangkat lunak, yakni sebuah acara keseluruhan yang dikerjakan dalam menyediakan perlindungan yang murah dan efektif terhadap metode 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 modifikasi perangkat lunak, pelatihan dan mengoperasikan help desk.
Kategori Pemeliharaan Perangkat Lunak
Pemeliharaan perangkat lunak terbagi menjadi beberapa kategori menurut Lientz dan Swanson, yaitu pemeliharaan adaptif, korektif dan perfektif. Berikut penjelasan dari ketiga komponen kategori pemeliharaan perangkat lunak :
- Pemeliharaan Adaptif mencakup segala pergantian yang diperlukan selaku konsekuensi dari perubahan lingkungan di mana sistem beroperasi, mirip pergeseran sistem operasi, perangkat keras, DBMS, jaringan komputer ataupun lain sebagainya.
- Pemeliharaan Korektif meliputi segala pergeseran yang dijalankan dalam menghilangkan kerusakan aktual ataupun celah pada metode perangkat lunak.
- Pemeliharaan Perpektif mencakup segala pergeseran yang berawal dari ajakan pengguna.
Kategori pemeliharaan perangkat lunak berdasarkan IEEE terbagi ke dalam empat kategori, yakni selaku berikut :
- Pemeliharaan Korektif yakni pergantian reaktif pada perangkat lunak yang dilakukan setelah penggunaan perangkat lunak oleh pelanggan dalam memperbaiki kerusakan yang didapatkan.
- Pemeliharaan Adaptif adalah perubahan pada perangkat lunak yang dikerjakan setelah penggunaan perangkat lunak oleh klien atau konsumen agar perangkat lunak tersebut dapat dipakai pada lingkungan yang berubah.
- Pemeliharaan perfektif yaitu pergantian pada perangkat lunak yang dijalankan setelah penggunaan perangkat lunak oleh klien atau konsumen guna memajukan kinerja dan optimalitas perangkat lunak.
- Pemeliharaan Emergensi yaitu pemeliharaan korektif yang tidak dijadwalkan untuk menjaga operasional tata cara.
Permasalahan Pemeliharaan Perangkat Lunak
Pemeliharaan suatu metode umumnya ialah acara yang menghasbiskan biaya. Hal ini dikarenakan menambahkan fungsionalitas metode yang sedang beroperasi jauh lebih mahal ketimbang menyertakan fungsionalitas tata cara saat tahap pengembangan.
Faktor yang membedakan antara pengembangan dengan pemeliharaan yang berakibat pada mahalnya biaya pemeliharaan yakni :
- Stabilitas Sistem, Setelah sistem dipasarkan, lazimnya tim pengembang dibubarkan dan setiap anggota bekerja pada proyek yang gres. Tim yang kemudian bertanggung jawab terhadap pemeliharaan tidak memiliki pengertian yang menyeluruh tentang peragkat lunak yang bersangkutan sehingga butuh waktu dan usaha pemanis dalam mengerti perangkat lunak tersebut.
- Tanggung Jawab Kontraktual, Kontrak untuk pemeliharaan perangkat lunak lazimnya terpisah dari kesepakatan untuk pengembangan perangkat lunak.
- Keahlian Staff, Staf pemeliharaan seringkali kurang berpengalaman dan tidak sudah biasa dengan domain aplikasi. Proses pemeliharaan perangkat lunak kerap kali dianggap selaku proses yang tidak memerlukan skill yang tinggi dibanding dengan pengembangan perangkat lunak yang membutuhkan skill yang tinggi, hal ini mengakibatkan staff bagian pemeliharaan seeringkali ialah staff dengan level ingusan.
- Usia dan Struktur Program, seiring dengan usia program, struktur dari program juga ikut berganti sehingga makin sulit 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 bisa saja hilang atau inkosisten sehingga sukar untuk dimengerti.
Model Pemeliharaan Perangkat Lunak
Quick-Fix Model
Pendekatan tipikal guna pemeliharaan perangkat lunak adalah dengan mengganti aba-aba atau skrip program apalagi dulu, lalu membuat pergantian yang diharapkan pada dokumentasi acara. Melalui pendekatan ini disebut pendekatan quick-fix versi. Idealnya sehabis skrip diubah, maka dokumentasi terkait perancangan, keperluan, analisis, pengujian dan hal-hal lain yang terkait dengan perangkat lunak tersebut mesti diubah juga dengan menyesuaikan dedngan pergeseran pada skrip acara. Akan tetapi realitanya di lapangan menawarkan bahwa pergantian pada skrip acara kadang tidak didokumentasikan disebabkan oleh waktu dan ongkos sehingga tim pemelihara tidak sempat untuk merubah dokumentasi program.
Iterative-Enhacement Model
Model siklus hidup evolutionary memberikan pendekatan alternatif guna pemeliharaan perangkat lunak. Model ini menyaakan bahwa keperluan sistem tidak dapat dikumpulkan dan dipahami pada tahap awal, sehingga metode dibangun dengan memperbaiki keperluan dari desain bangunan tata cara sebelumnya menurut timbal balik dari pengguna. Kelebihan dari mode ini yakni dokumentasi dari metode selalu berganti seiring dengan pergantian pada skrip program.
Full-Reuse Model
Model ini memandang pemeliharaan selaku sebuah perkara dari pengembangan perangkat lunak berorientasi guna ulang atau daur ulang. Full-reuse diawali dengan analisis kebutuhan, rancangan, instruksi dan pengujian dari sisem versi sebelumnya yang sudah ada. Model ini mendukung evolusi tata cara untuk mempermudah penyesuaian kedepannya. Model Full-reuse cocok untuk digunakan pada pengembangan tata cara-metode yang berkaitan. Model ini mengumpulkan unsur-komponen yag reusable pada level abstraksi yang berbeda-beda dan menjadikan pengembangan sistem ke depannya menjadi lebih ekonomis.
Proses Pemeliharaan Perangkat Lunak
Ada beberapa versi proses pemeliharaan perangkat lunak. Model-model ini mengorganisasikan pemeliharaan perangkat lunak menjadi serangkaian kegiatan terkait dan menentukan urutan dari masing-masing aktivitas.
Proses Pemeliharaan Versi IEEE-12 19
Standar IEE mengorganisasikan proses pemeliharaan menjadi tujuh tahap Pada tiap tahap, patokan IEE memutuskan input dan output pada tiap tahap, mengelompokan dan mengkaitkan acara-kegiatan, mendukung proses-proses , kendali dan sekumpulan metrik.
- Identifikasi, penjabaran dan penentuan prioritas adaptasi. Pada tahap ini, usul pergantian yang diajukan oleh pelanggan, pengguna, programmer atau manajer ditetapkan selaku kategori pemeliharaan dan memutuskan prioritas. Tahap ini juga meliputi aktivitas dalam menentukan apakah permintaan tersebut disetujui atau tidak dan menetapkan ke dalam jadwal pengimplimentasiannya.
- Analisis. Pada tahap ini mencakup perencanaan permulaan untuk perancangan, implimentasi, pengujian dan pemasaran. Tahap ini berisikan dua level, analisis feasibilitas yang memilih solusi alternatif beserta efek dan ongkos solusi tersebut dan juga analisis rincian yang memilih kebutuhan untuk memodifikasi, taktik pengujian dan membangun planning pengimplimentasian.
- Perancangan. Modifikasi metode dirancang pada tahap ini. Kegiatan ini menggunakan keseluruhan dokumentasi sistem dan proyek, basidata dan perangkat lunak yang ada, dan output dari tajap analisis. Kegiatan ini mencakup identifikasi modul yang terpengaruh, penyesuaian dokumentasi modul perangkat lunak, pembangunan perkara uji untuk desain yang baru dan kenali pengujian regresi.
- Implementasi. Tahap ini meliputi acara 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 kebutuhan permulaan dan juga adaptasi kebutuhan tersebut. Selain pengujian fungsional dan antarmuka, tahap ini juga meliputi pengujian regresi untuk memvalidasi tidak ada kerusakan baru yang timbul
- Acceptance testing. Pengujian ini konsentrasi pada sistem yang telahterintegrasi sepenuhnya dan melibatkan pengguna, pelanggan, 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 mencakup pemberitahuan kepada pengguna, melakukan instalasi dan training, serta merencanakan backup dari perangkat lunak model sebelumnya
EmoticonEmoticon