Setelah kalian berhasil mendaftarkan kemungkinan kebutuhan yang akan muncul dalam proses elisitasi selanjutnya adalah bagaimana teknik dan proses yang kita butuhkan sehingga tahapan gathering requirement dari tahapan tersebut dapat benar-benar efektif, efisien dan juga sesuai dengan kebutuhan user. Maka ada beberapa poin yang harus kalian pahami untuk mendapatkan proses teknik gathering requirement dapat berjalan maksimal.
1. Pahami apa yang kalian butuhkan
Agar apa yang kalian butuhkan dapat berjalan maksimal dalam proses pengumpulan gathering requiremnet maka satu hal yang harus kalian kenali , perkiraaan apa yang kita butuhkan untuk membuat suatu aplikasi misal jika kalian memperhatikan sebuah diagram di atas. Anggap saja kalian belum membuat diagram tersebut, karena disini kalian masih dalam proses pengumpulan requirement. Maka secara tidak langsung jika melihat diagram use case atau context diagram pada sistem kartu kredit dan sistem parkir kita membutuhkan
a. Aktor, stakeholder dimana disana terlihat ada aktor individual customer, corporate customer dll untuk sistem kartu kredit sedangkan pada sistem parkir ada pengemudidan kendaraan.
b. Feature yang akan muncul dalam pengembangan aplikasi. Sangat jelas di atas terlihat dari aliran data terdapat fitur-fitur seperti payment, ticketing. Begitu juga di sistem kartu kredit terdapat fitur pembayaran dll.
2. Constraint
Apa yang dimaksud constraint disini yaitu di dalam aplikasi yang kalian buat pasti memiliki sebuah batasan terhadap aktor yang terlibat, waktu pengerjaan, dan biaya pengerjaan. Dan untuk mendukung dokumentasi kebutuhan tersebut kalian pasti perlu adanya sebuah gambaran deskripsi terkait aktor dan kalian bisa memanfaatkan sebuah use case diagram, bisa dilihat di gambaran use case diagram dengan memberikan gambaran tersebut kita sudah memberikan penjelasan kepada customer dimana ada 4 user yang terlibat dan tidak lebih, dan jika nanti terdapat revisi dari customer maka constraint terkait waktu dan biaya pengerjaan kalian bisa sesuaikan. Karena tiap fitur akan mempengaruhi proses modifikasi sebuah pengerjaan proyek aplikasi. Dimisalkan saja constraint terkait waktu pengerjaan kalian sudah membuat sebuah timeline, ternyata ada sebuah perubahan user yang mempengaruhi proses akses fitur aplikasi hal ini pasti akan merubah timeline sebelumnya. Dan juga pasti akan mempengaruhi biaya pembuatan aplikasi karena kebutuhan jam kerja dari tenaga ahli makin bertambah. Jadi constraint disini kalian punya gambaran batasan-batasan yang akan kalian batasi dalam proses pengembangan proyek. Pada penjelasan di poin ini ada 3 contraint yaitu user, time, dan cost. Dan untuk mendeskripsikan 3 constraints tersebut kalian jelas membutuhkan pemodelan yang berbeda
a. Constraint user bisa memanfaatkan use case, context, data flow diagram
b. Time bisa memanfaatkan gambaran timeline
c. Cost bisa menggunakan rancangan anggaran biaya pengembangan aplikasi
3. Kalian harus tahu apa kalian butuhkan
Sebelum kalian menghadapi seorang user dan kemudian kalian bertanya-tanya kepada user terkait proyek yang akan kalian kembangkan terlebih dahulu kalian harus tahu apa yang kalian butuhkan dalam proses pengembangan proyek. Terkait hal ini kalian harus sudah punya daftar hal-hal apa saja yang akan kalian tanyakan kepada seorang customer misalkan terkait user yang menggunakan aplikasi siapa saja, siapa penanggung jawab dari pengembangan aplikasi ini dari sisi customer, teknologi software atau hardware yang ada di customer, area mana saja yang akan menggunakan aplikasi dalam proyek ini, fitur-fitur apa yang dibutuhkan oleh user. Dan dari sini kalian nanti pasti bisa menjadikan sebuah acuan dalam pembuatan use case, context, dfd, ERD, timeline, RAB, struktur organisasi proyek dll.
4. Siapa dan apa saja yang dibutuhkan untuk menggali informasi
Kalian harus menggali informasi ke customer agar bisa mendapatkan informasi sedetail-detailnya terkait kebutuhan-kebutuhan yang akan kalian butuhkan dalam pengembangan proyek. Untuk mendapatkan informasi tersebut pasti kalian perlu keterlibatan pihak terkait seperti siapa saja yang akan terlibat dan ini bisa terkait stakeholder atau user, dan kemudian kalian juga harus mendapatkan dukungan terkait hak akses terhadap kebutuhan lain untuk menggali informasi standar kerja dari stakeholder dalam menjalankan sistem selama ini , dan itu bisa jadi berbentuk dokumentasi. Berdasarkan hal ini kalian harus mengenal siapa yang kalian butuhkan untuk menggali informasi terkait requirement dan dokumen apa yang kalian butuhkan. Misal jika di aplikasimu terdapat sebuah fitur karyawan pastinya kalian membuatuhkan pihak yang terkait dengan hal ini yaitu tim HRD dan dokumen biodata karyawan.
5. Bagaimana cara mengumpulkan informasi
Untuk menggali informasi secara efisien dan efektif sehingga kebutuhan kalian bisa terkumpul sesuai dengan kebutuhan tim development kalian sebagai analis harus memiliki kemampuan agar proses gathering requirement ini berjalan lancar dan itu semua terkait sebuah pertanyaan “Bagaimana cara mengumpulkan informasi?”. Dan untuk mengumpulkan informasi dari stakeholder kalian bisa memanfaatkan teknik seperti meeting secara offline dan online, jika offline misal meeting di instansi customer yang bersangkutan, makan diluar dll. Adapun model online yang sekarang lebih efektif kalian bisa menggunakan whatsapp, google met, zoom dll. Adapun cara menggali informasi selain dari user yaitu dengan melakuakn research dari dokumen yang dikumpulkan, kemudian research terhadap persaingan pasar apakah aplikasimu memiliki nilai pasar yang bagus dan apa juga banyak penyedia layanan fitur aplikasimu yang sama. Sehingga ke depannya kalian bisa membuat sebuah fitur aplikasi yang unik.
6. Kapan kita mengumpulkan informasi
Terkait pertanyaan ini kalian harus tahu kapan perkiraan kalian harus mengumpulkan informasi kebutuhan dari cusomer misalkan kalian akan mengumpulkan informasi terkait karyawan, proses penggajian, proses kehadiran karyawan untuk pembuatan aplikasi payroll tentunya tidak bisa dilakukan secara mendadak ketika menghubungi user. Kalian perlu adanya sebuah jadwal kegiatan yang disetujui antara user dan kalian sebagai analis sehingga kalian memiliki kepastian dalam proses menggali informasi kebutuhan terkait pengembangan proyek aplikasi ini.
7. Apa yang akan kita butuhkan dalam mengumpulkan informasi
Dalam proses mengumpulkan informasi pasti kita membutuhkan dukungan dalam proses dokumentasi dan tentunya bisa terkait sebuah tools atau tim. Misalkan kalian akan mengumpulkan informasi kebutuhan terkait user maka tools yang tepat kalian gunakan untuk meeting bisa mengggunakan whatsapp sedangkan dokumentasi manfaatkan SRS dokumen dengan menggunakan tools visio untuk menggambarkan user class diagram. Sedangkan untuk tim kalian memerlukan tim yang bekerja sebagai penggali informasi yang pandai berkomunikasi dan paham terkait proyek yang akan dikembangkan, programmer yang paham terkait aplikasi yang dikembangkan dll.
Dari gambaran pertanyaan di atas kita dapat membuat sebuah fungsi diagram proses untuk mendapatkan informasi yang tepat dari teknik gathering requirement. Misalkan disini saya akan mencari informasi kebutuhan terkait jumlah user dan interface dari aplikasi.
Pada requirement 1 saya terkait pertanyaan ketiga yaitu jumlah user saya dapat menggali informasi dari pertanyaan 4 yaitu dari IT manager dengan cara menggunakan proses interview seperti penjelasaan pertanyaan 5 dan waktu yang dilakukan sesuai dengan jadwal yang sudah ditentukan yaitu senin jam 6 dan poin ini terdapat pada pertanyaan 6. Begitu juga pada requirement 2 terkait kebutuhan interface , kita dapat bertanya ke IT manager dengan melakuakn proses interview dan review dokumen terkait interface yang akan dilaksanakan pada hari senin jam 8 sesuai dengan jadwal.
Dari sini kalian sudah sedikit paham teknik proses gathering requirement agar lebih efisien dan efektif.