Modeling Shari L. Pfleeger and Joanne M. Atlee, Software Engineering: Theory and Practice, 4th edition, Prentice Hall, 2009. Hans Van Vliet, Software Engineering:

Slides:



Advertisements
Similar presentations
Chapter 7 System Models.
Advertisements

Modeling Main issues: What do we want to build How do we write this down.
Modeling Main issues: What do we want to build How do we write this down ©2008 John Wiley & Sons Ltd. vliet.
System Modelling System modelling helps the analyst to understand the functionality of the system and models are used to communicate with customers. Different.
2-1 © Prentice Hall, 2007 Chapter 2: Introduction to Object Orientation Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph.
Introduction To System Analysis and Design
©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.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 8 Slide 1 System models September 29, 2008.
Modified from Sommerville’s originalsSoftware Engineering, 7th edition. Chapter 8 Slide 1 System models.
© Copyright Eliyahu Brutman Programming Techniques Course.
Chapter 7: The Object-Oriented Approach to Requirements
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 1 System models l Abstract descriptions of systems whose requirements are being.
Functional Modeling Joseph Valacich, Joey George and Jeff Hoffer, Essentials of System Analysis and Design, 4 th edition, Prentice Hall, 2009.
程建群 博士(Dr. Jason Cheng) 年03月
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 1 System models l Abstract descriptions of systems whose requirements are being.
Chapter 4 System Models A description of the various models that can be used to specify software systems.
System models Abstract descriptions of systems whose requirements are being analysed Abstract descriptions of systems whose requirements are being analysed.
Department of Electrical Engineering and Computer Science University of Central Florida Fall 2014.
Introduction To System Analysis and Design
©Ian Sommerville 1995/2000 (Modified by Spiros Mancoridis 1999) Software Engineering, 6th edition. Chapter 7 Slide 1 System models l Abstract descriptions.
UML Diagrams: Sequence Diagrams The Requirements Model, and The Dynamic Analysis Model Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical.
1 UML Basic Training. UML Basic training2 Agenda  Definitions: requirements, design  Basics of Unified Modeling Language 1.4  SysML.
©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.
Modeling Shari L. Pfleeger and Joanne M. Atlee, Software Engineering: Theory and Practice, 4 th edition, Prentice Hall, Hans Van Vliet, Software.
Software Engineering, 8th edition Chapter 8 1 Courtesy: ©Ian Somerville 2006 April 06 th, 2009 Lecture # 13 System models.
Sommerville 2004,Mejia-Alvarez 2009Software Engineering, 7th edition. Chapter 8 Slide 1 System models.
UML diagrams What is UML UML diagrams –Static modeoing –Dynamic modeling 1.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 1 Chapter 7 System Models.
Modeling as a Design Technique Chapter 2 Part 1: Modeling Concepts Object-Oriented Modeling and Design Byung-Hyun Ha
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 8 Slide 1 System models.
Functional Modeling Joseph Valacich, Joey George and Jeff Hoffer, Essentials of System Analysis and Design, 4 th edition, Prentice Hall, 2009.
OMT Modeling 1. Object Model : presented by the object model and the data dictionary. 2. Dynamic Model: presented by the state diagrams and event flow.
Lecture 9-1 : Intro. to UML (Unified Modeling Language)
1 Technical & Business Writing (ENG-715) Muhammad Bilal Bashir UIIT, Rawalpindi.
Week 04 Object Oriented Analysis and Designing. What is a model? A model is quicker and easier to build A model can be used in simulations, to learn more.
1 CEN 4020 Software Engineering PPT4: Requirement analysis.
Modeling Shari L. Pfleeger and Joanne M. Atlee, Software Engineering: Theory and Practice, 4 th edition, Prentice Hall, Hans Van Vliet, Software.
Diagrams. Typically, we view the static parts of a system using one of the four following diagrams. 1. Class diagram 2. Object diagram 3. Component diagram.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 8 Slide 1 System models.
Engineering, 7th edition. Chapter 8 Slide 1 System models.
UML(Unified Modeling Language)
Object-oriented and Structured System Models
UML Diagrams By Daniel Damaris Novarianto S..
Systems Analysis and Design with UML Version 2.0, Second Edition
Main issues: • What do we want to build • How do we write this down
Object-Oriented Analysis and Design
Unified Modeling Language
University of Central Florida COP 3330 Object Oriented Programming
UML Diagrams Jung Woo.
Abstract descriptions of systems whose requirements are being analysed
Online Shopping APP.
System models October 5, 2005.
Unified Modeling Language
Chapter 20 Object-Oriented Analysis and Design
CIS 375 Bruce R. Maxim UM-Dearborn
Appendix A Object-Oriented Analysis and Design
Software Design Lecture : 15.
Dynamic Modeling Lecture # 37.
CIS 375 Bruce R. Maxim UM-Dearborn
Appendix A Object-Oriented Analysis and Design
Appendix A Object-Oriented Analysis and Design
Uml diagrams In ooad.
Presentation transcript:

