October 16, 2001Class Diagrams1. October 16, 2001Class Diagrams2 (Design) Class Diagrams (1) zA class diagram is a visual representation of various classes.

Slides:



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

Unified Modeling Language
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.
Oct 22, Ron McFadyen1 Design Class Diagrams n Class diagram with – classes – associations – attributes – methods – navigability – interfaces,
Object-Oriented Analysis and Design
Fall 2009ACS-3913 Ron McFadyen1 Design Class Diagrams n Class diagram with – classes – associations – attributes – methods – navigability – interfaces,
1 CS 426 Senior Projects Chapter 9: Relationships Chapter 10: Inheritance and Polymorphism [Arlow and Neustadt, 2005] February 12, 2009.
1 CS 426 Senior Projects Chapter 9: Relationships Chapter 10: Inheritance and Polymorphism [Arlow and Neustadt, 2002] February 27, 2007.
© 2005 Prentice Hall4-1 Stumpf and Teague Object-Oriented Systems Analysis and Design with UML.
7M701 1 Class Diagram advanced concepts. 7M701 2 Characteristics of Object Oriented Design (OOD) objectData and operations (functions) are combined 
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,
Copyright 2004 Prentice-Hall, Inc. Essentials of Systems Analysis and Design Second Edition Joseph S. Valacich Joey F. George Jeffrey A. Hoffer Appendix.
November Ron McFadyen1 Design Class Diagrams n Class diagram with – classes – associations – attributes – methods – navigability – interfaces,
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.
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.
UML Unified Modeling Language. What is UML? Unified Modeling Language (UML) is a standardized, general-purpose modeling language in the field of software.
BTS430 Systems Analysis and Design using UML Domain Model Part 1—Finding Conceptual Classes.
Copyright 2001 Prentice-Hall, Inc. Essentials of Systems Analysis and Design Joseph S. Valacich Joey F. George Jeffrey A. Hoffer Appendix A Object-Oriented.
Copyright 2002 Prentice-Hall, Inc. Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich Chapter 20 Object-Oriented.
DOMAIN MODE: ASSOCIATIONS, MULTIPLICITY AND ATTRIBUTE-TEXT NOTATION SYS466.
Copyright 2002 Prentice-Hall, Inc. Chapter 2 Object-Oriented Analysis and Design Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey.
Systems Analysis and Design in a Changing World, 3rd Edition
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 14 Slide 1 Object-oriented Design.
Design Class Diagrams (DCDs)
Chapter 16 Applying UML and Patterns Craig Larman
1 Advanced Software Architecture Muhammad Bilal Bashir PhD Scholar (Computer Science) Mohammad Ali Jinnah University.
UML Class Diagram Trisha Cummings. What we will be covering What is a Class Diagram? Essential Elements of a UML Class Diagram UML Packages Logical Distribution.
NJIT UML Class Diagrams Chapter 16 Applying UML and Patterns Craig Larman.
Drawing System Sequence Diagrams
2007ACS-3913 Ron McFadyen1 Class Diagram See Schaum’s UML Outline, especially chapters 4, 5, 6, 7.
Introduction to UML CS A470. What is UML? Unified Modeling Language –OMG Standard, Object Management Group –Based on work from Booch, Rumbaugh, Jacobson.
Chapter 16: UML Class Diagrams
Chapter 16 UML Class Diagrams 1CS6359 Fall 2012 John Cole.
Domain Model A representation of real-world conceptual classes in a problem domain. The core of object-oriented analysis They are NOT software objects.
Copyright © 2011 Pearson Education, Inc. Publishing as Prentice Hall Object-Oriented Systems Analysis and Design Using UML Systems Analysis and Design,
® IBM Software Group © 2007 IBM Corporation Module 3: Creating UML Diagrams Essentials of Modeling with IBM Rational Software Architect, V7.5.
Copyright © 2009 Pearson Education, Inc. Publishing as Prentice Hall Appendix A Object-Oriented Analysis and Design A.1.
TK2023 Object-Oriented Software Engineering CHAPTER 11 CLASS DIAGRAMS.
Object Oriented Programming and Data Abstraction Earl Huff Rowan University.
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)
1 Kyung Hee University Interaction Diagrams Spring 2001.
Introduction to Unified Modeling Language (UML) By Rick Mercer with help from The Unified Modeling Language User Guide, Grady Booch, James Rumbaugh, Ivar.
11 Systems Analysis and Design in a Changing World, Fifth Edition.
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.
© 2010 Pearson Addison-Wesley. All rights reserved. Addison Wesley is an imprint of Appendix A: UML Java Software Structures: Designing and Using Data.
Elaboration popo.
UML Class Diagrams (more notation)
GRASP: Visibility and Design
Chapter 11: Collaboration Diagram - PART1
Introduction to Unified Modeling Language (UML)
The Object Oriented Approach to Design
CS 426 Senior Projects Chapter 9: Relationships
System Sequence Diagrams
IMAT5205 Systems Analysis and Design
Introduction to Unified Modeling Language (UML)
Understand and Use Object Oriented Methods
Chapter 11: Class Diagram
Sylnovie Merchant, Ph.D. MIS 161 Spring 2005
Chapter 16 UML Class Diagrams
Object Oriented System Design Class Diagrams
Design Model: Creating Design Class Diagrams
Presentation transcript:

