UML CLASS DIAGRAMS. Basics of UML Class Diagrams What is a UML class diagram? Imagine you were given the task of drawing a family tree. The steps you.

Slides:



Advertisements
Similar presentations
CPSC 203. Use Case Diagram  A description of a system’s behavior as it responds to a request that originates from outside of that system. Specifies the.
Advertisements

UML CLASS DIAGRAMS.
Object-oriented modeling Class/Object Diagrams
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall A.1.
Chapter 22 Object-Oriented Systems Analysis and Design and UML Systems Analysis and Design Kendall and Kendall Fifth Edition.
© 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1 Architectural Modeling Notations.
Object-Oriented Analysis and Design
Department of Informatics, UC Irvine SDCL Collaboration Laboratory Software Design and sdcl.ics.uci.edu 1 Informatics 43 Introduction to Software Engineering.
UML – Class Diagrams.
Activity, Collaboration, and Component Diagrams Philip Liew
Essentials of interaction diagrams Lecture Outline Collaborations Interaction on collaboration diagrams Sequence diagrams Messages from an object.
IMS1805 Systems Analysis Topic 3: Doing Analysis (continued from previous weeks)
C++ Training Datascope Lawrence D’Antonio Lecture 11 UML.
2Object-Oriented Analysis and Design with the Unified Process Events and Use Cases  Use case  Activity the system carries out  Entry point into the.
PRJ566: PROJECT PLANNING AND MANAGEMENT Class Diagrams.
ACM/JETT Workshop - August 4-5, 2005 UML Modeling using MagicDraw UML for Java Programmers.
Software Design Description (SDD) Diagram Samples
USE Case Model.
Introduction To System Analysis and design
Entity-Relationship Modeling I The cautious seldom err. Confucius.
OO Analysis and Design CMPS OOA/OOD Cursory explanation of OOP emphasizes ▫ Syntax  classes, inheritance, message passing, virtual, static Most.
CMIS 470 Structured Systems Design
Systems Analysis and Design in a Changing World, Tuesday, Feb 27
Object Oriented Analysis By: Don Villanueva CS 524 Software Engineering I Fall I 2007 – Sheldon X. Liang, Ph. D.
DBMS Lecture 9  Object Database Management Group –12 Rules for an OODBMS –Components of the ODMG standard  OODBMS Object Model Schema  OO Data Model.
Database Management System Lecture 3 Models of Database Management Systems.
1 ER Modeling BUAD/American University Entity Relationship (ER) Modeling.
5 Systems Analysis and Design in a Changing World, Fourth Edition.
CSC 240 (Blum)1 Introduction to Database. CSC 240 (Blum)2 Data versus Information When people distinguish between data and information, –Data is simply.
Scis.regis.edu ● CS-432: Modern Software Engineering Week 2 Dr. Jesús Borrego Lead Faculty, COS Regis University 1.
UML What Is the UML? The Unified Modeling Language (UML) is the successor to the wave of object- oriented analysis and design (OOA&D) methods.
Developed by Reneta Barneva, SUNY Fredonia for CSIT 425 Requirements Modeling.
CLASS DIAGRAM. What is a class diagram? Imagine you were given a task of drawing a family tree. The steps you would take would be: What is a class diagram?
Department of Informatics, UC Irvine SDCL Collaboration Laboratory Software Design and sdcl.ics.uci.edu 1 Informatics 43 Introduction to Software Engineering.
UML diagrams What is UML UML diagrams –Static modeoing –Dynamic modeling 1.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 14 Slide 1 Object-oriented Design.
Chapter 16 Applying UML and Patterns Craig Larman
UML Use Case Diagramming Guidelines. What is UML? The Unified Modeling Language (UML) is a standard language for specifying, visualizing, constructing,
NJIT UML Class Diagrams Chapter 16 Applying UML and Patterns Craig Larman.
UML Class Diagram Tutorial by Florin Zidaru. Outline 1. UML Class Diagram. What is it? Why do we need it? 2. Tutorial Description and Presentation. 3.
 Week08.  Review Schedule Weeks 8-14  This week o Review last class o Introduce Class Diagrams o ICE-03 Sheridan SYST Engineering Quality Systems.
Object-Oriented Analysis and Design CHAPTERS 9, 31: DOMAIN MODELS 1.
 Building Block Building Block  Things in the UML Things in the UML  Structural Things Structural Things  Behavioral Things Behavioral Things  Grouping.
7-1 © Prentice Hall, 2007 Topic 7: Analysis Classes Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich, Jeffrey.
Identifying classes, Packages and drawing class Diagrams, Object Diagrams and composite structure diagrams Week 07 1.
UML Course Instructor: Rizwana Noor. Overview  Modeling  What is UML?  Why UML?  UML Diagrams  Use Case  Components  Relationships  Notations.
Class Diagrams. Terms and Concepts A class diagram is a diagram that shows a set of classes, interfaces, and collaborations and their relationships.
1 SWE Introduction to Software Engineering Lecture 14 – System Modeling.
Use Case Diagrams. Introduction In the previous Lecture, you saw a brief review of the nine UML diagrams. Now that you have the clear, you'll start to.
Rationale Databases are an integral part of an organization. Aspiring Database Developers should be able to efficiently design and implement databases.
Software Modelling Class Diagram. Class Diagrams The main building block in object oriented modeling They are used both for general conceptual modeling.
Object-Oriented Programming
Object-Oriented Analysis and Design with the Unified Process
UML Diagrams By Daniel Damaris Novarianto S..
DATA REQIREMENT ANALYSIS
The Movement To Objects
Course Outcomes of Object Oriented Modeling Design (17630,C604)
Object-Oriented Analysis and Design
Unified Modeling Language
Entity-Relationship Model
Introduction to UML Tutorial 1.
UML Diagrams Jung Woo.
Business Process Measures
The Object Oriented Approach to Design
Creating and Using Classes
Understand and Use Object Oriented Methods
Systems Analysis – ITEC 3155 Modeling System Requirements – Part 2
Chapter 7: Entity-Relationship Model
Software Analysis.
Chapter 22 Object-Oriented Systems Analysis and Design and UML
Presentation transcript:

