Teknik Informatika S1
Disusun Oleh:Egia Rosi Subhiyakto, M.Kom, M.CSTeknik Informatika [email protected]+6281329571612
Specification of Requirements Models
Software Requirement Engineering
SILABUS MATA KULIAH
1. Requirement Engineering
2. Requirement Elicitation
3. Specification of Requirement Models4. 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 representasi
kebutuhan dari sistem berbasis komputer.
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
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
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-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 dapat
dilakukan dalam dua dimensi yang berbeda:
1. Representational complexity dan
2. Development complexity
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.
Requirements Transformation
User Requirements Modeling
✓ Identifikasi komponen sistem membutuhkan definisi
model untuk 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 TransformationUser Requirements Modeling
UML top level use case diagram according two criteria:
Functionality Criteria uc Use Case Mo...
EGoverment
User
Kirim Pesan
Sediakan Informasi
Menerima
Pemberitahuan
Profil User&E-Serv ice
Local Authority
External Prov ider
Requirements TransformationUser Requirements Modeling
UML top level use case diagram according two criteria:
Domain Criteria uc Use Case Mo...
EGoverment
User
Healthcare
Traffic
Education
Economic&Tourism
Local Authority