Engineering 5895: Software Design 9/11/01Class Diagrams 1.

Slides:



Advertisements
Similar presentations
Automated Test Design ™ © 2011 Conformiq, Inc. CONFORMIQ DESIGNER On ES v1.2.1 Stephan Schulz MBT Working Meeting/MTS#56, Göttingen.
Advertisements

Analysis Modeling.
Oct 22, Ron McFadyen1 Design Class Diagrams n Class diagram with – classes – associations – attributes – methods – navigability – interfaces,
Lecturer: Sebastian Coope Ashton Building, Room G.18 COMP 201 web-page: Lecture.
L3-1-S1 OO Concepts © M.E. Fayad SJSU -- CMPE Software System Engineering Dr. M.E. Fayad, Professor Computer Engineering Department, Room.
Copyright ©2004 Cezary Z Janikow 1 Domain Model n Visualization of entities and relationships n In UP presented as Class Diagrams – Classes, Relationships,
©Silberschatz, Korth and Sudarshan8.1Database System Concepts Chapter 8: Object-Oriented Databases Need for Complex Data Types The Object-Oriented Data.
1 Lecture 2: Elaboration Tasks and Domain Modeling.
Marcelo Santos – OOAD-CDT309, Spring 2008, IDE-MdH 1 Object-Oriented Analysis and Design - CDT309 Period 4, Spring 2008 Object-oriented concepts.
Kari R. Schougaard, PhD Stud. Værktøjer og Teknikker, 2006 UNIVERSITY OF AARHUS Department of Computer Science Unified Modeling Language Visual language.
Copyright W. Howden1 Lecture 2: Elaboration Tasks and Domain Modeling.
MORE ON CLASS MODELS Lecture Outline Aggregation and composition Roles Navigability Qualified association Derived association Constraints Association.
November Ron McFadyen1 Design Class Diagrams n Class diagram with – classes – associations – attributes – methods – navigability – interfaces,
Common Mechanisms in UML
Object-Oriented Analysis and Design
Introduction To Databases IDIA 618 Fall 2014 Bridget M. Blodgett.
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.
Chapter 9 Domain Models. Domain Model in UML Class Diagram Notation A “visual dictionary”
ZEIT2301 Design of Information Systems Structural Design: Class Diagrams School of Engineering and Information Technology Dr Kathryn Merrick.
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.
1 Forward and Reverse Engineering. 2 The UML is not just an OO modeling language. It also permits forward engineering (FE) and reverse engineering (RE).
CS3773 Software Engineering Lecture 04 UML Class Diagram.
University of Toronto Department of Computer Science © Steve Easterbrook. This presentation is available free for non-commercial use with attribution.
CSC480 Software Engineering Lecture 11 September 30, 2002.
Today in OOAD  The Domain Model Artifact UML Classes  EU-Bid Domain Model Exercise  EU-Lease Domain Model Assignment Guest Speaker  Kate Cunningham,
Unified Modeling Language © 2002 by Dietrich and Urban1 ADVANCED DATABASE CONCEPTS Unified Modeling Language Susan D. Urban and Suzanne W. Dietrich Department.
Design Class Diagrams (DCDs)
Chapter 16 Applying UML and Patterns Craig Larman
1 Class Diagrams: Advanced Concepts. 2 Overview Class diagrams are the most commonly used diagrams in UML. Class diagrams are the most commonly used diagrams.
DOMAIN MODEL- VISUALIZING CONCEPTS Identify conceptual classes related to the current iteration requirements. Create an initial domain model. Distinguish.
Elizabeth Furtado, Vasco Furtado, Kênia Sousa, Jean Vanderdonckt, Quentin Limbourg KnowiXML: A Knowledge-Based System Generating Multiple Abstract User.
Department of Informatics, UC Irvine SDCL Collaboration Laboratory Software Design and sdcl.ics.uci.edu 1 Informatics 43 Introduction to Software Engineering.
NJIT UML Class Diagrams Chapter 16 Applying UML and Patterns Craig Larman.
12 September, 2007Information System Design IT60105, Autumn 2007 Information System Design IT60105 Lecture 11 Class and Object Diagrams.
Week III  Recap from Last Week Review Classes Review Domain Model for EU-Bid & EU-Lease Aggregation Example (Reservation) Attribute Properties.
What is Object-Oriented?  Organization of software as a collection of discreet objects that incorporate both data structure and behavior.
Class and Sequence diagrams UML notation SE-2030 Dr. Mark L. Hornick 1.
Design Model Lecture p6 T120B pavasario sem.
BTS430 Systems Analysis and Design using UML Domain Model—Part 2: Associations and Attributes.
DOMAIN MODEL: ADDING ATTRIBUTES Identify attributes in a domain model. Distinguish between correct and incorrect attributes.
Object Oriented Analysis and Design Class and Object Diagrams.
CSCI-383 Object-Oriented Programming & Design Lecture 10.
Karolina Muszyńska Based on: S. Wrycza, B. Marcinkowski, K. Wyrzykowski „Język UML 2.0 w modelowaniu SI”
UML Class Diagram. A class diagram shows 1.Classes 2.The relationships between them.
BTS430 Systems Analysis and Design using UML Domain Model—Part 2A: Attributes.
Winter 2011SEG Chapter 11 Chapter 1 (Part 1) Review from previous courses Subject 1: The Software Development Process.
UML Class Diagram notation Indicating relationships between classes SE-2030 Dr. Mark L. Hornick 1.
Domain Model A representation of real-world conceptual classes in a problem domain. The core of object-oriented analysis They are NOT software objects.
Chapter 16 UML Class Diagrams.
BTS430 Systems Analysis and Design using UML Domain Model—Part 2: Associations and Attributes.
CHAPTER 13: OBJECT-ORIENTED DATA MODELING (OVERVIEW) Modern Database Management 11 th Edition Jeffrey A. Hoffer, V. Ramesh, Heikki Topi © 2013 Pearson.
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.
COP 4331 – OOD&P Lecture 7 Object Concepts. What is an Object Programming language definition: An instance of a class Design perspective is different.
DOMAIN MODEL—PART 2: ATTRIBUTES BTS430 Systems Analysis and Design using UML.
Software Modelling Class Diagram. Class Diagrams The main building block in object oriented modeling They are used both for general conceptual modeling.
1 Chapter 13: Class Diagram Chapter 19 in Applying UML and Patterns Book.
Modeling with UML – Class Diagrams
Chapter 9 Domain Models.
Chapter 16 UML Class Diagrams.
Chapter 5: Object Oriented Analysis and Design
UML Unified Modelling Language
Seminar 3 UML Class Diagram.
Chapter 3: Modeling Data in the Organization
Class Diagrams Class diagram is basically a graphical representation of the static view of the system and represents different aspects of the application.
Chapter 16 Class Diagrams.
Object Oriented System Design Class Diagrams
Object Oriented Design & Analysis
Cheng (Sp2001): Object-Oriented Development Overview
Presentation transcript:

