Lecture OO05 Object Scenarios Object Interaction Diagrams

Slides:



Advertisements
Similar presentations
Introduction to Object Orientation System Analysis and Design
Advertisements

ACM/JETT Workshop - August 4-5, :Design of Classes using CRC cards.
1 Object-oriented design Part 2: OO tools & UML. 2 CRC cards Design tool & method for discovering classes, responsibilities, & relationships Record on.
Visual Basic: An Object Oriented Approach 2 – Designing Software Systems.
Use Case Model. C-S 5462 Use case model describes what the user expects the system to do –functional requirements may describe only the functionalities.
ATM Case Study A Discussion.
CPSC 333: Foundations of Software EngineeringJ. Denzinger Small Test: Bank account manager System has to run on an automated teller machine. User must.
1 Chapter 4 Dynamic Modeling and Analysis (Part I) Object-Oriented Technology From Diagram to Code with Visual Paradigm for UML Curtis H.K. Tsang, Clarence.
Visual Basic: An Object Oriented Approach 6: Object Modelling.
Sequence Diagrams. Introduction A Sequence diagram depicts the sequence of actions that occur in a system. The invocation of methods in each object, and.
Paul Deitel, CEO Deitel & Associates, Inc.. Contact Information  Paul Deitel, CEO  Deitel & Associates, Inc.  Twitter:  Facebook:
1 Chapter 4 Dynamic Modeling and Analysis (Part I) Object-Oriented Technology From Diagram to Code with Visual Paradigm for UML Curtis H.K. Tsang, Clarence.
9. Inheritance 9.1 Subclasses 9.2 Polymorphism 9.3 Abstract Classes 9.4 Modifiers and Access 9.6 Object-Oriented Design with Use Cases and Scenarios.
Lecture 9 Object-Oriented Analysis
Chapter 12 ATM Case Study, Part 1: Object-Oriented Design with the UML
ATM User Interface Design. Requirements A bank customer is able to access his or her account using an automatic teller machine. To be able to use an ATM.
Tutorial 2. What is a UML Use Case Diagram? Use case diagrams model the functionality of a system using actors and use cases. Use cases are services or.
Fall 2002 SJSU -- CmpE Enterprise & Application Frameworks Dr. M.E. Fayad, Professor Computer Engineering Department – RM# College of Engineering San José.
Intro to UML OOP Tirgul UML UML is a graphical representation scheme for modeling OO systems UML today is a unification of various popular notational.
January Ron McFadyen1 Ch 9. Use-case model: drawing System Sequence Diagrams Elaboration Iteration 1: a simple cash-only success scenario of.
Lecture 4 Class Responsibility Collaboration Cards
Object Oriented Analysis Process
CRC Card By: Yusmadi Yah Jusoh. What is CRC card?  A Class Responsibility Collaborator (CRC) model (Beck & Cunningham 1989; Wilkinson 1995; Ambler 1995)
© M.E. Fayad SJSU -- CmpE Software System Engineering Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I College of Engineering.
{ How to Use An ATM A simple tutorial to teach how to use ATM Machines.
1 Lab Beginning Analysis and Design 4 Completion of first version of use case diagram initiates the processes of analysis and design. 4 UML provides.
Use Case Modeling. Use case diagram For each use case we develop  Object class diagram (with attributes only)  System sequence diagram (analysis) 
Elaboration Lecture Oo19 Gymnastics System Example Cont’d.
Class Diagram Notation Lecture Oo12 Classes Packages.
Merijn Benjamin Christina
111 Subsystems CS 4311 Wirfs Brock et al., Designing Object-Oriented Software, Prentice Hall, (Chapter 7)
Case Study :. Introduction The ATM network will consist of a large number of ATM machines distributed over a wide geographical area. The network must.
CS212: Object Oriented Analysis and Design Lecture 4: Objects and Classes - I.
SOFTWARE DESIGN AND ARCHITECTURE LECTURE 25. Review Design Level Class Diagram Identifying classes/Operations/Attributes Associations – Simple associations.
Requirements Determining the requirements of software involves determining the needs of the users of the software. Determining the requirements of software.
1 ITEC 3010 “Systems Analysis and Design, I” LECTURE 10: Use Case Realizations [Prof. Peter Khaiter]
1 Object-Oriented Analysis Use Case Driven. 2 The outline method for OOA 1.Identify object classes within the problem domain 2.Define the behaviour of.
Faculty of Computer & Information Software Engineering Third year
UML basics UML distilled, a brief guide to the standard Modeling language, by Martin Fowler, 2000.
Chapter 3, Section 3 ELECTRONIC BANKING.
SFWR ENG 3KO4 Software Development Fall 2009 Instructor: Dr. Kamran Sartipi Software Requirement Specification (SRS) for the Automated Banking Machine.
Systems Analysis and Design in a Changing World, 3rd Edition
1 Introduction to Classes and Objects Chapter 3 Introduction to Classes and Objects Chapter 3.
1 System Analysis and Design Using UML INSTRUCTOR: Jesmin Akhter Lecturer, IIT, JU.
January Ron McFadyen1 January 2004 Assignment 1 Due: Friday Jan 23, Implement the ProductSpecification and Payment classes in any OO.
111 Subsystems CS 4311 Wirfs Brock et al., Designing Object-Oriented Software, Prentice Hall, (Chapter 7)
1 LAB What is Collaboration diagram? 4 Collaboration diagrams illustrate the interaction between the objects, using static spatial structure. 4.
1 Requirements Engineering From System Goals to UML Models to Software Specifications Axel Van Lamsweerde.
UML (Unified Modeling Language)
Use Case Diagrams Lecture Oo14 Use Cases. References n Booch, et al, The Unified modeling Language User’s Guide, AWL, 1999, Chapt 16 & 17 n Fowler & Scott,
Class Relationships Lecture Oo07 Generalization Relationships.
Identification of Classes. Object Oriented Analysis (OOA) OOA is process by which we identify classes that play role in achieving system goals & requirements.
MANAGING COMPLEXITY Lecture OO01 Introduction to Object-oriented Analysis and Design Abstract Data Types.
Requirements Document for the Banking System
1 Object-Oriented Static Modeling of the Banking System - III Lecture # 33.
Software Engineering USE CASE DIAGRAM.
Inf 43: Introduction to Software Engineering May 7, 2016.
CompSci 280 S Introduction to Software Development
ATM OO Design and Implementation Case Study
Unified Modeling Language (UML)
Dynamic Modeling of Banking System Case Study - I
Use Case Model.
Advanced Object-Oriented Analysis & Design
Dynamic Modeling of Banking System Case Study - II
Mrs. Swope Family and Consumer Science
OO Domain Modeling With UML Class Diagrams and CRC Cards
Concepts, Specifications, and Diagrams
CRC: Classes, Responsibilities, and Collaborations
CRC Modeling (class-relationship-collaborator)
Real-Time Structured Analysis and Design Technique (RSTAD)
Presentation transcript:

Lecture OO05 Object Scenarios Object Interaction Diagrams

References Ambler, S., The Object Primer, Cambridge Univ. Press, 2001, Section 3.5, 5.9 Fowler & Scott, UML Distilled Applying the Standard Object Modeling Language, AWL, 1997, Chapt 6

Teaching Points Introduction to Collaboration Diagrams ATM example using CRC cards

Review What about assignment? What about parameter passing? What about equivalence? What about garbage collection? What is the OO paradigm?

Collaboration Diagrams (Objects) A type of Interaction Diagram Objects name type

Collaboration Diagrams Multiple instances here we have many objects of the class ATM

Collaboration Diagrams (Links) Links indicate collaboration between objects this is visibility

Collaboration Diagrams (Messages) There must be visibility in order for a message to be sent Numbering

Collaboration Diagrams (Messages) Showing message parameters

Collaboration Diagrams (Messages) self delegation

CRC Card Example #1 (ATM System) Objective Develop a ATM banking system just the transaction handling portion (user interface is another project) Analysis Study requirement documents User interviews Existing reports Existing files and databases

An ATM System A bank account transaction processing sub-system is required for an automatic teller machine system. The sub-system is responsible for allowing a client to use his/her bank card to view the current account balance, make a deposit, or make a cash withdrawal. The user interface for the system will be a separate sub-system.

Candidate Classes FinancialTransaction Account BalanceInquiry PIN Printer AuthorizeSystemInteraction Withdrawal ATMSystem Deposit BankCardReader Balance KeypadScreen UserInterface

Core Classes Core Undecided Irrelevant FinancialTransaction Account BalanceInquiry Withdrawal Deposit BankCardReader AuthorizeSystemInteraction UserInterface Undecided PIN (attribute) Balance (attribute) ATMSystem (ghost - system name) Irrelevant KeypadScreen Printer

Teaching Points Introduction to Collaboration Diagrams ATM example using CRC cards