(C) Michael Brückner 2005/2006 Software Engineering 1 Course 254 451 Software Engineering Class 10 / Requirements Engineering, Systems Modeling Michael.

Slides:



Advertisements
Similar presentations
1
Advertisements

Chapter 7 System Models.
Copyright © 2003 Pearson Education, Inc. Slide 1 Computer Systems Organization & Architecture Chapters 8-12 John D. Carpinelli.
Copyright © 2011, Elsevier Inc. All rights reserved. Chapter 6 Author: Julia Richards and R. Scott Hawley.
Properties Use, share, or modify this drill on mathematic properties. There is too much material for a single class, so you’ll have to select for your.
1 RA I Sub-Regional Training Seminar on CLIMAT&CLIMAT TEMP Reporting Casablanca, Morocco, 20 – 22 December 2005 Status of observing programmes in RA I.
Custom Statutory Programs Chapter 3. Customary Statutory Programs and Titles 3-2 Objectives Add Local Statutory Programs Create Customer Application For.
1 Click here to End Presentation Software: Installation and Updates Internet Download CD release NACIS Updates.
Week 2 The Object-Oriented Approach to Requirements
PP Test Review Sections 6-1 to 6-6
Bright Futures Guidelines Priorities and Screening Tables
EIS Bridge Tool and Staging Tables September 1, 2009 Instructor: Way Poteat Slide: 1.
Copyright © 2012, Elsevier Inc. All rights Reserved. 1 Chapter 7 Modeling Structure with Blocks.
1 RA III - Regional Training Seminar on CLIMAT&CLIMAT TEMP Reporting Buenos Aires, Argentina, 25 – 27 October 2006 Status of observing programmes in RA.
Basel-ICU-Journal Challenge18/20/ Basel-ICU-Journal Challenge8/20/2014.
1..
CONTROL VISION Set-up. Step 1 Step 2 Step 3 Step 5 Step 4.
Chapter 2 Entity-Relationship Data Modeling: Tools and Techniques
Essential Cell Biology
PSSA Preparation.
Essential Cell Biology
Immunobiology: The Immune System in Health & Disease Sixth Edition
Energy Generation in Mitochondria and Chlorplasts
System Modelling System modelling helps the analyst to understand the functionality of the system and models are used to communicate with customers. Different.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 8 Slide 1 System modeling 2.
1 SWE Introduction to Software Engineering Lecture 13 – System Modeling.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 8 Slide 1 System models.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 8 Slide 1 System models.
Modified from Sommerville’s originalsSoftware Engineering, 7th edition. Chapter 8 Slide 1 System models.
7M701 1 Software Engineering Systems Models Sommerville, Ian (2001) Software Engineering, 6 th edition: Chapter 7 (some items)
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 8 Slide 1 System models September 29, 2008.
©Ian Sommerville 2000Software Engineering, 6/e, Chapter 71 System models l Abstract descriptions of systems whose requirements are being analysed.
Lecture 6 & 7 System Models.
Modified from Sommerville’s originalsSoftware Engineering, 7th edition. Chapter 8 Slide 1 System models.
7M822 Software Engineering: System Models 14 September 2009.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 8 Slide 1 System modeling 1.
Chapter 7: System models
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 1 System models l Abstract descriptions of systems whose requirements are being.
Software Engineering 8. System Models.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 1 System models l Abstract descriptions of systems whose requirements are being.
CS 310 Ch8: System models Abstract descriptions of systems being analyzed to help the analyst understand the system functionality communicate with customers.
Chapter 4 System Models A description of the various models that can be used to specify software systems.
System models. System modelling System modelling helps the analyst to understand the functionality of the system and models are used to communicate with.
System models Abstract descriptions of systems whose requirements are being analysed Abstract descriptions of systems whose requirements are being analysed.
©Ian Sommerville 1995/2000 (Modified by Spiros Mancoridis 1999) Software Engineering, 6th edition. Chapter 7 Slide 1 System models l Abstract descriptions.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 8 Slide 1 Object-oriented and Structured System Models.
Chapter 7 System models.
Slide 1 System models. Slide 2 Objectives l To explain why the context of a system should be modelled as part of the RE process l To describe behavioural.
System models l Abstract descriptions of systems whose requirements are being analysed.
Pertemuan 19 PEMODELAN SISTEM Matakuliah: D0174/ Pemodelan Sistem dan Simulasi Tahun: Tahun 2009.
Modified by Juan M. Gomez Software Engineering, 6th edition. Chapter 7 Slide 1 Chapter 7 System Models.
Software Engineering, 8th edition Chapter 8 1 Courtesy: ©Ian Somerville 2006 April 06 th, 2009 Lecture # 13 System models.
Rekayasa Perangkat Lunak (Software Engineering) M.Sukrisno Mardiyanto Kuliah Umum Universitas Dian Nuswantoro Semarang, 16 Oktober 2008.
Sommerville 2004,Mejia-Alvarez 2009Software Engineering, 7th edition. Chapter 8 Slide 1 System models.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 1 Chapter 7 System Models.
SWEN 5231 FORMAL METHODS Slide 1 System models u Abstract presentations of systems whose requirements are being analyzed.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 8 Slide 1 System models.
Chapter 6: System Models Omar Meqdadi SE 273 Lecture 6 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
 To explain why the context of a system should be modelled as part of the RE process  To describe behavioural modelling, data modelling and object modelling.
