Class Diagrams

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 20
At a glance
Powered by AI
The key takeaways are that a UML class diagram models the structure and relationships of classes and objects in a system. It identifies the main classes, their attributes and methods, and how they relate and interact with each other.

A UML class diagram models the structure of a system by representing classes, their attributes, methods, and the relationships between classes. The main elements are classes, interfaces, attributes, operations, and relationships such as association, generalization, and dependency.

To identify classes from a use case model, we first identify the active entities or actors involved. We then identify the passive business domain entities. Finally, we define the responsibilities or methods of each class.

UML CLASS DIAGRAMS

TechM Internal

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
TechM Internal

Basics of UML Class Diagrams


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.
TechM Internal

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 thatthat we learned before?
TechM Internal

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
TechM Internal

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 asmethods
Apart from business functionality, a class also
has properties that reflect unique features of a
class. The properties of a class are
calledattributes.
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, studentTechM
name,
and so on are the
Internal
attributes of the Student class. The Student class also

Elements of a Class Diagram.

A class is represented by a rectangle.


The following diagram shows a
typical class in a class diagram:

TechM Internal

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.
TechM Internal

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.

Figure a package
TechM Internal

Relationship Between Classes

The following table shows the kinds of relationships


between classes, their notation, and what they mean

TechM Internal

Relationship Between Classes.

TechM Internal

The UML Class Diagram in Action


Case studyCourseware 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
TechM Internal

The UML Class Diagram in Action.


Case studyCourseware Management System

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
TechM Internal

The UML Class Diagram in Action.

Identify the "active" entities in the system


Identifying classes of the Courseware Management 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
TechM Internal

The UML Class Diagram in Action.

So, the list the list of classes and


interfaces that we have identified in
the Courseware Management
System.
Identifying classes of the Courseware Management System

Course Administrator
Tutor
Student
Course
Topic
Course Calendar

TechM Internal

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

TechM Internal

Other classes have methods as


shown in the figure below?
The UML Class Diagram in Action.

Identifying methods of the Courseware Management System

TechM Internal

The UML Class Diagram in Action.


Identifying relationship and drawing the class diagram

TechM Internal

Other examples of Class


Diagrams

Seminar Management System

TechM Internal

QUESTIONS

TechM Internal

You might also like