Professional Documents
Culture Documents
Chapter 5
Chapter 5
System modelling
Context models
Interaction models
Structural models
Behavioral models
Model-driven engineering
What
the process of developing abstract models of a
system,
Different view/perspective.
How
Unified modeling language (UML).
Why
Analyst to understand system functionality
To communicate with customers.
30/10/2014 Chapter 5 System Modeling 3
System perspectives
External perspective:
model system environment (context model)
Interaction perspective
between a system and its environment
between system components with each other.
Structural perspective
The structure system data
Behavioral perspective
model the system dynamics and how it responds to
events.
30/10/2014 Chapter 5 System Modeling 4
UML diagram types
Activity diagrams
Sequence diagrams
Class diagrams
State diagrams
Architectural models
10
Interaction models
Interaction
user-system interaction
system-system interaction.
components interaction.
Tools
Why
• developed to support requirements elicitation
• each use case represents a discrete task that interacts with
the system.
Formats
• Diagram: provides an overview of the use case
• Textual: details description.
Components
• Actor: people or other systems.
• Ellipse: actual use-case
Why
Objects
30/10/2014
Sequence diagram for "View patient
information“ use-case
Generalization
‘is-a’ relationship
A solid line with a hollow arrowhead that point from the
child to the parent class
Simple association
A structural link between two peer classes
A solid line connecting two classes
Aggregation
‘part-of’ relationship
Objects of Class1 and Class2 have separate lifetimes
A solid line with an unfilled diamond at the association
end connected to the class of composite
Composition
Special type of aggregation
Class2 cannot stand by itself
A solid line with filled diamond at the association end
connected to the class of composite
Attribute / Operation
+ denotes public attributes or operations
- denotes private attributes or operations
# denotes protected attributes or operations
~ denotes package attributes or operations
Behavioral models
• models the dynamic behavior of a system
(execution)
• show what happens when a system responds to a
stimulus from its environment.
Stimuli
• Data: some data arrives to be processed by the system.
Representation
UML state-chart.
State Description
Waiting The oven is waiting for input. The display shows the current time.
Half power The oven power is set to 300 watts. The display shows ‘Half power’.
Full power The oven power is set to 600 watts. The display shows ‘Full power’.
Set time The cooking time is set to the user’s input value. The display shows
the cooking time selected and is updated as the time is set.
Disabled Oven operation is disabled for safety. Interior oven light is on. Display
shows ‘Not ready’.
Enabled Oven operation is enabled. Interior oven light is off. Display shows ‘Ready
to cook’.
Operation Oven in operation. Interior oven light is on. Display shows the timer
countdown. On completion of cooking, the buzzer is sounded for five
seconds. Oven light is on. Display shows ‘Cooking complete’ while buzzer is
sounding.
Stimulus Description
Activity Diagrams
capture high level activities aspects
Data-driven
Completion of activity causes state transition
State Diagrams
Focus on class/system states (active, archived, closed, …)
Event-driven
Pros
System abstraction
Cons
Models for abstraction, and not necessarily right
for implementation.
Lots of magic.
Start UML
draw.io
Visual paradigm