0% found this document useful (0 votes)
71 views

Module 41

The document provides an overview of Module 41 which discusses the Unified Modeling Language (UML). It begins with the objectives and outline of the module, including an overview of UML, its history and development, and the different types of UML diagrams. The module will cover UML's structural diagrams which show the static structure of a system, and behavioral diagrams which show the dynamic behavior and flow between activities/states.
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
71 views

Module 41

The document provides an overview of Module 41 which discusses the Unified Modeling Language (UML). It begins with the objectives and outline of the module, including an overview of UML, its history and development, and the different types of UML diagrams. The module will cover UML's structural diagrams which show the static structure of a system, and behavioral diagrams which show the dynamic behavior and flow between activities/states.
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 21

Module 41

Objectives & Module 41: Software Engineering


Outline

Overview of UML - Overview


UML
Why UML?
What is the UML?
What is the UML
not?
History of UML
Intructors: Abir Das and Sourangshu Bhattacharya
UML
Department of Computer Science and Engineering
Diagrams Indian Institute of Technology, Kharagpur
Diagram
Classification {abir, sourangshu}@cse.iitkgp.ac.in
Features of
Behavioral Diagrams
Features of
Structural Diagrams
Slides taken from NPTEL course on Object-Oriented Analysis & Design
SDLC Phases
by Prof. Partha Pratim Das
Phase-wise
Diagrams
Requirements
Specification Phase
Analysis Phase
Design Phase CS20202: Software Engineering 1
Module Objectives

Module 41
• Discuss the overview of Unified Modeling Language (UML)
Objectives &
Outline

Overview of
UML
Why UML?
What is the UML?
What is the UML
not?
History of UML

UML
Diagrams
Diagram
Classification
Features of
Behavioral Diagrams
Features of
Structural Diagrams

SDLC Phases

Phase-wise
Diagrams
Requirements
Specification Phase
Analysis Phase
Design Phase CS20202: Software Engineering 2
Module Outline

Module 41
• Overview of UML
◦ Why UML?
Objectives &
Outline ◦ What is the UML?
Overview of
UML
◦ What is UML is not?
Why UML? ◦ History of UML
What is the UML?
What is the UML
not?
• UML Diagrams
History of UML
◦ Diagram Classification
UML
Diagrams ◦ Features of Structural Diagrams
Diagram
Classification ◦ Features of Behavioral Diagrams
Features of
Behavioral Diagrams
Features of
Structural Diagrams

SDLC Phases

Phase-wise
Diagrams
Requirements
Specification Phase
Analysis Phase
Design Phase CS20202: Software Engineering 3
Why UML?

Module 41
A notation for system analysis and design
• Is a standard
Objectives &
Outline
• Helps a designer or developer to capture artifacts of software
Overview of
UML
design
Why UML?
What is the UML? • Eliminates the issues of consistencies and accuracy in software
What is the UML
not?
design and analysis
History of UML

UML
• Minimizes vagueness and imprecision in expression
Diagrams
Diagram • Facilitates robust communication within the teams and with client
Classification
Features of
Behavioral Diagrams
Features of
Structural Diagrams

SDLC Phases

Phase-wise
Diagrams
Requirements
Specification Phase
Analysis Phase
Design Phase CS20202: Software Engineering 4
What is the UML?

Module 41
UML
• Provides users with an expressive modeling language
Objectives & ◦ for the specification, construction, visualization, and documentation of
Outline the artifacts of a software system
Overview of ◦ for the construction of different kinds of models
UML ◦ for the exchange of models
Why UML?
What is the UML? • Provides users with ready-to-use core concepts
What is the UML
not?
◦ however, extensibility and specialization mechanisms are available
History of UML
• Provides a formal basis for understanding the modeling language
UML
Diagrams
◦ meta-model in terms of a UML class diagram
Diagram
◦ Semantics is part of the official UML documentation
Classification
Features of
• Supports higher-level development concepts
Behavioral Diagrams
Features of
◦ such as collaborations, patterns, and components
Structural Diagrams

SDLC Phases
• Integrates Best Practices

Phase-wise
Diagrams
Requirements
Specification Phase
Analysis Phase
Design Phase CS20202: Software Engineering 5
What is the UML not?

Module 41
UML does not prescribe
• a certain process
Objectives &
Outline
• a certain modeling tool
Overview of
UML • any modeling guidelines
Why UML?
What is the UML?
What is the UML
• a certain programming language
not?
History of UML
Dedicated goal of UML is: OPENNESS
UML
Diagrams
Diagram
Classification
Features of
Behavioral Diagrams
Features of
Structural Diagrams

SDLC Phases

