Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook,...

64
Budapest University of Technology and Economics Department of Measurement and Information Systems Modeling Requirements, Architectures, Behaviour ... The System Modeling Language (SysML) and the SYSMOD modeling approach

Transcript of Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook,...

Page 1: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

Budapest University of Technology and Economics Department of Measurement and Information Systems

Modeling Requirements, Architectures, Behaviour ...

The System Modeling Language (SysML) and the SYSMOD modeling approach

Page 2: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

Acknowledgement

Portions of this presentation are from

o Systems Engineering with SysML/UML, by Tim Weilkiens, published by Morgan Kaufmann Publishers, Copyright 2007 Elsevier Inc. All rights reserved.

o A Practical Guide to SysML, by Sanford Friedenthal, Alan Moore, and Rick Steiner, published by Morgan Kaufmann Publishers, Copyright 2009 Elsevier Inc. All rights reserved.

o IBM course, Requirements management

2

Page 3: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

Overview

Context

SysML Overview

SysML details + the SYSMOD Systems Engineering Methodology

3

Page 4: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

Systems Engineering Systems Engineering is a multidisciplinary approach to

develop balanced system solutions in response to diverse stakeholder needs

~ Integration Engineering o Software engineering o Hardware engineering o Mechanical engineering o Safety engineering o Security engineering o ...

~ Process Engineering System

o Military, airplane, car, aviation, railway interlocking, notebook, etc.

4

Page 5: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

Systems Engineering Process

V-model

5

Page 6: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

V-model – v2

6

EN50129

Page 7: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

7

Vision

Acceptance Tests Stakeholder

Requirements

Operational Use

System Tests System

Requirements

Component Tests Component

Requirements

V-model – v3

Pro

ble

m

Sp

ace

So

lutio

n S

pa

ce

Page 8: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

8

Stakeholder requirements

• A description of the problem

and its context

• Describes what stakeholders

want from the system

• Not the definition of the solution

(except for environment)

• Quality of results

• Created by stakeholders

System requirements

• An abstract representation of

the solution

• Describes what the system

will do

• Not the definition of the

design

• How well it does it

• Created by systems

engineers

“The user shall be able to ....” “The system shall do ….”

Differentiating Problem and Solution

Problem Solution

Page 9: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

9

analyze

& model

derive

requirements

and acceptance

strategy

Models

Acceptance Strategy Output Specification

agree

with

supplier

Input Specification

agree

with

customer

Acceptance Strategy

Request Change

Request Change

Request Change

Page 10: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

10

Vision

Acceptance Tests Stakeholder

Requirements

Operational Use

System Tests System Requirements

Component Tests Component

Requirements

Page 11: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

11

Functional modeling

Functional modeling

Functional modeling

Models Bridge Layers of Requirements

e.g Goal / Usage modeling

e.g. Functional modeling

Stakeholder Requirements

Subsystem Requirements

System Requirements

Vision

e.g. Performance modeling

Page 12: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

Importance of Traceability

12

Vision

Acceptance Strategy Stakeholder

Requirements

Operational Use

System Test System Requirements

Acceptance Strategy Architecture

Validating the product

Accepting the product

Verifying the product

Evaluating subsystems

satisfies

satisfies

satisfies

Impact Analysis

Page 13: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

Importance of Traceability

13

Vision

Acceptance Strategy Stakeholder

Requirements

Operational Use

System Test System Requirements

Acceptance Strategy Architecture

satisfies

satisfies

satisfies

?

?

Coverage analysis

Page 14: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

Overview

Context

SysML Overview

SysML details + the SYSMOD Systems Engineering Methodology

14

Page 15: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

SysML overview

„UML for Systems Engineering” o Supports the specification, analysis, design, verification

and validation of systems that include hardware, software, data, personnel, procedures, and facilities

Developed by OMG and International Council on Systems Engineering (INCOSE)

