CS 425/625 Software Engineering System Models

Slides:



Advertisements
Similar presentations
© 2005 by Prentice Hall Appendix 3 Object-Oriented Analysis and Design Modern Systems Analysis and Design Fourth Edition Jeffrey A. Hoffer Joey F. George.
Advertisements

Chapter 7 System Models.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 12Slide 1 Software Design l Objectives To explain how a software design may be represented.
Chapters 7 & 9 System Scope
© 2006 ITT Educational Services Inc. SE350 System Analysis for Software Engineers: Unit 9 Slide 1 Appendix 3 Object-Oriented Analysis and Design.
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.
SWE Introduction to Software Engineering
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.
Systems Analysis & Design Sixth Edition Systems Analysis & Design Sixth Edition Toolkit Part 5.
1/31 CS 426 Senior Projects Chapter 1: What is UML? Chapter 2: What is UP? [Arlow and Neustadt, 2005] January 22, 2009.
1 / 26 CS 425/625 Software Engineering Architectural Design Based on Chapter 11 of the textbook [SE-8] Ian Sommerville, Software Engineering, 8t h Ed.,
7M822 Software Engineering: System Models 14 September 2009.
1 CS 426 Senior Projects Chapter 1: What is UML? Chapter 2: What is UP? [Arlow and Neustadt, 2002] January 26, 2006.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 8 Slide 1 System modeling 1.
Chapter 7: System models
Structured Vs. Object Oriented Analysis and Design SAD Vs. OOAD
Software Design Description (SDD) Diagram Samples
©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.
CIT UPES | Sept 2013 | Unified Modeling Language - UML.
System Models Hoang Huu Hanh, Hue University hanh-at-hueuni.edu.vn Lecture 6 & 7.
System models Abstract descriptions of systems whose requirements are being analysed Abstract descriptions of systems whose requirements are being analysed.
Copyright 2002 Prentice-Hall, Inc. Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich Chapter 20 Object-Oriented.
©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.
Systems Analysis and Design 8 th Edition Chapter 6 Object Modeling.
©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.
1 / 26 CS 425/625 Software Engineering Architectural Design Based on Chapter 10 of the textbook [Somm00] Ian Sommerville, Software Engineering, 6 th Ed.,
1 Technical & Business Writing (ENG-715) Muhammad Bilal Bashir UIIT, Rawalpindi.
Chapter 5 System Modeling. What is System modeling? System modeling is the process of developing abstract models of a system, with each model presenting.
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.
© 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.
Appendix 3 Object-Oriented Analysis and Design
Object-oriented and Structured System Models
Unified Modeling Language
Abstract descriptions of systems whose requirements are being analysed
IS301 – Software Engineering V:
Business System Development
System models October 5, 2005.
Chapter 20 Object-Oriented Analysis and Design
Appendix A Object-Oriented Analysis and Design
Appendix A Object-Oriented Analysis and Design
Appendix 3 Object-Oriented Analysis and Design
Presentation transcript:

CS 425/625 Software Engineering System Models Based on Chapter 7 of the textbook [Somm00] Ian Sommerville, Software Engineering, 6th Ed., Addison-Wesley, 2000 and on Ch7 PowerPoint presentation available at the book’s web-site: www.comp.lancs.ac.uk/computing/resources/IanS/SE6/Slides/index.html September 29, 2003

Outline System Models Contextual Models Behavioral Models Data Models Object Models

Introduction. System models are used to specify the system to be built in a more detailed way Typically, system models are graphical descriptions of the system, its services and its constraints Various perspectives for system modeling: Context Behavior Structure

.Introduction The production of system models is usually guided by methods, e.g., SSA (Structured Systems Analysis), SADT (Structured Analysis and Design Technique), OMT (Object Modeling Technique), etc. In practice, various models, not bound to methods, could be combined to describe the system and its requirements Main types of system models: Data Processing Models Composition Models Architectural Models Classification Models Stimulus-Response Models