UML CLASS DIAGRAMS

Basics of UML Class Diagrams What is a UML class diagram? Imagine you were given the task of drawing a family tree. The steps you would take would be: – Identify the main members of the family – Identify how they are related to each other – Find the characteristics of each family member – Determine relations among family members – Decide the inheritance of personal traits and characters

A UML class diagram is similar to a family tree. A class diagram consists of a group of classes and interfaces reflecting important entities of the business domain of the system being modeled, and the relationships between these classes and interfaces. The classes and interfaces in the diagram represent the members of a family tree and the relationships between the classes are analogous to relationships between members in a family tree. Interestingly, classes in a class diagram are interconnected in a hierarchical fashion, like a set of parent classes (the grand patriarch or matriarch of the family, as the case may be) and related child classes under the parent classes. Basics of UML Class Diagrams

Similarly, a software application is comprised of classes and a diagram depicting the relationship between each of these classes would be the class diagram. By definition, a class diagram is a diagram showing a collection of classes and interfaces, along with the collaborations and relationships among classes and interfaces A class diagram is a pictorial representation of the detailed system design Now you now know what a class diagram is. But, how does a class diagram relate to the use case diagrams that that we learned before? Basics of UML Class Diagrams

When you designed the use cases, you must have realized that the use cases talk about "what are the requirements" of a system. The aim of designing classes is to convert this "what" to a "how" for each requirement Each use case is further analyzed and broken up into atomic components that form the basis for the classes that need to be designed Basics of UML Class Diagrams

Elements of a Class Diagram A class diagram is composed primarily of the following elements that represent the system's business entities: – Class: A class represents an entity of a given system that provides an encapsulated implementation of certain functionality of a given entity. These are exposed by the class to other classes as methods – Apart from business functionality, a class also has properties that reflect unique features of a class. The properties of a class are called attributes. – As an example, take a class named Student. The Student class encapsulates student information such as student id #, student name, and so forth. Student id, student name, and so on are the attributes of the Student class. The Student class also exposes functionality to other classes by using methods such as getStudentName(), getStudentId(),

A class is represented by a rectangle. The following diagram shows a typical class in a class diagram: Elements of a Class Diagram….

– Interface: An interface is a variation of a class. As we saw from the previous point, – a class provides an encapsulated implementation of certain business functionality of a system. An interface on the other hand provides only a definition of business functionality of a system. A separate class implements the actual business functionality. – An interface shares the same features as a class; in other words, it contains attributes and methods. The only difference is that that the methods are only declared in the interface and will be implemented by the class implementing the interface. Elements of a Class Diagram….

– Package: provides the ability to group together classes and/or interfaces that are either similar in nature or related. – Grouping these design elements in a package element provides for better readability of class diagrams, especially complex class diagrams. Elements of a Class Diagram…. Figure —a package

The following table shows the kinds of relationships between classes, their notation, and what they mean Relationship Between Classes

Relationship Between Classes….

The UML Class Diagram in Action Case study—Courseware Management System In the use case lecture, we identified the primary actors and use cases in the use case model of the case study. Let us recap the analysis that was performed when the use case model was designed. The following terms and entities specific to the system were identified from the problem statement: – Courses and Topics that make up a course – Tutors who teach courses – Course administrators who mange the assignment of the courses to tutors – Calendar or Course Schedule is generated as a result of the Students who refer to the Course schedule or Calendar to decide which courses for which they wish to sign up

The potential actors of the system were: – Tutors – Course administrators – Students And the use cases of the system were: – View courses – Manage topics for a course – Manage course information – View course calendar – View tutors – Manage tutor information – Assign courses to tutors The UML Class Diagram in Action…. Case study—Courseware Management System

Identify the "active" entities in the system – So, our first list of classes in the system appears to be: – Course administrators – Tutors – Students Identify business domain ("passive") entities in the system – These entities reflect the business domain and hence are potential classes for our system. – Courses – Topics that make up a course – Course calendar generated The UML Class Diagram in Action…. Identifying classes of the Courseware Management System

So, the list the list of classes and interfaces that we have identified in the Courseware Management System. – Course Administrator – Tutor – Student – Course – Topic – Course Calendar The UML Class Diagram in Action…. Identifying classes of the Courseware Management System

The classes that we have identified for the Courseware Management System also provide business functionality related to the application Example the courseadministrator class have the following functionality (methods): The UML Class Diagram in Action…. Identifying methods of the Courseware Management System

Other classes have methods as shown in the figure below? The UML Class Diagram in Action…. Identifying methods of the Courseware Management System

The UML Class Diagram in Action…. Identifying relationship and drawing the class diagram

Other examples of Class Diagrams Seminar Management System

QUESTIONS