Saat kita berada di awal pengembangan proyek IT, apa hal yang pertama kali didiskusikan antara perusahaan dan vendor? Ya, itu adalah requirement (umumnya diterjemahkan sebagai “kebutuhan”). Dalam proyek pengembangan software seperti website atau aplikasi mobile, requirements berarti hal-hal yang diperlukan ada dalam sebuah software. Pembahasan requirement begitu krusial karena requirement merupakan fondasi bagi aktivitas desain dan konstruksi aplikasi. Dalam artikel ini, akan dijelaskan lebih spesifik mengenai lima metode requirement proyek IT.
Umumnya kita mengenal requirements dalam bentuk sekumpulan fitur. Namun ada juga hal-hal di luar fitur yang penting dan diperlukan seperti kecepatan aplikasi, kemudahan untuk digunakan, dan keamanan.
Saat di awal proyek, tim pengembang akan berusaha mengumpulkan requirements dari klien. Apa masalah yang sebenarnya dialami klien atau pengguna? Apa solusi yang akan ditawarkan? Pemahaman awal tentang requirements ini begitu krusial untuk pengembangan perangkat lunak nantinya.
Dalam mengumpulkan requirements, terdapat beberapa metode atau cara yang dapat digunakan oleh tim pengembang. Umumnya tim pengembang akan memanfaatkan lebih dari satu metode agar requirements yang dikumpulkan lebih jelas dan lengkap. Berikut ini 5 metode requirement gathering proyek IT yang umum dilakukan:
1. Wawancara
Pada metode wawancara, representasi dari tim pengembang, umumnya project manager atau business analyst, bertemu dengan representasi dari pengguna. Business analyst mengajukan serangkaian pertanyaan terbuka (open-ended questions) kepada pengguna, kemudian pengguna memberikan jawaban atas setiap pertanyaan tersebut. Contoh pertanyaan terbuka adalah sebagai berikut.
- Apa kesulitan yang umum Anda temui sehari-hari
- Bagaimana aplikasi yang akan dikembangkan dapat membantu pekerjaan Anda sehari-hari
- Apa sasaran yang perlu dicapai dari penggunaan aplikasi yang akan dikembangkan
Diskusi berlangsung dalam proses tanya jawab dan konfirmasi tersebut. Dari jawaban pengguna, seringkali business analyst mengajukan pertanyaan lanjutan untuk menggali lebih dalam atau mengkonfirmasi hal yang dijelaskan pengguna.
Jika tim pengembang berhasil mengidentifikasi tipe pengguna, pertanyaan yang disiapkan untuk wawancara dapat lebih spesifik. Misalnya pada aplikasi pembelajaran online, tipe pengguna yang diidentifikasi adalah student, teacher, dan admin. Masing-masing dari tipe pengguna tersebut dapat disiapkan pertanyaan yang lebih spesifik.
2. Collaborative Group Discussion
Ada kalanya kita ingin mendapatkan requirements yang bersumber dari diskusi dan aspirasi banyak pengguna. Caranya adalah dengan mengadakan Collaborative Group Discussion atau disingkat CGD.
Kelebihan dari CGD ini adalah kita dapat melihat diskusi dengan berbagai macam perspektif tentang masalah yang pengguna hadapi atau proses bisnis yang pengguna jalani. Jika terdapat perbedaan dalam proses bisnis misalnya, perbedaan tersebut dapat didiskusikan sehingga bisa disepakati bersama untuk proses bisnis yang ajeg atau tetap. Solusi yang akan disusun oleh tim pengembang nantinya dapat lebih stabil.
Untuk mendapatkan hasil yang optimal dari CGD, kemampuan fasilitasi diskusi dan pengambilan keputusan sangat diperlukan. Project manager atau business analyst dapat berperan sebagai fasilitator. Beberapa hal yang perlu disiapkan oleh fasilitator umumnya adalah sebagai berikut:
- Menyiapkan pertanyaan untuk diskusi
- Menyusun agenda meeting, termasuk aturan-aturan saat meeting
- Menyiapkan perlengkapan yang dibutuhkan seperti kertas, pulpen atau pensil, sticky notes, dan papan tulis
- Mengundang pengguna yang relevan. Peran teknis seperti developer atau system analyst sebaiknya ikut berpartisipasi
- Memfasilitasi diskusi dan keputusan saat meeting berlangsung
Setelah CGD berakhir, harapannya masalah sudah berhasil diidentifikasi dan pendekatan solusi disepakati bersama.
3. Membaca Dokumentasi
Cara lainnya untuk mengumpulkan requirements adalah membaca dokumentasi yang ada pada organisasi klien. Kita dapat meminta dokumen seperti Standard Operating Procedure (SOP), dokumentasi sistem seperti flowchart atau activity diagram yang ada saat ini, dan dokumen-dokumen lain yang relevan.
Sebagai contoh, kami pernah menemui klien yang sudah memiliki dokumen perencanaan sistem yang memuat analisis dan spesifikasi kebutuhan sistem sebelum memulai suatu proyek. Adanya dokumentasi seperti ini tentu membantu usaha tim pengembang dalam memahami requirements di awal proyek, apalagi jika proyek yang dikerjakan memiliki ruang lingkup requirements yang relatif besar.
4. Observasi
Observasi atau pengamatan merupakan metode yang menarik untuk dicoba. Dengan observasi, tim pengembang mengamati dan mendokumentasikan cara kerja dari pengguna sehari-hari. Tim pengembang mengamati aktivitas pengguna dan melihat apa kesulitan yang dihadapi pengguna.
Misalnya suatu restoran ingin mendigitalkan proses pesanan pelanggan. Melalui observasi, kita mengamati proses bisnis yang berjalan: pelanggan perlu mengisi menu yang dipesan pada kertas, menyerahkannya ke kasir, kemudian membayar pesanan tersebut. Selanjutnya kasir akan menyerahkan pesanan yang sudah dibayar ke dapur. Chef di dapur melihat pesanan tersebut kemudian membuatkan makanan dan minuman yang dipesan. Pelanggan kemudian tinggal menunggu hingga pesanannya selesai diproses.
Dari ilustrasi di atas, kita dapat menemukan kesulitan apa saja yang dihadapi pelanggan, kasir, maupun chef. Kita juga mungkin menemukan bagaimana proses ini berjalan saat jam sibuk. Nah, sistem atau solusi yang dibuat nantinya akan membantu proses pesanan berjalan lebih efektif dan memudahkan bagi pengguna yang terlibat.
5. Survey dengan Kuesioner
Metode survey dengan kuesioner termasuk cara mengumpulkan informasi yang relatif banyak dari pengguna dengan cepat, murah, dan efisien. Metode ini bermanfaat khususnya saat kita tidak memiliki akses langsung ke pengguna.
Survey merujuk pada proses mengajukan pertanyaan kemudian mengumpulkan dan menganalisis jawaban. Salah satu teknik yang digunakan dalam survey adalah kuesioner. Kuesioner merupakan dokumen yang memuat daftar pertanyaan untuk diberikan kepada responden (dalam hal ini adalah pengguna).
Saat menyusun kuesioner, pastikan kita sudah mengetahui apa tujuan dari survey dan apa hasil yang diharapkan. Dari tujuan tersebut, kita menurunkannya menjadi serangkaian pertanyaan. Survey sebaiknya fokus dengan pertanyaan tentang pengalaman pengguna di masa lalu. Pertanyaan tentang apa yang akan dilakukan atau dipilih pengguna di masa depan memiliki risiko bias karena apa yang akan dilakukan pengguna di masa depan belum tentu sesuai dengan apa yang diucapkan pengguna saat ini.
Saat ini ada beberapa alat bantu online yang akan memudahkan kita dalam membuat kuesioner untuk survey. Pendekatan survey dengan alat bantu online akan membuat proses survey lebih hemat dan efektif karena kuesioner dapat didistribusikan secara online tanpa perlu cetak kertas dan menyerahkan hasil cetakan ke pengguna satu-satu. Kamu bisa mencoba alat bantu survey seperti surveymonkey.com, typeform.com, atau Google Form. Silakan pelajari dan gunakan alat bantu yang Anda sukai sesuai kebutuhan.
—
Demikian pembahasan mengenai metode requirement gathering proyek IT. Dalam hal ini tim development akan menggunakan metode pengumpulan requirements yang paling sesuai dengan situasi yang dihadapi. Apakah klien memiliki dokumentasi sistem, SOP, atau dokumen lainnya yang relevan? Apakah vendor memiliki akses langsung ke pengguna? Apakah metode wawancara satu-satu dirasa cukup? Atau apakah perlu kesepakatan bersama di antara pengguna melalui CGD? Apakah pengguna dari klien dapat meluangkan waktu untuk melakukan diskusi grup tersebut di tengah kesibukannya sehari-hari?
Semua jawaban dari pertanyaan di atas dapat menentukan metode pengumpulan requirement gathering proyek IT apa saja yang bisa digunakan oleh tim pengembang. Jika kita dapat menggunakan tiga hingga empat metode, informasi dan data yang kita peroleh untuk penyusunan requirements menjadi lebih kaya sehingga gambaran requirements yang terbentuk nantinya lebih mendekati kebutuhan yang sebenarnya.
Badr Interactive membuka jasa konsultasi secara gratis untuk membahas requirement atau kebutuhan software perusahaan Anda secara mendetail. Jika Anda tertarik, Anda bisa menghubungi kami disini.