October 16, 2001Class Diagrams1

October 16, 2001Class Diagrams2 (Design) Class Diagrams (1) zA class diagram is a visual representation of various classes and their relationships as identified during design. zInformation in class diagram includes: yclasses, associations, and attributes yinterfaces with operations and constants ymethods yattribute type information ynavigability ydependencies

October 16, 2001Class Diagrams3 Class diagrams (2) zClass diagrams are generally created after or in parallel with the interaction diagrams. zInteraction diagrams are used to identify classes and the methods they provide. zConceptual model is also useful in deriving classes by addition of detail. zClasses are considered software entities and not real-world concepts.

October 16, 2001Class Diagrams4 Making class diagrams (1) zIdentify all classes by examining interaction diagrams. zDraw them in a class diagram. zDuplicate the attributes from the associated concepts shown in the conceptual model. zAdd method names by examining interaction diagrams. zAdd type information to the attributes and methods.

October 16, 2001Class Diagrams5 Making class diagrams (2) zAdd the associations needed for visibility. zAdd navigability arrows to indicate the direction of attribute visibility. zAdd dependency relationships to indicate non- attribute visibility.

October 16, 2001Class Diagrams6 Conceptual model versus class diagrams (1) zA Sale in a conceptual model represents a system concept. A Sale in a class diagram represents a software entity.

October 16, 2001Class Diagrams7 Conceptual model versus class diagrams (2) POST captures 11 Sale Date isComplete: boolean time captures 11 POST Date isComplete:boolean time Sale Date isComplete:boolean time makeLineItem() Conceptual model Software components

October 16, 2001Class Diagrams8 Class diagrams: notables (1) zcreate is a special language independent UML message to indicate instantiation and initialization. As this is a common operation, it is often omitted from class diagrams. zAccess methods for class attributes are also omitted from class diagrams to reduce clutter. zMessages to a multiobject are not shown as methods in the class whose objects are contained in a multiobject.

October 16, 2001Class Diagrams9 Class diagrams: notables (2) zIt is recommended that UML syntax be used for method naming. This will keep naming language independent. UML format: methodName(parameterList) zShould all type information be shown in a class diagram? yIf automatic code generation is desired then YES. yIf the sole purpose is to use the diagram as a communication aid, then all type information is not of any significant value. (See Fig 21.7 of T1.)

October 16, 2001Class Diagrams10 Class diagrams: navigability (1) captures 11 POST Date isComplete:boolean time Sale Date isComplete:boolean time makeLineItem() POST will likely have an attribute pointing to Sale. Navigability arrow: POST objects are connected uni-directionally to Sale objects. No navigability arrow..Sale does not have connection to POST.

October 16, 2001Class Diagrams11 Class diagrams: navigability (2) zIt is recommended that associations be adorned with navigability arrows. zNavigability is determined by visibility. yA sends a message to B. yA creates an instance of B. yA needs to maintain a connection to B. zExample: Examine Figures 21.9 and on pages Why are navigability arrows not provided in the conceptual model ?

October 16, 2001Class Diagrams12 Class diagrams: dependency zIn UML a dependency relationship indicates that one element has knowledge of another element. zIt is illustrated with a dashed arrow. zNon-attribute visibility…arising from parameters, global, or locally declared items is illustrated by dashed arrows. zSee Figure 21.11, page 268, for dependency relationships.

October 16, 2001Class Diagrams13 Class diagrams: other notations zInitial values of attributes zReturn value type zAbstract method zParameters zVisibility

October 16, 2001Class Diagrams14 Summary zWhat did we learn? yWhat is a class diagram ? yHow to derive a class diagram from interaction diagrams ? yNotational details for class diagrams.