SlideShare a Scribd company logo
1 of 49
Download to read offline
Class Diagram
Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Class and Object Diagrams
Lab Material
Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Class Diagram
 A class diagram shows a set of classes, interfaces, and
collaborations and their relationships.
 Class diagrams commonly contain the following things:
 Classes
 Interfaces
 Collaborations
 Dependency
 Generalization, and
 Association relationships
 Aggregation
 Composition
 Multiplicity
3
Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Class Diagram
 A class diagram shows a set of classes, interfaces, and
collaborations and their relationships.
 Class diagrams commonly contain the following things:
 Classes
 Interfaces
 Collaborations
 Dependency
 Generalization, and
 Association
 Aggregation
 Composition
 Multiplicity
4
Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Steps involved
 Study the given problem statement
 Identify the classes
 Identify the attributes and behaviors (properties and methods)
 Denote visibility, data type, argument and return value type
 Identify the relationships
 Denote Relationships details
 Relationship name
 Role
 Relation direction
 Multiplicity
 Identify the possible Interface (common must methods for set of
classes) and relate
5
Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Study the given problem statement
Develop an automated student registration system. The students
registration system identify the School (i.e. Arts & Sciences,
Engineering, Fine Arts, etc.) in which the student is registered. The
school offer both undergraduate and graduate programs. It also shall
Identify the current courses offered by each department and the
instructor engaged to each class to handle the course.
6
Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Identify the classes
Develop an automated student registration system. The students
registration system identify the School (i.e. Arts & Sciences,
Engineering, Fine Arts, etc.) in which the student is registered. The
school offer both undergraduate and graduate programs. It also shall
Identify the current courses offered by each department and the
instructor engaged to each class to handle the course.
7
Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Identify the classes
school
student
undergraduate
graduate
programs
courses
department
instructor
class
course
8
Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Identify the attributes and behaviors
Develop an automated student registration system. The students
registration system identify the School (i.e. Arts & Sciences,
Engineering, Fine Arts, etc.) in which the student is registered. The
school offer both undergraduate and graduate programs. It also shall
Identify the current courses offered by each department and the
instructor engaged to each class to handle the course.
9
Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Identify the classes
School
-name : String
-address : String
-id : int
-startdate : Date
+school(int id, String name):
+addStudent():bool
+removeStudent(int):bool
name
attributes
operations
10
Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Denote visibility, data type…..
1. Public: Any outside classifier can use (+).
2. Protected: Any descendant of the classifier can use (#).
3. Private: Only the classifier itself can use (-).
4. Protected: public within package (~)
1. Instance: Each instance of the classifier holds its own value
for the feature.
2. Class variable: There is just one value of the feature for all
instances of the classifier. (static variable)
static variable should be underlined
* Derived variables should precede /
11
Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Identify the relationships
 Generalization
 Association (general) – name, role, direction, multiplicity
 Special types:
 Aggregation (parts can exist without whole)
 Composition (parts cant exist without whole)
 Realization
12
Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Identify the relationships
 Generalization
 Use to show a parent-child relationship.
Student
……
generalization
+handleClass():void
Graduate student
+attenMidexam():void
Undergraduate student
……
-ug:String
13
Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Identify the relationships
 Generalization
Shape
SplineEllipsePolygon
Shape
SplineEllipsePolygon
Shared Target Style
Separate Target Style
. . .
. . .
14
Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Identify the relationships
 Association (general) – name, role, direction, multiplicity
Instructor CourseTeaches
Name an association to describe its nature.
Direction triangle: direction of reading.
Instructor Course
Role: face presented to the other class.
teacher subject taught
Person Company
employee employer
15
Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Identify the relationships
 Association (general) – name, role, direction, multiplicity
Instructor Course
teacher Subject taught
1..2 0..3
Multiplicity: How many objects may be connected across
an instance of an association.
Multiplicity at one end  for each object at the other end,
there must be that many objects at the near end.
Exactly one: 1
Zero or one: 0 .. 1
Many: 0 .. *
One or more: 1 .. *
Not shown  unspecified or suppressed 16
Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Identify the relationships
 Aggregation (general) – name, role, direction, multiplicity
1
0..*
Department
Instructor
whole
part
1
1..*
Team
Player
whole
part
17
Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Identify the relationships
 Composition (general) – name, role, direction, multiplicity
1
0..*
Account
Order
whole
part
1
1..*
School
Department
18
Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Identify the possible Interface
 Identify one or more classes that
must have a set of common
operations.
 Create interface with the set of
common operations (abstract).
 Relate the classes and the interface
by Realization.
 Defines a set of operation specs
 Never defines an implementation
19
Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
student registration system
name
address
...
addstudent()
removestudent()
...
School
name
studentID
Student
1..*
*
Graduate UnderGraduate
name
Department
description
Course
name
Instructor
Offers
1
1..*
Attends >
< Teaches
has
1..*1
* * 1..3 1
Assigned To ^
Chair
1
0..1
0..1
Schedule
accepted
20
Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Example 1
21
Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Example 2
22
Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Example 3
23
Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Example 4
24
Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Example 5
25
Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Example 6
26
Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Steps involved
 Study the given problem statement
 Identify the classes
 Identify the attributes and behaviors (properties and methods)
 Denote visibility, data type, argument and return value type
 Identify the relationships
 Denote Relationships details
 Relationship name
 Role
 Relation direction
 Multiplicity
 Identify the possible Interface (common must methods for set of
classes) and relate
27
Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Object Diagram
Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Object Diagram
 Object diagrams model the instances of things contained in class
diagrams.
 An object diagram shows a set of objects and their relationships
at a point in time.
 This involves modeling a snapshot of the system at a moment in
time and rendering a set of objects, their state, and their
relationships.
 An object diagram covers a set of instances of the things found in
a class diagram.
29
Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Object Representation
 In class diagram elements are in abstract form to represent the
blue print and
 in object diagram the elements are in concrete form to represent
the real world object.
30
Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
How to model Object Diagram
 an object diagram is an instance of a class diagram.
 It implies that an object diagram consists of instances of things
used in a class diagram.
 So both diagrams are made of same basic elements but in
different form.
 To capture a particular system, numbers (classes) of class
diagrams are limited.
 However, if we consider object diagrams then we can have
unlimited number of instances, which are unique in nature.
31
Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
How to model Object Diagram
 a single object diagram cannot capture all the necessary
instances or rather cannot specify all the objects of a system.
 Hence, the solution is −
1. First, analyze the system and decide which instances have important
data and association.
2. Second, consider only those instances, which will cover the
functionality.
3. Third, make some optimization as the number of instances are
unlimited.
32
Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Things to be decided
 the following things are to be decided before starting the
construction of the diagram,
1. The object diagram should have a meaningful name to indicate its
purpose.
2. The most important elements are to be identified.
3. The association among objects should be clarified.
4. Values of different elements need to be captured to include in the
object diagram.
5. Add proper notes at points where more clarity is required.
33
Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Class and Object Diagram 1
34
Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Class and Object Diagram 2
35
Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Class and Object Diagram 3
36
Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Class and Object Diagram 4
37
Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Class and Object Diagram 5
38
Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Example – Class Diagram
39
Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Example – Object Diagram
40
Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Lets Try..!
41
Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Class vs Object Diagram
42
Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
The End
43
Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Some Clarifications
44
Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Some Clarifications
45
Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Some Clarifications
46
Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Some Clarifications
47
Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Some Clarifications
48
Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
The End…
49
Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam

More Related Content

What's hot

1 unit (oops)
1 unit (oops)1 unit (oops)
1 unit (oops)
Jay Patel
 
Object Oriented Design in Software Engineering SE12
Object Oriented Design in Software Engineering SE12Object Oriented Design in Software Engineering SE12
Object Oriented Design in Software Engineering SE12
koolkampus
 
Formal Specification in Software Engineering SE9
Formal Specification in Software Engineering SE9Formal Specification in Software Engineering SE9
Formal Specification in Software Engineering SE9
koolkampus
 

What's hot (20)

Object Oriented Design Concept
Object Oriented Design ConceptObject Oriented Design Concept
Object Oriented Design Concept
 
Basic Behavioral Modeling
Basic Behavioral ModelingBasic Behavioral Modeling
Basic Behavioral Modeling
 
Design Pattern - Factory Method Pattern
Design Pattern - Factory Method PatternDesign Pattern - Factory Method Pattern
Design Pattern - Factory Method Pattern
 
Functional and non functional
Functional and non functionalFunctional and non functional
Functional and non functional
 
1 unit (oops)
1 unit (oops)1 unit (oops)
1 unit (oops)
 
Inheritance ppt
Inheritance pptInheritance ppt
Inheritance ppt
 
Object Oriented Design in Software Engineering SE12
Object Oriented Design in Software Engineering SE12Object Oriented Design in Software Engineering SE12
Object Oriented Design in Software Engineering SE12
 
Slide 6 er strong & weak entity
Slide 6 er  strong & weak entitySlide 6 er  strong & weak entity
Slide 6 er strong & weak entity
 
Software Engineering - Module 3: Lesson7
Software Engineering - Module 3: Lesson7Software Engineering - Module 3: Lesson7
Software Engineering - Module 3: Lesson7
 
Object oriented modeling and design
Object oriented modeling and designObject oriented modeling and design
Object oriented modeling and design
 
18CSL58 DBMS LAB Manual.pdf
18CSL58 DBMS LAB Manual.pdf18CSL58 DBMS LAB Manual.pdf
18CSL58 DBMS LAB Manual.pdf
 
Formal Specification in Software Engineering SE9
Formal Specification in Software Engineering SE9Formal Specification in Software Engineering SE9
Formal Specification in Software Engineering SE9
 
Sequence diagram- UML diagram
Sequence diagram- UML diagramSequence diagram- UML diagram
Sequence diagram- UML diagram
 
Slide 3 data abstraction & 3 schema
Slide 3 data abstraction & 3 schemaSlide 3 data abstraction & 3 schema
Slide 3 data abstraction & 3 schema
 
Uml in software engineering
Uml in software engineeringUml in software engineering
Uml in software engineering
 
Object oriented modeling and design
Object oriented modeling and designObject oriented modeling and design
Object oriented modeling and design
 
Ooad ppt
Ooad pptOoad ppt
Ooad ppt
 
Functional dependency
Functional dependencyFunctional dependency
Functional dependency
 
Facade pattern
Facade patternFacade pattern
Facade pattern
 
Facade Pattern
Facade PatternFacade Pattern
Facade Pattern
 

Similar to OOAD - UML - Class and Object Diagrams - Lab

Dad (Data Analysis And Design)
Dad (Data Analysis And Design)Dad (Data Analysis And Design)
Dad (Data Analysis And Design)
Jill Lyons
 
Dynamic Question Answer Generator An Enhanced Approach to Question Generation
Dynamic Question Answer Generator An Enhanced Approach to Question GenerationDynamic Question Answer Generator An Enhanced Approach to Question Generation
Dynamic Question Answer Generator An Enhanced Approach to Question Generation
ijtsrd
 
Ooad 2marks
Ooad 2marksOoad 2marks
Ooad 2marks
Ash Wini
 

Similar to OOAD - UML - Class and Object Diagrams - Lab (20)

Introduction to ER Diagrams
Introduction to ER DiagramsIntroduction to ER Diagrams
Introduction to ER Diagrams
 
Dad (Data Analysis And Design)
Dad (Data Analysis And Design)Dad (Data Analysis And Design)
Dad (Data Analysis And Design)
 
Java - Class Structure
Java - Class StructureJava - Class Structure
Java - Class Structure
 
Synapseindia strcture of dotnet development part 1
Synapseindia strcture of dotnet development part 1Synapseindia strcture of dotnet development part 1
Synapseindia strcture of dotnet development part 1
 
Lecture 4
Lecture 4Lecture 4
Lecture 4
 
OOSE Unit 3 PPT.ppt
OOSE Unit 3 PPT.pptOOSE Unit 3 PPT.ppt
OOSE Unit 3 PPT.ppt
 
Lecture_01.1.pptx
Lecture_01.1.pptxLecture_01.1.pptx
Lecture_01.1.pptx
 
sem3.pdf
sem3.pdfsem3.pdf
sem3.pdf
 
Database Design and the ER Model, Indexing and Hashing
Database Design and the ER Model, Indexing and HashingDatabase Design and the ER Model, Indexing and Hashing
Database Design and the ER Model, Indexing and Hashing
 
Learning Strategy with Groups on Page Based Students' Profiles
Learning Strategy with Groups on Page Based Students' ProfilesLearning Strategy with Groups on Page Based Students' Profiles
Learning Strategy with Groups on Page Based Students' Profiles
 
Dynamic Question Answer Generator An Enhanced Approach to Question Generation
Dynamic Question Answer Generator An Enhanced Approach to Question GenerationDynamic Question Answer Generator An Enhanced Approach to Question Generation
Dynamic Question Answer Generator An Enhanced Approach to Question Generation
 
PythonOO.pdf oo Object Oriented programming
PythonOO.pdf oo Object Oriented programmingPythonOO.pdf oo Object Oriented programming
PythonOO.pdf oo Object Oriented programming
 
Java - Basic Concepts
Java - Basic ConceptsJava - Basic Concepts
Java - Basic Concepts
 
Learning strategy with groups on page based students' profiles
Learning strategy with groups on page based students' profilesLearning strategy with groups on page based students' profiles
Learning strategy with groups on page based students' profiles
 
CHAPTER 3 part1.pdf
CHAPTER 3 part1.pdfCHAPTER 3 part1.pdf
CHAPTER 3 part1.pdf
 
07slide.ppt
07slide.ppt07slide.ppt
07slide.ppt
 
OBJECT ORIENTED PROGRAMING IN C++
OBJECT ORIENTED PROGRAMING IN C++ OBJECT ORIENTED PROGRAMING IN C++
OBJECT ORIENTED PROGRAMING IN C++
 
Ooad 2marks
Ooad 2marksOoad 2marks
Ooad 2marks
 
The College Classroom Week 10: Teaching as Research
The College Classroom Week 10: Teaching as ResearchThe College Classroom Week 10: Teaching as Research
The College Classroom Week 10: Teaching as Research
 
Ijetr042132
Ijetr042132Ijetr042132
Ijetr042132
 

More from Victer Paul (11)

OOAD - UML - Sequence and Communication Diagrams - Lab
OOAD - UML - Sequence and Communication Diagrams - LabOOAD - UML - Sequence and Communication Diagrams - Lab
OOAD - UML - Sequence and Communication Diagrams - Lab
 
OOAD - Systems and Object Orientation Concepts
OOAD - Systems and Object Orientation ConceptsOOAD - Systems and Object Orientation Concepts
OOAD - Systems and Object Orientation Concepts
 
Java - Strings Concepts
Java - Strings ConceptsJava - Strings Concepts
Java - Strings Concepts
 
Java - Packages Concepts
Java - Packages ConceptsJava - Packages Concepts
Java - Packages Concepts
 
Java - OOPS and Java Basics
Java - OOPS and Java BasicsJava - OOPS and Java Basics
Java - OOPS and Java Basics
 
Java - Exception Handling Concepts
Java - Exception Handling ConceptsJava - Exception Handling Concepts
Java - Exception Handling Concepts
 
Java - Object Oriented Programming Concepts
Java - Object Oriented Programming ConceptsJava - Object Oriented Programming Concepts
Java - Object Oriented Programming Concepts
 
Java - File Input Output Concepts
Java - File Input Output ConceptsJava - File Input Output Concepts
Java - File Input Output Concepts
 
Java - Inheritance Concepts
Java - Inheritance ConceptsJava - Inheritance Concepts
Java - Inheritance Concepts
 
Java - Arrays Concepts
Java - Arrays ConceptsJava - Arrays Concepts
Java - Arrays Concepts
 
Java applet programming concepts
Java  applet programming conceptsJava  applet programming concepts
Java applet programming concepts
 

Recently uploaded

Paint shop management system project report.pdf
Paint shop management system project report.pdfPaint shop management system project report.pdf
Paint shop management system project report.pdf
Kamal Acharya
 
ONLINE VEHICLE RENTAL SYSTEM PROJECT REPORT.pdf
ONLINE VEHICLE RENTAL SYSTEM PROJECT REPORT.pdfONLINE VEHICLE RENTAL SYSTEM PROJECT REPORT.pdf
ONLINE VEHICLE RENTAL SYSTEM PROJECT REPORT.pdf
Kamal Acharya
 

Recently uploaded (20)

Intelligent Agents, A discovery on How A Rational Agent Acts
Intelligent Agents, A discovery on How A Rational Agent ActsIntelligent Agents, A discovery on How A Rational Agent Acts
Intelligent Agents, A discovery on How A Rational Agent Acts
 
BRAKING SYSTEM IN INDIAN RAILWAY AutoCAD DRAWING
BRAKING SYSTEM IN INDIAN RAILWAY AutoCAD DRAWINGBRAKING SYSTEM IN INDIAN RAILWAY AutoCAD DRAWING
BRAKING SYSTEM IN INDIAN RAILWAY AutoCAD DRAWING
 
Paint shop management system project report.pdf
Paint shop management system project report.pdfPaint shop management system project report.pdf
Paint shop management system project report.pdf
 
E-Commerce Shopping using MERN Stack where different modules are present
E-Commerce Shopping using MERN Stack where different modules are presentE-Commerce Shopping using MERN Stack where different modules are present
E-Commerce Shopping using MERN Stack where different modules are present
 
Lect_Z_Transform_Main_digital_image_processing.pptx
Lect_Z_Transform_Main_digital_image_processing.pptxLect_Z_Transform_Main_digital_image_processing.pptx
Lect_Z_Transform_Main_digital_image_processing.pptx
 
Quiz application system project report..pdf
Quiz application system project report..pdfQuiz application system project report..pdf
Quiz application system project report..pdf
 
Multivibrator and its types defination and usges.pptx
Multivibrator and its types defination and usges.pptxMultivibrator and its types defination and usges.pptx
Multivibrator and its types defination and usges.pptx
 
Research Methodolgy & Intellectual Property Rights Series 1
Research Methodolgy & Intellectual Property Rights Series 1Research Methodolgy & Intellectual Property Rights Series 1
Research Methodolgy & Intellectual Property Rights Series 1
 
Supermarket billing system project report..pdf
Supermarket billing system project report..pdfSupermarket billing system project report..pdf
Supermarket billing system project report..pdf
 
ROAD CONSTRUCTION PRESENTATION.PPTX.pptx
ROAD CONSTRUCTION PRESENTATION.PPTX.pptxROAD CONSTRUCTION PRESENTATION.PPTX.pptx
ROAD CONSTRUCTION PRESENTATION.PPTX.pptx
 
KIT-601 Lecture Notes-UNIT-5.pdf Frame Works and Visualization
KIT-601 Lecture Notes-UNIT-5.pdf Frame Works and VisualizationKIT-601 Lecture Notes-UNIT-5.pdf Frame Works and Visualization
KIT-601 Lecture Notes-UNIT-5.pdf Frame Works and Visualization
 
ANSI(ST)-III_Manufacturing-I_05052020.pdf
ANSI(ST)-III_Manufacturing-I_05052020.pdfANSI(ST)-III_Manufacturing-I_05052020.pdf
ANSI(ST)-III_Manufacturing-I_05052020.pdf
 
Filters for Electromagnetic Compatibility Applications
Filters for Electromagnetic Compatibility ApplicationsFilters for Electromagnetic Compatibility Applications
Filters for Electromagnetic Compatibility Applications
 
"United Nations Park" Site Visit Report.
"United Nations Park" Site  Visit Report."United Nations Park" Site  Visit Report.
"United Nations Park" Site Visit Report.
 
Introduction to Machine Learning Unit-4 Notes for II-II Mechanical Engineering
Introduction to Machine Learning Unit-4 Notes for II-II Mechanical EngineeringIntroduction to Machine Learning Unit-4 Notes for II-II Mechanical Engineering
Introduction to Machine Learning Unit-4 Notes for II-II Mechanical Engineering
 
The battle for RAG, explore the pros and cons of using KnowledgeGraphs and Ve...
The battle for RAG, explore the pros and cons of using KnowledgeGraphs and Ve...The battle for RAG, explore the pros and cons of using KnowledgeGraphs and Ve...
The battle for RAG, explore the pros and cons of using KnowledgeGraphs and Ve...
 
Artificial Intelligence Bayesian Reasoning
Artificial Intelligence Bayesian ReasoningArtificial Intelligence Bayesian Reasoning
Artificial Intelligence Bayesian Reasoning
 
How to Design and spec harmonic filter.pdf
How to Design and spec harmonic filter.pdfHow to Design and spec harmonic filter.pdf
How to Design and spec harmonic filter.pdf
 
Low rpm Generator for efficient energy harnessing from a two stage wind turbine
Low rpm Generator for efficient energy harnessing from a two stage wind turbineLow rpm Generator for efficient energy harnessing from a two stage wind turbine
Low rpm Generator for efficient energy harnessing from a two stage wind turbine
 
ONLINE VEHICLE RENTAL SYSTEM PROJECT REPORT.pdf
ONLINE VEHICLE RENTAL SYSTEM PROJECT REPORT.pdfONLINE VEHICLE RENTAL SYSTEM PROJECT REPORT.pdf
ONLINE VEHICLE RENTAL SYSTEM PROJECT REPORT.pdf
 

OOAD - UML - Class and Object Diagrams - Lab

  • 1. Class Diagram Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 2. Class and Object Diagrams Lab Material Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 3. Class Diagram  A class diagram shows a set of classes, interfaces, and collaborations and their relationships.  Class diagrams commonly contain the following things:  Classes  Interfaces  Collaborations  Dependency  Generalization, and  Association relationships  Aggregation  Composition  Multiplicity 3 Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 4. Class Diagram  A class diagram shows a set of classes, interfaces, and collaborations and their relationships.  Class diagrams commonly contain the following things:  Classes  Interfaces  Collaborations  Dependency  Generalization, and  Association  Aggregation  Composition  Multiplicity 4 Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 5. Steps involved  Study the given problem statement  Identify the classes  Identify the attributes and behaviors (properties and methods)  Denote visibility, data type, argument and return value type  Identify the relationships  Denote Relationships details  Relationship name  Role  Relation direction  Multiplicity  Identify the possible Interface (common must methods for set of classes) and relate 5 Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 6. Study the given problem statement Develop an automated student registration system. The students registration system identify the School (i.e. Arts & Sciences, Engineering, Fine Arts, etc.) in which the student is registered. The school offer both undergraduate and graduate programs. It also shall Identify the current courses offered by each department and the instructor engaged to each class to handle the course. 6 Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 7. Identify the classes Develop an automated student registration system. The students registration system identify the School (i.e. Arts & Sciences, Engineering, Fine Arts, etc.) in which the student is registered. The school offer both undergraduate and graduate programs. It also shall Identify the current courses offered by each department and the instructor engaged to each class to handle the course. 7 Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 9. Identify the attributes and behaviors Develop an automated student registration system. The students registration system identify the School (i.e. Arts & Sciences, Engineering, Fine Arts, etc.) in which the student is registered. The school offer both undergraduate and graduate programs. It also shall Identify the current courses offered by each department and the instructor engaged to each class to handle the course. 9 Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 10. Identify the classes School -name : String -address : String -id : int -startdate : Date +school(int id, String name): +addStudent():bool +removeStudent(int):bool name attributes operations 10 Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 11. Denote visibility, data type….. 1. Public: Any outside classifier can use (+). 2. Protected: Any descendant of the classifier can use (#). 3. Private: Only the classifier itself can use (-). 4. Protected: public within package (~) 1. Instance: Each instance of the classifier holds its own value for the feature. 2. Class variable: There is just one value of the feature for all instances of the classifier. (static variable) static variable should be underlined * Derived variables should precede / 11 Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 12. Identify the relationships  Generalization  Association (general) – name, role, direction, multiplicity  Special types:  Aggregation (parts can exist without whole)  Composition (parts cant exist without whole)  Realization 12 Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 13. Identify the relationships  Generalization  Use to show a parent-child relationship. Student …… generalization +handleClass():void Graduate student +attenMidexam():void Undergraduate student …… -ug:String 13 Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 14. Identify the relationships  Generalization Shape SplineEllipsePolygon Shape SplineEllipsePolygon Shared Target Style Separate Target Style . . . . . . 14 Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 15. Identify the relationships  Association (general) – name, role, direction, multiplicity Instructor CourseTeaches Name an association to describe its nature. Direction triangle: direction of reading. Instructor Course Role: face presented to the other class. teacher subject taught Person Company employee employer 15 Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 16. Identify the relationships  Association (general) – name, role, direction, multiplicity Instructor Course teacher Subject taught 1..2 0..3 Multiplicity: How many objects may be connected across an instance of an association. Multiplicity at one end  for each object at the other end, there must be that many objects at the near end. Exactly one: 1 Zero or one: 0 .. 1 Many: 0 .. * One or more: 1 .. * Not shown  unspecified or suppressed 16 Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 17. Identify the relationships  Aggregation (general) – name, role, direction, multiplicity 1 0..* Department Instructor whole part 1 1..* Team Player whole part 17 Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 18. Identify the relationships  Composition (general) – name, role, direction, multiplicity 1 0..* Account Order whole part 1 1..* School Department 18 Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 19. Identify the possible Interface  Identify one or more classes that must have a set of common operations.  Create interface with the set of common operations (abstract).  Relate the classes and the interface by Realization.  Defines a set of operation specs  Never defines an implementation 19 Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 20. student registration system name address ... addstudent() removestudent() ... School name studentID Student 1..* * Graduate UnderGraduate name Department description Course name Instructor Offers 1 1..* Attends > < Teaches has 1..*1 * * 1..3 1 Assigned To ^ Chair 1 0..1 0..1 Schedule accepted 20 Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 21. Example 1 21 Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 22. Example 2 22 Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 23. Example 3 23 Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 24. Example 4 24 Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 25. Example 5 25 Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 26. Example 6 26 Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 27. Steps involved  Study the given problem statement  Identify the classes  Identify the attributes and behaviors (properties and methods)  Denote visibility, data type, argument and return value type  Identify the relationships  Denote Relationships details  Relationship name  Role  Relation direction  Multiplicity  Identify the possible Interface (common must methods for set of classes) and relate 27 Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 28. Object Diagram Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 29. Object Diagram  Object diagrams model the instances of things contained in class diagrams.  An object diagram shows a set of objects and their relationships at a point in time.  This involves modeling a snapshot of the system at a moment in time and rendering a set of objects, their state, and their relationships.  An object diagram covers a set of instances of the things found in a class diagram. 29 Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 30. Object Representation  In class diagram elements are in abstract form to represent the blue print and  in object diagram the elements are in concrete form to represent the real world object. 30 Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 31. How to model Object Diagram  an object diagram is an instance of a class diagram.  It implies that an object diagram consists of instances of things used in a class diagram.  So both diagrams are made of same basic elements but in different form.  To capture a particular system, numbers (classes) of class diagrams are limited.  However, if we consider object diagrams then we can have unlimited number of instances, which are unique in nature. 31 Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 32. How to model Object Diagram  a single object diagram cannot capture all the necessary instances or rather cannot specify all the objects of a system.  Hence, the solution is − 1. First, analyze the system and decide which instances have important data and association. 2. Second, consider only those instances, which will cover the functionality. 3. Third, make some optimization as the number of instances are unlimited. 32 Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 33. Things to be decided  the following things are to be decided before starting the construction of the diagram, 1. The object diagram should have a meaningful name to indicate its purpose. 2. The most important elements are to be identified. 3. The association among objects should be clarified. 4. Values of different elements need to be captured to include in the object diagram. 5. Add proper notes at points where more clarity is required. 33 Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 34. Class and Object Diagram 1 34 Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 35. Class and Object Diagram 2 35 Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 36. Class and Object Diagram 3 36 Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 37. Class and Object Diagram 4 37 Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 38. Class and Object Diagram 5 38 Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 39. Example – Class Diagram 39 Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 40. Example – Object Diagram 40 Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 41. Lets Try..! 41 Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 42. Class vs Object Diagram 42 Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 43. The End 43 Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 44. Some Clarifications 44 Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 45. Some Clarifications 45 Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 46. Some Clarifications 46 Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 47. Some Clarifications 47 Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 48. Some Clarifications 48 Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 49. The End… 49 Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam