Jelaskan secara mendetail mengenai maintenance dalam pengembangan software system


1.    Pengertian Software, Maintenance, dan Software Maintenance
Pengertian Software komputer adalah sekumpulan data elektronik yang disimpan dan diatur oleh komputer, data elektronik yang disimpan oleh komputer itu dapat berupa program atau instruksi yang akan menjalankan suatu perintah. Melalui sofware atau perangkat lunak inilah suatu komputer dapat menjalankan suatu perintah.
Nama lain dari Software adalah perangkat lunak. Karena disebut juga sebagai perangkat lunak, maka sifatnya pun berbeda dengan hardware atau perangkat keras, jika perangkat keras adalah komponen yang nyata yang dapat diliat dan disentuh oleh secara langsung manusia, maka software atau Perangkat lunak tidak dapat disentuh dan dilihat secara fisik, software memang tidak tampak secara fisik dan tidak berwujud benda namun  bisa untuk dioperasikan.
Tips dalam memilih software, perhatikan :
·           Sifat-sifat operasional dari software (Product Operations)
·           Kemampuan software dalam menjalani perubahan (Product Revision);
·           Daya adaptasi atau penyesuaian software terhadap lingkungan baru (Product Transition).
·           Bagaimana administrator (network and database) dengan mudah troubleshoot
·           Dapat dengan mudah di update dan diubah features sesuai kebutuhan
·           Proses upload content mudah (web based)
·           Proses backup dan restore cepat
Pengertian maintenance sendiri adalah suatu kegiatan yang di lakukan manusia untuk menjaga atau merawat sebuah benda atau perangkat (keras atau pun lunak) agar dapat terus di gunakan.
Sedangkan pengertian maintenace menurut beberapa ahli sebagai berikut ;
·           Lindley R. Higgis & R. Keith Mobley, maintenance atau pemeliharaan adalah suatu kegiatan yang dilakukan secara berulang-ulang dengan tujuan agar peralatan selalu memiliki kondisi yang sama dengan keadaan awalnya. Maintenance juga dilakukan untuk menjaga peralatan tetap berada dalam kondisi yang dapat diterima oleh penggunanya. (Maintenance Enginering Handbook, Sixth Edition McGraw-Hill, 2002)
·           Sisjono dan Iwan Koswara, Perawatan (maintenance) ialah suatu kegiatan yang dilakukan secara sengaja (sadar) terhadap suatu fasilitas dengan menganut suatu sistematika tertentu untuk mencapai hasil telah ditetapkan (Sisjono dan Iwan Koswara, 2004).
·           Corder  (1988),  perawatan  merupakan  suatu  kombinasi  dari tindakan  yang  dilakukan  untuk  menjaga  suatu  barang  dalam,  atau  untuk memperbaikinya sampai, suatu kondisi yang bisa diterima.
·           Assauri  (1993),  perawatan  diartikan  sebagai  suatu  kegiatan pemeliharaan  fasilitas  pabrik  serta  mengadakan  perbaikan ,  penyesuaian atau  penggantian  yang  diperlukan  agar  terdapat  suatu  keadaan  operasi produksi yang sesuai dengan yang direncanakan.
·           Dhillon  (1997),  perawatan  adalah  semua  tindakan  yang  penting dengan  tujuan  untuk  menghasilkan  produk  yang  baik  atau  untuk mengembalikan kedalam keadaan yang memuaskan.
·           IEEE [1993], modifikasi dari produk perangkat lunak setelah pengiriman untuk kesalahan yang benar, untuk meningkatkan kinerja atau atribut lainnya, atau untuk beradaptasi produk untuk lingkungan dimodifikasi.
Perawatan perangkat lunak (software maintenance) adalah aktivitas yang dimulai sejak perangkat lunak mulai digunakan (after delivery) hingga akhirnya perangkat lunak tersebut tidak dapat digunakan lagi (retired). Tujuannya adalah untuk memperbaiki kesalahan (to correct), meningkatkan kinerja/ fungsionalitas (to improve), menyesuaikan dengan lingkungan (to adapt), atau untuk mencegah terjadinya kesalahan (to prevent).
2.    Manfaat Software Maintenance
Menjadikan proaktif dalam perawatan peralatan komputer dan perlindungan data. Dengan melakukan perawatan rutinitas secara terarur. Anda bisa mengurangi potensi masalah Hardware dan Software. Melakukan perawatan akan mengurangi komputer menurunkan waktu dan biaya perbaikan.
3.    Kategori Software Maintenance
Berikut ini adalah kategori kegiatan menurut beberapa ahli;
Pada akhir 1970-an, sebuah studi survei terkenal dan banyak dikutip oleh Lientz dan Swanson, terkena fraksi yang sangat tinggi dari biaya siklus hidup yang sedang dikeluarkan untuk pemeliharaan. Mereka dikategorikan kegiatan pemeliharaan menjadi empat kelas:
·           Adaptive - memodifikasi sistem untuk mengatasi perubahan dalam lingkungan perangkat lunak ( DBMS , OS )
·           Perfective - menerapkan persyaratan pengguna baru atau diubah yang menyangkut perangkat tambahan fungsional untuk perangkat lunak
·           Corrective - mendiagnosis dan memperbaiki kesalahan, mungkin yang ditemukan oleh pengguna
·           Pencegahan - software rawatan meningkat atau keandalan untuk mencegah masalah di masa depan
EB Swanson awalnya mengidentifikasi tiga kategori pemeliharaan: korektif, adaptif, dan perfektif. Ini telah diperbarui ISO / IEC:
·         Pemeliharaan korektif: modifikasi Reaktif dari produk perangkat lunak dilakukan setelah pengiriman untuk memperbaiki masalah yang ditemukan.
·         Pemeliharaan adaptif: Modifikasi dari produk perangkat lunak dilakukan setelah pengiriman untuk menyimpan produk software yang dapat digunakan dalam lingkungan yang berubah atau mengubah.
·         Pemeliharaan perfektif: Modifikasi dari produk perangkat lunak setelah pengiriman untuk meningkatkan kinerja atau rawatan .
·         Pemeliharaan preventif: Modifikasi dari produk perangkat lunak setelah melahirkan untuk mendeteksi dan memperbaiki kesalahan laten dalam produk perangkat lunak sebelum mereka menjadi kesalahan efektif.
Blanchard (1980) mengklasifikasi perawatan menjadi 6 bagian, yaitu:
·         Corrective  Maintenance,  merupakan  perawatan  yang  terjadwal  ketika suatu  sistem  mengalami  kegagalan  untuk  memperbaiki  sistem  pada kondisi tertentu.
·         Preventive Maintenance,  meliputi semua  aktivitas  yang terjadwal  untuk menjaga  sistem/produk  dalam  kondisi  operasi  tertentu.  Jadwal perawatan meliputi periode inspeksi.
Preventive maintenance di bagi menjadi 2 kegiatan, yaitu:
(a). Routine  Maintenance,  yaitu  kegiatan  pemeliharaan  yang  dilakukan secara  rutin,  sebagai  contoh  adalah  kegiatan  pembersihan  fasilitas dan  peralatan,  pemberian  minyak  pelumas  atau  pengecekan  oli, serta pengecekan bahan bakar dan sebagainya.
(b). Periodic  Maintenance,  yaitu  kegiatan  pemeliharaan  yang  dilakukan secara  berkala.  Perawatan  berkala  dilakukan  berdasarkan  lamanya jam  kerja  mesin  produk  tersebut  sebagai  jadwal  kegiatan  misalnya setiap seratus jam sekali.
·      Predictive Maintenance, sering berhubungan dengan memonitor kondisi program  perawatan  preventif  dimana  metode  memonitor  secara langsung digunakan untuk menentukan kondisi peralatan secara teliti.
·         Maintenance  Prevention,  merupakan  usaha  mengarahkan  maintenance free  design  yang  digunakan  dalam  konsep  “ Total  Preventive Maintenance  (TPM)”.  Melalui  desain  dan  pengembangan  peralatan, keandalan  dan  pemeliharaan  dengan  meminimalkan  downtime  dapat meningkatkan produktivitas dan mengurangi biaya siklus hidup.
·         Adaptive  Maintenance,  menggunakan  software  komputer  untuk memproses data yang diperlukan untuk perawatan.
·         Perfective  Maintenance,  meningkatkan  kinerja,  pembungkusan/ pengepakan/ pemeliharaan dengan menggunakan software komputer.
4.    Proses Software Maintenance
Bagian ini menjelaskan proses pemeliharaan perangkat lunak enam sebagai:
·         Proses implementasi mengandung persiapan perangkat lunak dan kegiatan transisi, seperti konsepsi dan penciptaan rencana pemeliharaan; persiapan untuk menangani masalah yang diidentifikasi selama pengembangan, dan tindak lanjut pada manajemen produk konfigurasi.
·         Masalah dan proses modifikasi analisis, yang dieksekusi sekali aplikasi telah menjadi tanggung jawab kelompok perawatan. Programmer pemeliharaan harus menganalisa setiap permintaan, konfirmasikan (dengan mereproduksi situasi) dan periksa validitas, menyelidiki dan mengusulkan solusi, mendokumentasikan permintaan dan usulan solusi, dan akhirnya, memperoleh semua otorisasi yang diperlukan untuk menerapkan modifikasi.
·         Proses mempertimbangkan pelaksanaan modifikasi sendiri.
·         Penerimaan Proses modifikasi, dengan mengkonfirmasi karya yang dimodifikasi dengan individu yang mengajukan permohonan dalam rangka untuk memastikan modifikasi memberikan solusi.
·         Proses migrasi ( migrasi platform , misalnya) luar biasa, dan bukan merupakan bagian dari tugas pemeliharaan sehari-hari. Jika perangkat lunak harus porting ke platform lain tanpa ada perubahan dalam fungsi, proses ini akan digunakan dan tim proyek pemeliharaan kemungkinan akan ditugaskan untuk tugas ini.
·         Akhirnya, proses pemeliharaan lalu, juga suatu peristiwa yang tidak terjadi setiap hari, adalah pensiun dari sebuah software.
Ada sejumlah proses, kegiatan dan praktek yang unik untuk pengelola, misalnya:
·         Transisi: urutan terkontrol dan terkoordinasi kegiatan selama sistem ditransfer progresif dari pengembang untuk pengelola
·         Service Level Agreements (SLA) dan kontrak pemeliharaan khusus (domain-spesifik) dinegosiasikan oleh pengelola.
·         Modifikasi Permintaan dan Masalah Meja Laporan Bantuan: proses penanganan masalah yang digunakan oleh pengelola untuk memprioritaskan, dokumen dan rute permintaan yang mereka terima;.
·         Modifikasi Permintaan penerimaan / penolakan: permintaan modifikasi bekerja lebih dari ukuran tertentu / usaha / kompleksitas mungkin ditolak oleh pengelola dan dialihkan untuk pengembang.
5.    Kesulitan dan Permasalahan Software Maintenance
  ·         Rendahnya kualitas software yang berjalan (yang sudah ada).
  ·         Sistem tidak dirancang untuk memperhatikan konsep pemeliharaan
  ·         Pemeliharaan bukan merupakan bagian yang dirasakan perlu pada suatu software maintenance
  ·         Kesulitan melakukan pelacakan evolusi software pada versi sebelumnya
  ·         Kesulitan pelacakan pada proses pengembangan software
  ·         Sulit untuk mengerti program orang lain
  ·         Tidak adanya dokumentasi yang baik
  ·         Tidak adanya nara sumber
  ·         Kebanyakan software dirancang tanpa adanya pemikiran untuk diubah