Phase-wise
Diagrams
Requirements
Specification Phase
Analysis Phase
Design Phase CS20202: Software Engineering 6
How UML was formed?

Module 41

• The Unified Modeling Language (UML) is the primary modeling


language used to analyze, specify, and design software systems
Objectives &
Outline
• From the late 1980s and well into the 1990s, numerous
Overview of
UML
methodologies arose and were subsequently modified and refined.
Why UML? Many of these were strong in certain areas, weak in others
What is the UML?
What is the UML
not?
• In the mid-1990s, Booch, Rumbaugh, and Jacobson joined forces
History of UML
at Rational Software Corporation and began to meld their
UML
Diagrams
respective methodologies to create what would be the first version
Diagram of the UML
Classification
Features of
Behavioral Diagrams • In November 1997 the Object Management Group (OMG)
Features of
Structural Diagrams adopted the UML as a standard
SDLC Phases

Phase-wise
Diagrams
Requirements
Specification Phase
Analysis Phase
Design Phase CS20202: Software Engineering 7
Diagram Classification: UML 2.5

Module 41

Objectives &
Outline

Overview of
UML
Why UML?
What is the UML?
What is the UML
not?
History of UML

UML
Diagrams
Diagram
Classification
Features of
Behavioral Diagrams
Features of
Structural Diagrams

SDLC Phases

Phase-wise
Diagrams
Requirements
Specification Phase
Analysis Phase
Design Phase CS20202: Software Engineering 8
Diagram Classification: UML 2.5

Module 41
• Structural Diagrams show the static structure of the
system and its parts on different abstraction and
Objectives &
Outline implementation levels and how they are related to each
Overview of other
UML
Why UML? ◦ The elements in a structure diagram represent the
What is the UML?
What is the UML meaningful concepts of a system, and may include
not?
History of UML abstract, real world and implementation concepts
UML
Diagrams • Behavioral Diagrams show the dynamic behavior of the
Diagram
Classification objects in a system, which can be described as a series of
Features of
Behavioral Diagrams changes to the system over time
Features of
Structural Diagrams
Source: UML 2.5 Diagrams Overview: http://www.uml-diagrams.org/uml-25-diagrams.html (10-Aug-16)
SDLC Phases

Phase-wise
Diagrams
Requirements
Specification Phase
Analysis Phase
Design Phase CS20202: Software Engineering 9
Behavioral Diagrams

Module 41

• Use case diagrams represents the requirements of a system


including internal and external influences. This diagram is used to
Objectives &
Outline capture the user specifications for a system to be built
Overview of
UML
• Activity diagrams models the flow from one activity to another
Why UML? activity. The activity can be described as an operation of the
What is the UML?
What is the UML
system. It helps to capture the system behavior in the context of
not?
History of UML
activities
UML
Diagrams
• State-Chart diagrams are used to describe the different states
Diagram of an object during its life time. It is used to capture the states to
Classification
Features of model the lifetime of a system
Behavioral Diagrams
Features of
Structural Diagrams

SDLC Phases

Phase-wise
Diagrams
Requirements
Specification Phase
Analysis Phase
Design Phase CS20202: Software Engineering 10
Behavioral Diagrams: Interaction Diagrams

Module 41

• Sequence diagrams captures the temporal ordering of messages


exchanged between objects during their lifetime respectively. It is
Objectives &
Outline used to model the system behavior
Overview of
UML
• Communication diagrams captures the spatial ordering of
Why UML? messages exchanged between objects during their lifetime
What is the UML?
What is the UML
respectively. It is used to model the system behavior
not?
History of UML
• Timing diagrams captures the change of states of an element or
UML
Diagrams
elements change over time and how events change those states.
Diagram state It is used to model real time system behavior
Classification
Features of
Behavioral Diagrams • Interaction Overview diagrams models the total interaction
Features of
Structural Diagrams flow consisting from various sequence, collaboration and activity
SDLC Phases flows. It provides an overall flow control among various
Phase-wise interactions in the system
Diagrams
Requirements
Specification Phase
Analysis Phase
Design Phase CS20202: Software Engineering 11
Structural Diagrams

Module 41

• Class diagrams models the analysis and design of the static view
of an application. It captures the key abstractions of the system
Objectives &
Outline at the first level, and is later refined with details of every
Overview of
abstraction for reference
UML
Why UML? • Object diagrams represents an instance of a class diagram. It is
What is the UML?
What is the UML
used to capture the static view of a system at a particular moment
not?
History of UML
• Package diagrams encapsulates the major components of a
UML
Diagrams
system and highlights the dependencies. It is used to capture the
Diagram dependencies between the major components of a system
Classification
Features of
Behavioral Diagrams
Features of
Structural Diagrams

SDLC Phases

