Friday, 12 March 2010

SEGALANYA BERAWAL DARI PERENCANAAN !

Tulisan ini adalah buah dari introspeksi diri sendiri berdasarkan pengalaman yang sedang penulis jalani saat ini. Tulisan ini akan lebih berbicara mengenai prosedur pengembangan perangkat lunak atau software. Di bangku kuliah, saya sebagai mahasiswa jurusan Teknik Informatika, sebenarnya telah dipersiapkan untuk terlibat dalam proyek pengembangan perangkat lunak. Saya dan juga teman-teman yang lain diajari mengenai pengelolaan proyek pengembangan perangkat lunak dalam sebuah mata kuliah yang bernama Software Engineering Project. Mata kuliah ini adalah mata kuliah lanjutan serta merupakan mata kuliah yang ditujukan untuk mempraktekkan seluruh teori yang di dapat dari mata kuliah Software Engineering.

Pada mata kuliah Software Engineering diajarkan bahwa ada beberapa tahapan pengembangan suatu software. Beberapa diantaranya adalah perencanaan, analisa, desain, dan implementasi. Tahapan perencanaan ditujukan untuk merencanakan suatu proyek pembuatan software, yang meliputi merencanakan lama waktu yang dibutuhkan untuk menyelesaikan proyek, jumlah anggota tim yang dibutuhkan serta pembagian job desc, biaya yang dibutuhkan untuk mengerjakan proyek ini dari awal sampai akhir, menentukan bahasa atau tool pemrograman yang akan digunakan dalam pengembangan software, dan yang tidak kalah penting adalah menentukan jenis basis data yang akan dipakai. Tahapan berikutnya setelah perencanaan selesai adalah analisa. Pada tahap ini, sistem analis atau project manager akan melakukan analisa kebutuhan dari pemesan software secara menyeluruh. Sistem analis akan mengunjungi tempat si pemesan guna mengetahui sistem kerja sehari-hari di tempat si pemesan. Hal ini dibutuhkan sebab sistem kerja tersebut akan mempengaruhi software yang akan dibuat dalam hal sistem kerjanya. Tahap analisa ini juga diperlukan untuk membantu mempermudah dalam membuat desain suatu software. Setelah tahap analisa selesai, tahap berikutnya adalah desain. Tahap desain ini ditujukan untuk membuat rancangan secara menyeluruh dari software yang akan dibuat berdasarkan dari hasil analisa yang telah diperoleh. Desain yang akan dibuat meliputi desain tampilan, desain basis data yang digunakan untuk menyimpan data program, dan desain hubungan antara bagian program yang satu dengan yang lain. Setelah melalui tahapan desain, gambaran utuh mengenai software yang akan dibuat sudah jadi. Tahap berikutnya adalah menerapkan semua hasil desain tersebut ke dalam bentuk nyata dari software yang meliputi pembuatan basis data, pembuatan tampilan software, sampai pembuatan kode program.

Secara keseluruhan itulah tahapan pembuatan suatu perangkat lunak atau software. Tahapan ini penting untuk diikuti dengan urut dari awal hingga akhir, sebab jika tidak akan membuat suatu proyek pengembangan software tidak memiliki arah yang jelas yang dapat menjadi penuntun dalam setiap proses yang dijalankan. Seluruh tahapan ini juga digunakan untuk memastikan agar proyek selesai tepat waktu dan kualitas software yang dihasilkan sangat baik sesuai dengan kebutuhan pemesan.

Nah, pada proyek pengembangan software pertama yang saya lakukan bersama seorang teman, saya lupa untuk menerapkan dengan menyeluruh seluruh tahapan ini. Kami melewatkan tahap yang pertama dan hanya melakukan analisa secara ringkas dalam selama masa awal berlangsungnya proyek ini. Akibat dari tidak dilakukannya seluruh tahap pengembangan software diatas, dapat dipastikan proyek ini menjadi molor dari jadwal yang seharusnya. Ditengah-tengah cukup banyak perubahan yang harus kami lakukan baik dalam hal desain tampilan, desain basis data, maupun desain sistem software itu sendiri. Semua itu disebabkan kurang detailnya analisa yang dibuat, yang kemudian berpengaruh pada kurang bagusnya desain yang dibuat serta akhirnya berpengaruh saat proses pembuatan software yang sesungguhnya dilaksanakan.

Namun dari semua kegagalan itu pula, saya akhirnya diingatkan kembali akan konsep atau tahapan pengembangan software yang baik, yang pada akhirnya saya wujudkan dalam bentuk tulisan ini sebagai sarana untuk mempertajam kembali ingatan akan konsep tersebut. Secara keseluruhan proyek yang kami kerjakan tidak sepenuhnya berantakan, namun seandainya seluruh tahapan tersebut dilalui dengan benar software yang kami buat akan lebih cepat selesai. Ya, itulah pelajaran berharga yang saya dapatkan sebagai hasil dari pengerjaan proyek pengembangan software pertama ini. Kedepannya saya akan gunakan pelajaran yang saya peroleh dari pengalaman ini untuk memperbaiki cara-cara yang akan saya pakai dalam proyek pembuatan software berikutnya. Semoga tulisan ini juga dapat menambah sedikit wawasan kalian semua yang membacanya, khususnya orang-orang yang berminat pada bidang pengembangan perangkat lunak atau software serta dapat diambil pelajaran darinya. Sekian.

Tickerbar

KumpulBlogger