6.    Biaya Software Maintenace
·         Pemeliharaan SW membutuhkan 50-80% dari total biaya pembuatannya
·         Biaya pemeliharaan SW di seluruh dunia diperkirakan mencapai $30 billion
·         Masih sedikit penelitan yang mengarah kepemeliharaan software
7.    Karakteristik Software Maintenance
·         Aktivitas-aktivitas dibutuhkan untuk menyelesaikan fase maintenance dan pengaruh pendekatan pengembangan software dalam efisiensinya dari aktivitas pemeliharaan
·         Biaya yang terkait dengan fase maintenance
·        




  Masalah-masalah yang ditemukan secara frekuensi ketika software maintenance dilakukan
Software itu, berbeda dengan hardware. Ketika kita menggunakan sebuah hardware, kita harus mengeluarkan biaya maupun effort untuk melakukan perawatan mungkin karena usang atau ada beberapa perangkatnya yang rusak. Software ngga seperti itu, dia ngga akan usang atau rusak. Tapi, dia akan selalu berubah setelah versi pertamanya selesai. Nah, itulah yang namanya maintenance dalam software.
Ada 4 jenis maintenance dalam software:
  1. Corrective maintenance, ini kita lakukan ketika sebuah bug ditemukan pada sistem dan kita harus melakukan perbaikan.
  2. Adaptive maintenance, ketika sistem yang kita buat harus mengadaptasi perubahan pada environment dimana sistem tersebut berjalan. Misalnya, ketika membuat sebuah aplikasi Android, kita harus melakukan maintenance ketika versi Android di upgrade, agar aplikasi kita tetap compatible.
  3. Perfective maintenance, ketika pengguna sistem atau stakeholder merubah requirement dari sistem yang kita bangun.
  4. Preventive maintenance, ketika kita hendak meningkatkan kualitas sistem yang kita bangun atau hendak menanggulangi sebuah bug sebelum bug tersebut terjadi.      

Sumber : http://ayie1927.blogspot.com/2013/05/software-maintenance.html
https://medium.com/laravel-indonesia/4-jenis-maintenance-dalam-software-development-3f3f94e9d814

Komentar

Postingan populer dari blog ini

Storyboard animasi penebangan hutan

Animasi Penebangan Pohon Secara Liar

Pentingnya Sosialisasi