Context Models… Contextual models show the system and its environment Ideally, the boundaries between the system and its environment are identified clearly Dependencies between the computer-based system and systems from the environment are highlighted

.Context Models.. Various models can be used for context modeling: Very simple, high level architectural models show the system and its connections with environmental components High level process models indicate main process activities High-level data-flow diagrams depict data transformations and data transfers

..Context Models. Example of architectural model for system context specification: an ATM system and its environment [Fig. 7.1, Somm00]

…Context Models Example of process model for system context specification: an equipment procurement system [Fig. 7.2, Somm00]

Behavioral Models……. Behavioral models specify the overall behavior of the system: Data-flow models (or data-flow diagrams, DFD) are suitable for data-driven systems State machine models (or stimulus-response models) are appropriate for event-driven systems

.Behavioral Models…... Data-flow models show the system in terms of: Data stores [graphical representation: rectangles] Data transformations (data processing operations) [graphical representation: rounded rectangles] Data movements (data transfers) [graphical representation: directed lines]

..Behavioral Models….. State machine models describe system behavior using two main modeling elements: States [represented using rounded rectangles] Transitions [shown as directed links between states]

…Behavioral Models.... A DFD example: an order processing system [Fig. 7.3, Somm00]

….Behavioral Models… State machine diagrams depict the behavior of the system in terms of responses to events Real-time systems are essentially event-driven systems The system is assumed to be in one of its possible states at any given moment of time. A transition to another state is triggered by the occurrence of an event David Harel’s statecharts are included in the UML (Unified Modeling Language); DFDs are not part of UML

…..Behavioral Models.. Example of state machine diagram: A microwave oven controller [Fig. 7.5, Somm00]

…...Behavioral Models. The statecharts notation used in UML allows: Specification of composite states (states that have sub-states), thus supporting model decomposition Description of actions performed while in a state: Entry actions State actions (activities) Exit actions Description of transitions: Events that trigger the transition Conditions under which transitions occur Actions on transitions, if any

…....Behavioral Models Example of composite state: microwave oven [Fig. 7.7, Somm00]

Semantic Data Models… Data models describe the logical structure of data processed by the system The Entity-Relationship-Attribute model, ERA (also known as Entity-Relationship model, ER) shows: Entities in the system Relationships between entities Attributes of entities and relationships Cardinality constraints (e.g., “one” or “many”)

.Semantic Data Models.. Data dictionaries are repositories of information pertaining to the elements of the system models. They are useful to manage the namespace of the system models as well as to supply a cross-reference tool for analysis, design, implementation, and evolution.

..Semantic Data Models. An ERA example: a software design description [Fig. 7.8, Somm00]

…Semantic Data Models Data dictionary: examples of data entries [Fig. 7.9, Somm00]

Object Models…….. Objected-oriented modeling is centered around the concepts of object and class An object is an entity described in terms of attributes (data) and operations (functionality) A class is a template for objects that have similar features (attributes and operations). More exactly, the objects that belong to the same class have the same structure and behavior, e.g., davidsAlarmClock is an object (instantiation) of the class AlarmClock

.Object Models……. The distinguishing principles of object-oriented (OO) technology are: Encapsulation Inheritance Polymorphism

..Object Models…… Objects provide more natural ways to model real-life entities Both structure (class diagrams) and behavior (e.g., interaction diagrams and state diagrams) can be described A class diagram shows: Classes Relationships between classes Constraints Annotations

…Object Models….. The value of OO comes from: Greater modeling power Increased reusability and extensibility Improved control of complexity

….Object Models…. Example of class hierarchy: a library system [Fig. 7.10, Somm00]

…..Object Models… Another example of class hierarchy: Library users [Fig. 7.11, Somm00]

……Object Models.. Example of multiple inheritance [Fig. 7.12, Somm00]

…….Object Models. Example of class structure with aggregation [Fig. 7.13, Somm00]

……..Object Models Example of sequence diagram [Fig. 7.14, Somm00]