Teknik Informatika S1 Software Requirement Engineering Specification of Requirements Models
Disusun Oleh: Egia Rosi Subhiyakto, M.Kom, M.CS Teknik Informatika UDINUS
[email protected] +6285740278021
SILABUS MATA KULIAH 1. Requirement Engineering 2. Requirement Elicitation 3. Specification of Requirement Models 4. Requirement Prioritization 5. Requirement Interdependencies: State of the Art and Future 6. Impact Analysis 7. Requirement Negotiation 8. Quality Assurance in Requirement Engineering
Specification of Requirements Models 1. Introduction specification of Requirements Models 2. Modeling vs. Specification 3. Meta-Models Categories 4. Specification Methodology 5. Requirements Transformation
Introduction Tujuan utama dari bab ini adalah: Untuk mempresentasikan dan mendiskusikan satu set model dan teknik spesifikasi, dalam apa yang menyangkut ontologi
(Studi yang membahas keberadaan sesuatu yang bersifat konkret)
dan
dukungan
mereka
dalam
kebutuhan dari sistem berbasis komputer.
representasi
Modeling vs. Specification Keputusan
pertama
pengembang
ketika
mereka
ingin
menentukan sebuah sistem adalah untuk memilih bagian mana dari sistem yang mereka ingin pertimbangkan.
Pemilihan bagian yang mendefinisikan tampilan sistem, yaitu, perspektif sistem yang harus diwakili
Specification of Systems
Specification of Systems
Formalisasi tampilan sistem terjadi ketika berasal model. Model ini terdiri dalam representasi (masih konseptual) berdasarkan pandangan
sistem menurut sebuah meta-model tertentu.
Specification of Systems
Meta-model ini sesuai dengan set elemen komposisi (fungsional atau struktural) dan aturan komposisi yang memungkinkan untuk membangun sebuah model yang mewakili pandangan sistem.
Modeling vs. Specification
?
Modeling vs. Specification Perbedaan antara modeling dan spesifikasi:
Modeling sesuai dengan aktivitas memilih meta-model
untuk meresmikan pada tingkat konseptual/ tampilan sistem tertentu, sedangkan Spesifikasi berkaitan dengan penerapan bahasa untuk membuat model sistem nyata.
Meta Model?
Meta-Models Meta yang diambil dari bahasa yunani yang berarti
Beyond/ Melampaui/Atas, dan Model yang menjelaskan model dunia seseorang. Meta Model adalah suatu perangkat alat komunikasi untuk membuat orang me-modelkan lebih luas dari dunia yang ada sekarang.
Contohnya:
Setiap orang pasti ingin sukses dan berhasil, tetapi model
dunianya berkata sebaliknya, seperti : “Saya tidak pandai dalam bisnis” / “Saya selalu gagal dalam bisnis”. Ketika ini terjadi, maka bisa dibayangkan untuk mencapai tujuannya menjadi sebuah kesulitan tersendiri.
Meta-Models Categories Idealnya,
bahasa
representasi
harus
memungkinkan
spesifikasi karakteristik sistem yang diinginkan, dalam cara yang tidak ambigu.
Syarat bahasa meta-model harus: Formal (akurat, ketat), untuk menghindari ambiguitas dalam penafsiran representasi sistem. Lengkap,
untuk
memungkinkan
pembangunan
representasi yang benar-benar menggambarkan tampilan sistem.
Meta-Models Categories 1. State Oriented Meta-Models 2. Activity Oriented Meta-Models 3. Structure Oriented Meta-Models
4. Data Oriented Meta-Models 5. Heterogeneous Meta-Models 6. Multiple View Approach
Meta-Models Categories 1. State Oriented Meta-Models State oriented meta-models memungkinkan pemodelan sistem sebagai set of states dan satu set transisi.
Transisi
antar
states
menurut
beberapa
stimulus
(rangsangan) eksternal. Meta-model yang memadai untuk model sistem di mana perilaku jasmani adalah aspek yang paling penting untuk ditangkap
Meta-Models Categories 1. State Oriented Meta-Models Contoh: * Finite State Machines (FSMs),
* Finite State Machines with Data paths (FSMDs), * State Charts * Petri nets
Meta-Models Categories 2. Activity Oriented Meta-Models Meta-models
berorientasi
aktivitas
memungkinkan
pemodelan
sistem sebagai serangkaian kegiatan yang
berkaitan
dengan
data
atau
dengan
eksekusi
yang
berkaitan. Meta-models ini sangat cocok untuk model sistem dimana data dipengaruhi oleh urutan transformasi dengan laju yang konstan.
Meta-Models Categories 2. Activity Oriented Meta-Models Contoh: * Data Flow Diagram (DFD)
* Flowcharts
Meta-Models Categories 3. Structured Oriented Meta-Models Structured oriented meta-models memungkinkan deskripsi sistem modul fisik dan interkoneksi mereka.
Meta-model
yang
didedikasikan
untuk
karakterisasi
komposisi fisik dari suatu sistem, bukan fungsinya.
Meta-Models Categories 3. Structured Oriented Meta-Models Contoh: * Block Diagram/ Component-Connectivity Diagrams (CCDs)
UML’s deployment dan component diagram didasarkan pada meta-model ini.
Meta-Models Categories 4. Data Oriented Meta-Models Data
oriented
meta-models
memungkinkan
pemodelan
sistem sebagai kumpulan data yang berhubungan dengan
beberapa jenis atribut. Meta-models ini mendedikasikan organisasi data lebih penting daripada fungsi sistem.
Meta-Models Categories 4. Data Oriented Meta-Models Data oriented meta-models, biasanya digunakan dalam metodologi berdasarkan analisis struktur tradisional dan
teknik desain.
Meta-Models Categories 4. Data Oriented Meta-Models Contoh: • Entity Relationship Diagram (ERD)
• Jackson’s structured diagrams (JSDs)
Meta-Models Categories 5. Heterogeneous Meta-Models Heterogeneous meta-models memungkinkan penggunaan dalam
representasi
sistem
yang
sama,
beberapa
karakteristik dari meta-model yang berbeda, yaitu empat kategori yang dijelaskan sebelumnya. Meta-models ini adalah solusi yang baik ketika sistem yang relatif kompleks harus dimodelkan.
Meta-Models Categories 5. Heterogeneous Meta-Models Contoh: • Control/ Data Flow Graphs (CDFGs)
• Object Process Diagram (OPDs) • Program State Machines (PSMs)
Meta-Models Categories 6. Multiple-View Approach Dengan meningkatnya kompleksitas sistem, penggunaan meta-model yang berbeda untuk mewakili berbagai jenis
karakteristik sistem menjadi hal yang umum.
Multiple view approach bisa digunakan sesuai dengan kompleksitas sistem yang semakin berkembang.
Specification Methodology Three Key Issues: 1. Specification Language 2. Complexity Control
3. Model Continuity
Specification Language Bahasa spesifikasi harus memungkinkan representasi dari pandangan sistem tertentu, tanpa ambiguitas. Ini adalah tujuan utama dari bahasa spesifikasi.
Complexity Control Kontrol
dari
kompleksitas
proses
spesifikasi
dilakukan dalam dua dimensi yang berbeda: 1. Representational complexity dan
2. Development complexity
dapat
Complexity Control 1. Representational complexity
Pada dasarnya tergantung pada bahasa spesifikasi, dan jika
dikelola
dengan
benar
memungkinkan
diperoleh
spesifikasi yang ringkas dan mudah dipahami. Pendekatan
grafis
biasanya
lebih
mudah
dipahami
daripada yang tekstual. Dengan demikian meningkatkan
pembacaan dan understandability pandangan sistem. UML mengadopsi pendekatan grafis.
Complexity Control 2. Development complexity Dimensi
kedua
kontrol
kompleksitas
(development
complexity) mengacu pada kontrol dari evolusi spesifikasi
sistem dari konseptualisasi awal kebutuhan.
Model Continuity
Requirements Transformation User Requirements Modeling
Identifikasi model
untuk
komponen sistem membutuhkan definisi menangkap
fungsionalitas
sistem
yang
ditawarkan untuk para penggunanya.
Use
Case adalah salah satu teknik yang paling cocok
untuk tujuan itu, karena sederhana dan mudah dibaca.
Requirements Transformation User Requirements Modeling Dalam faktanya, Use Case hanya terdiri dari 3 konsep utama: 1. Use cases 2. Actors, and 3. Relationships
Requirements Transformation User Requirements Modeling UML top level use case diagram according two criteria:
Functionality Criteria uc Use Case Mo... EGoverment
Kirim Pesan
Local Authority Sediakan Informasi
User Menerima Pemberitahuan
External Prov ider
Profil User&E-Serv ice
Requirements Transformation User Requirements Modeling UML top level use case diagram according two criteria:
Domain Criteria uc Use Case Mo... EGoverment
Healthcare
Traffic
User Local Authority Education
Economic&Tourism
TERIMA KASIH