Phase-wise
Diagrams
Requirements
Specification Phase
Analysis Phase
Design Phase CS20202: Software Engineering 12
Structural Diagrams

Module 41

• Composite Structure diagrams describes the complete


structure of a system along with its sub-parts and interfaces. It is
Objectives &
Outline used to capture internal structure view of a system
Overview of
UML
• Component diagrams models physical aspects of a system. It is
Why UML? used to capture the static implementation view of a system
What is the UML?
What is the UML
consisting of the components and their relationships
not?
History of UML
• Deployment diagrams describes the hardware components
UML
Diagrams
where software components are deployed. It is used to capture
Diagram the hardware topology of a system
Classification
Features of
Behavioral Diagrams • Profile diagrams allows to define custom stereotypes, tagged
Features of
Structural Diagrams values, and constraints as a lightweight extension mechanism to
SDLC Phases the UML standard. Profiles allow to adapt the UML meta-model
Phase-wise for different platforms and domains
Diagrams
Requirements
Specification Phase
Analysis Phase
Design Phase CS20202: Software Engineering 13
OOAD in SDLC

Module 41

Objectives &
Outline

Overview of
UML
Why UML?
What is the UML?
What is the UML
not?
History of UML

UML
Diagrams
Diagram
Classification
Features of
Behavioral Diagrams
Features of
Structural Diagrams

SDLC Phases

Phase-wise
Diagrams
Requirements
Specification Phase
Analysis Phase
Design Phase CS20202: Software Engineering 14
Models of the Requirements Specification Phase

Module 41

Objectives &
Outline

Overview of
UML
Why UML?
What is the UML?
What is the UML
not?
History of UML

UML
Diagrams
Diagram
Classification
Features of
Behavioral Diagrams
Features of
Structural Diagrams

SDLC Phases

Phase-wise
Diagrams
Requirements
Specification Phase
Analysis Phase
Design Phase CS20202: Software Engineering 15
Output of the Requirements Specification Phase

Module 41

Objectives &
Outline

Overview of
UML
Why UML?
What is the UML?
What is the UML
not?
History of UML

UML
Diagrams
Diagram
Classification
Features of
Behavioral Diagrams
Features of
Structural Diagrams

SDLC Phases

Phase-wise
Diagrams
Requirements
Specification Phase
Analysis Phase
Design Phase CS20202: Software Engineering 16
Models of the Analysis Phase

Module 41

Objectives &
Outline

Overview of
UML
Why UML?
What is the UML?
What is the UML
not?
History of UML

UML
Diagrams
Diagram
Classification
Features of
Behavioral Diagrams
Features of
Structural Diagrams

SDLC Phases

Phase-wise
Diagrams
Requirements
Specification Phase
Analysis Phase
Design Phase CS20202: Software Engineering 17
Output of the Analysis Phase

Module 41

Objectives &
Outline

Overview of
UML
Why UML?
What is the UML?
What is the UML
not?
History of UML

UML
Diagrams
Diagram
Classification
Features of
Behavioral Diagrams
Features of
Structural Diagrams

SDLC Phases

Phase-wise
Diagrams
Requirements
Specification Phase
Analysis Phase
Design Phase CS20202: Software Engineering 18
Models of the Design Phase

Module 41

Objectives &
Outline

Overview of
UML
Why UML?
What is the UML?
What is the UML
not?
History of UML

UML
Diagrams
Diagram
Classification
Features of
Behavioral Diagrams
Features of
Structural Diagrams

SDLC Phases

Phase-wise
Diagrams
Requirements
Specification Phase
Analysis Phase
Design Phase CS20202: Software Engineering 19
Output of the Design Phase

Module 41

Objectives &
Outline

Overview of
UML
Why UML?
What is the UML?
What is the UML
not?
History of UML

UML
Diagrams
Diagram
Classification
Features of
Behavioral Diagrams
Features of
Structural Diagrams

SDLC Phases

Phase-wise
Diagrams
Requirements
Specification Phase
Analysis Phase
Design Phase CS20202: Software Engineering 20
Phases for System Implementation

Module 41
• The other phases of SDLC
◦ Implementation
Objectives &
Outline ◦ Test
Overview of
UML
◦ Deployment
Why UML? ◦ Maintenance
What is the UML?
What is the UML
not?
implement the models defined in earlier phases
History of UML
• The Diagrams are used to implement the respective
UML
Diagrams components in the implementation
Diagram
Classification
Features of
• These are implemented using various OOP languages, and
Behavioral Diagrams
Features of
some models continue to be used
Structural Diagrams

SDLC Phases

Phase-wise
Diagrams
Requirements
Specification Phase
Analysis Phase
Design Phase CS20202: Software Engineering 21

You might also like