Sebagai seorang yang terlatih dengan kaedah Software Engineering sekitar awal 2000-an, saya mengenali kaedah pembangunan perisian hanya dengan kaedah paling popular ketika itu, iaitu kaedah waterfall.
Kitaran hidup perisian (Software Development Life cycle) lebih mudah dijelaskan melalui kaedah waterfall.
Dalam kaedah waterfall, perisian dibina melalui beberapa peringkat, dan setiap peringkat ini mestilah dimuktamadkan oleh pelanggan yang ingin membina perisian. Ini untuk memastikan pelanggan tidak lagi menukar apa-apa lagi syarat keperluan sistem yang telah dianalisis ketika perisian di dalam fasa pembangunan (development).
Fasa 1: Analisis keperluan sistem
Dalam fasa ini, kebiasaannya pelanggan akan bermesyuarat dan berbincang dengan penganalisis sistem (system analyst) yang dilantik. Antara tugas penganalisis sistem adalah untuk mengambil semua keperluan sistem yang akan dibangunkan, dan seterusnya mendokumentasikankan keperluan tersebut untuk pelanggan menyemak dan akhirnya bersetuju untuk membangunkan perisian berdasarkan keperluan sistem yang telah dianalisis.
Fasa 2: Reka bentuk
Apabila pelanggan telah menandatangani dokumen keperluan sistem, reka bentuk sesuatu sistem boleh mula dibina. Para pereka sistem akan menggembeleng tenaga untuk menghasilkan sistem yang sesuai mengikut keperluan sistem yang telah dipersetujui dan mencapai objektif sistem tersebut. Sebelum reka bentuk ini disampaikan kepada para pembina sistem, ianya perlu dibincangkan, prototaip sistem akan dibina dan didokumentasi secara lengkap dan proses ini memakan masa.
Fasa 3: Pembinaan
Dokumen reka bentuk sistem (Design document) yang telah lengkap akan dihantar kepada kumpulan pembina sistem. Pada fasa ini, implementasi sistem dari reka bentuk atau prototaip kepada sistem sebenar akan bermula. Kebiasaannya para pembina sistem akan diberikan satu ruang masa yang terhad untuk membina sistem dan seterusnya untuk membawa ke fasa pembangunan sistem yang seterusnya, fasa pengujian sistem.
Fasa 4: Pengujian
Hanya setelah fasa pembinaan selesai, fasa seterusnya adalah fasa pengujian. Semasa dalam fasa pembinaan, para penguji sistem giat menterjemahkan keperluan sistem kepada senario pengujian (test cases) yang diperlukan bagi setiap keperluan sistem. Senario pengujian ini seterusnya akan dilaksanakan untuk menguji sistem yang telah disiapkan agar ianya selari dengan keperluan dan kehendak sistem pada fasa awal analisis keperluan sistem yang telah dipersetujui.
Fasa 5: Implementasi dan Penyelenggaraan
Sistem yang melepasi fasa pengujian akan memulakan fasa terakhir iaitu implementasi sistem untuk pengguna. Pada tahap ini, kebanyakan akitiviti pembinaan tidak lagi menjadi keperluan, malah digantikan dengan aktiviti menyahpijat (bug fixing) dan juga menyelenggara dan mengubah sistem mengikut permintaan dan keperluan pengguna.
Waterfall tidak lagi relevan?
Jika kita teliti fasa-fasa di dalam kitaran Waterfall, setiap fasa mengambil dan memakan masa. Ada yang mengambil masa dalam masa 3 bulan, 6 bulan, malah ada yang memakan hingga bertahun. Jika kita lihat dari segi sejarah teknologi komputer yang telah wujud sebelum adanya kemudahan Internet, fasa-fasa ini dilihat perlu agar sistem yang dihasilkan menepati kehendak pengguna komputer dan juga perlu dimuatkan dalam media fizikal seperti disket dan juga cakera padat.
Kitaran perisian juga agak panjang sehingga 2 hingga 3 tahun dan juga perisian-perisian komputer ini hanya boleh didapati di kedai-kedai komputer. Saya masih ingat lagi kotak perisian yang besar kerana perlu memuatkan bukan sahaja media fizikal, dan pada masa yang sama buku penggunaan perisian yang agak tebal.
Kini, dengan perkembangan pesat teknologi komputer dipangkin dengan kepesatan peningkatan capaian Internet, perisian sekarang amat mudah didapati dan dimuat turun dari Internet dengan pantas. Kepantasan capaian ini membuatkan para pembina perisian mampu mencapai lebih ramai pengguna dengan pantas, disamping memberikan sokongan yang lebih baik dengan mengeluarkan kemaskini perisian (patch update) secara lebih kerap dan menyelesaikan isu-isu yang dihadapi pengguna dengan lebih pantas dan efisien.
Dengan permintaan yang tinggi dalam menyelesaikan isu dan kemaskini perisian yang kerap agar sentiasa menepati citarasa pengguna, kaedah Waterfall dianggap tidak lagi relevan untuk membolehkan keupayaan ini, lebih-lebih lagi dalam era aplikasi telefon pintar yang memerlukan kepantasan dari segala segi, agar tidak ketinggalan.
Dalam bahagian 2, saya akan jelaskan dengan lebih dalam lagi apa itu Scrum dan juga pengalaman saya sepanjang penglibatan saya dalam industri IT di Malaysia dalam usaha mentransfomasikan syarikat-syarikat IT di Malaysia ke arah era digital.
Be First to Comment