Fall 2009ACS-3913 Ron McFadyen1 Design Class Diagrams n Class diagram with – classes – associations – attributes – methods – navigability – interfaces,

Slides:



Advertisements
Similar presentations
Object-Oriented Analysis and Design CHAPTERS 15: UML INTERACTION DIAGRAMS 1.
Advertisements

Visibility Larman, Chapter 19 (with ideas from George Blank of NJIT) CSE432 Object Oriented Software Engineering.
Object-Oriented Application Development Using VB.NET 1 Chapter 5 Object-Oriented Analysis and Design.
Jan 15, Ron McFadyen1 Ch 9. Use-case model: drawing System Sequence Diagrams Iteration: a simple cash-only success scenario of Process Sale.
Jan 23, Ron McFadyen1 SSD for a samplePOS Use Case Figure 13.1 Input Events invoke a system operation of the same name same idea as in object-oriented.
Fall 2009ACS-3913 Ron McFadyen1 Instances & Object Diagrams Joe: Customer Class instances/ Objects An individual object (instance of a class) is shown.
Sept Ron McFadyen Interaction Diagrams - Chapter 15 Describe/illustrate sequence of message exchanges among objects that are working together.
Oct Ron McFadyen Visibility Visibility: the ability of one object to see or have a reference to another object. e.g. When a register object.
Oct 22, Ron McFadyen1 Design Class Diagrams n Class diagram with – classes – associations – attributes – methods – navigability – interfaces,
March Ron McFadyen1 Ch 17: Use Case Realizations with GRASP Patterns Assigning responsibilities to objects to achieve user goals Section 17.4.
Jan 16, Ron McFadyen1 Ch 9. Use-case model: drawing System Sequence Diagrams Iteration 1: a simple cash-only success scenario of Process Sale.
Jan Ron McFadyen1 Consider a simple cash-only Process Sale scenario 1. Customer arrives at a POS checkout with goods and/or services to purchase.
Fall 2009AXS-3913 Ron McFadyen Visibility Visibility: the ability of one object to see or have a reference to another object. e.g. When a register object.
January Ron McFadyen1 Ch 9. Use-case model: drawing System Sequence Diagrams Elaboration Iteration 1: a simple cash-only success scenario of.
Fall 2007ACS-1805 Ron McFadyen1 Programming Concepts Chapter 4 introduces more advanced OO programming techniques. Construction of a programs usually requires:
Sept Ron McFadyen Interaction Diagrams - Chapter 15 Describe/illustrate sequence of message exchanges among objects that are working together.
Fall 2007ACS-1805 Ron McFadyen1 Chapter 7 Repetition.
What is UML? A modeling language standardized by the OMG (Object Management Group), and widely used in OO analysis and design A modeling language is a.
S A B D C T = 0 S gets message from above and sends messages to A, C and D S.
ACS-3913Fall 2009 Ron McFadyen1 Contracts Used to help understand requirements more completely (and so may not always be necessary) based on assertions;
October 16, 2001Class Diagrams1. October 16, 2001Class Diagrams2 (Design) Class Diagrams (1) zA class diagram is a visual representation of various classes.
Oct Ron McFadyen Visibility Visibility: the ability of one object to see or have a reference to another object. e.g. When a register object.
Feb 4, Ron McFadyen1 Design Class Diagrams n Class diagram with – classes – associations – attributes – methods – navigability – (interfaces,
Fall 2009ACS-3913 R McFadyen1 Singleton Problem: Exactly one instance of a certain object is required (this object is called a singleton). We must ensure.
November Ron McFadyen1 Design Class Diagrams n Class diagram with – classes – associations – attributes – methods – navigability – interfaces,
Fall 2009ACS-3913 R. McFadyen1 Protected Variations Principle: How do you design so that variations in the future do not have an undesirable affect on.
November Ron McFadyen Visibility Visibility: the ability of one object to see or have a reference to another object. e.g. When a register object.
Fall 2009ACS-3913 Ron McFadyen1 From the Merriam-Webster’s online dictionary ( Main Entry: an·thro·po·mor·phism Date: 1753 an interpretation.
Designing with Interaction and Design Class Diagrams Chapters 15 & 16 Applying UML and Patterns Craig Larman With some ideas from students in George Blank’s.
Unified Modeling Language
The Unified Modeling Language (UML) Class Diagrams.
Object-Oriented Analysis and Design
Relationships. In the Interaction diagrams, we began to look at how classes communicate with one another. Now, we'll focus on the relationships between.
Object-Oriented Design. From Analysis to Design Analysis Artifacts –Essential use cases What are the problem domain processes? –Conceptual Model What.
Objectives Design Class Diagrams Issues in system design Generalization Review UML papers.
UML Unified Modeling Language. What is UML? Unified Modeling Language (UML) is a standardized, general-purpose modeling language in the field of software.
Software Construction Lecture 5 Class Diagrams. Agenda 2  Topics:  Examples of class diagrams  Navigation, visibility, named associations, and multiplicity.
Interaction diagrams Sequence and collaboration diagrams.
Design Class Diagrams (DCDs)
Chapter 16 Applying UML and Patterns Craig Larman
Engineering 5895: Software Design 9/11/01Class Diagrams 1.
1 Class Diagrams: The Essentials. 2 Terms and Concepts A class is... The most important building block of any object-oriented system. A description of.
NJIT UML Class Diagrams Chapter 16 Applying UML and Patterns Craig Larman.
Object-Oriented Analysis and Design Feb 11, 2009.
2007ACS-3913 Ron McFadyen1 Class Diagram See Schaum’s UML Outline, especially chapters 4, 5, 6, 7.
Geospatial Systems Design and UML Or Looking at “OMT-G: An Object-Oriented Data Model for Geographic Applications” by Karla A.V. Borges, Clodoveu A. Davis.
Fall 2009ACS-3913 Ron McFadyen1 Use Case Realizations with GRASP Patterns “The assignment of responsibilities and design of collaborations are very important.
UML Class Diagram notation Indicating relationships between classes SE-2030 Dr. Mark L. Hornick 1.
Chapter 16: UML Class Diagrams
Chapter 16 UML Class Diagrams 1CS6359 Fall 2012 John Cole.
INFO 620Lecture #71 Information Systems Analysis and Design Design Class Diagrams and others INFO 620 Glenn Booker.
Chapter 16 UML Class Diagrams.
OO Methodology Elaboration Phase Iteration 1- Part 3.
TK2023 Object-Oriented Software Engineering CHAPTER 11 CLASS DIAGRAMS.
Use-Case Model: Adding Detail with Operation Contracts.
UML Fundamental Elements. Structural Elements Represent abstractions in our system. Elements that encapsulate the system's set of behaviors. Structural.
BTS430 Systems Analysis and Design using UML Design Class Diagrams (ref=chapter 16 of Applying UML and Patterns)
Design Model: Determining Visibility CH-18. Objectives Identify four kinds of visibility. Design to establish visibility. Illustrate kinds of visibility.
1 Chapter 13: Class Diagram Chapter 19 in Applying UML and Patterns Book.
Unified Modeling Language
Chapter 16 UML Class Diagrams.
GRASP: Visibility and Design
Chapter 11: Collaboration Diagram - PART1
Requirements To Design In This Iteration
Chapter 10: Visibility Chapter 18 in Applying UML and Patterns Book.
Chapter 11: Class Diagram
Chapter 16 UML Class Diagrams
Object Oriented System Design Class Diagrams
Chapter 11: Class Diagram
Design Model: Creating Design Class Diagrams
Presentation transcript:

Fall 2009ACS-3913 Ron McFadyen1 Design Class Diagrams n Class diagram with – classes – associations – attributes – methods – navigability – interfaces, attribute types, dependencies n we are designing software classes now - no longer conceptual

Fall 2009ACS-3913 Ron McFadyen2 analysis design

Fall 2009ACS-3913 Ron McFadyen3 An interaction diagram showing a register sending a makeLineItem message to a sale, implies that the Sale software class must have a makeLineItem method Usually don’t show create, accessor, or mutator methods uninteresting Messages imply Methods

Fall 2009ACS-3913 Ron McFadyen4 The navigability arrow (also called a navigability adornment) indicates that a Register object is connected uni-directionally to Sale objects … the Register class has an attribute, currentSale, pointing to a Sale object Do we have any interaction diagrams showing a message from a Sale object to a Register object? Navigability

Fall 2009ACS-3913 Ron McFadyen5 The directed arrow is unidirectional, and shows navigability. The above shows that a register object can navigate to a sale object: I.e. a register needs to know the sale object, but not the other way around. Register can send a message to a sale, sale can respond, but doesn’t initiate. In an OO language, Register will have an attribute that references a Sale instance

Fall 2009ACS-3913 Ron McFadyen6 Navigability: An association line with a navigability adornment indicates that an object of one class (A) is connected uni-directionally to an object of another class (B) An object of class A can navigate to an object of class B. I.e. an object of class A needs to know the B object, but not the other way around. A can send a message to an instance of B, the instance can respond, but doesn’t initiate. An association line that has no specific navigation indicated, is considered to be bi-directional In an OO language, an A will have an attribute that references a B instance A b: B B

Fall 2009ACS-3913 Ron McFadyen7 the result from analyzing all interaction diagrams for navigability.

Fall 2009ACS-3913 Ron McFadyen8 we see additional dependencies shown … the dashed arrow line … register and sale have visibility to ProductSpecifications … register knows of a product due to the lookup in the catalogue and a sale receives a product specification in the makeLineItem message