Kamu bisa jelasin ke aku soal Goal-oriented requirements engineering?

Goal-oriented Requirement Engineering (GORE) adalah salah satu pendekatan rekayasa kebutuhan yang berfokus pada penggunaan goal dalam proses elisitasi, elaborasi, penataan, penentuan, analisis, negosiasi, dokumentasi dan modifikasi kebutuhan. GORE berfokus pada aktivitas yang mendahului perumusan kebutuhan sistem perangkat lunak. Aktivitas-aktivitas berikut biasanya terdapat pada pendekatan GORE, seperti goal elicitation, goal refinement, dan bermacam tipe analisis goal, serta penugasan tanggung jawab goal kepada agen. GORE melihat sistem yang akan dibuat dan lingkungannya sebagai sebuah koleksi dari komponen aktif yang disebut sebagai agen. Komponen aktif dapat membatasi perilakunya (behaviour) untuk memastikan batasan yang diberikan pada mereka. Komponen tersebut berupa manusia yang memerankan peran tertentu, alat, dan perangkat lunak. Berlawanan dengan komponen pasif, komponen aktif memiliki pilihan perilaku. Dalam GORE, agen diberikan tanggung jawab untuk mencapai goal. Goal yang berada di bawah tanggung jawab satu agen pada perangkat lunak yang akan dibuat menjadi kebutuhan, sedangkan goal di bawah tanggung jawab satu agen di lingkungan perangkat lunak yang akan dibuat akan menjadi asumsi. Pertimbangan berbasis agen ini sangat penting dalam rekayasa kebutuhan karena pemberian tanggung jawab untuk goal dan batasan antar agen pada perangkat lunak yang akan dibuat dan di lingkungannya merupakan hasil utama dalam proses rekayasa kebutuhan. Terdapat beberapa metode dalam pendekatan GORE, di antaranya NFR Network, i*/Tropos, KAOS, dan GBRAM.