Labels

Selasa, 15 November 2011

Antara Proses Dan Siklus Hidup RPL

http://more4u.xaapa.com/files/2009/05/vodafone-zoo-zoo-ads-11.jpgBeberapa buku teks atau buku referensi seringkali melakukan proses sinonim antara proses perangkat lunak atau Software Process dengan siklus pengembangan perangkat lunak atau software development life cycle (SDLC). Meski secara harfiah kedua istilah tersebut berbeda, tetapi masih banyak yang menganggap bahwa keduanya sama.

 
               Dalam kajiannya, SDLC sesungguhnya merupakan bagian proses perangkat lunak itu sendiri. Karena sebuah proses pengembangan perangkat lunak sesungguhnya akan langsung bersentuhan dengan SDLC itu sendiri sebagai sebuah rangkaian proses hidup dari sebuah perangkat lunak, mulai darri analisa hingga sebuah perangkat lunak dikatakan  “mati” atau tidak terpakai lagi. Atau bahkan juga saat perangkat lunak tersebut dinyatakan “hidup” kembali dalam bentuk sebuah revisi atau pengembangan baru.
               Sebelum memulai tentang pembahasan dan kaitannya dengan RPL, satu pertanyaan yang umumnya mengganggu para pemula dalam memahmi RPL adalah: “Mengapa harus mempelajari proses dan siklus hidup perangkat lunak?” Pertanyaan yang sederhana namun sangat dilematis bagi sebagian besar para pembelajar RPL ini merupakan kunci jawaban dari alur disiplin RPL sendiri.
               Seperti halnya sebuah makhluk hidup, perangkat lunak juga memiliki siklus hidup, perangkat lunak juga memiliki siklus hidup di dalamnya. Perbedaan utama di dalamnya adalah jika makhluk hidup hanya mengalami satu kali kehidupan di dunia, maka sebuah perangkat lunak mampu memiliki variasi kelangsungan hidup di dunia. Sehingga dengan mempelajari siklus hidup dari perangkat lunak itu sendiri dan jika dirasa perlu maka dapat diputuskan apakah perangkat lunak itu sudah dianggap using dan mati atau harus direvisi lebih lanjut menjadi sebuah perangkat lunak yang baru.
               Dengan mempelajari proses hidup dar sebuah perangkat lunak, maka secara terintegerasi pula akan mampu mempelajari hal apa yang seharusnya dilakukan oleh pengembang perangkat lunak (software engineer) dalam proses perngembangan perangkat lunak itu sendiri. Sehingga dengan mempelajari siklus hidup berarti mempelajari langkah-langkah untuk menjadi seorang software engineer yang  baik, di dalam lingkup teori dan juga implementasi
               Mempelajari siklus hidup merupakan langkah awal dari pembelajaran RPL secara utuh. Karena hamper sebagian besar dari pembelajaran RPL, khususnya di dalam konsep dasar, membahas mengenai rincian dari siklus hidup perangkat lunak itu sendiri.
               Meski siklus hidup pengembangan perangkat lunak yang paling umum digunakan adalah SDLC (Software development Life Cycle) dalam bentuk waterfall atau seperti air terjun, tetapi dalam perkembangan waktu telah banyak landasan teori lain yang akan dibahas sebagai alternative dari tema siklus hidup ini.
               Seringkali siklus hidup atau life cycle sebuah perangkat lunak disamakan dengan proses atau software process. Meski sekilas terlihat sama, tetapi sangatlah berbeda antara siklus hidup dari proses dalam konteks RPL.
               Jika ditinjau dari sisi definisi, siklus hidup memiliki beberapa definisi sebagai berikut:
1.      Dari Gustafson [10] :
The Software life cycle is the sequence of different activities that take place during software development.
Definisi ini menyatakan bahwa siklus hidup adalah urutan dari kegiatan yang ada di dalam sebuah pengembangan perangkat lunak. Dalam penjelasnnya bahwa urutan tersebut tidaklah harus benar-benar urut, tetapi dapat mengikuti dengan jenis siklus hidup yang dianut oleh pengembang perangkat lunak itu sendiri.

2.      Dari Keyes [11] :
A system has life of its own. It starts out as an idea and progresses until this idea germinates and then is born.
Dalam bukunya, Jennifer keyes lebih menekankan bahwa sebuah perangkat lunak bias saja mengalami sebuah siklus hidup bergantung dari proses pengembangannya mulai dari ide dasar hingga saat lahirnya perangkat lunak itu sendiri.


3.      Dari IEEE [13] :
The life cycle of a software system is normally defined as the period of time that starts when a software product is conceived and ends when the product is no longer available for use.
Dari standard IEEE 1016, ditekankan bahwa siklus hidup adalah segala sesuatu yang lebih berdasar kepada urutan waktu dibandingkan proses yang terjadi. Sedangkan dari referensi IEEE lain [15] disebutkan bahwa yang dimaksud dengan siklus hidup dalam konteks perangkat lunak life cycle lebih fokus kepada siklus hidup suatu data dalam perangkat lunak.


               Dari ketiga definisi tersebut, sekilas terlihat bahwa yang dimaksud dengan siklus hidup dalam konteks RPL berarti tidak sama dengan definisi dari proses perangkat lunak. Secara umum dapat disimpulkan bahwa siklus hidup perangkat lunak. Secara umum dapat disimpulkan bahwa siklus hidup  perangkat lunak adalah urutan hidup sebuah perangkat lunak berdasarkan perkembangan perangkat lunak yang ditentukan oleh pengembang perangkat lunak itu sendiri. Sehingga dapat ditentukan usia fungsional dari sebuah perangkat lunak, apakah akan menjadi using dan mati, ataukah lahir kembali dalam bentuk berbeda menggunakan model proses tertentu.
               Bagi pihak pengembang, tentu saja hal tersebut akan menguntungkan secara financial, tetapi secara etika seharusnya hal tersebu tidak terjadi. Jika pemahaman mengenai konsep dasar RPL dapat dijelaskan ke pelanggan atau pengguna, maka semua unsure pelaku RPL akan mampu mengatasi masalah dengan solusi yang lebih efisien.

0 comment:

Posting Komentar

Followers