Jika dibandingkan dengan Malaysia, jumlah programmer dan software house di Indonesia jauh lebih banyak. Tapi mengapa program-program berbahasa Indonesia yang kita temui di pasaran, justru lebih banyak diproduksi Malaysia ketimbang Indonesia? Penguasaan metodelogi pengembangan software konon menjadi penentunya.

Pakar teknologi informasi, Dr. Budi Rahardjo, pernah mengungkap-kan hal serupa dalam kolom Opini di majalah InfoLINUX beberapa tahun silam. Menurutnya, banyak software developer di tanah air yang tidak tahu, atau tidak peduli dengan metodelogi pengembangan software. Akibatnya, software-software yang dihasilkan membutuhkan biaya yang tinggi, su-lit untuk di-maintenance, serta tidak siap untuk bersaing di pasar software.


Kebanyakan software developer me nganggap pengembangan soft ware adalah sebatas melakukan coding menggunakan bahasa pemrograman tertentu. Padahal, coding adalah bagian (salah satu langkah) dalam sebuah metodelogi pengembangan software, yang dikenal dengan istilah Systems Development Life Cycle (SDLC). Tanpa memahami SDLC, alih-alih menjadi solusi, software yang dihasilkan justru akan menjadi sumber masalah baru di kemudian hari.

Apa itu SDLC?


SDLC didefinisikan oleh Departemen Kehakiman AS sebagai sebuah proses pengembangan software yang di guna kan oleh systems analyst, un-tuk mengembangkan sebuah sistem informasi. SDLC mencakup kebutu-han (requirement), validasi, pelatihan, kepemilikan (user ownership) sebuah sistem informasi yang diperoleh melalui investigasi, analisis, desain, implementasi, dan perawatan soft-ware.

Software yang dikembangkan ber-dasar kan SDLC akan meng hasilkan sistem dengan kualitas yang tinggi, memenuhi harapan penggunanya, tepat dalam waktu dan biaya, bekerja dengan efektif dan efi sien dalam infrastruktur teknologi informasi yang ada atau yang direncanakan, serta murah dalam perawatan dan pengembangan lebih lanjut. SDLC merupakan pen dekatan sistematis untuk memecah kan masalah yang terdiri dari beberapa tahapan. Tiap-tiap tahapan dapat terdiri dari beberapa langkah berikut:

• Konsep software – mengidentifikasi dan mendefi nisikan kebutuhan akan sebuah sistem baru.
• Analisis kebutuhan – menganalisis kebutuhan informasi dari pengguna akhir sebuah sistem.
• Desain arsitektural – membuat blueprint desain berdasarkan spesifi -kasi utama, seperti hardware, software, pengguna, dan sumber data.
• Coding dan debugging – membuat dan memprogram sistem.
• Pengujian sistem – mengevaluasi fungsionalitas sistem aktual, dalam hubungannya dengan fungsionalitas yang diharapkan.

Langkah-langkah dalam SDLC

Tidak ada langkah baku dalam SDLC, tapi ketujuh langkah di bawah merupakan life cycle yang paling sering digunakan oleh para software developer profesional.
1. Studi kelayakan.
Dilakukan oleh software developer dengan mempelajari konsep sistem yang diinginkan oleh pihak manaje-men, apakah sistem baru tersebut realistis dalam masalah pembiay-aan, waktu, serta perbedaan dengan sistem yang ada sekarang. Biasanya, dalam tahap ini diputuskan untuk meng-update sistem yang ada, atau menggantinya dengan yang baru.
2. Analisis.
Pengguna dan software developer bekerja sama mengumpulkan, mempelajari, dan merumuskan kebutuhan-kebutuhan bisnis.
3. Desain.
Pada langkah ini dilakukan pembuatan blueprint sistem. Di dalamnya termasuk penyesuaian dengan arsitektur telekomunikasi, hardware, dan software untuk pengembangan lebih lanjut, serta membuat model sistem menciptakan model graphical user interface (GUI), database, dan lain-lain.
4. Pengembangan.
Di sini, barulah para programmer melakukan coding untuk mene-rapkan desain ke dalam sistem yang sesungguhnya, membuat program, dan menyiapkan database.
5. Pengujian.
Setelah sistem berhasil dikembang-kan, langkah selanjutnya adalah pengujian untuk melihat apakah sis-tem telah sesuai dengan harapan dan kebutuhan pengguna. Dalam tahap ini, juga dilakukan debugging dan penyesuaian-penyesuaian akhir.
6. Implementasi.
Pada tahap ini, software yang telah diuji siap diimplementasikan ke dalam sistem pengguna. Pembuatan user guide dan pelatihan juga dilaku-kan dalam tahap ini.
7. Perawatan.
Perawatan dimaksudkan agar sistem yang telah diimplemantasikan dapat me ngikuti perkembangan dan pe-rubahan apapun, yang terjadi guna meraih tujuan penggunaannya. Help desk untuk membantu pengguna, serta perubahan yang dianggap pent-ing dapat dilakukan terhadap sistem dalam tahap ini.

Jika memperhatikan langkah-lang-kah di atas, coding dan debugging yang selama ini menjadi pekerjaan utama software developer, hanyalah dua dari tujuh tahapan dalam SDLC.

Di luar kedua langkah tersebut, SDLC lebih banyak berkutat pada urusan manajemen (non-teknis), yang mungkin kurang mendapat perhatian dari pada software developer.

Related Posts