Goal-based Requirement Analysis Method (GBRAM)
Goal Refinement

Kebutuhan akan berubah-ubah dan terus berubah, banyaknya iterasi dalam proses penyempurnaan adalah hanya karena kebutuhan tersebut disalahtafsirkan. Setiap pemangku kepentingan memiliki kebutuhan dan prioritas yang berbeda, dan terkadang saling bertentangan. Seringkali, strategi untuk identifikasi dan penyelesaian konflik tidak memadai. Goal berkembang karena para pemangku kepentingan mengubah pikiran mereka dan memperbaiki serta mengoperasionalkan goal tersebut menjadi kebutuhan perilaku (behavioural requirement). Seiring berjalannya waktu, goal dari pemangku kepentingan dapat berubah atau, setidaknya, prioritas sasaran mereka cenderung berubah. Perubahan goal pertama adalah elaborasi (elaboration) dan yang kedua adalah penyempurnaan (refinement). Oleh karena itu, evolusi goal dipengaruhi melalui goal elaboration dan goal refinement. Teknik penting dalam goal elaboration adalah mengidentifikasi hambatan goal, menganalisis skenario  dan batasannya, dan mengoperasikan goal. Goal refinement menyangkut evolusi goal dari saat mereka pertama kali diidentifikasi hingga saat mereka diterjemahkan ke dalam kebutuhan operasional untuk spesifikasi sistem.
Kegiatan ini dibagi menjadi:
Pemangkasan (Pruning Activities): Kegiatan pemangkasan seperangkat goal, yaitu menghilangkan goal yang bermakna sama
Penguraian (Elaborate Activities): Kegiatan yang merujuk pada proses menganalisis goal yang ditetapkan dengan mempertimbangkan kemungkinan adanya hambatan  (perilaku atau goal lain yang mencegah atau menghalangi pencapaian goal yang diberikan). Mengidentifikasi hal yang dapat menghambat goal untuk mempertimbangkan cara yang mungkin membuat goal gagal tercapai, memungkinkan seseorang untuk mengantisipasi kasus pengecualian (exception). Ketika prioritas sasaran berubah, skenario akan memfasilitasi evaluasi prioritas baru ini.
Membangun skenario (deskripsi perilaku dari suatu sistem dan lingkungannya yang timbul dari situasi terbatas) untuk mengungkap goal dan kebutuhan yang tersembunyi
Mengoperasionalkan (Operationalize Activities): Kegiatan yang mewakili penerjemahan goal menjadi kebutuhan operasional.
Goal refinement terjadi ketika goal identik direkonsiliasi, ketika goal digabungkan ke dalam kategorisasi sub-goal, ketika kendala diidentifikasi, dan ketika goal dioperasionalkan. Dalam GBRAM, achievement goal digabung dan didaftar sesuai dengan hubungan dan ketergantungan yang mendahuluinya. Susunan ini memungkinkan untuk menentukan kondisi prasyarat (precondition) dan kondisi pasca (post-condition) dari sebuah goal. Dengan demikian, salah satu kegiatan yang dibutuhkan GBRAM selama fase goal refinement adalah identifikasi prioritas goal. Hal ini pada dasarnya mewakili kebutuhan untuk mengidentifikasi goal mana yang harus dicapai sebelum yang lain. Metode ini menyarankan untuk mengajukan pertanyaan seperti “Goal apa yang harus mengikuti goal ini?” dan seterusnya. Metode lain yang berguna untuk menentukan hubungan prioritas adalah untuk mencari dependensi agen. Begitu prioritas goal telah ditetapkan, tabel diproduksi dengan goal yang disusun sesuai dengan urutan prioritas itu.
Goal disempurnakan dengan menghilangkan redudansi dan merekonsiliasi goal yang identik. Misalnya, "Rapat diatur" dan "Rapat dijadwalkan" memiliki maksud yang sama dan dapat direkonsiliasi. Pendekatan terbaik untuk menghilangkan redudansi adalah setelah goal digabung menjadi satu set goal yang diurutkan. Lebih mudah untuk mengidentifikasi goal yang identik karena mereka biasanya terdaftar berdekatan satu sama lain dalam set yang disusun karena mereka cenderung berbagi hubungan prioritas yang sama. Goal yang dioperasionalkan, agen yang bertanggung jawab, pemangku kepentingan, hambatan dan skenario akhirnya dikonsolidasikan ke dalam serangkaian goal schema yang dapat dengan mudah diterjemahkan ke dalam spesifikasi kebutuhan. Artefak yang dihasilkan, meskipun tidak formal, memberikan representasi tekstual dari kebutuhan sistem yang diatur sesuai dengan tujuan sistem.