OMG SysML™ (http://www.omgsysml.org) o RFP – March 2003

o Version 1.0 – September 2007

o Version 1.1 – November 2008

o Version 1.2 – June 2010

o Version 1.3 – June 2012

15

Page 16: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

Relationship Between SysML and UML

UML 2

UML 2

Reuse

(1, 2)

UML

reused by

SysML

UML

not required

by SysML

(UML -

UML4SysML)

SysML

extensions to

UML

SysML

16

UML4SysML

SysML Profile

Page 17: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

SysML Diagram Taxonomy

17

Page 18: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

Aspects of SysML

18

Page 19: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

Overview

Context

SysML Overview

SysML details + the SYSMOD Systems Engineering Methodology

19

Page 20: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

Language vs. Methodology

Modeling Language

o Defines elements and their relationship

o Defines syntax and semantics

o What type of elements can be used during modeling?

o E.g. SysML

Development Methodology

o Defines the steps of analyzing and designing the system

o Defines the usage of the model elements and diagrams

o How shall the model be built?

o E.g. SYSMOD (SYStem MODeling) by Tim Weilkiens

20

Page 21: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

The SYSMOD approach

Analyzing Requirements

21

Page 22: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

The SYSMOD approach for design

22

Page 23: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

SysML

Represents behavior in terms of the ordering of actions based on the availability of inputs, outputs, and control, and how the actions transform the inputs to outputs

23

Activity diagram

Name of activity

Action in activity

Pin

Object

Parameter of activity

Object flow

Page 24: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

Describe Project Context

Car rental system o Works without staff

• Customer identification needed

o Central computer in radio compartment • Communicates with central

reservation system

• Collects usage data

• Comfort features – Navigation

– Radio

– Phone

– ...

24

Page 25: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

Determine requirements

25

Page 26: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

Identify stakeholders

26

Page 27: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

Identify stakeholders

27

Page 28: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

Collect requirements

28

Page 29: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

SysML

Requirements diagram Represents text-based requirements and their relationship with other requirements, design elements, and test cases to support requirements traceability

29

Requirements diagram

Type of context element

Name of context element

Name of diagram

Requirement

Requirement composition

Page 30: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

Collect requirements

30

Page 31: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

Model System Context

31

Page 32: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

Identify System Actors

32

Page 33: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

SysML

33

Block Definition Diagram Represents structural elements called blocks, and their composition and classification

Block definition diagram

Block Actor

Page 34: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

Model System-Actor Information Flow

34

Page 35: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

Identify System Interaction Points

35

Page 36: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

System Context

36

Page 37: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

Model Use Cases

38

Page 38: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

Model Use Cases

39

Page 39: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

SysML

40

Use Case Diagram Represents functionality in terms of how a system or other entity is used by external entities (i.e., actors) to accomplish a set of goals

Use case diagram

Use case

Actor Object flow

Page 40: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

Model Use Cases

Organizing use cases into packages

41

Page 41: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

SysML

Requirements traceability

42

Page 42: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

Describe Use Cases Essences

43

Page 43: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

Describe Use Cases Essences

44

Page 44: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

Describe Use Cases Essences

45

Page 45: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

Model Use Case Flows

46

Page 46: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

Model Object Flows

47

Page 47: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

Model Domain Knowledge

48

Page 48: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

Create Glossary

49

Supports better understanding

Page 49: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

The SYSMOD approach for design

50

Page 50: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

Model System/Actor Interaction

51

Page 51: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

SysML

52

Sequence Diagram Represents behavior in terms of a sequence of messages exchanged between parts

Sequence diagram

Page 52: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

Derive System Interfaces

53

Page 53: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

Model System Structures

54

Identify system components

Page 54: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

Model System Structures

55

Identify relation of components

Page 55: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

SysML

56

Internal Block Diagram Represents interconnection and interfaces between the parts of a block

Internal block diagram

Part: usage of block type

Flow port

Standard port

Interfaces

Item flow

Page 56: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

Model System Structures

57

Structural allocation

Page 57: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

Model System Structures

58

Functional allocation:

Actions to System components

Page 58: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

Model System Structures

59

Traceability to requirements:

Blocks satisfying a req.

Page 59: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

Derive State Model

60

Page 60: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

Derive State Model

61

Page 61: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

SysML

62

State Machine Diagram Represents behavior of an entity in terms of its transitions between states triggered by events

Page 62: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

Parametrics

Constraints on block properties

66

Page 63: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

SysML

67

Parametric Diagram Represents constraints on property values used to support engineering analysis

Parametric diagram

Constraint property node

Block value Value binding

Page 64: Modeling Requirements, Architectures, Behaviour · PDF filerailway interlocking, notebook, etc. 4 . ... e.g. Functional modeling Stakeholder Requirements ... reservation system

Variant Management

68