Pada saat dihadapkan pada pemilihan metodologi pengembangan sistem, banyak diantara kita yang akhirnya bingung. Padahal salah menentukan metodologi, dapat merembet ke penyusunan jadwal, staffing proyek, biaya dan lain-lain. Oleh karena itu, pemilihan metodologi menurut saya merupakan bagian yang lumayan penting, tidak hanya pada saat pengembangan sistem informasi namun juga pada pengembangan proyek-proyek lain.
Dalam pengembangan sebuah sistem, kita mengenal konsep SDLC (system development life cycle). Secara global definisi SDLC dapat dikatakan sebagai suatu proses berkesinambungan untuk menciptakan atau merubah sebuah sistem, merupakan sebuah model atau metodologi yang digunakan untuk melakukan pengembangan sistem. Dapat dikatakan dalam SDLC merupakan usaha bagaimana sebuah sistem informasi dapat mendukung kebutuhan bisnis, rancangan & pembangunan sistem serta delivering-nya kepada pengguna.
Secara umum, tahapan SDLC meliputi proses perencanaan, analisis, desain dan implementasi.
Planning
Proses perencanaan biasanya lebih menekankan pada alasan mengapa sebuah sistem harus dibuat.
Analysis
Tahapan perencanaan ini kemudian dilanjutkan dengan proses analisis yang lebih menekankan pada siapa, apa, kapan dan dimana sebuah sistem akan dibuat.
Design
Sedangkan pada proses desain lebih menekankan kepada bagaimana sistem akan berjalan
Implementation
Tahap terakhir dilanjutkan dengan fase implementasi yaitu proses delivery-nya kepada pengguna.
Pendekatan formal tahapan pengembangan sistem disebut metodologi. Saat ini bermacam-macam metodologi dalam pengembangan sistem. Wah, tambah bingung aja milihnya dong.. Nggak usah kuatir, sampeyan dapat memilih metodologi yang tepat disesuaikan dengan kebutuhan proses bisnis dan data yang mendukungnya.
Beberapa metodologi yang biasa dikenal antara lain Structural Design, Rapid Application Development (RAD) dan Agile Development.
Structural Design
Merupakan sebuah metode pengembangan sistem dimana antara satu fase ke fase yang lain dilakukan secara berurutan. Biasanya sebuah langkah akan diselesaikan terlebih dahulu sebelum melanjutkan ke fase berikutnya. Keuntungan menggunakan metodologi ini requirement harus didefinisikan lebih mendalam sebelum proses coding dilakukan. Disamping itu metodologi ini memungkinkan sesedikit mungkin perubahan dilakukan pada saat proyek berlangsung. Namun, metodologi ini juga mempunyai beberapa kelemahan, diantaranya desain harus komplit sebelum programming dimulai, serta jika terjadi fase yang terlewati, maka biaya yang akan ditimbulkan akan lumayan besar.
Bagian dari metodologi ini antara lain Waterfall Modeling dan Parallel Development. Berbeda dengan Waterfall Modeling, Parallel Development memungkinkan beberapa fase dilakukan secara bersama-sama untuk mempersingkat waktu.
Rapid Application Development (RAD)
Metodologi ini melakukan beberapa penyesuaian terhadap SDLC pada beberapa bagian sehingga lebih cepat untuk sampai ke tangan pengguna. metodologi ini biasanya mensyaratkan beberapa teknik dan alat2 khusus agar proses bisa cepat, misalnya melakukan sesi joint application development (JAD), penggunaan alat-alat computer aided software engineering (CASE Tools), kode generator dan lain-lain.
Beberapa kategori RAD misalnya Phased Development, Prototyping dan Throw-away Prototyping. Phased Development membagi sistem secara keseluruhan menjadi beberapa versi sistem. Setelah desain untuk versi pertama selesai maka akan dilanjutkan ke implementasi. Setelah versi pertama terselesaikan, maka pengembang akan memulai lagi ke versi selanjutnya.
Metodologi prototyping melakukan analisis, desain dan implementasi secara bersamaan, kemudian dilakukan secara berulang-ulang untuk mendapat review dari pengguna. Sebuah prototiping adalah sebuah sistem dalam fungsi yang sangat minimal.
Sedangkan metodologi Throwaway Prototyping hampir sama dengan metodologi Prototyping. Perbedaannya bahwa pada metodologi ini, analisis dilakukan lebih mendalam lagi.
Agile Development
Bisa dikatakan ini merupakan metodologi yang lebih cepat dalam pengembangan sebuah sistem informasi. Metodologi ini melakukan perampingan pada proses pemodelan dan pembuatan dokumentasi. Pengembangan metodologi ini adalah eXtreme Programming dan Scrum.
Referensi:
- http://en.wikipedia.org/wiki/Systems_Development_Life_Cycle
Senin, September 14, 2009
Mengenal Metodologi Pengembangan Sistem Informasi
Langganan:
Postingan (Atom)