Systems Analysis and Design: Introduction To UML
Systems Analysis and Design: Introduction To UML
Examples:
• System: Aircraft
• Models: Flight simulator, machine model
• Views: Radar, electrical wiring, fuel system
Systems, Models and Views
Flightsimulator
Weather
Radar
Aircraft
Model 2
View 2
View 1
System
View 3
Model 1
Electrical
Wiring
Machine Model
UML Models, Views, Diagrams
• UML is a multi-diagrammatic language, each diagram is a
view into a model
– Diagram presented from the aspect of a particular stakeholder
– Provides a partial representation of the system
– Is semantically consistent with other views
• Example views:
Type of Diagrams
How Many Views?
• Views should to fit the context
– Not all systems require all views
– Single processor: drop deployment view
– Single process: drop process view
– Very small program: drop implementation view
• The use case model is the set of all use cases. It is a complete
description of the functionality of the system and its environment
Actors
• An actor models an external entity which
communicates with the system:
– User
– External system
– Physical environment User
myB.service(); myA.doSomething()
;
Hollow diamond on
void the Collection side
doSomething()
No sole ownership implied
aModule.service();
Composition
Employee
Team
-Name : string
-members : Employee +ID : long
1 #Salary : double
-adfaf : bool
*
+getName() : string
+setName()
-calcInternalStuff(in x : byte, in y : decimal)
members[0] =
new
Employee(); Filled diamond on side of the
Collection
…
delete
members[0];
Inheritance
Standard concept of inheritance
Base Class
Derived Class
Multiplicities Meaning
zero or one instance. The notation n . . m
0..1
indicates n to m instances.
no limit on the number of instances
0..* or *
(including none).
1 exactly one instance
1..* at least one instance
UML Class Example
Learning Objectives
7.1 History of UML
7.2 Systems, Models and Views
7.3 Design Use cases
7.4 Design Class diagrams
7.5 Design Interaction diagrams
7.6 Design another types of diagrams
Interaction Diagrams
• Interaction diagrams are dynamic, they describe how objects
collaborate
• Communication diagram:
– Shows the objects along with the messages that travel from one to
another
– Shows the messages the objects send each other
• Sequence diagram:
– Indicates what messages are sent and when
– Time progresses from top to bottom
– Objects involved are listed left to right
Communication Diagram: Example
Sequence Diagram: Format
Actor from
Use Case Objects
Activation 2
3
• Graphical depiction
of components
Package Diagrams
• To organize complex class diagrams, you can group classes into
packages. A package is a collection of logically related UML
elements
• Notation
– Packages appear as rectangles with small tabs at the top.
– The package name is on the tab or inside the rectangle.
– The dotted arrows are dependencies. One package depends on
another if changes in the other could possibly force changes in
the first.
– Packages are the basic grouping construct with which you may
organize UML models to increase their readability
Package Diagrams: Example
Deployment Diagrams
• Shows the physical architecture of the hardware and software of the deployed
system
• Nodes
– Typically contain components or packages
– Usually some kind of computational unit; e.g. machine or device (physical or
logical)