UML Dr Kevin Howard khoward@sula.co.uk Tel:07534 679944 Why use - - PowerPoint PPT Presentation

uml
SMART_READER_LITE
LIVE PREVIEW

UML Dr Kevin Howard khoward@sula.co.uk Tel:07534 679944 Why use - - PowerPoint PPT Presentation

Enabling Programmes to Deliver UML Dr Kevin Howard khoward@sula.co.uk Tel:07534 679944 Why use the UML for Systems Engineering ? UML (Unified Modelling Language) OMG Industr y standar d UML For Systems? Enabling Programmes to Deliver


slide-1
SLIDE 1

Enabling Programmes to Deliver

UML

Dr Kevin Howard khoward@sula.co.uk

Tel:07534 679944

slide-2
SLIDE 2

Why use the UML for Systems Engineering ?

UML For Systems?

UML (Unified Modelling Language)

OMG Industr y standar d

slide-3
SLIDE 3

Enabling Programmes to Deliver

Elements of the UML

slide-4
SLIDE 4

Elements of The UML > Actors > Use cases

– And use case Diagrams

> Classes

– And class diagrams

> Sequence Diagrams > State Diagrams > Objects

– And structured class diagrams

slide-5
SLIDE 5

Actors

Actor name

Defines elements that interface with the system

human user external system environment

> a name > a textual description (role, missions,…)

Is described by

slide-6
SLIDE 6

Use Case

Use case name

>A use case

–A coherent unit of functionality –Provided by the system or a sub-system –To fulfil specific needs of an actor or actors

Actor name use case activation is controlled by events

slide-7
SLIDE 7

Structure of use cases

– a name – a textual description

  • pre conditions
  • events that trigger the

use case

  • main and alternative

scenarios

  • exception
  • post conditions

– requirements

Use case name

Description in UML tool Defined in a requirement management tool

slide-8
SLIDE 8

Use Case Diagram

Communication relationship System border

>Use Cases connect together

–To tell a story of system behaviour and use –Use Case Diagrams show relationships

  • and dependencies

Driver Operator Mine Ground Route Clearance Route Proving Area Clearance Record Mark Route Detect Mines Mark Mines Classification Location Neutralisation «include» «include» «include» «include» «include» «include» «include» «include» «extend» Operation view

slide-9
SLIDE 9

Use Case Relationships

Place order Request catalogue

Extension use case (additional behaviour)

Arrange payment Arrange credit generalisation

Additional behaviour into the base use case Inherits from "arrange payment" use case and adds specific features actor Association: communication path between an actor and use case Extend: Additional behaviour non-essential to the completion of primary use Include: Additional behaviour necessary to perform primary use generalisation: A more universal representation of specific use

TELL A STORY!

slide-10
SLIDE 10

Class

Class name attributes Operations Speed Vibration Bicycle Transport() Reduce_Vibration()

– An abstraction – Describes a group of objects with common:

  • Properties (attributes)
  • Services (operations)
  • Relationships
slide-11
SLIDE 11

System or component A component Sub-systems

A singularity of a class and a package

A component

A single class that needs no further partitioning Can be implemented from the description

A System A System

slide-12
SLIDE 12

Class

attribute1 attribute2 Class name

  • peration1()
  • peration2()

Adopt a naming convention

 Model properties (e.g. weight, acceleration, fuel consumption)  Model calculated information (e.g. acceleration = F(weight, engine torque, transmission ratio,...)) or static information  may have default values  represent budget of the system attributes  Model behaviour of the class (e.g. start, accelerate, stop, turn)  Associated with the functional requirements

slide-13
SLIDE 13

Class Diagram

Aggregation

Generalisation Association Connection between classes Aggregate Parts Subclass (child) Composite or structured class Parts Superclass (parent) Composition is a form of aggregation with strong

  • wnership and coincident lifetime of part with the whole

Keyboard Mouse Input_Device Window

{constraint}

Scrollbar Panel Header Point Polygon

slide-14
SLIDE 14

Class Diagram

Autopilot Power Ouput RPM Gear Engine X Position Y Position Aircraft Position Set Position Speed Calibration Constant Wind Speed Sensor Value Calibrate Direction Sensor Altitude Sensor Attitude Sensor

Attitude Sensor

1 *

slide-15
SLIDE 15

Association

Company Person Salary Job

– It is an association that is also a class – It defines a set of features that belongs to the relationship itself and not to any of the classes

slide-16
SLIDE 16

Sequence Diagram

> An interaction between actors, the system or the sub-systems

– chronological order – it shows the set of messages they send to each other

This is a comment that explains the first sequence Service2() message(data) service1(data)

Actor name Actor name The System

This is a comment that explains the second sequence service4(data) service3(data)

Time constraint

Communication between objects – expects a response

slide-17
SLIDE 17

A Sequence Diagram

time

Detect Mines Description Instance :GPR Instance :Fusion Instance :IR Instance :Metal Instance :Position Instance :Display Mine Ground Trigger mine detection. mine present Report detection Report Confirm position Request Position Position report Position report Environment update State request State assessment Ground state Ground report Ground report Assess report Assess Request coroboration Coroborate Request coroboration Coroborate Coroborated Coroborated Declare detection Detection

slide-18
SLIDE 18

State Diagram

> Models the dynamic behaviour of a class

– Primarily event-driven

For each state the services provided by the system are defined idle working connecting connected

  • nHook
  • ffHook

Ready

slide-19
SLIDE 19

State Diagram

Based upon Rational Unified Process

Event Y / Action4 On Event Y get State 1 and perform Action4 State 1 Event Z exit/ Action 3 On Event Z perform Action3 and leave State1 Action1 is performed On Event X, perform Action2 entry/Action1 event X/ Action2

slide-20
SLIDE 20

System States Example

Availability Unavailable ::In Maintenance Available ::In Transit ::Standby ::Operating ::Stored ::Training ::Transporting Unavailable ::In Maintenance ::In Maintenance Available ::In Transit ::Standby ::Operating ::Stored ::Training ::Transporting ::In Transit ::Standby ::Operating ::Stored ::Training ::Transporting /pac k /F ault /Operational /Unpack /S top /M obile /F ault /Operational /Configure /Configure /S tow /S tow /P ac k /unpack /S tatic /S tart

slide-21
SLIDE 21

Package

>Packages

–Groups the model elements within a boundary –May include other packages

>Defines responsibilities

–A framework for information management –Support permission and configuration control

NAME <<stereotype>> The package can have further description by using a stereotype

slide-22
SLIDE 22

Package

ACM <<Logical Component>> ACMManager <<Logical Component>> CPDLCEquipedAircraft <<Logical Component>> CPDLCConnection

1 *

* 1

slide-23
SLIDE 23

Package example

Baseline Protocol BTID system ::LowLevel Protocol ::Real tim e control ::User Interface ::Non-realtim e processing BTID system ::LowLevel Protocol ::Real tim e control ::Real tim e control ::User Interface ::Non-realtim e processing Antenna m m W ::Transm itter ::Receiver ::Interrogate Antenna ::Transpond Antenna m m W ::Transm itter ::Receiver ::Transm itter ::Receiver ::Interrogate Antenna ::Transpond Antenna RF_IF ::IF Processing ::IF Processing 1 1 1 1 1 1 1 2 1 1 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

slide-24
SLIDE 24

Interfaces

UML Interface management Primarily for software Expected and provided functionality …Not very good for systems - its only addresses functionality

slide-25
SLIDE 25

Structured Class

:WheelAssembly abs:ABSBrakeSystem wheel1:Wheel O..4 av1: SpeedSensor ecu1:Electronic Control Unit whCyl1: WheelCylinder mv1: ModulatorValve magneticPluse: Energy <<control>> valvePosition:Signal force: HydraulicFluid force:Mech tire1:Tire pVerticalLoad loadForce:Mech pHydraulicIn pHydraulicIn pPositionSignal pHydraulicOut pFrequency pHydraulic loadForce:Mech

class TransportationSystem

slide-26
SLIDE 26

Security

Layered Interface Specification

Information Layer Codification Layer Management Layer Physical Layer Problem Logical Solution Physical Solution Carrier Layer Assurance Solution Protocol Transport Solution

slide-27
SLIDE 27

Interface 1

<<Interface 1>>

Event 1 Event 2 . Event 3

Stereotype <<Interface 1>>

Connector M

<<Interface 1>>

Connector F

<<Interface 1>>

Signal

<<Signal 2>> Attributes Frequency Volts Amps Operations Codify Encrypt Decrypt

State State

Provided Service Required Service . Provided Service Signal

<<Signal 1>> Attributes Frequency Volts Amps Operations Codify Encrypt Decrypt

Provided Service Required Service . Provided Service

Owns Owns Owns

External External

API

<<Signal 1>> <<Signal 2>>

slide-28
SLIDE 28

Modelling

System A System B Connector M Connector F

Provided Service Required Service . Provided Service Required Service Provided Service . Required Service <<Interface 1>>