Skip to main content

4. Requirement Enggineering.html

Requirement Engineering

Apa itu Requirement Engineering ?

banyak dari kita yang mungkin belum mengetahui apa itu Requirement Engineering dan bertanya-tanya apa itu ?, mungkin sebagian akan mengira itu merupakan suatu jurusan di fakultas teknik. Maka untuk menghindari salah persepsi ini kita akan mulai mengenal Requirements engineering. Requirements engineering adalah fase terdepan dari proses rekayasa perangkat lunak (software engineering), dimana software requirements (kebutuhan) dari user (pengguna) dan customer (pelanggan) dikumpulkan, dipahami dan ditetapkan. Para pakar software engineering sepakat bahwa requirements engineering adalah suatu pekerjaan yang sangat penting. Fakta membuktikan bahwa kebanyakan kegagalan pengembangan software disebabkan karena adanya ketidakkonsistenan (inconsistent), ketidaklengkapan (incomplete), maupun ketidakbenaran (incorrect) dari requirements specification (spesifikasi kebutuhan). Sebenarnya masih banyak lagi definisinya yang diungkapkan oleh para peneliti tentang requirements engineering. Satu definisi yang cukup jelas dan diterima secara umum adalah yang diuraikan oleh Pamela Zave, yang menyatakan bahwa Requirements engineering adalah cabang dari software engineering yang mengurusi masalah yang berhubungan dengan: tujuan (dunia nyata), fungsi, dan batasan-batasan pada sistem software. Termasuk hubungan faktor-faktor tersebut dalam menetapkan spesifikasi yang tepat dari suatu software, proses evolusinya baik berhubungan dengan masalah waktu maupun dengan software lain (dalam satu famili).

Tipe Requirements Engineering

Requirements Engineering ini umumnya akan dibedakan menjadi dua, yaitu :

User requirements

Pernyataan dalam bahasa natural dengan diagram dari layanan system yang diberikan dan kendala operasional. Dibuat untuk pelanggan

System requirements

Sebuah dokumen terstruktur yang menetapkan deskripsi rinci dari fungsi sistem, layanan dan kendala operasional. Mendefinisikan apa yang harus dilaksanakan sehingga dapat menjadi bagian dari kontrak antara klien dan kontraktor.

Pada kedua tipe Requirements Engineering ini memiliki beberapa perbedaan seperti pada kedetailan Informasi, Target pengguna, dan Bentuk informasi yang dapat dilihat pada tabel dibawah ini :

 

User Requirement

System Requirement

Kedetailan Informasi

Tidak terlalu detail

Lebih detail

Target Pengguna

Pengguna sistem yang tidak mempunyai pengetahuan teknik yang detail

Developer atau enthusias

Bentuk Informasi

Bahasa natural dan diagram sederhana yang menjelaskan sistem

Model sistem

 

Apa itu User Requirement ?

User Requirement seringkali didefinisikan dengan penggunaan bahasa natural, table, dan diagram sehingga dapat mencakup berbagai kalangan (tidak dibutuhkan kemampuan teknis untuk dapat mengerti). User Requirement ini harus menggambarkan kebutuhan fungsional dan non-fungsional sebaik mungkin sehingga dapat dimengerti oleh pengguna yang tidak memiliki kemampuan teknis. User Requirement ini memiliki beberapa permasalahan yang timbul dari penggunaan bahasa natural, Seperti :

  1. Lack of Clarity (kurang Jelas)

Seringkali ditemukan masalah saat digunakan untuk menyampaikan suatu informasi yang berjumlah banyak dan dituntut untuk memiliki presisi yang tinggi malah berakibat dokumen sulit dibaca.

  1. Requirements confusion (Kebingungan menentukan kebutuhan)

Sering adanya bias antara Kebutuhan fungsional dan non-fungsional yang seringkali campur aduk.

  1. Requirements amalgamation (Penggabungan kebutuhan)

Pada penggunaan bahasa natural ini sering adanya kebutuhan yang berbeda dinyatakan bersama-sama.

Fungsi Requirement Engineering

Setelah berbagai penjelasan yang sudah kita bahas mungkin anda akan bertanya-tanya, jadi apa sih sebenarnya fungsi Requirement Engineering, baik kita akan bahas sekarang fungsinya. Terdapat beberapa fungsi dari Requirement Engineering, yaitu :

        Sebagai kesepakatan antara developer, customer dan pengguna akhir akan kebutuhan yang harus dipenuhi

        Untuk menyediakan dasar yang akurat bagi perancangan perangkat lunak

        Untuk menyediakan referensi bagi dilakukannya validasi Perangkat Lunak

Tahapan Proses dalam Requirement Engineering

Requirement Engineering terdiri dari beberapa tahapan proses, yakni :

1. Penggalian dan analisis kebutuhan (software requirement elicitation and analysis)

2. Spesifikasi kebutuhan (software requirement specification)

3. Validasi & verifikasi kebutuhan (software requirement validation and verification)

4. Manajemen kebutuhan (software requirement management)

Inception

Tahapan pertama Inception dimana dalam tahapan ini pengembang menanyakan pertanyaan yang berkaitan dengan :

Pemahaman dasar tentang domain masalah

Pengguna yang menginginkan solusi

Sifat solusi yang diinginkan

Tata cara komunikasi dan kolaborasi antara pengembang dan calon pengguna

Pada tahapan ini memiliki beberapa tujuan seperti :

Mengidentifikasi stakeholder (persona)

Mengenali berbagai macam sudut pandang

Mengawali kolaborasi antara pengembang dan pengguna

Mengawali proses komunikasi

Elicitation

Kemudian pada tahap kedua ini berupa proses elisitasi (elicitation) sangat sulit karena beberapa alasan, seperti :

          Permasalahan terhadap cakupan system

          Pemahaman masalah, apa yang diinginkan, domain permasalahan, bagaimana system digunakan, lingkungan system

          Ketidakpastian, karena kebutuhan selalu berubah

          Elisitasi terdiri dari 2 (dua) kegiatan

        Collaborative requirements gathering

        Meeting, brainstorming dll

        Quality function deployment

        Translasi dari kebutuhan pengguna ke kebutuhan sistem (lebih teknis)

        Mengidentifikasi level-level kebutuhan (Normal, Expected, dan Exciting Requirement

Tugas

Membuat diagram use case untuk [1] sistem pada web site toko online

 

 

 

 

Sumber :

https://romisatriawahono.net/2006/04/29/menyegarkan-kembali-pemahaman-tentang-requirement-engineering/

https://repository.dinus.ac.id/docs/ajar/Rpl_5_Requirements_Engineering.pdf

https://eling.ub.ac.id/pluginfile.php/46661/mod_resource/content/1/DPSI-Requirement%20Engineering.pdf

 

 

 


diberi objek tugasnya juga, misal buat use case diagram untuk sistem pencatatan barang keluar masuk di warehouse (gudang)

Last modified: Wednesday, 9 August 2023, 2:25 PM