Modeling Shari L. Pfleeger and Joanne M. Atlee, Software Engineering: Theory and Practice, 4th edition, Prentice Hall, 2009. Hans Van Vliet, Software Engineering: Principles and Practice, third edition, John Wiley & Sons, 2008.

What Is a Model? Pairs (2 minutes)

Models ‘Complete’ meaning no additional information is needed to understand the system from that perspective abstraction of some entity understand before build omits nonessential details examples: architectural models to show customers airplane scale models storyboards of advertisements outlines of books

Different Models Several models will be considered in developing our system Use case model: describes requirements from the user perspective Design model: describes classes and objects Implementation model: source code Test model: test cases and test procedures

Investigate: People and machines playing some role (actors) Items produced, consumed, or modified Functions performed Modes of operation that determine when functions are performed

Analysis All aspects of the problem domain need to be investigated. Decompose the problem into smaller problems until the entire problem is fully understood. The models that depict information, function, and behavior must be constructed in a manner that uncovers detail.

Note: "Remember that all models are wrong; the practical question is how wrong do they have to be to not be useful."; "Essentially, all models are wrong, but some are useful." George E.P. Box & Norman R. Draper, Empirical Model-Building and Response Surfaces (Wiley 1987) pp. 74 and 424. (Professor of statistics, U of Wisconsin)

Purposes of a Model: Testing a real entity before building it Communication with customers Visualization Reduction of complexity

Operational Principles: Analysis Methods The information domain of a problem must be represented and understood. The functions that the software is to perform must be defined. The behavior of the software (as a consequence of external events) must be represented.

Modeling Views It all comes down to these: Objects: data Functions: transformations of data States: transitions controlling transformations

Data (Static) Models Used to understand the data and actors in a system Abstraction of the information needed and generated by the system Describes the problem domain Helps identify, classify, and abstract the problem

Function (Transformational) Models Used to understand the transformations that take place in the system Used to understand the inputs and outputs for computations

State (Dynamic) Models Used to understand states and modes of the system Used to specify the flow of control through the system and system components

Modeling Functional Model – transformational, “function” aspects of system Data Dictionary Object Model - static, structural, data aspects of system E-R Diagram Data-flow Diagram Class Diagram State-Transition Diagram Decision Tables Collaboration Diagram Dynamic Model - temporal, behavioral, “control” aspects of system

Static Models Entity Relationship Models Class Models

Dynamic Models Event trace Message sequence chart Show a sequence of events and associated responses Message sequence chart Enhanced event trace notation Vertical lines are entity time lines (time flows from top to bottom) Horizontal lines are messages or events

Dynamic Models (Cont.) State Machines Should remind you of FSMs from theory. Nodes are states Arcs are transitions Event (condition)/action Instantaneous Statecharts: UML state machine notation

Functional Models Data Flow Diagrams Processes Data Data store Use Cases

Static Models Pairs (10 minutes) What are the nodes (node types)? Read about ER diagrams PP 263-265 What are the nodes (node types)? What are the edges?

In Class: Diagram the Following A library has books and journals, and each can be checked out. A patron has a name, a UTEP ID number, an address. A patron can check out any number of books or journals. When a book or journal is checked out, it must be returned in 5 days (so we must keep track of the checkout date)

In Class: Static Models Show how you can use an ER diagram to represent Association Aggregation Generalization Composition role names multiplicities