Design Class Diagrams (DCDs)

Slides:



Advertisements
Similar presentations
Chapter 15 UML Interaction Diagrams 1CS6359 Fall 2012 John Cole.
Advertisements

Object Design Examples with GRASP
Object-Oriented Analysis and Design CHAPTERS 15: UML INTERACTION DIAGRAMS 1.
Interaction Diagram Notation From Chapter 15 of Craig Larman, Applying UML and Patterns John Dalesandro.
Object-Oriented Analysis and Design CHAPTERS 12-14: INTRODUCTION TO DESIGN 1.
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,
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.
Fall 2009ACS-3913 Ron McFadyen1 Design Class Diagrams n Class diagram with – classes – associations – attributes – methods – navigability – interfaces,
Object Interaction Models - Review The use case and its scenarios serve as a vehicle for organizing the object interactions that take place. Each scenario.
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,
November Ron McFadyen1 Design Class Diagrams n Class diagram with – classes – associations – attributes – methods – navigability – interfaces,
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.
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.
The Unified Modeling Language (UML) Class Diagrams.
Object-Oriented Analysis and Design
CSSE 374: Design Class Diagrams Steve Chenoweth Office: Moench Room F220 Phone: (812) These slides and others.
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.
Practical Object-Oriented Design with UML 2e Slide 1/1 ©The McGraw-Hill Companies, 2004 PRACTICAL OBJECT-ORIENTED DESIGN WITH UML 2e Chapter 2: Modelling.
Mapping Designs to Code Larman, Chapter 20 CSE432 Object Oriented Software Engineering.
Software Engineering 1 Object-oriented Analysis and Design Applying UML and Patterns An Introduction to Object-oriented Analysis and Design and Iterative.
1 On to Object Design Chapter 14 Applying UML and Patterns.
Object-Oriented Analysis and Design An Introduction.
Object Design Examples with GRASP (Ch. 18)
Object-Oriented Analysis and Design Feb 25, 2009.
Chapter 4: UML Interaction Diagrams. Objective Provide a reference for frequently used UML interaction diagram notation- sequence and communication diagrams.
Real Time Systems Modeling Structure in UML (Part I)
Chapter 16 Applying UML and Patterns Craig Larman
© 2005 Prentice Hall9-1 Stumpf and Teague Object-Oriented Systems Analysis and Design with UML.
NJIT UML Class Diagrams Chapter 16 Applying UML and Patterns Craig Larman.
SYS466: Analysis and Design Using OO Models Domain Class Diagram.
What to remember from Chap 13 (Logical architecture)
Object-Oriented Analysis and Design Feb 11, 2009.
1 On To Object Design Chapter 14 Applying UML and Patterns -Craig Larman.
Design Model Lecture p6 T120B pavasario sem.
Repetition af Domæne model. Artifact influence emphasizing the Domain Model.
Class diagrams Terézia Mézešová.
Chapter 16: UML Class Diagrams
Chapter 16 UML Class Diagrams 1CS6359 Fall 2012 John Cole.
TK2023 Object-Oriented Software Engineering CHAPTER 9 INTRODUCTION TO OBJECT DESIGN.
INFO 620Lecture #71 Information Systems Analysis and Design Design Class Diagrams and others INFO 620 Glenn Booker.
Chapter 16 UML Class Diagrams.
Larman chapter 101 Domain Model: Visualizing concepts Larman chapter 10.
OO Methodology Elaboration Phase Iteration 1- Part 3.
OO DomainModeling With UML Class Diagrams and CRC Cards Chapter 6 Princess Nourah bint Abdulrahman University College of Computer and Information Sciences.
TK2023 Object-Oriented Software Engineering CHAPTER 11 CLASS DIAGRAMS.
Object Oriented Programming and Data Abstraction Earl Huff Rowan University.
Use-Case Model: Adding Detail with Operation Contracts.
BTS430 Systems Analysis and Design using UML Design Class Diagrams (ref=chapter 16 of Applying UML and Patterns)
Class Diagrams Revisited. Parameterized Classes Parameterized Classes - are used to represent relationships between templates.
1 Kyung Hee University Interaction Diagrams Spring 2001.
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.
Logical Architecture and UML Package Diagrams. The logical architecture is the large-scale organization of the software classes into packages, subsystems,
UML Class Diagrams (more notation)
Domain Model: Visualizing concepts
UML Interaction Diagrams
Chapter 16 UML Class Diagrams.
GRASP: Visibility and Design
Requirements To Design In This Iteration
System Sequence Diagrams
Chapter 10: Visibility Chapter 18 in Applying UML and Patterns Book.
Chapter 11: Class Diagram
Chapter 16 Class Diagrams.
Chapter 16 UML Class Diagrams
Object Oriented System Design Class Diagrams
Chapter 11: Class Diagram
Design Model: Creating Design Class Diagrams
Presentation transcript:

Design Class Diagrams (DCDs) During analysis, emphasize domain concepts During design, shift to software artifacts UML has no explicit notation for DCDs Uniform UML notation supports smoother development from analysis to design

Domain model vs. Design Class Diagram – differences?

Developing a Domain Class Diagram: POS DCD 1) Identify software classes: Register Sale ProductCatalog ProductSpecification Store SalesLineItem Payment 2) Begin drawing a class diagram 3) Include the attributes from the domain model

How to show attribute collections? Sale software object holds a list of many SalesLineItem objects public class Sale { private DateTime time; private List<SalesLineItems> lineItems; }

4) Add method names from interaction digram NB : model class & interaction diagrams in parallel

Parameters, return types optional? —readability vs. code generation

Method body pseudo-code also optional Method body adds a dynamic behaviour to the static class diagram

5) Add associations and navigability —Navigability implies visibility of attributes

6) Adding dependency relationships Indicates that one element A has knowledge of another element B I.e., a change in specification of B may affect A that uses it, but not necessarily the reverse Illustrated with dashed directed line Typically non-attribute visibility between classes

Common kind of dependencies Type A having an attribute of type B A Sending a message to B , that is A call method of B A receiving a parameter of B B is a superclass or interface

What does dependency add to this DCD?

Composition (whole-part) relations

Association classes —model association with attributes & operations

Designing with interaction and class diagrams Beginners often emphasize Class diagrams Interaction diagrams deserve more attention Some tools can help: Convert between sequence and communication diagrams automatically Reflect changes in class and interaction diagrams in parallel