Teknik Informatika S 1 Software Requirement Engineering Specification

  • Slides: 46
Download presentation
Teknik Informatika S 1 Software Requirement Engineering Specification of Requirements Models Disusun Oleh: Defri

Teknik Informatika S 1 Software Requirement Engineering Specification of Requirements Models Disusun Oleh: Defri Kurniawan, M. Kom Teknik Informatika UDINUS

SILABUS MATA KULIAH 1. Requirement Engineering 2. Requirement Elicitation 3. Specification of Requirement Models

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

Specification of Requirements Models 1. Introduction specification of Requirements Models 2. Modeling vs. Specification 3. Meta-Models Categories 4. Specification Methodology 5. Requirements Transformation

X X Identifying sources of requirements X X X Analyzing the stakeholders X X

X X Identifying sources of requirements X X X Analyzing the stakeholders X X X Selecting techniques and approaches X X X Eliciting the Requirements X X X Viewpoints Ethnography X Scenarios Group work X Goals Domain Understanding the domain Prototyping Interviews Comparison of Techniques and Approaches X X X X

Methodology Berdasarkan Requirements Elicitation 1. ? 2. ?

Methodology Berdasarkan Requirements Elicitation 1. ? 2. ?

Methodology Based Requirements Elicitation 1. Structured Analysis and Design (SAD) 2. Object Oriented (OO)

Methodology Based Requirements Elicitation 1. Structured Analysis and Design (SAD) 2. Object Oriented (OO) Approaches

Methodology Based Requirements Elicitation 1. Structured Analysis and Design (SAD) Terdiri dari kumpulan teknik

Methodology Based Requirements Elicitation 1. Structured Analysis and Design (SAD) Terdiri dari kumpulan teknik seperti Data Flow Diagram (DFD) dengan detail dekomposisi fungsional yang menekankan pada data masuk dan keluar dari sistem dan komponen terkait. Entity Relationship Diagram (ERD) yang memfasilitasi representasi entitas sistem, atribut mereka, dan hubungan mereka satu sama lain

Methodology Based Requirements Elicitation 2. Object Oriented (OO) Approaches Khususnya Unified Modeling Language (UML)

Methodology Based Requirements Elicitation 2. Object Oriented (OO) Approaches Khususnya Unified Modeling Language (UML) berisi beberapa teknik yang sering digunakan untuk elisitasi kebutuhan yang ditetapkan dengan notasi namun fleksibel dan format seperti Use Case diagrams, Use Case descriptions, and Class Diagrams.

Introduction Tujuan utama dari bab ini adalah: Untuk mempresentasikan dan mendiskusikan satu set model

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 (specify) sebuah sistem adalah

Modeling vs. Specification Keputusan pertama pengembang ketika mereka ingin menentukan (specify) sebuah sistem adalah untuk memilih bagian mana dari sistem yang mereka ingin pertimbangkan. Pemilihan bagian mendefinisikan tampilan sistem (system view), yaitu perspektif sistem yang harus diwakili

Specification of Systems

Specification of Systems

Specification of Systems Formalisasi tampilan sistem (system view) terjadi ketika berasal dari model. Model

Specification of Systems Formalisasi tampilan sistem (system view) terjadi ketika berasal dari model. Model ini terdiri dalam suatu representasi (masih konseptual) berdasarkan pandangan sistem menurut sebuah meta-model tertentu.

Specification of Systems Meta-model ini sesuai dengan sekumpulan elemen komposisi (fungsional atau struktural) dan

Specification of Systems Meta-model ini sesuai dengan sekumpulan elemen komposisi (fungsional atau struktural) dan aturan komposisi yang memungkinkan untuk membangun sebuah model yang mewakili pandangan sistem.

Modeling vs. Specification ?

Modeling vs. Specification ?

Modeling vs. Specification Perbedaan antara modeling dan spesifikasi: ü Modeling sesuai dengan aktivitas memilih

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 Model?

Meta-Models ü Meta yang diambil dari bahasa yunani yang berarti Beyond/ Melampaui/Atas, dan ü

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

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

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

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

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

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 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

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

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

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

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

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,

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

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

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 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

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.

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

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

Complexity Control 2. Development complexity Dimensi kedua kontrol kompleksitas (development complexity) mengacu pada kontrol dari evolusi spesifikasi sistem dari konseptualisasi awal kebutuhan.

Model Continuity

Model Continuity

Requirements Transformation User Requirements Modeling ü Identifikasi komponen sistem membutuhkan definisi model untuk menangkap

Requirements Transformation User Requirements Modeling ü Identifikasi komponen sistem membutuhkan definisi model untuk menangkap fungsionalitas sistem yang ditawarkan untuk para penggunanya. ü Use Case adalah 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

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:

Requirements Transformation User Requirements Modeling UML top level use case diagram according two criteria: Functionality Criteria

Requirements Transformation User Requirements Modeling UML top level use case diagram according two criteria:

Requirements Transformation User Requirements Modeling UML top level use case diagram according two criteria: Domain Criteria

Requirements Transformation 4 SRS Technique ü Transforming use case into architectural models representing system

Requirements Transformation 4 SRS Technique ü Transforming use case into architectural models representing system requirements is a difficult task ü A technique called 4 step rule set 4 SRS: 1. Object creation (step 1) 2. Object elimination (step 2) 3. Object packaging and aggregation (step 3) and 4. Object association (step 4)

Requirements Transformation 4 SRS Technique Step 1 – Object creation Setiap use case harus

Requirements Transformation 4 SRS Technique Step 1 – Object creation Setiap use case harus ditransformasikan ke dalam 3 objek (One interfaces, one data, and one control) Step 2 – Object elimination Ini harus diputuskan mana dari tiga obyek harus dijaga untuk sepenuhnya mewakili dengan mempertimbangkan seluruh sistem

Requirements Transformation 4 SRS Technique Step 3 – Object packaging and aggregation Objek yang

Requirements Transformation 4 SRS Technique Step 3 – Object packaging and aggregation Objek yang tersisa (dari step 2) yang ada keuntungan dalam diperlakukan dengan cara yang terpadu harus memberikan asal ke agregasi atau paket objek yang konsisten

Requirements Transformation 4 SRS Technique Step 4 – Object association Mendukung asosiasi di dalam

Requirements Transformation 4 SRS Technique Step 4 – Object association Mendukung asosiasi di dalam model objek

TERIMA KASIH

TERIMA KASIH