KELEBIHAN DAN KEKURANGAN METODE SDLC

Assalamualaikum Wr. Wb.

Pada kesempatan kali ini saya akan memberikan sedikit pengetahuan mengenai beberapa kelebihan dan kekurangan dari beberapa metode SDLC. Agar lebih memahami, kalian bisa mulai membaca yang ada dibawah ini.

SDLC (System Development Life Cycle) atau Siklus hidup pengmbangan system adalah proses pembuatan dan pengubahan sistem serta model dan metodologi yang digunakan untuk mengembangkan sistem-sistem tersebut. Konsep ini umumnya merujuk pada sistem komputer atau informasi. SDLC juga merupakan pola yang diambil untuk mengembangkan sistem perangkat lunak, yang terdiri dari tahap-tahap: rencana(planning), analisis (analysis), desain (design), implementasi (implementation), uji coba (testing) dan pengelolaan (maintenance) proses pembuatan dan pengubahan sistem serta model dan metodologi yang digunakan untuk mengembangkan sistem-sistem tersebut. Konsep ini umumnya merujuk pada sistem komputer atau informasi. SDLC juga merupakan pola yang diambil untuk mengembangkan sistem perangkat lunak, yang terdiri dari tahap-tahap: rencana(planning),analisis (analysis), desain (design), implementasi (implementation), uji coba (testing) dan pengelolaan (maintenance).


1. Prototype 

 

Model prototype atau prototyping adalah model pengembangan perangkat lunak yang antara klien, pengembang, dan pengguna harus saling berkomunikasi satu sama lain. Karena biasanya model ini digunakan oleh klien yang belum mengetahui kebutuhannya secara detail. Maka dari itu tahapan atau alur pada model prototyping ini sangat membantu untuk mengetahui kebutuhan kliennya.

Prototype memiliki 4 jenis model yaitu, prototype kertas, prototype berbasis PC, prototype kerja, dan prototype program.

Tahapan Prototype model antara lain :

a.         Pengumpulan Kebutuhan
Pengembang dan pengguna mendiskusikan sistem seperti apa yang ingin dibuat dan apa saja kebutuhannya.
b.         Membangun Prototype
Pengembang membuat rancangan dari sistem yang telah didiskusikan sebelumnya.
c.         Evaluasi Prototype (Pengguna)
Pengguna mengevaluasi prototype yang telah dirancang oleh pengembang, apakah sudah sesuai dengan keinginan pengguna atau belum.
d.         Pengkodean Sistem
Sistem yang sudah sesuai akan dieksekusi menjadi software ke dalam bahasa pemrograman yang sesuai.
e.         Pengujian Sistem
Sistem yang sudah dieksekusi, menjadi software akan diuji untuk mengetahui tingkat keberhasilannya.
f.          Evaluasi Sistem
Pengguna mengevaluasi software yang sudah dibuat.
g.         Penggunaan Sistem
Software yang sudah lolos semua tahap sebelumnya, berarti sudah siap untuk digunakan oleh pengguna.

Kelebihan Metode Prototype

a.       Menjalin komunikasi yang baik antara pengembang dan klien.
b.      Menghemat waktu dan biaya.
c.       Klien dapat berperan aktif
d.      Penerapan sistem akan lebih mudah dilakukan.

Kelemahan Metode Prototype
a.       Tidak cocok pada sebuah sistem yang berskala besar.
b.   Biasanya pengembang hanya menggunakan bahasa pemrograman yang sederhana, dikarenakan sistem tersebut tidak terlalu mementingkan segi keamanan.
 

2. Transformasi Formal


Transformasi formal adalah suatu program yang dapat digunakan untuk mengembangkan bagian sistem agar dapat menerapkannya pada bagian bagian lain di sistem data. Dalam mengembangkan bagian bagiannya harus digunkan pendekatan menggunakan suatu program.

Tahapannya yaitu:
a.    Definisi Persyaratan: Berdasarkan spesifikasi secara matematik untuk menyatakan suatu program.
b.    Spesifikasi Formal: Mengurangi jumlah kesalahan pada sistem.
c.    Transformasi Formal: Menentukan aspek dari suatu sistem.
d.    Integrasi Sistem: Sistem harus berjalan dengan baik dan memiliki keamana yang baik.

Kelebihan Transforasi Formal:
a.    Dalam pengembangan sistem memiliki resiko yang rendah.
b.    Minimnya kesalahan pada sistem.

Kekurangan Transformasi Formal:
a.    Memerlukan keahlian khusus untuk menerapkannya.
b.    Keamanan yang dibutuhkan oleh perangkat lunak ini harus baik.

 
3. Rapid Application Development (RAD)

Metode Rapid Application Development merupakan metode pengembangan perangkat lunak yang mengutamakan kecepatan dan ketepatan dalam proses pengembangannya. Biasanya metode ini dilakukan secara tim yang bertujuan untuk mempersingkat waktu.
RAD harus didukung oleh perangkat dan lingkungan pengembangan yang memadai, biasanya dikembangkan berdasarkan orientasi komponen. Lingkungan pengembangan telah memiliki library yang luar biasa besar dan lengkap seperti Java Development Kit beserta seluruh library dari Sun dan vendor-vendor lain pendukung.

