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
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
Overview
Context
SysML Overview
SysML details + the SYSMOD Systems Engineering Methodology
3
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
Systems Engineering Process
V-model
5
V-model – v2
6
EN50129
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
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
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
10
Vision
Acceptance Tests Stakeholder
Requirements
Operational Use
System Tests System Requirements
Component Tests Component
Requirements
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
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
Importance of Traceability
13
Vision
Acceptance Strategy Stakeholder
Requirements
Operational Use
System Test System Requirements
Acceptance Strategy Architecture
satisfies
satisfies
satisfies
?
?
Coverage analysis
Overview
Context
SysML Overview
SysML details + the SYSMOD Systems Engineering Methodology
14
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
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
SysML Diagram Taxonomy
17
Aspects of SysML
18
Overview
Context
SysML Overview
SysML details + the SYSMOD Systems Engineering Methodology
19
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
The SYSMOD approach
Analyzing Requirements
21
The SYSMOD approach for design
22
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
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
Determine requirements
25
Identify stakeholders
26
Identify stakeholders
27
Collect requirements
28
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
Collect requirements
30
Model System Context
31
Identify System Actors
32
SysML
33
Block Definition Diagram Represents structural elements called blocks, and their composition and classification
Block definition diagram
Block Actor
Model System-Actor Information Flow
34
Identify System Interaction Points
35
System Context
36
Model Use Cases
38
Model Use Cases
39
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
Model Use Cases
Organizing use cases into packages
41
SysML
Requirements traceability
42
Describe Use Cases Essences
43
Describe Use Cases Essences
44
Describe Use Cases Essences
45
Model Use Case Flows
46
Model Object Flows
47
Model Domain Knowledge
48
Create Glossary
49
Supports better understanding
The SYSMOD approach for design
50
Model System/Actor Interaction
51
SysML
52
Sequence Diagram Represents behavior in terms of a sequence of messages exchanged between parts
Sequence diagram
Derive System Interfaces
53
Model System Structures
54
Identify system components
Model System Structures
55
Identify relation of components
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
Model System Structures
57
Structural allocation
Model System Structures
58
Functional allocation:
Actions to System components
Model System Structures
59
Traceability to requirements:
Blocks satisfying a req.
Derive State Model
60
Derive State Model
61
SysML
62
State Machine Diagram Represents behavior of an entity in terms of its transitions between states triggered by events
Parametrics
Constraints on block properties
66
SysML
67
Parametric Diagram Represents constraints on property values used to support engineering analysis
Parametric diagram
Constraint property node
Block value Value binding
Variant Management
68