Saturday, September 3, 2005

Tips Pengembangan Piranti Lunak : Dokumentasi (Menuju CMM level 2)

Banyak sekali pengembang piranti lunak mendapati kesulitan dalam melakukan pemeliharaan produknya. Apabila di satu modul diubah, maka akan terjadi error di tempat lain. Semakin banyak perubahan di modul tersebut maka akan didapati semakin banyaknya masalh di modul lainnya. Perubahan yang mestinya bisa dilakukan dalam waktu 1 x 24 jam, bisa menjadi seminggu atau lebih. Biasanya kesulitan ini diakibatkan oleh lamanya melakukan penelusuran (debugging) code. Belum lagi ditambah dengan kejadian yang seakan – akan adalah anomali tools pengembangan, yang pada dasarnya memang tiap tool pengembangan mempunyai karakteristik masing-masing (misal: kita melihat suatu persamaan matematis yang apabila kita ujikan ke algoritma tersebut ternyata tidak berjalan sesuai seperti yang dikehendaki. Hal ini karena memang ada sedikit perbedaan sudut pandang , dan sebagainya).

Untuk mengatasi kerumitan pada akhir waktu pengembangan, maka bisa menggunakan fungsi DOKUMENTASI mulai pada saat awal pengembangan. Mulai dari User Requirement, Functional Spesification, Object Design sampai Developing, Testing – Debugging (termasuk dokumentasi error yang pernah dialami), Deploying dan Implementation. Pada intinya adalah melakukan dokumentasi apapun yang pernah kita kerjakan, sehingga bisa diketahui bagian mana yang akan perlu dikembangkan, atau bahkan dibuang. Perlu disadari bahwa Dokumentasi adalah bagian yang cukup vital dalam pengembangan piranti lunak.

Apakah ada pengembang yang tidak melakukan Dokumentasi ? Saya kira masih banyak yang kurang melakukan disiplin tersebut. Mungkin melakukan dokumentasi , namun sifatnya hanya terbatas , atau karena sifatnya ‘kepepet’, seperti User Manual atau Overview yang gunanya adalah ke arah marketing.

Adakalanya pengembang yang under pressure bisa ‘burn out’ karena situasi pekerjaannya. Apabila kode tersebut hanya dimengerti oleh orang tersebut maka hasilnya bisa cukup fatal. Hal tersebut karena perlu penulisan ulang seluruh modul atau seluruh sistem. Seberapa lama software tersebut akan ‘mature’ kalau terus menerus di tambal sulam.

Semoga tulisan ini bisa bermanfaat bagi kita, terutama yang pada saat ini belum melakukan dokumentasi pada sistemnya.

No comments: