Chapter 5 – System Modeling

Slides:



Advertisements
Similar presentations
Chapter 5 – System Modeling
Advertisements

In this presentation you will:
System Modelling System modelling helps the analyst to understand the functionality of the system and models are used to communicate with customers. Different.
Figures – Chapter 5. Figure 5.1 The context of the MHC-PMS.
SWE Introduction to Software Engineering
CSC 506: Software Engineering and Knowledge Engineering
©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.
 Dr. Syed Noman Hasany.  Review of known methodologies  Analysis of software requirements  Real-time software  Software cost, quality, testing and.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 8 Slide 1 System modeling 1.
Chapter 5 – System Modeling 1Chapter 5 System modeling.
Chapter 5 System modeling Chapter 5 – System Modeling Lecture 1 1.
Structured Vs. Object Oriented Analysis and Design SAD Vs. OOAD
Structured Vs. Object Oriented Analysis and Design SAD Vs. OOAD
Sequence diagrams Chapter 5 Sommerville. Sequence diagrams Sequence diagrams are part of the UML and are used to model the interactions between the actors.
CS451 Introduction to Software Engineering Behavioral Modeling.
Software Engineering 8. System Models.
Chapter 5 – System Modeling 1Chapter 5 System modeling.
Chapter 5 – System Modeling Lecture 1 1Chapter 5 System modeling.
Chapter 5 – System Modeling
Real-Time Systems time dependent control oriented driven by events rather than data.
©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.
1 Object-Oriented Modeling Using UML (2) CS 3331 Fall 2009.
Lecture 6 Systems Modeling
Chapter 5 – System Modeling
Chapter 5 – System Modeling
Chapter 5 – System Modeling 1Chapter 5 System modeling CS 425 October 13, 2011 Ian Sommerville, Software Engineering, 9 th Edition Pearson Education, Addison-Wesley.
Object-Oriented Modeling Using UML CS 3331 Section 2.3 of Jia 2003.
 Chapter 5 System Modeling 1. Context Model  Shows context (environment) of proposed system  Other software  People  Roadmap of major areas to consider.
Chapter 7 System models.
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.
Chapter 5 System Modeling (2/2) Yonsei University 2 nd Semester, 2014 Sanghyun Park.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 1 Chapter 7 System Models.
Chapter 5 – System Modeling Chapter 5 System Modeling1 CS 425 October 20, 2015 Ian Sommerville, Software Engineering, 10 th Edition Pearson Education,
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 8 Slide 1 System models.
Chapter 5 – System Modeling 1Chapter 5 System modeling CS 425 October 18, 2010 Ian Sommerville, Software Engineering, 9 th Edition Pearson Education, Addison-Wesley.
Chapter 5 – System Modeling
Unit 4 – System Modeling 1Chapter 5 System modeling.
Chapter 5 – System Modeling Chapter 5 System Modeling130/10/2014.
Software Engineering Lecture 6 – System Modelling
Chapter 5 – System Modeling Lecture 9 Section A 27/4/2015 Section B 29/4/2015 1Chapter 5 System modeling.
Chapter 6: System Models Omar Meqdadi SE 273 Lecture 6 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
Software Engineering for Embedded Systems Lecture 12.
Lecturer: Eng. Mohamed Adam Isak PH.D Researcher in CS M.Sc. and B.Sc. of Information Technology Engineering, Lecturer in University of Somalia and Mogadishu.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 8 Slide 1 System models.
Chapter 5 – System Modeling Lecture 1 1Chapter 5 System modeling.
Engineering, 7th edition. Chapter 8 Slide 1 System models.
EKT 421 SOFTWARE ENGINEERING
Chapter 5 System Modeling
CompSci 280 S Introduction to Software Development
Chapter 5 System modeling
Chapter 5 – System Modeling
IS301 – Software Engineering V:
Software Engineering Chapter 5 (Part 3) System Modeling Dr.Doaa Sami.
Chapter 5 – System Modeling
State Machines Massimo Felici.
CS310 Software Engineering Dr.Doaa Sami
Chapter 5 – System Modeling
Chapter 5 – System Modeling
Chapter 4 System Modeling.
Chapter 5 – System Modeling
Chapter 5 System modeling Chapter 5 – System Modeling Lecture 2 1.
Presentation transcript:

Chapter 5 – System Modeling Lecture 3 When the words are fuzzy, the programmers reflexively retreat to the most precise method of articulation available: source code. Although there is nothing more precise than code, there is also nothing more permanent or resistant to change. So the situation frequently crops up where nomenclature confusion drives programmers to begin coding prematurely, and that code becomes the de facto design, regardless of its appropriateness or correctness. A. Cooper (in "The Inmates are Running the Asylum") Chapter 5 System modeling

Chapter 5 System modeling Topics covered Context models Interaction models Structural models Behavioral models Model-driven engineering Chapter 5 System modeling

Chapter 5 System modeling Behavioral models models of the dynamic behavior of a system as it is executing. They show what happens or what is supposed to happen when a system responds to a stimulus from its environment. You can think of these stimuli as being of two types: Data. Some data arrives that has to be processed by the system. Events. Some event happens that triggers system processing. Events may have associated data, although this is not always the case. Chapter 5 System modeling

Chapter 5 System modeling Data-driven modeling Many business systems are data-processing systems that are primarily driven by data. controlled by the data input to the system relatively little external event processing. Data-driven models show the sequence of actions involved in processing input data and generating an associated output. useful during the analysis of requirements can be used to show end-to-end processing in a system. Chapter 5 System modeling

Chapter 5 System modeling Data Driven Modeling Three types of models are commonly used Data flow diagrams track how data moves through a system Focus on system functions and do not recognize system objects Cannot be used with UML because UML focuses on objects Actviity diagrams Used in UML Similar to DFD Represent processing steps as objects Shows flow of data between steps (or objects) Sequence diagrams Same as we looked at before Only pass messages left to right Alternative to activity diagrams for UML Chapter 5 System modeling

An activity model of the insulin pump’s operation Activity Diagram Chapter 5 System modeling

Chapter 5 System modeling Order processing Sequence Diagram Chapter 5 System modeling

Class Collaboration Diagrams Collaborations Another type of data-driven diagram Show system behavior Specify which elements of the class diagram must interact to produce a particular behavior usually embodied in use case or scenario Chapter 5 System modeling

Class Collaboration Diagrams For each of your classes: Determine the responsibilities of the class (in detail.) For each use case: determine if the associated scenarios can be “handled” by some subset of the classes. If not, rethink your classes. If so, create the class collaboration diagram for that scenario Cass diagrams vs Class Collaboration diagrams Class diagrams are about structure. Which classes contain an instance of another class Class Collaboration diagrams are about behavior Which classes pass messages to other classes Chapter 5 System modeling

Class Collaboration Diagrams Graphical Cell Display messages initialize Listener GUI Display Communicates via network connect Send messages Game Coordinator Player Chapter 5 System modeling

Event-driven modeling Real-time systems are often event-driven, with minimal data processing. For example, a landline phone switching system responds to events such as ‘receiver off hook’ by generating a dial tone. Event-driven modeling shows how a system responds to external and internal events. based on two assumptions: a system has a finite number of states events (stimuli) may cause a transition from one state to another. Chapter 5 System modeling

Chapter 5 System modeling State machine models 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. Chapter 5 System modeling

Chapter 5 System modeling State machine models system states are nodes events as arcs between these nodes. When an event occurs, the system moves from one state to another. Statecharts are an integral part of the UML and are used to represent state machine models. Chapter 5 System modeling

State diagram of a microwave oven Chapter 5 System modeling

States and stimuli for the microwave oven (a) Description Waiting The oven is waiting for input. The display shows the current time. Half power The oven power is set to 300 watts. The display shows ‘Half power’. Full power The oven power is set to 600 watts. The display shows ‘Full power’. Set time The cooking time is set to the user’s input value. The display shows the cooking time selected and is updated as the time is set. Disabled Oven operation is disabled for safety. Interior oven light is on. Display shows ‘Not ready’. Enabled Oven operation is enabled. Interior oven light is off. Display shows ‘Ready to cook’. Operation Oven in operation. Interior oven light is on. Display shows the timer countdown. On completion of cooking, the buzzer is sounded for five seconds. Oven light is on. Display shows ‘Cooking complete’ while buzzer is sounding. Chapter 5 System modeling

States and stimuli for the microwave oven (b) Stimulus Description Half power The user has pressed the half-power button. Full power The user has pressed the full-power button. Timer The user has pressed one of the timer buttons. Number The user has pressed a numeric key. Door open The oven door switch is not closed. Door closed The oven door switch is closed. Start The user has pressed the Start button. Cancel The user has pressed the Cancel button. Chapter 5 System modeling

Microwave oven operation Chapter 5 System modeling

Chapter 5 System modeling Key points Behavioral models are used to describe the dynamic behavior of an executing system. This behavior can be modeled from the perspective of the data processed by the system, or by the events that stimulate responses from a system. Activity diagrams may be used to model the processing of data, where each activity represents one process step. State diagrams are used to model a system’s behavior in response to internal or external events. Model-driven engineering is an approach to software development in which a system is represented as a set of models that can be automatically transformed to executable code. Chapter 5 System modeling