CS551 - Lecture 7 1 CS551 Interaction Models (Chapter 4 of UML) Yugi Lee STB #555 (816) 235-5932

Slides:



Advertisements
Similar presentations
Presented by: Diana Tai Ivan Chen Ronnie Lee Wilson Wong Chapter 11 DQ 35 CAAT.
Advertisements

Object Design Examples with GRASP
Object-Oriented Application Development Using VB.NET 1 Chapter 5 Object-Oriented Analysis and Design.
Actors and use cases Use-case diagram Brief notation Prioritization Fully dressed notation Requirements Functional requirements  Use-cases.
OOAD Using the UML - Use-Case Analysis, v 4.2 Copyright  Rational Software, all rights reserved 1/18 Use Case Analysis – continued Control Classes.
Irwin/McGraw-Hill Copyright © 2004 The McGraw-Hill Companies. All Rights reserved Whitten Bentley DittmanSYSTEMS ANALYSIS AND DESIGN METHODS6th Edition.
© 2005 Prentice Hall8-1 Stumpf and Teague Object-Oriented Systems Analysis and Design with UML.
Essentials of interaction diagrams Lecture Outline Collaborations Interaction on collaboration diagrams Sequence diagrams Messages from an object.
6/8/991 Analysis Tuesday 09/14/99 Revised: September 11, 2000 (APM)
C++ Training Datascope Lawrence D’Antonio Lecture 11 UML.
© Copyright Eliyahu Brutman Programming Techniques Course.
7. 2Object-Oriented Analysis and Design with the Unified Process Objectives  Detailed Object-Oriented Requirements Definitions  System Processes—A Use.
Use Case Modeling. Kendall & Kendall© 2005 Pearson Prentice Hall18-2 Commonly Used UML Diagrams The most commonly used UML diagrams are: – Use case diagram,
Use Case Analysis – continued
Sept Ron McFadyen1 Extend Relationship.
SE-565 Software System Requirements More UML Diagrams.
CHAPTER ELEVEN INTRODUCTION TO MERCHANDISING BUSINESSES: SALES.
Use Case Diagram (UCD) Yong Choi BPA.
Unified Modeling Language
Object-Oriented Analysis and Design
Chapter 3 Object-Oriented Analysis of Library Management System(LMS)
Chapter 7: The Object-Oriented Approach to Requirements
Objectives Design Class Diagrams Issues in system design Generalization Review UML papers.
Chapter 15, Section 1 Purchasing Items Needed by a Business
Requirements Functional requirements  Use-cases
SOFTWARE DESIGN AND ARCHITECTURE LECTURE 21. Review ANALYSIS PHASE (OBJECT ORIENTED DESIGN) Functional Modeling – Use case Diagram Description.
© 2006 Prentice Hall Business Publishing Accounting Information Systems, 10/e Romney/Steinbart1 of 96 C HAPTER 17 Special Topics in REA Modeling for the.
Requirement Engineering. Review of Last Lecture Problems with requirement Requirement Engineering –Inception (Set of Questions) –Elicitation (Collaborative.
Chapter 4 – Requirements Engineering Lecture 3 1Chapter 4 Requirements engineering.
Use Cases 7/09. lnot part of the system lrepresents roles a user can play lrepresents a human, a machine or another system lactively exchanges information.
Copyright 2002 Prentice-Hall, Inc. Chapter 2 Object-Oriented Analysis and Design Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey.
Review ♦ System sequence diagram ♦ Domain model
Computer Science 340 Software Design & Testing UML Sequence Diagrams.
Chapter 5 Models and UML Notation for The Object-Oriented Approach.
CS551 - Lecture 8 1 CS551 Modelling with Objects (Chap. 3 of UML) Yugi Lee STB #555 (816)
© 2005 Prentice Hall9-1 Stumpf and Teague Object-Oriented Systems Analysis and Design with UML.
1 System Analysis and Design Using UML INSTRUCTOR: Jesmin Akhter Lecturer, IIT, JU.
Discovering object interaction. Use case realisation The USE CASE diagram presents an outside view of the system. The functionality of the use case is.
Chapter 1 Applying UML and Patterns. The Need for Software Blueprints Knowing an object-oriented language and having access to a library is necessary.
Business Analysis with For PG MDI, Gurgaon Kamna Malik, Ph.D.
Logical view –show classes and objects Process view –models the executables Implementation view –Files, configuration and versions Deployment view –Physical.
UNIFIED MODELING LANGUAGE(UML) BY Touseef Tahir Lecturer CS COMSATS Institute of Information Technology, Lahore.
Scenario A scenario is a sequence of steps describing an interaction between a user and a system. Use case is a set of scenarios tied together by a common.
Interaction Diagram An interaction diagram is a graphical representation of interactions between objects. Sequence diagram: shows the sequence in which.
22 August, 2007Information System Design IT60105, Autumn 2007 Information System Design IT60105 Lecture 8 Use Case Diagrams.
Domain Model A representation of real-world conceptual classes in a problem domain. The core of object-oriented analysis They are NOT software objects.
Object-Oriented Application Development Using VB.NET 1 Chapter 5 Object-Oriented Analysis and Design.
Chapter 6: Structuring Requirements: Use Case Description and Diagrams Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph.
McGraw-Hill/Irwin© 2008 The McGraw-Hill Companies, All Rights Reserved Chapter 17 Object-Oriented Design and Modeling Using the UML.
OO DomainModeling With UML Class Diagrams and CRC Cards Chapter 6 Princess Nourah bint Abdulrahman University College of Computer and Information Sciences.
CS551 - Lecture 6 1 CS551 Modelling with Objects (Chap. 3 of UML) Yugi Lee STB #555 (816)
Object-Orientated Analysis, Design and Programming
Systems Analysis and Design in a Changing World, Fourth Edition
Chapter 5 – System Modeling
Chapter 11: Collaboration Diagram - PART1
OO Domain Modeling With UML Class Diagrams and CRC Cards
Object-Orientated Analysis, Design and Programming
Introduction to UML Introduction to UML Shiyuan Jin September,23,2002
SE-565 Software System Requirements IV. Use Cases
The Fulfillment Process
Chapter 9: Sequence Diagrams Chapter 5 in Software Engineering Book
Use Cases Based on the paper
Software Engineering System Modeling Chapter 5 (Part 1) Dr.Doaa Sami
Interaction Modeling Extracted from textbook:
CS551 Behavior Models: Object Types and Operations (Chap. 3 of UML)
Applying Use Cases (Chapters 25,26)
Applying Use Cases (Chapters 25,26)
Chapter 22 Object-Oriented Systems Analysis and Design and UML
CS551 Behavior Models: Object Types and Operations (Chap. 3 of UML)
CS 501: Software Engineering
Presentation transcript:

CS551 - Lecture 7 1 CS551 Interaction Models (Chapter 4 of UML) Yugi Lee STB #555 (816)

2 CS551 - Lecture 7 Important Questions in OO Design What should the system do? –type specification, putting it together. What objects should be chosen? –type specification, modified by design patterns to improve decoupling. Which object should do what, and how should the objects interact? –separate different concerns into different objects while balancing the needs of decoupling with performance.

3 CS551 - Lecture 7 Collaboration/Type A type represents a specification of the behavior seen at an interface to an object. A collaboration is a design for the way objects interact with one another to achieve a mutual goal. –a group of participating objects –what goes on inside a software component. –how actors interact with the component. –how real world objects interact with one another.

4 CS551 - Lecture 7 Joint Actions Localized Actions: operations –a one-sided specification of an action, focused entirely on a single object and how it responds to a request. Joint Actions: use-cases –abstract multiple interactions and specific protocols –the net effect on all participants and the summary of information exchanged –The interacting participants might be objects inside a program, people, or computers.

5 CS551 - Lecture 7 Action Type and Refinement

6 CS551 - Lecture 7

7 action Wholesaler :: sell (retailer : Retailer, item : Item, out price : $) pre catalog.stock->includes(item) -- this item was part of our stock post price = item.product.price -- price returned to caller and cash = + price and stock = – item

8 CS551 - Lecture 7 Use Cases are Joint Actions A joint action with multiple participant objects that represent a meaningful business task. use case sale participants: retailer, wholesaler parameters: set of items pre: the items must be in stock, retailer must be registered, retailer must have cash to pay post: retailer has received items and paid cash wholesaler has received cash and given items

9 CS551 - Lecture 7 Refinement of Use Cases use case sale..... priority primary concurrent many concurrent sales with different wholesaler reps no sale and return by the same retailer at the same time refinement criteria -- what to consider when refining this use case into a sequence frequency per day performance less than 3 minutes per sale use case telephone sale by distributor refines use case sale 1. retailer calls wholesaler and is connected to rep 2. rep gets distributor membership information from retailer 3. rep collects order information from retailer, totaling the cost 4. rep confirms items, total, and shipping date with wholesaler 5. both parties hang up 6. shipment arrives at retailer 7. wholesaler invoices retailer 8. retailer pays invoice abstract result sale was effectively conducted with amount of the order total and items as ordered

10 CS551 - Lecture 7 Concurrent Actions operation action (retailer, wholesaler) :: supply -- a condition maintained while an action occurrence is in progress. guarantee retailer.stock->size >10 -- true throughout the action occurrence for all of this description to be applicable. rely wholesaler.in_business

11 CS551 - Lecture 7 Sequence Diagrams with Actions Action occurrence –an interaction between two particular points in time involving specific participant objects bringing about a change of state in some or all of them. Sequence diagram –a graphical representation of action occurrences –a horizontal bar (with arrows or ellipses) –Starting from the initial state, each action occurrence in a scenario causes a state change.

12 CS551 - Lecture 7

13 CS551 - Lecture 7 Scenario A scenario is a particular trace of action occurrences scenario order fulfillment out of stock initial state: retailer has no more items of product p1; wholesaler has no inventory of p1 either steps 1 retailer places an order for quantity q of p1 2 wholesaler orders p1 from manufacturer m 3 wholesaler receives shipment of p1 from m 4 wholesaler ships q1 of p1 to retailer with invoice 5 retailer pays wholesaler’s invoice

14 CS551 - Lecture 7 Collaboration Specification A collaboration abstracts multiple participants –consider all the participants in an operation, because its outcome may affect and depend on all of them (defer the partitioning of responsibility when needed) –the list of actions between the collaborators –an optional list of actions considered “outside” the collaboration (generalize action occurrences to permit multiparty actions) –action specs (the pre and/or post spec of an action may reflect the change of state of all its participants) –static and effect invariants that may apply to either set of actions –an optional sequence constraint on the set of actions.