1 SWE Introduction to Software Engineering Lecture 14 – System Modeling.
© 2000 Franz Kurfess System Design Methods 1 CSC 205: Software Engineering I Dr. Franz J. Kurfess Computer Science Department Cal Poly.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 8 Slide 1 System models.
Engineering, 7th edition. Chapter 8 Slide 1 System models.
Software Engineering Lecture 4 System Modeling The Analysis Stage.
Object-oriented and Structured System Models
Abstract descriptions of systems whose requirements are being analysed
IS301 – Software Engineering V:
System models October 5, 2005.
Presentation transcript:

(C) Michael Brückner 2005/2006 Software Engineering 1 Course Software Engineering Class 10 / Requirements Engineering, Systems Modeling Michael Bruecknerphone (ext. 3233) อ. มิช่า officeSC2-417, by appointment

(C) Michael Brückner 2005/2006 Software Engineering 2 Topics covered  System modelling  Context สภาพแวดล้อม models  Behavioural เกี่ยวกับพฤติกรรม models  Data models  Object models  Tools

(C) Michael Brückner 2005/2006 Software Engineering 3 Examples

4 Examples

5 Examples – Object Model

(C) Michael Brückner 2005/2006 Software Engineering 6 What is system modelling?  System modelling helps the analyst นักวิเคราะห์ to understand the functionality การทำงาน of the system  Models are used to talk with customers  Different models present the system from different perspectives ทัศนคติ  External ภายนอก perspective shows the context or environment of the system  Behavioural perspective shows its behaviour together with users and other systems  Structural เกี่ยวกับโครงสร้าง perspective shows the system or data architecture

(C) Michael Brückner 2005/2006 Software Engineering 7 Example – HW System Architecture

(C) Michael Brückner 2005/2006 Software Engineering 8 Example – SW System Architecture Robot System Software External view not worked out

(C) Michael Brückner 2005/2006 Software Engineering 9 Model types  Data processing การดำเนินการ model shows how the data is processed at different stages ระยะเวลา  Architectural model shows important sub- systems  Classification model shows how entities have common เหมือนกัน characteristics

(C) Michael Brückner 2005/2006 Software Engineering 10 Example – Data Processing Model Multi-tasking data processing

(C) Michael Brückner 2005/2006 Software Engineering 11 Example – Classification Model... for intruders บุก รุก network security systems

(C) Michael Brückner 2005/2006 Software Engineering 12 Context models  Context models show the operational context of a system - they also show what is outside the system  Architectural models show the system and its relationship with other systems

(C) Michael Brückner 2005/2006 Software Engineering 13 The context of an ATM system

(C) Michael Brückner 2005/2006 Software Engineering 14 Process models  Process models show the overall ทั้งหมด process and the processes that are supported by the system.

(C) Michael Brückner 2005/2006 Software Engineering 15 Equipment procurement process

(C) Michael Brückner 2005/2006 Software Engineering 16 Behavioural models  Behavioural models are used to describe the overall behaviour of a system  Two types of behavioural model are:  Data processing models that show how data is processed as it moves through the system  Stimulus ยากระตุ้น /response การตอบสนอง model shows the reaction to events เหตุการณ์สำคัญ  These models show different perspectives so both of them are required to describe the system’s behaviour.

(C) Michael Brückner 2005/2006 Software Engineering 17 Data-processing models  Data flow diagrams (DFDs) may be used to model the system’s data processing.  They show the processing steps as data flows through a system.  DFDs are an intrinsic เนื้อแท้ part of many analysis methods.  Simple and intuitive โดยสัญชาตญาณ notation that customers can understand.  Show end-to-end processing of data.

(C) Michael Brückner 2005/2006 Software Engineering 18 Example - Order processing DFD

(C) Michael Brückner 2005/2006 Software Engineering 19 Example - Data Flow Model Wave buoys ทุ่น provide data about wave amplitudes ความ กว้างขวาง and velocities ความเร็ว worldwide ทั่วโลก How will the data be transferred สื่อไปถึง ?

