Académique Documents
Professionnel Documents
Culture Documents
UML
Instructor: Dr. Hany H. Ammar
Dept. of Computer Science and
Electrical Engineering, WVU
OUTLINE
OUTLINE
Requirements
Engineering
Implementati
on
Engineering
Design
Testing
SARAD
Sys Arch
Design
System
Reqts
Analysis
Software
Qual
Software
Test
IntegraSoftware
tion SCR, T/VRR
Code
Software Item 1:
Software & Test
SIP,T/VPr
Software Detailed
Design EOCR, SCR,T/VPr, T/VRR
Arch.
Software
Design
Reqts.
SRD, UDD
Analysis
Software
SAD, SIDD, DBDD, T/VP
Qual
SRD, UDD
Software
Test
IntegraSoftware
tion
Code
Software Item 2:
Software & Test
Software Detailed
Design
Arch.
Software
Design
Reqts.
Analysis
Software
Installation
System
Qual
System
Test
Integration
T/VRR
SCR
T/VPr
T/VRR
SRS
Hardware items
Software
Acceptance
Support
T/VRR
SCR
Supporting Processes: Documentation, CM, QA, Verification, Validation, Joint Review, Audit, Problem resolution
SCMP, SCMR, SCIR, SQAP, SQAR, SVRR, PR/PRR
Organizational Processes: Management, Infrastructure, Improvement, Training
OUTLINE
The development process
Reviewing Object Oriented Analysis and
Design
An Object:
OUTLINE
The development process
Reviewing Object Oriented Analysis and
Design
Obj y:
Class B
3: Set_Alarm(message)
OOA (cont.)
Example:
The Static
Analysis Model
Class diagram
The dynamic
Model:
A Scenario
Of
Interactions
OOA (cont.)
OOA starts by identifying domain objects
from the requirements model (Use-Case Models)
1. Discovering Objects
OOA (contd)
OOA (contd)
2. Define Class Hierarchies
Generalization
Specialization ( IS_A)
Sensor
Brake Sensor
Engine Sensor
OOA (contd)
3. Class Relationships
Types
Association
Aggregation
Inheritance
Cardinality ( Multiplicity)
(
Binary, Many, .. )
OOA (contd)
Example of identifying Class diagrams with Relationships, Multiplicities,
Attributes, and operations (E-Commerce)
OOA (contd)
4. Object Attributes
OOA (contd)
5.
OOA (contd)
6. Object Services
OUTLINE
The development process
Reviewing Object Oriented Analysis and
Design
OOD (Contd)
3.
Coupling:
The manner and degree of interdependence between classes
(objects)
Cohesion:
The degree and manner to which the services or tasks performed by
a component or an object are related to each other.
Modularity
Understandability
Decomposability
Clarity
OUTLINE
UML Concepts
The UML may be used to:
2.
UML Concepts
USE CASES
SCENARIOS
Requirements
Engineering
ANALYSIS
ANALYSIS
Specify Domain CLASS DIAGRAM(S)
Objects
Time
System/Object
SEQUENCE
DIAGRAMS
StateChart
DIAGRAMs
OPERATION CONTRACTS
Architectural
SUBSYSTEM CLASS/
Design
Include
OR COMPONENT
Design Objects
DIAGRAMS
DEPLOYMENT DIAGRAM
DESIGN DIAGRAMS
Detailed DESIGN
Object
Design
IMPLEMENTATION
CHOICES
IMPLEMENTATION
IMPLEMENTATION
Activity DIAGRAMS
PROGRAM
D
A
T
A
D
I
C
T
I
O
N
A
R
Y
USE CASES
SCENARIOS
Requirements
Engineering
ANALYSIS
ANALYSIS
Specify Domain CLASS DIAGRAM(S)
Objects
Time
System/Object
SEQUENCE
DIAGRAMS
StateChart
DIAGRAMs
OPERATION CONTRACTS
Architectural
SUBSYSTEM CLASS/
Design
Include
OR COMPONENT
Design Objects
DIAGRAMS
DEPLOYMENT DIAGRAM
DESIGN DIAGRAMS
Detailed DESIGN
Object
Design
IMPLEMENTATION
CHOICES
IMPLEMENTATION
IMPLEMENTATION
Activity DIAGRAMS
PROGRAM
D
A
T
A
D
I
C
T
I
O
N
A
R
Y
Time
SCENARIOS
Requirements
Engineering
ANALYSIS
Specify Domain
Objects
USE CASES
ANALYSIS
CLASS DIAGRAM(S)
Time
System/Object
SEQUENCE
DIAGRAMS
StateChart
DIAGRAMs
OPERATION CONTRACTS
Architectural
SUBSYSTEM CLASS/
Design
Include
OR COMPONENT
Design Objects
DIAGRAMS
DEPLOYMENT DIAGRAM
DESIGN DIAGRAMS
Detailed DESIGN
Object
Design
IMPLEMENTATION
CHOICES
IMPLEMENTATION
IMPLEMENTATION
Activity DIAGRAMS
PROGRAM
D
A
T
A
D
I
C
T
I
O
N
A
R
Y
Requirements
Engineering
USE CASES
SCENARIOS
ANALYSIS
ANALYSIS
Specify Domain CLASS DIAGRAM(S)
Objects
Time
System/Object
SEQUENCE
DIAGRAMS
StateChart
DIAGRAMs
OPERATION CONTRACTS
Architectural
Design
Include
Design Objects
SUBSYSTEMS /
CLASS/
OR COMPONENT
DIAGRAMS
DEPLOYMENT DIAGRAM
DESIGN DIAGRAMS
Detailed DESIGN
Object
Design
IMPLEMENTATION
CHOICES
IMPLEMENTATION
IMPLEMENTATION
Activity DIAGRAMS
PROGRAM
D
A
T
A
D
I
C
T
I
O
N
A
R
Y
Digital
Sound Recorder Case Study
Define the subsystems/components and their dependencies
The dynamic
Model:
A Scenario
Of
Interactions
Requirements
Engineering
SCENARIOS
ANALYSIS
ANALYSIS
Specify Domain CLASS DIAGRAM(S)
Objects
Architectural
SUBSYSTEM CLASS/
Design
Include
OR COMPONENT
Design Objects
DIAGRAMS
Detailed DESIGN
Object
Design
USE CASES
IMPLEMENTATION
CHOICES
IMPLEMENTATION
System/Object
SEQUENCE
DIAGRAMS
StateChart
DIAGRAMs
Time
D
A
T
A
D
I
OPERATION CONTRACTS
C
T
DESIGN SEQUENCE /or
I
COLLABORATION DIAGRAMS. O
DEPLOYMENT DIAGRAM
N
DESIGN DIAGRAMS
A
R
Y
IMPLEMENTATION
Activity DIAGRAMS
PROGRAM
Digital
Sound
Recorder
Case
Study
Requirements
Engineering
USE CASES
SCENARIOS
ANALYSIS
ANALYSIS
Specify Domain CLASS DIAGRAM(S)
Objects
Time
System/Object
SEQUENCE
DIAGRAMS
StateChart
DIAGRAMs
OPERATION CONTRACTS
Architectural
SUBSYSTEM CLASS/
Design
Include
OR COMPONENT
Design Objects
DIAGRAMS
DEPLOYMENT DIAGRAM
DESIGN DIAGRAMS
Detailed DESIGN
Object
Design
IMPLEMENTATION
CHOICES
IMPLEMENTATION
IMPLEMENTATION
Activity DIAGRAMS
PROGRAM
D
A
T
A
D
I
C
T
I
O
N
A
R
Y
Component Diagram
Register.exe
Course registration
System example
PeopleInfo
CourseInfo
Course
StudentInfo
CourseOffering
ProfessorInfo
Component Diagram:
Components Interfaces
Registration.exe
Billing
System
Billing.exe
Requirements
Engineering
USE CASES
SCENARIOS
ANALYSIS
ANALYSIS
Specify Domain CLASS DIAGRAM(S)
Objects
Time
System/Object
SEQUENCE
DIAGRAMS
StateChart
DIAGRAMs
OPERATION CONTRACTS
Architectural
SUBSYSTEM CLASS/
Design
Include
OR COMPONENT
Design Objects
DIAGRAMS
DEPLOYMENT DIAGRAM
DESIGN DIAGRAMS
Detailed DESIGN
Object
Design
IMPLEMENTATION
CHOICES
IMPLEMENTATION
IMPLEMENTATION
Activity DIAGRAMS
PROGRAM
D
A
T
A
D
I
C
T
I
O
N
A
R
Y
Deployment Diagram
Registration
Database
Defines the HW
Network
configuration
Main
Building
Library
Dorm
Deployment Diagram
Digital Sound Recorder Case Study
Summary of UML
http://en.wikipedia.org/wiki/List_of_Unified_Modeling_Language_tools