Software Engineering
UML – CHAPTER I
Introduction
B. Wakim
Course Syllabus
UML
Use case diagrams
Class diagrams
Sequence diagrams
Activity diagrams
Component and Deployment diagrams
Exercises to solve
MVC Model in UML
Final project
07/11/2020 I3301- BWAKIM 2
Outline
Introduction
Why we model?
What is UML and why we use UML?
How to use UML diagrams ?
UML Modeling
07/11/2020 I3301- BWAKIM 3
Why We Model
We build models so that we can see and better
understand the system we are developing.
Model is built to
Communicate the desired structure and behavior of
the system
Visualize and control the system’s architecture
Better understand the system that being built
Manage risk
Expose opportunities for simplification and reuse
07/11/2020 I3301- BWAKIM 4
What is UML and Why we use UML?
UML → “Unified Modeling Language” for:
Visualizing
Specifying
Constructing
Documenting
Language: express idea, not a methodology
UML is a notation and a process
Modeling: Describing a software system at a high level of
abstraction
Unified: UML has become a world standard
Object Management Group (OMG): www.omg.org
07/11/2020 I3301- BWAKIM 5
What is UML and Why we use UML?
It is a industry-standard graphical language for specifying, visualizing,
constructing, and documenting the artifacts of software systems
The UML uses mostly graphical notations to express the OO analysis and
design of software projects.
Simplifies the complex process of software design
Why we use UML?
Use graphical notation: more clearly than natural language (imprecise) and
code (too detailed).
Help acquire an overall view of a system.
UML is not dependent on any one language or technology.
UML moves us from fragmentation to standardization.
07/11/2020 I3301- BWAKIM 6
How to use UML diagrams ?
Types of UML Diagrams used to design software
system?
Use Case Diagram
Class Diagram
Sequence Diagram
Collaboration Diagram
Activity Diagram - State Diagram
Component Diagram
Deployment Diagram
This is only a subset of diagrams … but are most widely used
07/11/2020 I3301- BWAKIM 7
UML Modeling
State
Use Case State
Diagrams State
Use Case
Diagrams Diagramme
Diagrams State
Diagrammes
Diagrams de de Classes Diagrams
Diagrammes
Diagrams
cas d’utilisation d’objets
Use Case
Use Case
Diagrams
Diagrammes
Diagrams
de séquence
Scenario State
Scenario
Diagrams State
Diagrams
Diagrammes
Diagrams Modèle Diagramme
Diagrams
de collaboration de composants
Scenario Component
Scenario
Diagrams Component
Diagrammes Diagrams
Diagrams Diagrammes Diagrammes
Diagrams
d’états-transitions d’activités de déploiement
07/11/2020 I3301- BWAKIM 8
UML Modeling
Requirements Use Case Models
Analysis Class Sequence
Design Activity Collaboration
Component. Deployment.
Implementing
07/11/2020 I3301- BWAKIM 9