Keunggulan model RAD adalah :
a.    Setiap fungsi mayor dapat dimodulkan dalam waktu tertentu kurang dari 3 bulan dan dapat dibicarakan oleh tim RAD yang terpisah dan kemudian diintegrasikan sehingga waktunya lebih efisien
b.    RAD mengikuti tahap pengembangan sistem seperti umumnya, tetapi mempunyai kemampuan untuk menggunakan kembali komponen yang ada sehingga pengembang tidak perlu membuat dari awal lagi dan waktu yang lebih singkat 

Kekurangan model RAD adalah :
a.    Bagi proyek yang besar tetapi berskala, RAD memerlukan sumber daya manusia yang memadai untuk menciptakan jumlah tim RAD yang baik.
b.    RAD menuntut pengembangan dan pelanggan memiliki komitmen di dalam aktivitas rapid-fire yang diperlukan untuk melengkapi sebuah sistem, di dalam kerangka waktu yang sangat diperpendek. Jika komitmen tersebut tidak ada, proyek RAD akan gagal.
 

4. Incremental Development


Model Incremental Development merupakan metode pengembangan perangkat lunak yang mengkombinasikan Linear Sequential Model dan Prototype Model. Biasanya, increment pertama merupakan produk inti, yang akan dijadikan bahan dasar pada increment selanjutnya.

Keunggulan dari Incremental Model :
a.    Personil bekerja optimal
b.    Pihak konsumen dapat langsung menggunakan dahulu bagian-bagian yang telah selesai dibangun. Contohnya pemasukan data karyawan
c.    Mengurangi trauma karena perubahan sistem.  Klien dibiasakan perlahan-lahan menggunakan produknya bagian per bagian
d.    Memaksimalkan pengembalian modal investasi konsumen

Kekurangan dari Incremental Model :
a.    Cocok untuk proyek berukuran kecil (tidak lebih dari 200.000 baris coding)
b.    Mungkin terjadi kesulitan untuk memetakan kebutuhan pengguna ke dalam rencana spesifikasi masing-masing hasil increment
c.    Dapat menjadi build and Fix Model, karena kemampuannya untuk selalu mendapat perubahan selama proses rekayasa berlangsung
 

5. Spiral Mode


Spiral Model merupakan metode pengembangan perangkat lunak yang prosesnya digambarkan dalam bentuk spiral. Setiap loop mewaliki satu fase dari Software Process. Setiap loop hanya terfokus pada satu fase.
Pada model spiral, resiko sangat dipertimbangkan. Resiko adalah sesuatu yang mungkin mengakibatkan kesalahan. Model spiral merupakan pendekatan yang realistik untuk software berskala besar. Pengguna dan pembangun bisa memahami dengan baik software yang dibangun karena setiap kemajuan yang dicapai selama proses dapat diamati dengan baik. Namun demikian, waktu yang cukup panjang mungkin bukan pilihan bagi pengguna, karena waktu yang lama sama dengan biaya yang lebih besar.
 

6. Fourth-Generation Techniques


Istilah generasi ke empat, mengarah ke perangkat lunak yang umum yaitu tiap pengembang perangkat lunak menentukan beberapa karakteristik perangkat lunak pada level tinggi. Saat ini pengembangan perangkat lunak yang mendukung 4GT, berisi :
a.    Bahasa non prosedural untuk query basis data
b.    Report generation
c.    Data manipulation
d.    Interaksi layer
e.    Kemampuan grafik level tinggi
f.    Kemampuan spreadsheet 

Tiap tool ini ada tapi hanya untuk suatu aplikasi khusus.

Salah satu keuntungan penggunaan model 4GT adalah pengurangan waktu dan peningkatan produktivitas secara besar, sementara kekurangannya terletak pada kesulitan penggunaan perangkat bantu (tools) dibandingkan dengan bahsa pemrograman, dan juga kode sumber yang dihasilkannya tidak efisien.

Kelebihan dari metode pengembangan perangkat lunak ini diantaranya :
a.    Pengurangan waktu dan peningkatan produktivitas secara besar
b.    Karena 4GT menggunakan 4GL yang merupakan bahasa pemrograman yang  khusus dirancang dengan tujuan tertentu (spesifik), maka untuk permasalahan yang tertentu dengan 4GL tertentu pula sangat tepat menggunakan 4GT.
c.    Tool yang menggunakan metode pengembangan perangkat lunak 4GL bisa meng-generate sistem dari output yang dihasilkan oleh case tools.

Kekurangan metode pengembangan perangkat lunak ini
a.    Penggunaan perangkat bantu (tools) dibandingkan dengan bahasa pemrograman, dan juga kode sumber yang dihasilkannya tidak efisien.
b.    Untuk usaha yang besar, dibutuhkan pengembangan strategi desain untuk sistem, walau digunakan bahasa 4GL.
c.    Penggunaan 4GT tanpa perencanaan matang (untuk proyek besar) akan menyebabkan kesulitan yang sama (kualitas dan pemeliharaan yang jelek, ketidakpuasan pelanggan) seperti dengan metode konvensional.
d.    4GL tidak selalu berhasil menghasilkan sistem yang diinginkan.
 

Komentar

Posting Komentar