Concepts & Notations. Acknowledgements  The material in this tutorial is based in part on: The Unified Modeling Language Reference Manual, 2 nd edition,

Slides:



Advertisements
Similar presentations
Concepts & Notations. Acknowledgements  The material in this tutorial is based in part on: Concurrency: State Models & Java Programming, by Jeff Magee.
Advertisements

7M701 1 Information Systems Modelling and Design with.
Object-Oriented Analysis and Design CHAPTERS 15: UML INTERACTION DIAGRAMS 1.
ESE Einführung in Software Engineering 7. Modeling Behaviour Prof. O. Nierstrasz.
Ana M. Fernández  A UML diagram that depicts: ◦ interactions between objects. ◦ how the business currently works by showing how various.
Introduction to Software Engineering 7. Modeling Behaviour.
A Brief Introduction. Acknowledgements  The material in this tutorial is based in part on: Concurrency: State Models & Java Programming, by Jeff Magee.
System Sequence Diagrams (SSD). Recap Concepts of Action, Pins and Activity Description of activity nodes and activity edges New notations – Activity.
Chapter 1 Object-Oriented System Development
Lecture 11: Chapter 22 Topics –Object Oriented Modeling –UML –Use case.
© M.E. Fayad SJSU -- CmpE Software System Engineering Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I College of Engineering.
L26-S1 Interactions 2003 SJSU -- CmpE Advanced Object-Oriented Analysis & Design Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I.
03/12/2001 © Bennett, McRobb and Farmer Object Interaction Based on Chapter 9 of Bennett, McRobb and Farmer: Object Oriented Systems Analysis and.
Sequence Diagrams By Zvika Gutterman Adam Carmi. Agenda Interaction Diagrams A First Look at Sequence Diagrams Objects Messages Control Information Examples.
Sequence Diagrams By Zvika Gutterman Adam Carmi. Sequence Diagrams2 Agenda Interaction Diagrams A First Look at Sequence Diagrams Objects Messages Control.
Sequence Diagram. What is Sequence Diagram?  Sequence Diagram is a dynamic model of a use case, showing the interaction among classes during a specified.
Sequence Diagrams By Zvika Gutterman Adam Carmi. Sequence Diagrams2 Agenda Interaction Diagrams A First Look at Sequence Diagrams Objects Messages Control.
1 CS 501 Spring 2002 CS 501: Software Engineering Lecture 16 Object Oriented Design I.
Slide 1 Use Case Sequence Diagram. Slide 2 Interaction Diagrams l Interaction diagrams model the behavior of use cases by describing the way groups of.
CS3773 Software Engineering
UML Collaboration Diagram. Recap System Sequence Diagrams (SSD) UML for SSD Examples.
Unified Modeling Language, Version 2.0
SOFTWARE DESIGN AND ARCHITECTURE LECTURE 25. Review Design Level Class Diagram Identifying classes/Operations/Attributes Associations – Simple associations.
ECE450 - Software Engineering II1 ECE450 – Software Engineering II Today: An Aside: The Quickest Tour through the UML that you will ever get.
Programming Logic and Design Fourth Edition, Comprehensive Chapter 15 System Modeling with the UML.
CS-2852 Data Structures LECTURE 3B Andrew J. Wozniewicz Image copyright © 2010 andyjphoto.com.
Smith’s Aerospace © P. Bailey & K. Vander Linden, 2005 Interaction and Communication Diagrams Patrick Bailey Keith Vander Linden Calvin College.
M Taimoor Khan Sequence Diagrams Illustrates how objects interacts with each other. Emphasizes time ordering of messages.
Object-Oriented Paradigm and UML1 Introduction to the Object- Oriented Paradigm.
Discovering object interaction. Use case realisation The USE CASE diagram presents an outside view of the system. The functionality of the use case is.
Interaction Diagram Notation
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 8: Modelling Interactions and Behaviour UML Sequence Diagram.
Object-Oriented Analysis and Design 1 Mira Balaban & Arnon Sturm Object-Oriented Analysis and Design Session 3a: Behavioral Modeling - Interactions.
UML as a Specification Language for Embedded Systems. By, Mir Ahmed Ali, Asst. Professor, ECM department, SNIST. By, Prof. Narsiah sir, Director of School.
Sequence Diagrams CSIS3600. Sequence Diagrams A sequence diagram shows an interaction arranged in time sequence. In particular, it shows the objects participating.
Object Oriented Analysis and Design Sequence Diagrams.
1 On To Object Design Chapter 14 Applying UML and Patterns -Craig Larman.
1 START AT 31 MARCH END 8 APRIL PHASE5(CONCEPTUAL AND SEQUENCE MODEL)
(14-2) UML Instructor - Andrew O’Fallon CptS 122 (December 2, 2015) Washington State University.
©2007 · Georges Merx and Ronald J. NormanSlide 1 Chapter 15 The Unified Modeling Language: a Primer.
UML Diagrams for Caradon developers Daniel DG Moth Core Development Group, Research Student University of Brighton, MSc Object Oriented Software Technology.
Coming up: Interaction Diagrams Sequence Diagrams Dan Fleck.
MADALINA CROITORU Software Engineering week 4 Practical Madalina Croitoru IUT Montpellier.
UML Review of Use case diagrams. 2 Unified Modeling Language The Unified Modeling Language™ (UML) was developed jointly by Grady Booch, Ivar Jacobson,
 The Sequence Diagram models the collaboration of objects based on a time sequence.  It shows how the objects interact with others in a particular scenario.
