Requirements Modeling Apa itu Requirements Modeling? Requirements model — sebenarnya seperangkat model — adalah penyajian teknis awal/pertama dari suatu sistem. Rangkaian kalimat atau kata-kata yang dituliskan adalah cara yang baik untuk berkomunikasi, tetapi tidak selalu merupakan cara terbaik untuk menyajikan requirements untuk software komputer. Requirements Modeling menggunakan kombinasi berbentuk teks dan diagram untuk menyajikan requirements dengan cara yang relatif mudah dipahami, dan yang lebih penting, langsung digunakan untuk me-review kebenaran, kelengkapan, dan konsistensi dari requirements. Siapa yang melakukan ini? Software engineer (kadang-kadang disebut "analyst") membuat model dari requirements yang diperoleh dari customer/pengguna. Mengapa ini penting? Untuk memvalidasi software requirements, kita perlu memeriksanya dari sejumlah sudut pandang berbeda. Misalkan kita akan mempertimbangkan requirements modeling dari tiga perspektif berbeda: scenario-based models (model berbasis skenario), data (information) model (model data/informasi), dan class-based model (model berbasis class). Catatan: beberapa jenis pemodelan yang lain misalnya adalah behavioral and patterns-based model (model berbasis behavior dan pola), flow-oriented model (model berorientasi aliran data). Masing-masing menyajikan requirements dalam "dimensi" yang berbeda, dengan demikian meningkatkan probabilitas untuk menemukan kesalahan, inkonsistensi akan muncul, dan kelalaian. langkah-langkahnya Scenario-based modeling (pemodelan berbasis skenario) menyajikan sistem dari sudut pandang pengguna. Data modeling (pemodelan data) menyajikan data/informasi dan menggambarkan objek data yang akan dimanipulasi oleh software dan hubungan di antara objek data tersebut. Class-based modeling (pemodelan berbasis kelas) mendefinisikan objek-objek, atribut-atribut, dan realtionships mereka. Setelah model awal dibuat, model-model tersebut disempurnakan dan dianalisis untuk menilai kejelasan, kelengkapan, dan konsistensi mereka. hasil/produk pekerjaan Berbagai macam bentuk berbasis teks dan diagram bisa dipilih untuk requirements model. Masing-masing penyajian ini memberikan satu atau lebih (cara) pandangan dari berbagai elemen model. Bagaimana kita memastikan bahwa kita telah melakukannya dengan benar? Hasil/produk kerja requirements modeling harus di-review untuk memastikan kebenaran, kelengkapan, dan konsistensi. Hasil ini harus mencerminkan kebutuhan semua pemangku kepentingan dan membangun fondasi dimana desain bisa mulai dijalankan. --o0o-- Beberapa jenis/kategori model dalam requirements engineering a. Model berdasarkan scenario, contoh: use case diagram, user story, activity diagram, use case scenario, dll. Pada pemodelan berdasarkan scenario bertujuan untuk membantu mendefinisikan actor dari sistem dan apa yang harus dilakukan oleh sistem tersebut. b. Model berdasarkan class, contoh: class diagram, collaboration diagram, dll. Model berdasarkan class menggambarkan beberapa hal berikut: Object dari sistem yang akan dimanipulasi. Operasi (metode atau service) yang akan diterapkan terhadap object untuk mendapatkan efek dari manipulasi yang dilakukan. Hubungan antar object Kolaborasi yang muncul antara kelas yang didefinisikan. c. Model berdasarkan behavior, contoh state diagram, sequence diagram, dll. Model behavior mengindikasikan bagaimana software akan memberikan respon terhadap event atau stimulus external. Untuk menciptakan model ini, proses analisis harus dilakukan melalui tahapan berikut: Evaluasi semua use case untuk memahami secara keseluruhan urutan interaksi di dalam sistem. Identifikasikan sistem yang menggerakan urutan interaksi dan memahami bagaimana event-event tersebut dikaitkan dengan object specific. Membuat sequence untuk setiap use case Membangun state diagram untuk sistem Melakukan review terhadap model behavioral untuk verifikasi akurasi dan konsistensi d. Model berdasarkan aliran, contoh: data flow diagram, data models, dll.