(C) Michael Brückner 2005/2006 Software Engineering 20 Data flow diagrams  DFDs model the system from a functional perspective  Write down and track how the data are associated เชื่อมโยง with a process  Helpful for an overall ทั้งหมด understanding of the system  Data flow diagrams may also be used to show data exchange between a system and other systems in its environment.

(C) Michael Brückner 2005/2006 Software Engineering 21 Insulin pump DFD

(C) Michael Brückner 2005/2006 Software Engineering 22 Stimulus/response models  These model the behaviour of the system in response to external and internal events.  They show the system’s responses to stimuli  Often used for modelling real-time systems.  When there is an event the system goes from one state to another

(C) Michael Brückner 2005/2006 Software Engineering 23 Statecharts  Allow the decomposition of a model into sub-models  Can be complemented by tables describing the states and the stimuli  Example: Microwave oven

(C) Michael Brückner 2005/2006 Software Engineering 24 Microwave oven model

(C) Michael Brückner 2005/2006 Software Engineering 25 Microwave oven state description

(C) Michael Brückner 2005/2006 Software Engineering 26 Microwave oven stimuli

(C) Michael Brückner 2005/2006 Software Engineering 27 Microwave oven operation

(C) Michael Brückner 2005/2006 Software Engineering 28 Semantic data models  Used to give the logical structure of data processed by the system.  An entity-relation-attribute model sets out the entities in the system, the relationships between these entities and the entity attributes  Widely used in database design. Can easily be implemented using relational databases.

(C) Michael Brückner 2005/2006 Software Engineering 29 Library semantic model

(C) Michael Brückner 2005/2006 Software Engineering 30 Data dictionaries  Data dictionaries are lists of all of the names used in the system models. Descriptions of the entities, relationships and attributes are also included ประกอบด้วย.  Advantages  Support name management and avoid หลีกเลี่ยง duplication การทำซ้ำ  Store สิ่งที่กักตุนไว้ of organisational knowledge linking analysis, design and implementation

(C) Michael Brückner 2005/2006 Software Engineering 31 Data dictionary entries

(C) Michael Brückner 2005/2006 Software Engineering 32 Object models-1  Object models describe the system in terms of object classes and their associations การเชื่อม ติดกัน  An object class is an abstraction นามธรรม over a set of objects with same attributes and the services (operations) given by each object.  Various object models may be worked out  Inheritance models;  Aggregation models;  Interaction models.

(C) Michael Brückner 2005/2006 Software Engineering 33 Object models-2  Natural way of thinking about real-world entities manipulated ดูแล by the system  More abstract entities are more difficult to model using this approach  Object class identification is a difficult process: need a deep understanding of the application domain  Object classes for domain entities are reusable (we can use them again) ซึ่งนำมาใช้ใหม่ in other projects

(C) Michael Brückner 2005/2006 Software Engineering 34 Inheritance models  Organise the domain object classes into a hierarchy.  Classes at the top of the hierarchy show the common features of all classes.  Object classes inherit สืบต่อ / รับมรดก their attributes and services from the super-classes, they may then be specified กำหนด

(C) Michael Brückner 2005/2006 Software Engineering 35 Library class hierarchy

(C) Michael Brückner 2005/2006 Software Engineering 36 User class hierarchy

(C) Michael Brückner 2005/2006 Software Engineering 37 Multiple inheritance  Rather than getting the attributes and services from a single parent class, a system which supports multiple inheritance allows object classes to inherit from more than one super-class  This can lead to semantic conflicts when attributes/services with the same name in different super-classes have different meaning.

(C) Michael Brückner 2005/2006 Software Engineering 38 Multiple inheritance

(C) Michael Brückner 2005/2006 Software Engineering 39 Object aggregation  An aggregation การรวมกัน model shows how classes that are collections การรวมตัว กันเป็นกลุ่มเป็นกอง are composed of other classes.  Aggregation models are similar เหมือนกัน to the part-of relationship in semantic data models.

(C) Michael Brückner 2005/2006 Software Engineering 40 Object aggregation

(C) Michael Brückner 2005/2006 Software Engineering 41 Object behaviour modelling  A behavioural model shows the interactions ปฏิกิริยา between objects to get a particular system behaviour that is specified กำหนด as a scenario  Sequence การเรียงลำดับ diagrams (or collaboration การร่วมมือ diagrams) are used to show interaction between objects.

(C) Michael Brückner 2005/2006 Software Engineering 42 Issue of electronic items

(C) Michael Brückner 2005/2006 Software Engineering 43 Structured methods  Structured methods incorporate system modelling as an inherent part of the method.  Methods define a set of models, a process for deriving these models and rules and guidelines that should apply to the models.  CASE tools support system modelling as part of a structured method.

(C) Michael Brückner 2005/2006 Software Engineering 44 Method weaknesses  They do not show non-functional system requirements.  They do not usually give information which model is best used for a given problem  They may produce too much documentation.