CS 501: Software Engineering Fall 1999 Lecture 15 Object-Oriented Design I.
Project 2: Phase 1 Submission 7 Late submissions 10% 10 No submissions 14% Better than project 1 phase 3 submissions 10-point bonus: If you catch the deadline.
Slide 1 Unified Modeling Language, Version 2.0 Object-Oriented SAD.
Use Cases UML. Use Cases What are Use Cases?  A statement of the functionality users expect and need, organized by functional units  Different from.
Introduction to UML.
Systems Analysis and Design in a Changing World, Fourth Edition
Embedded Systems Software Engineering
Evolution of UML.
UML SEQUENCE DIAGRAM.
Sequence Diagrams Mimi Opkins CECS 493 Fall2016
Interaction View.
Systems Analysis and Design With UML 2
Introduction to Unified Modeling Language (UML)
Sequence Diagram.
Prepared By Sidra Noureen
University of Central Florida COP 3330 Object Oriented Programming
Dynamic Modeling: Defining Classes
Object Oriented Analysis and Design
Princess Nourah bint Abdulrahman University
Sequence Diagrams.
IMAT5205 Systems Analysis and Design
Week 12: Activity & Sequence Diagrams
Unified Modelling Language
Review CSE116 2/21/2019 B.Ramamurthy.
Sequence Diagrams.
Presentation transcript:

Concepts & Notations

Acknowledgements  The material in this tutorial is based in part on: The Unified Modeling Language Reference Manual, 2 nd edition, by James Rumbaugh, Ivar Jacobson, and Grady Booch

 Interaction View  Interaction Diagram  Sequence Diagram  Examples

Interaction View  Objects interact to implement behavior  Two ways to describe interaction focus on individual objects (state machine) focus on interactions of a collection of cooperating objects (interaction view)  Provides a more holistic view of the behavior of a set of objects

Interaction Diagram  Collaboration Diagram Emphasizes structural relations between objects  Sequence Diagram Illustrates how objects interacts with each other Emphasizes time ordering of messages

Sequence Diagram member: LibraryMember book:Book :Book Copy borrow(book) ok = mayBorrow() [ok] borrow(member) setTaken(member)

Sequence Diagram member: LibraryMember book:Book :Book Copy borrow(book) ok = mayBorrow() [ok] borrow(member) setTaken(member) X-Axis (roles) Y-Axis (time)

Sequence Diagram member: LibraryMember book:Book :Book Copy borrow(book) ok = mayBorrow() [ok] borrow(member) setTaken(member) X-Axis (roles) Y-Axis (time) head symbol life line

Sequence Diagram member: LibraryMember book:Book :Book Copy borrow(book) ok = mayBorrow() [ok] borrow(member) setTaken(member) X-Axis (roles) Y-Axis (time) head symbol life line activation double line

Object  Naming syntax [instance Name]:[class Name]  Life line represents the object’s life during the interaction bDay:Date

Object  Active Object holds the root of a stack executions has its own thread of control  Passive Object objects that are called by an active object receive control only when called

Object pull : Queueactor1 : …actor2 : … active object passive object

Message  An interaction between two objects operation call signaling RPC  An arrow between the life lines of two objects  Labeled with name arguments control information

Message pull : Queueactor1 : …actor2 : … message

Synchronous Message  The routine that handles the message is completed before the caller resumes execution :A:B doYouUnderstand() Caller Blocked return (optional) yes synchronous message

Creation Message  An object may create another object via a create() message old:A create() :B Preferred create message

Destruction Message  An object may destroy another object via a destroy() message old:Anew:B destroy()

Examples print(doc,client) Client :PrintServer:Queue :Printer Proxy enqueue(job) status job=dequeue() [job]print(job.doc) [job] done(status) Repeated forever with 1 min interludes

Examples print(doc,client) Client :PrintServer:Queue :Printer Proxy enqueue(job) status job=dequeue() [job]print(job.doc) [job] done(status) Repeated forever with 1 min interludes

Examples print(doc,client) Client :PrintServer:Queue :Printer Proxy enqueue(job) status job=dequeue() [job]print(job.doc) [job] done(status) Repeated forever with 1 min interludes

Examples print(doc,client) Client :PrintServer:Queue :Printer Proxy enqueue(job) status job=dequeue() [job]print(job.doc) [job] done(status) Repeated forever with 1 min interludes

Examples print(doc,client) Client :PrintServer:Queue :Printer Proxy enqueue(job) status job=dequeue() [job]print(job.doc) [job] done(status) Repeated forever with 1 min interludes

Examples print(doc,client) Client :PrintServer:Queue :Printer Proxy enqueue(job) status job=dequeue() [job]print(job.doc) [job] done(status) Repeated forever with 1 min interludes

Examples print(doc,client) Client :PrintServer:Queue :Printer Proxy enqueue(job) status job=dequeue() [job]print(job.doc) [job] done(status) Repeated forever with 1 min interludes

Review  Time on y-axis, roles on x-axis  Activation bars represent executions of procedures  Active objects have bars  Solid arrowheads: synchronous  Stick arrowheads: asynchronous  Dashed message lines: return :PrintServer