Class Diagrams Revisited. Parameterized Classes Parameterized Classes - are used to represent relationships between templates.

Slides:



Advertisements
Similar presentations
Chapter 6: Entity-Relationship Model (part I)
Advertisements

Systems Analysis and Design with UML Version 2.0, Second Edition
Based on Java Software Development, 5th Ed. By Lewis &Loftus
Stereotypes Stereotypes provide the capability to create a new kind of modeling element. –They can be used to classify or mark modeling elements. –A type.
Objectives Introduction to Inheritance and Composition (Subclasses and SuperClasses) Overriding (and extending), and inheriting methods and constructors.
Encapsulation, Inheritance & Interfaces CSE 115 Spring 2006 February 27, March 1 & 3, 2006.
Slide 1 Systems Analysis & Design CS183 Spring Semester 2008 Dr. Jonathan Y. Clark Course Website:
Slide 1 Chapter 7 Structural Modeling. Slide 2 Key Ideas A structural or conceptual model describes the structure of the data that supports the business.
7M701 1 Class Diagram advanced concepts. 7M701 2 Characteristics of Object Oriented Design (OOD) objectData and operations (functions) are combined 
Class template Describing a generic class Instantiating classes that are type- specific version of this generic class Also are called parameterized types.
Criteria for good design. aim to appreciate the proper and improper uses of inheritance and appreciate the concepts of coupling and cohesion.
PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 1.
UML Class Diagram: class Rectangle
Modelling classes Drawing a Class Diagram. Class diagram First pick the classes –Choose relevant nouns, which have attributes and operations. Find the.
2-1 © Prentice Hall, 2004 Chapter 2: Introduction to Object Orientation (Adapted) Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra,
Object-Oriented Analysis and Design
Chapter 5 - Writing a Problem Domain Class Definition1 Chapter 5 Writing a Problem Domain Class Definition.
Design patterns. What is a design pattern? Christopher Alexander: «The pattern describes a problem which again and again occurs in the work, as well as.
Chapter 11 Inheritance and Composition. Chapter Objectives Learn about inheritance Learn about subclasses and superclasses Explore how to override the.
1. 2 Object-Oriented Concept Class & Object Object-Oriented Characteristics How does it work? Relationships Between Classes Development Tools Advantage.
Structural Modeling Chapter 7
Slide 1 Structural Modeling Chapter 7. Slide 2 Key Ideas A structural or conceptual model describes the structure of the data that supports the business.
CS3773 Software Engineering Lecture 04 UML Class Diagram.
Design Class Diagrams (DCDs)
Slide 1 Systems Analysis and Design with UML Version 2.0, Second Edition Alan Dennis, Barbara Haley Wixom, and David Tegarden Chapter 7: Structural Modeling.
12 September, 2007Information System Design IT60105, Autumn 2007 Information System Design IT60105 Lecture 11 Class and Object Diagrams.
1 Introduction to Classes and Objects Chapter 3 Introduction to Classes and Objects Chapter 3.
UML The Unified Modeling Language A Practical Introduction Al-Ayham Saleh Aleppo University
Structural Modeling Chapter 7. Key Ideas A structural or conceptual model describes the structure of the data that supports the business processes in.
1 Structural Modeling Chapter 7. 2 Key Ideas A structural or conceptual model describes the structure of the data that supports the business processes.
Class Diagram. Classes Software Design (UML) Class Name attributes operations A class is a description of a set of objects that share the same attributes,
Generalization (Ch 26) a generalization is a relationship between a general thing (the superclass or parent class) and a more specific kind of thing (the.
Design Model Lecture p6 T120B pavasario sem.
CS 4233 Review Feb February Review2 Outline  Previous Business – My.wpi.edu contains all grades to date for course – Review and contact.
Object Oriented Analysis: Associations. 2 Object Oriented Modeling BUAD/American University Class Relationships u Classes have relationships between each.
Object Oriented Analysis and Design Class and Object Diagrams.
Class Diagram Chapter 21 Applying UML and Patterns Craig Larman.
PowerPoint Presentation for Dennis, Wixom & Tegardem Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 1.
Class diagrams Terézia Mézešová.
Chapter 16 UML Class Diagrams 1CS6359 Fall 2012 John Cole.
 Class diagrams show the classes of the system, their interrelationships (including inheritance, aggregation, and association), and the operations and.
Chapter 16 UML Class Diagrams.
INFSY 535.  Small systems  Larger systems 1.Understand the program requirement- what 3. Write and test each part (unit testing) 4. Maintenance 2. Specify.
Inheritance and Subclasses CS 21a. 6/28/2004 Copyright 2004, by the authors of these slides, and Ateneo de Manila University. All rights reserved L16:
Object Modeling THETOPPERSWAY.COM. Object Modelling Technique(OMT)  Building a model of an application domain and then adding implementation.
CLASS DIAGRAMS A classy approach to objects. The Basic Class Diagram  Class Name  Attributes (- indicates private each would have properties or accessor/mutator.
Class Diagram Lecture # 1. Class diagram A Class Diagram is a diagram describing the structure of a system shows the system's classes Attributes operations.
Slide 1 Systems Analysis and Design with UML Version 2.0, Second Edition Alan Dennis, Barbara Haley Wixom, and David Tegarden Chapter 7: Structural Modeling.
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.
SUBCLASSES - JAVA. The Purpose of Subclasses Class Farm String getOwner() void setOwner(String s) int getSize() void setSize(int s) Class DairyFarm String.
Java Programming: Guided Learning with Early Objects Chapter 9 Inheritance and Polymorphism.
Smith’s Aerospace © P. Bailey & K. Vander Linden, 2006 Classes and Objects Patrick Bailey Keith Vander Linden Calvin College.
2-1 © Prentice Hall, 2004 Chapter 2: Introduction to Object Orientation Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph.
 Class and Diagram  Representation of Class Name Attributes Operations  Visibility of Attributes and Operations.
Unified Modeling Language (UML)
Object-Oriented Modeling
Entity-Relationship Model
Chapter 16 UML Class Diagrams.
Interface, Subclass, and Abstract Class Review
Entity-Relationship Model
UML Class Diagram: class Rectangle
Object Oriented Analysis and Design
Domain Class Diagram Chapter 4 Part 2 pp
Software Engineering Lecture #11.
SYS466 Domain Classes – Part 1.
Class Diagram.
Chapter 16 Class Diagrams.
Object Oriented System Design Class Diagrams
Presentation transcript:

Class Diagrams Revisited

Parameterized Classes Parameterized Classes - are used to represent relationships between templates.

Abstract Classes Abstract Classes - are classes for which instances are not generated. These classes may have abstract methods. Examples: an abstract superclass account and subclass cheque, loan and savings; an abstract superclass customer and subclasses credit and cash customer.

Utility Classes Are collections of global variables and functions. Example:

Object Diagrams Are used to specify instances of a class with specific values for the data elements. Example:

Interface Classes Interface classes - represent interfaces. Example:

Conceptual vs. Implementation Class Diagrams Conceptual class diagrams are used to describe the objects and behaviours in the domain. Class diagrams can also be used for implementation purposes, i.e. to model classes to be implemented as a program.

Associations Aggregation is a type of association and composition is a type of aggregation. Aggregation is an association which links a part to an entirety. Composition - is an aggregation in which the “part” will not exist if the “entirety” did not exist.

Aggregation Syntax Example

Composition Example

Attributes Specify the type of the attribute Specify the accessibility of the attribute: + for public, # for protected and - for private Derived attributes - the value of the attribute is derived from other attributes, e.g. the age attribute will be derived from the current date subtract the birth date. This is denoted by /age=date-birthdate.

Methods Specify the return type if not void Specify the type of each parameter Specify the accessibility of the method: + for public, # for protected and - for private Some methods may be abstract. This must be indicated in brackets “{abstract}”