Chap Ii
Chap Ii
Introduction
An Overview of UML
Use Case Diagrams
Class Diagrams
Interaction Diagrams
State Machine Diagrams
Activity Diagrams
An Overview of UML
Unified Modeling Language (UML) The UML stands for Unified modeling language, is a standardized general-
purpose visual modeling language in the field of Software Engineering.
It is used for specifying, visualizing, constructing, and documenting the primary artifacts of the software system
UML is a notation that resulted from the unification of OMT-Object Modeling Technique and OOSE-Object-
Oriented Software Engineering.
The goal of UML is to provide a standard notation that can be used by all object-oriented methods and to select
and integrate the best elements of precursor notations.
For example, UML includes the use case diagrams introduced by OOSE and uses many features of the OMT
class diagrams.
System development focuses on three different models of the system
The functional model, represented in UML with use case diagrams, describes the functionality of the system
from the user’s point of view.
The object model, represented in UML with class diagrams, describes the structure of the system in terms of
objects, attributes, associations, and operations.
The dynamic model, represented in UML with interaction diagrams, state machine diagrams, and activity
diagrams, describes the internal behavior of the system.
Interaction diagrams describe behavior as a sequence of messages exchanged among a set of objects, whereas
state machine diagrams describe behavior in terms of states of an individual object and the possible transitions
between states.
Basic Building Blocks of the UML
Things
1. Structural — nouns of UML models.
2. Behavioral — dynamic (verbal) parts of UML models.
3. Grouping — organizational parts of UML models.
4. Annotational — explanatory parts of UML models.
Relationships.
Dependency,
Association,
Generalization, and
Realization.
Diagrams
Class diagram
Object diagram
Use case diagram
Sequence diagram
Collaboration diagram
Activity diagram
State chart diagram
Deployment diagram
Component diagram
Class Diagrams
Class diagrams are used to describe the structure of the system.
Classes are abstractions that specify the common structure and behavior of a set of objects.
Class diagrams describe the system in terms of objects, classes, attributes, operations, and their
associations
Use Case Diagrams
Use cases are used during requirements elicitation and analysis to represent the functionality of the system.
An actor describes any entity that interacts with the system (e.g., a user, another system, the system’s physical
environment).
The actors are outside the boundary of the system, whereas the use cases are inside the boundary of the system.
Interaction /Sequence Diagrams
Interaction diagrams are used to formalize the dynamic behavior of the system and to visualize the
communication among objects.
An interaction diagram represents the interactions that take place among these objects.
Interaction diagram is also called as “Sequence diagram”
State Machine Diagrams
State machine diagrams describe the dynamic behavior of an individual object as a number of states and
transitions between these states.
A state represents a particular set of values for an object.
Activity Diagrams
An activity diagram describes the behavior of a system in terms of activities. Activities are modeling elements that
represent the execution of a set of operations.
Activity diagrams are similar to flowchart diagrams in that they can be used to represent control flow (i.e., the
order in which operations occur) and data flow (i.e., the objects that are exchanged among operations).