0% found this document useful (0 votes)
8 views22 pages

Lesson 5

The document outlines a lecture on modeling requirements in software engineering, focusing on the importance of modeling and the use of UML (Unified Modeling Language) diagrams. It details the types of UML diagrams, including structural and behavioral diagrams, and their purposes in visualizing system architecture and interactions. Additionally, it lists tools for creating UML diagrams to aid in the software development process.

Uploaded by

Phial
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
8 views22 pages

Lesson 5

The document outlines a lecture on modeling requirements in software engineering, focusing on the importance of modeling and the use of UML (Unified Modeling Language) diagrams. It details the types of UML diagrams, including structural and behavioral diagrams, and their purposes in visualizing system architecture and interactions. Additionally, it lists tools for creating UML diagrams to aid in the software development process.

Uploaded by

Phial
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 22

Nyanza campus

Module: Introduction to Software Engineering


Lecturer: Dr. Taiwo Adigun Email:
[email protected]
Lecture 5: Modelling Requirements
Fundamentals of Software Engineering

Outline:

 Introduction to Modelling
 UML: Categories and Diagrams
Fundamentals of Software Engineering

Specific Objectives:

By the end of this lesson, you should be able:


 Explain requirement modeling
 Describe UML diagrams
Requirement Modeling
Modelling
Modelling is an essential task in any software project,
especially big projects
• A model is an abstraction of an aspect of an existing or
proposed system
• They can be used to present a layman description of different
aspects of the system
• The models are created before the Implementation (coding)
phase starting from Requirements phase till Detailed Design
• They are used for verifying that all the requirements are
present and correctly modelled.
• Also used in the Verification and Validation phase
Requirement Modeling
Uses of Modeling
Models for user: (logical model) for user capabilities, characteristics, and product
perspectives
• Showing:
– The requirements that the system should implement
– An external view on the system

Models for design: (physical model)


• Showing:
– The architecture of the system
– The distribution of system processes and their synchronization
– The physical components and the redistribution of the software
components and the (physical) hardware components.
UML Methods for Requirements Modeling
 UML, which stands for Unified Modeling Language, is a way to visually
represent the architecture, design, and implementation of complex software
systems.
 UML is a standardized general-purpose modelling language in the field of
software engineering. The standard is managed, and was created by the
Object Management Group (OMG).
 UML includes a set of graphical notation techniques to create visual models
of software-intensive systems.
 UML diagrams can help engineering teams to:
i. Bring new team members or developers switching teams up to speed quickly.
ii. Navigate source code.
iii. Plan out new features before any programming takes place.
iv. Communicate with technical and non-technical audiences more easily.
v. It can also used by the validation and verification team
 UML is linked with object-oriented design and analysis.
Types of UML Diagrams
 UML standards identify 14 types of diagrams that are divided into
two groups, namely;
1. Structural UML diagrams: Structural UML diagrams, as the name
would suggest, show how the system is structured, including the classes,
objects, packages, components, etc. in the system and the relationships
between those elements. They are:

i. Class diagram

ii. Component diagram

iii. Deployment diagram

iv. Composite structure diagram

v. Object diagram

vi. Package diagram

vii. Profile diagram


Types of UML Diagrams

2. Behavioral UML diagrams: These UML diagrams


visualize how the system behaves and interacts with itself and
with users, other systems, and other entities.
i. Use case diagram

ii. Sequence diagram

iii. Timing diagram

iv. Interaction overview diagram

v. Communication diagram

vi. Activity diagram

vii. State diagram


Types of UML Diagrams
Types of UML Diagrams – Class Diagram

 Class Diagram shows the static structure of a system, including classes,


their attributes and behaviors, and the relationships between each class.
Types of UML Diagrams – Component diagram

 A component diagram is
essentially a more
specialized version of the
class diagram—the same
notation rules apply for
both.
 A component diagram
breaks a complex system
down into smaller
components and
visualizes the relationship
between those
components.
Types of UML Diagrams – Deployment diagram

 Deployment diagrams show how software is deployed on hardware


components in a system.
 These diagrams are most useful for systems engineers, and they usually
show performance, scalability, maintainability, and portability.
Types of UML Diagrams – Composite structure diagram

 Composite structure
diagrams to
represent the
internal structure of
a class and its
interaction points
with other parts of
the system.
 They are similar to
class diagrams
except they
represent individual
parts in detail as
compared to the
entire class.
Types of UML Diagrams – Object diagrams

 Object diagrams
show examples of
data structures at a
specific time.
 You could use a
class diagram to
show a structure
and then use object
diagrams as test
cases to verify the
completeness of
your class diagram.
 An object diagram is
similar to a class
diagram except it
shows the instances
of classes in the
system.
Types of UML Diagrams – Package diagram

 Package diagrams are used to show dependencies between different


packages in a system.
 A package, depicted as a file folder, organizes model elements, such as
use cases or classes, into groups.
Types of UML Diagrams – Use case diagram

 This type of UML


diagram is a high-
level overview of the
relationships
between actors and
systems, so it can be
a great tool for
explaining your
system to a non-
technical audience.
 The purpose of a use
case diagram in UML
is to demonstrate
the different ways
that a user might
interact with a
system.
Types of UML Diagrams – Sequence diagram

 A sequence diagram, sometimes referred to as an event


diagram or an event scenario.
 It represents a sequence of steps to achieve a use case
goal can be described in several ways.
 It shows the order in which objects interact.
 A sequence diagram simply depicts interaction between
objects in a sequential order i.e. the order in which these
interactions take place.
 Sequence diagram is a variant of the universal Interaction
diagrams. Other variants are Communication Diagrams,
Interaction Overview Diagrams, and Timing Diagrams
Types of UML Diagrams – Sequence diagram
Types of UML Diagrams – Activity diagram
 Activity Diagrams to
illustrate the flow of
control in a system.
 We can also use an
activity diagram to refer
to the steps involved in
the execution of a use
case.
 We model sequential
and concurrent
activities using activity
diagrams.
 An activity diagram
focuses on condition of
flow and the sequence
in which it happens.
Types of UML Diagrams – State diagram
 This UML diagram can visualize all possible states and the way the object
transitions from one state to the next.
 A state diagram describes ALL the possible states that an object can have, the
events under which an object changes state (transitions), and the conditions
that must be fulfilled before the transition will occur (guards).
 It is also referred to as a State machine diagram, State chart diagram or State
transition diagram.
Tools for creating UML Diagrams
 Some popular UML diagram creating tools:
1. Draw.io
2. Lucidchart
3. Visual Paradigm
4. StarUML
5. Edraw Max
6. Gliffy
7. Cacoo
Thank
s

You might also like