Engineering 5895: Software Design 9/11/01Class Diagrams 1

Engineering 5895: Software Design 9/11/01Class Diagrams 2 Perspectives Conceptual classes represent concepts in a domain software (& language) independent Specification classes represent interfaces (or types) Implementation full classes automatic code generation

Engineering 5895: Software Design 9/11/01Class Diagrams 3 Interface vs Implementation Not well distinguished by current OOP languages Classes (particularly in C++) combine the two Design Rule #1 Program to the interface, not the implementation

Engineering 5895: Software Design 9/11/01Class Diagrams 4 A Class Diagram

Engineering 5895: Software Design 9/11/01Class Diagrams 5 A Class Diagram Associations

Engineering 5895: Software Design 9/11/01Class Diagrams 6 Associations Relationships between instances of classes Conceptual perspective  conceptual relation Specification perspective  responsibility Implementation imply specifics (e.g. pointers)

Engineering 5895: Software Design 9/11/01Class Diagrams 7 A Class Diagram Generalization

Engineering 5895: Software Design 9/11/01Class Diagrams 8 A Class Diagram Abstract class represented by italicised name

Engineering 5895: Software Design 9/11/01Class Diagrams 9 Multiplicities Mandatory At each end * 1..* 1,3,9..11 Multiplicities

Engineering 5895: Software Design 9/11/01Class Diagrams 10 Multiplicities

Engineering 5895: Software Design 9/11/01Class Diagrams 11 Role Names

Engineering 5895: Software Design 9/11/01Class Diagrams 12 Role Names Are optional May go at either (or both) end(s) Alternatively, association itself may be named Bleah! Only name roles when it adds clarity

Engineering 5895: Software Design 9/11/01Class Diagrams 13 Role Names

Engineering 5895: Software Design 9/11/01Class Diagrams 14 Multiple associations Second association saying department has one head who is a professor (and prof can only be head of one department)

Engineering 5895: Software Design 9/11/01Class Diagrams 15 Directed associations New association is directed, meaning it can only be navigated from department to prof. E.g. department is supposed to know who its head is but prof doesn't have to know he/she is head.

Engineering 5895: Software Design 9/11/01Class Diagrams 16 Direction No arrowheads means either directionality is unspecified navigability is in both directions I prefer unspecified (except, perhaps in implementation perspective)

Engineering 5895: Software Design 9/11/01Class Diagrams 17 Attributes What is difference between attribute and association? Often none At implementation, association will often imply a pointer from one class to the other Use attributes for primitive, wholly contained data (integers, strings)