MAINTENANCE DALAM PENGEMBANGAN SOFTWARE SYSTEM
PENDAHULUAN
Latar Belakang
Persaingan bisnis yang semakin ketat pada era globalisasi saat ini dilatarbelakangi oleh kemajuan teknologi khususnya pada bidang IT, sehingga harus didukung dengan penerapan sistem informasi yang lebih baik. Sistem informasi yang baik adalah suatu sistem terpadu atau kombinasi teratur dari seluruh elemen yang ada, baik individu, hardware, software maupun jaringan komunikasi, untuk meyediakan informasi yang berguna dalam mendukung kegiatan operasional dan fungsi pengambilan keputusan dari sebuah organisasi.Di Era globalisasi ini, teknologi sangat cepat berkembang pesat, begitu pula dengan perkembangan software komputer. Perusahaan atau organisasi yang tidak ingin ketinggalan dengan perkembangan jaman dan teknologi tentu akan tetap mengikuti semua perkembangan yang terjadi di bidang teknologi ini. Perusahaan juga ingin tahu kelayakan sistem yang mereka gunakan dan kapan waktu mengganti dengan yang baru. Tapi di balik semua itu, biaya juga menjadi pertimbangan mereka.
Untuk dapat selalu up-to-date perusahaan-perusahaan ini memiliki Sistem Informasi Manajemen yang terintegrasi. Software maintenance menjadi salah satu bagian dari integrasi sistem manajemen dalam perusahaan atau organisasi. Karena pemeliharaan software maupun hardware sebuah sangat vital bagi perusahaan untuk menjaga kesinambungan sistem di dalam perusahaan atau organisasi.
Oleh karena itu, audit atas pengembangan dan pemeliharaan sistem informasi semakin dibutuhkan sehingga sistem yang dimiliki efektif dalam menyelesaikan pekerjaan dan meningkatkan efisiensi kerja. Disamping itu saat ini kesadaraan atas pentingnya pengendalian sistem informasi di kalangan manajemen perusahaan semakin tinggi.
Tujuan
Mengetahui urgensi maintenance dalam software dan sistem informasi dalam sebuah perusahaan serta strategi dan langkah-langkah pembangunannya yang bermanfaat bagi perusahaan.
TINJAUAN PUSTAKA
Sistem Informasi Manajemen
Sistem Informasi merupakan suatu tatanan yang terorganisasi dalam pengaturan sumber daya yang ada yang meliputi pengumpulan data lalu mengolahnya sehingga bisa dengan mudah untuk dikonsumsi dan lebih mudah dalam hal penyebarannya. Lebih jauh yang meliputi sumber daya meliputi, manusia, hardware, software, data dan jaringan yang terdapat di dalamnya (O’Brien 2010).Sementara itu, Sistem Informasi Manajemen (SIM) memiliki definisi sebagai bagian dari pengendalian internal suatu bisnis yang meliputi pemanfaatan manusia, dokumen, teknologi, dan prosedur oleh akuntansi manajemen untuk memecahkan masalah bisnis seperti biaya produk, layanan, atau suatu strategi bisnis. Sistem informasi manajemen dibedakan dengan sistem informasi biasa karena SIM digunakan untuk menganalisis sistem informasi lain yang diterapkan pada aktivitas operasional organisasi. Secara akademis, istilah ini umumnya digunakan untuk merujuk pada kelompok metode manajemen informasi yang bertalian dengan otomasi atau dukungan terhadap pengambilan keputusan manusia, misalnya sistem pendukung keputusan, sistem pakar, dan sistem informasi eksekutif.
Adapun tujuan umum Sistem Informasi Manajemen, yaitu :
- Menyediakan informasi yang dipergunakan di dalam perhitungan harga pokok jasa, produk, dan tujuan lain yang diinginkan manajemen.
- Menyediakan informasi yang dipergunakan dalam perencanaan, pengendalian, pengevaluasian, dan perbaikan berkelanjutan.
- Menyediakan informasi untuk pengambilan keputusan.
- Menyediakan informasi yang efektif dan efisien terkait hal-hal yang bisa membantu percepatan tanpa meninggalkan keakuratan, sehingga bisa meningkatkan nilai jual perusahaan dan memenangkan persaingan di pasar.
Keempat tujuan tersebut menunjukkan bahwa manajer dan pengguna lainnya perlu memiliki akses ke informasi akuntansi manajemen dan mengetahui bagaimana cara menggunakannya. Informasi akuntansi manajemen dapat membantu mereka mengidentifikasi suatu masalah, menyelesaikan masalah, dan mengevaluasi kinerja (informasi akuntansidibutuhkan dan dipergunakan dalam semua tahap manajemen, termasuk perencanaan, pengendalian dan pengambilan keputusan).
Software
Software atau perangkat lunak berbeda dengan hardware atau perangkat keras. 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 untuk menjalankan suatu perintah. Software ini merupakan catatan bagi mesin komputer untuk menyimpan perintah, maupun dokumen serta arsip lainnya. Berdasarkan jenisnya, software dibagi menjadi 3 yaitu :1. Firmware (BIOS)
2. Sistem Operasi (Windows, Linux, Mac OS, dll)
3. Software Aplikasi (Photoshop, WinAmp, WinZip, dll)
Software Maintenance
Maintenance atau dalam bahasa Indonesia disebut perawatan yaitu aktivitas yang dilakukan secara berkala dengan tujuan untuk melakukan pergantian kerusakan peralatan dengan resources yang ada. Perawatan ditujukan untuk mengembalikan sebuah sistem kepada kondisi yang baik agar dapat berfungsi sebagaimana mestinya, memperpanjang usia kegunaan mesin, dan menekan kerusakan.Menurut McCall (1977) kriteria yang mempengaruhi kualitas software terbagi menjadi tiga aspek penting yaitu :
1. Sifat-sifat operasional dari software (Product Operations).
2. Kemampuan software dalam menjalani perubahan (Product Revision)
3. Daya adaptasi atau penyesuaian software terhadap lingkungan baru (Product Transition).
Dengan beragamnya tujuan perawatan perangkat lunak, maka jenis perawatan perangkat lunak dapat dibagi menjadi empat pula, yaitu perawatan perbaikan (correction), perawatan peningkatan kinerja (improvement), perawatan penyesuaian (adaptation), dan perawatan pencegahan (prevention). Akan tetapi, secara umum, jenis perawatan perangkat lunak dapat dikelompokkan kedalam dua kategori besar, yaitu perawatan perbaikan (correction) dan perawatan peningkatan (enhancement). Perawatan jenis kedua mencakup perawatan improvement, adaptation, dan prevention.
PEMBAHASAN
Sebuah sistem informasi yang lengkap terdiri dari infrastruktur jaringan, hardware, software aplikasi, dan WEB. Dimana komponen – komponen tersebut saling melengkapi dan saling mendukung dalam menjalankan sebuah perusahaan. Infrastruktur jaringan meliputi sistem transmisi data baik secara nirkabel, maupun secara konvensional dengan kabel data. Serta peralatan jaringan di sisi LAN dan WAN seperti switch, router, modem, dll. Hardware meliputi komputer (PC), notebook, dan server, berikut dengan peripheral lainya seperti printer, scanner, dan lain-lain. Software meliputi Sistem operasi di komputer dan server, seperti Windows XP, Linux, Windows 2000 Server, dan lain-lain. Serta software aplikasi umum (Office, Autocad,Visio, Email, Internet Explorer, dan lain-lain). Software aplikasi khusus yang dikembangkan sendiri sebagai penunjang bisnis utama perusahaan.
Setelah sistem tersebut jadi dan siap digunakan, maka tugas selanjutnya bagi divisi teknologi informasi perusahaan adalah memelihara sistem tersebut agar selalu berjalan baik. Dimana secara rutin harus dilakukan pengecekan kondisi server beserta software aplikasi, pengecekan media transmisi data (sistem pengkabelan). Dan yang paling sering adalah melayani user-user untuk mengatasi masalah yang terjadi di PC mereka masing-masing baik di sisi hardware maupun softwarenya. Seperti PC yang terkena virus, tidak bisa koneksi ke internet, printer yang rusak dan lain – lain. Hal ini menunjukan bahwa pemeliharaan sistem informasi (maintenance) adalah hal yang penting untuk dilakukan demi menunjang kelancaran proses kerja di sebuah perusahaan.
Urgensi maintainability dari suatu software adalah pentingnya perawatan/pemeliharaan dan pengembangan suatu software. Tujuannya adalah agar software selalu dalam keadaan siap pakai. Dalam waktu tertentu tidak menutup kemungkinan software mengalami kerusakan atau perlu disempurnakan lagi disitulah pentingnya maintainability. Kegiatan pemeliharan perangkat lunak (software) terjadi karena adanya asumsi yang salah pada saat uji coba yaitu kesalahan tersembunyi pada perangkat lunak yang cukup besar. Terdapat tiga alasan pentingnya pemeliharaan sistem atau system maintenance :
1. Memperbaiki Kesalahan (Correcting Errors)
Maintenance dilakukan untuk mengatasi kegagalan dan permasalahan yang muncul saat sistem dioperasikan. Sebagai contoh, maintenace dapat digunakan untuk mengungkapkan kesalahan pemrograman (bugs) atau kelemahan selama proses pengembangan yang tidak terdeteksi dalam pengujian sistem, sehingga kesalahan tersebut dapat diperbaiki.
2. Menjamin dan Meningkatkan Kinerja Sistem (Feedback Mechanism)
Kajian pasca implementasi sistem merupakan salah satu aktivitas maintenance yang meliputi tinjauan sistem secara periodik. Tinjauan periodik atau audit sistem dilakukan untuk menjamin sistem berjalan dengan baik, dengan cara memonitor sistem secara terus-menerus terhadap potensi masalah atau perlunya perubahan terhadap sistem. Sebagai contoh, saat user menemukan errors pada saat sistem digunakan, maka user dapat memberi umpan balik atau feedback kepada spesialis informasi guna meningkatkan kinerja sistem. Hal ini yang menjadikan system maintenance perlu dilakukan secara berkala, karena system maintenance akan senantiasa memastikan sistem baru yang di implementasikan berjalan dengan baik dan sesuai dengan tujuan penggunaanya melalui mekanisme umpan balik.
3. Menjaga Kemutakhiran Sistem (System Update)
Selain sebagai proses perbaikan kesalahan dan kajian pasca implementasi, system maintenance juga meliputi proses modifikasi terhadap sistem yang telah dibangun karena adanya perubahan dalam organisasi atau lingkungan bisnis. Sehingga, system maintenance menjaga kemutakhiran sistem (system update) melalui modifikasi-modifikasi sistem yang dilakukan. Secara singkat, system maintenance menjadi penting karena pada system maintenance terjadi usaha perbaikan secara berkelanjutan untuk mempertemukan kebutuhan oranisasi terhadap sistem dengan kinerja sistem yang telah dibangun.
Software maintenance yang efektif dilakukan dengan teknik yang spesifik atau khusus untuk maintenance. Beberapa teknik praktis yang biasa dipakai maintener akan dijelaskan di bawah ini.
1. Program Comprehension
Programmers menghabiskan banyak waktu untuk membaca dan mengerti program dalam rangka mengimplementasikan perubahan. Code browsers merupakan tools kunci dalam program comprehension. Dokumentasi yang singkat dan jelas dapat membantu dalam program comprehension. Berdasarkan atas pentingnya subtopic ini, maka IEEE Computer Society mengadakan pelatihan yang diadakan setiap tahunnya mengenai program comprehension.
2. Re-engineering
Reengineering biasanya tidak dilakukan untuk meningkatkan kemudahan melakukan maintenance (maintainability) namun untuk mengganti legacy system yang sudah berumur. Arnold [Arn92] membahas topic ini secara luas meliputi konsep, tools, teknik, studi kasus, dan resiko dan keuntungan re-engineering. Refactoring atau transformasi program yang mengorganisasi ulang (reorganisasi) tanpa mengubah perilaku sistem sekarang digunakan dalam reverse engineering untuk meningkatkan struktur program berorientasi objek.
3. Reverse engineering
Reverse engineering adalah proses menganalisa subjek sistem untuk mengindentifikasi komponen sistem dan hubungan yang terjadi di dalamnya untuk di representasikan dalam bentuk lain atau pada level abstraksi yang lebih tinggi. Reverse engineering dilkukan secar pasif, artinya tidak mengubah sistem atau menghasilkan sistem yang baru. Sebuah usaha reverse engineering sederhana mungkin menghasilkan sesuatu yang disebut graphs dan control flow graphs dari source code. Jenis dari reverse engineering antaralain redocumentation dan design recovery [DT97]. Date Reverse Engineering mempunyai pengaruh penting beberapa tahun belakangan. Topic Reverse engineering menjadi bahan diskusi dalam acara tahunan Working Conference on Reverse Engineering (WCRE).
4. Impact Analysis
Impact analysis mengidentifikasi keseluruhan sistem dan produk sistem yang dipengaruhi oleh permintaan perubahan (change request) dan membuat perkiraan sumber daya yang diperlukan untuk melakukan perubahan. Dilakukan setelah permintaan perubahan (change request) diterima oleh configuration management process. Beberapa hal penting tentang impact analisis:
– Menentukan ruang lingkup perubahan untuk perencanaan dan implementasi.
– Membuat perkiraan sumber daya yang diperlukan untuk melakukan kegiatan secara akurat.
– Menganalisa untung / rugi perubahan yang diminta.
– Melakukan komunikasi dengan bagian lain tentang kompleks tidaknya perubahan yang dilakukan.
Sebuah software yang dirancang dan dikembangkan dengan baik, akan dengan mudah dapat direvisi jika diperlukan. Salah satu faktor yang berkaitan dengan kemampuan software untuk menjalani perubahan adalah Maintainability. Maintainability adalah usaha yang diperlukan untuk menemukan dan memperbaiki kesalahan dalam software. Maintanability juga disebut sebagai pemeliharaan sistem. Dimana setelah sebuah software berhasil dikembangkan dan diimplementasikan, akan terdapat berbagai hal yang perlu diperbaiki berdasarkan hasil uji coba maupun evaluasi. Sebuah software yang dirancang dan dikembangkan dengan baik, akan dengan mudah dapat direvisi jika diperlukan. Seberapa jauh software tersebut dapat diperbaiki merupakan faktor lain yang harus diperhatikan.
Aktivitas penting untuk maintenance perangkat lunak adalah perencanaan. Jika tahap development berlangsung 1-2 tahun, maka fase maintenance berlangsung selama bertahun-tahun. Memperkirakan secara akurat sumber daya yang digunakan adalah elemen kunci dalam rencana maintenance. Sumber daya yang didalamnya termasuk biaya harus dimasukkan dalam rencana anggaran proyek. Rencana maintenance harus dimulai dengan membuat atau menentukan tujuan kualitas perangkat lunak. Konsep dan perencanaan maintenance :
– Mengandung ruang lingkup (scope) maintenance perangkat lunak.
– Proses setelah perangkat lunak selesai.
– Harus diketahui siapa yang akan melakukan maintenance.
– Perkiraan biaya maintenance siklus hidup perangkat lunak.
PENUTUP
Kesimpulan
Dengan adanya proses softwaremaintenance yang dilakukan secara rutin dan berkala, perusahaan dapat dengan mudah melakukan penyesuaian terhadap lingkungan bisnis yang terus berkembang dan memanfaatkan peluang bisnis yang ada untuk mencapai tujuan perusahaan. Selain itu pentingnya pemeliharaan (maintenance) dan pengembangan suatu software atau sistem bertujuan agar software selalu dalam keadaan siap pakai.Saran
Sebaiknya setiap perusahaan selalu menyadari akan pentingnya software maintenance. Selain itu, sumberdaya di bidang IT harus selalu tersedia, karena pemeliharan sebuah sistem informasi perusahaan yang merupakan jaringan komputer sebagian besar sangat bergantung kepada ketersediaan sumber daya di bidang teknologi informasi / IT yang memiliki kemampuan yang sesuai dengan kebutuhan sistem informasi yang dimiliki oleh perusahaan.DAFTAR PUSTAKA
O’Brien, James A. dan Marakas, George M. 2010. Management Information Systems, 10th Edition.McGraw-Hill/ Irwin : New York.
McCall, J. A., Richards, P. K., Walters, G. F. 1977. Factors in Software Quality. Nat’l Tech.Information Service, no. Vol. 1, 2 and 3 1977.
http://arifimamsuroso.blogspot.com/
Komentar
Posting Komentar