SlideShare a Scribd company logo
1 of 32
Download to read offline
Intoduction to SysML
– a modeling language for Systems Engineering
SummIT 2013,
Axelborg 22. maj 2013
Ingeniørdocent Finn Overgaard Hansen,
foh@iha.dk
Department of Engineering
Aarhus University
Ver. 22.5.2013
Slide 2
Agenda
Systems Engineering and SysML
What is SysML?
New SysML concepts and diagrams
1. SysML Requirements
2. SysML Structure
3. SysML Behaviour
4. SysML Parametric
Perspectives for SysML & Summary
Slide 3
Model Based
Systems Engineering (MBSE)
• From a document-based to a model-based
approach
• A model-based approach requires modeling
concepts and tools
• MBSE: producing and controlling a coherent
System Model
• SysML is created to realize an MBSE approach
based on a System model of the wanted system
• SysML is a modeling language not a System
Engineering (SE) process
Slide 4
What is SysML?
• A graphical modeling language created in
response to the UML for Systems Engineering
RFP developed by OMG and INCOSE.
– a UML Profile that represents a subset of UML 2 with
important extensions
• Supports the specification, analysis, design,
verification and validation of systems that
include hardware, software, data, personnel,
procedures, and facilities
• Supports model and data interchange via XMI
SysML is a Critical Enabler for Model Driven or
Model Based Systems Engineering
Slide 5
SysML Specification
- History and Status
• Nov. 1997: UML V1.1 launched by OMG
• March 2003: The UML for Systems Engineering RFP
(Request for Proposal) was developed jointly by OMG and
INCOSE
– The SysML specification was developed in response
to these requirements by the diverse group of tool
vendors, end users, academia, and government
representatives
• July 2005: UML V2.0
• Sept. 2007: OMG SysML v.1.0
• Nov. 2008: OMG SysML v1.1 (256 pages)
• June 2012: OMG SysML v.1.3 (doc.id: 2012-06-01, 250 pages)
Slide 6
System Model and
HW/SW Components
SysML
UML
Slide 7
Comparison of SysML
and UML
Slide 8
SysML Diagram Taxonomy
SysML
Diagram
Behavior
Diagram
Requirement
Diagram
Structure
Diagram
Block
Definition
Diagram
Internal
Block
Diagram
Package
Diagram
Parametric
Diagram
Use Case
Diagram
State
Machine
Diagram
Sequence
Diagram
Activity
Diagram
Same as UML 2.x
Modified from UML 2.x
New Diagram Type
Slide 9
The 4 Pillars of SysML
1:
2: 3:
4:
Slide 10
1. SysML Requirements
• Requirement Diagram – a NEW diagram type
• Graphical visualization of requirements
– Functional
– Non-functional
• Requirements can graphical be related to:
– Other requirements
– Design elements
– Test Cases
• Standard stereotypes:
– derive, satisfy, verify, refine, trace and copy
– Used for requirement traceability
Slide 11
Requirements Diagram (req) - Example
Slide 12
Requirements Traceability - Example
Slide 13
2. SysML Structure
• UMLs class concept is replaced with the Block
concept
• A Block connects to other blocks via Ports
• Class diagrams are replaced with Block
Definition Diagrams (bdd)
• Each Block has an Internal Block Diagram
(ibd) where the internal parts are connected via
ports
– a replacement for class composite diagrams
• Ports can connect discrete as well as
continuous flows of material or information
Slide 14
Blocks are Basic Structural Elements
Slide 15
Block Definition Diagram (bdd) - Example
Slide 16
Internal Block Diagram (ibd) for an
Automobile Domain
Port
Slide 17
Block Definition Diagram (bdd) - Example
Slide 18
Internal Block Diagram (ibd) - Example
Part
Running the Vehicle Software
Slide 19
Proxy Ports
<>
Ibd [Block] Camera [Nested flow]
:Electronic Assembly
:MPEG Converter
:Image Processor
:Video
:MPEG4
:Image
camera i/o:
Camera
Interface
:Light
:Camera Module
:Optical Assembly
:Imaging Assembly
:Light
:Light
:Image
Proxy port
«flow specification»
Camera Interface
flowProperties
out digital video: MPEG4
out analog video: Composite
in control: Control Data
in startup sig: Start Up
Slide 20
Standard service based Ports (Full port)
Monitoring Station
Camera
Control camera requests
getCameraStatus(in cameraId: Integer, in cameraStatus: String)
testCameras()
panCamera(in strength: Integer)
tiltCamera(in strength: Integer)
operations
Camera Control
«interface»
Provided
interface
Required interface
Slide 21
3. SysML - Behavior
• Activity diagrams are enhanced with new
concepts
• Flows can be continuous and model
information as well as material flow
• Control flows are introduced
• SysML activities are based on token-flow
semantics related to Petri-Nets
• Tokens corresponds to values of inputs, outputs
and control
• Activities can have pins (acting as a buffer)
Slide 22
Activity Diagram (act) Notation
Flows can be discrete, streaming or control
Slide 23
Activity Diagram (act) - Example
swimlanes
Slide 24
Activity Diagram - decomposed
:CollectImages
:CaptureVideo
:GenerateVideo
Outputs
«optional»
current image
{stream}
captured image
{stream}
«optional»
MPEG output
{stream}
«optional»
Composite out
{stream}
act Operate Camera [Object Flow]
Object flow
video out
{stream}
input signal
{stream}
Have subdiagrams
Activity parameter
node
Slide 25
4. SysML Parametric
• Parametric Diagram (par) – a NEW diagram type
• Used to express constraints (equations) between value
properties
– Provides support for engineering analysis (e.g., performance,
reliability)
• Constraint block captures equations shown on a bdd
– Expression language can be formal (e.g., MathML, OCL) or informal
– A computational engine is defined by applicable analysis tool and not
by SysML
• Parametric diagrams represents the usage of the
constraints in an analysis context
– Binding of constraint usage to value properties of blocks (e.g., vehicle mass
bound to F= m × a)
• Parametric enable integration of engineering analysis
with design models
Slide 26
BDD Parametric Constraint Blocks
Stereotype
Slide 27
Parametric Diagram (par)
- Example for a block
Value bindings
Slide 28
Cross Connecting Model Elements
req [package] VehicleSpecifications
[Requirements Diagram - Braking Requirements]
Braking Subsystem
Specification
Vehicle System
Specification
id=“102”
text=”The vehicle shall stop
from 60 mph within 150 ft
on a clean dry surface.”
«requirement»
StoppingDistance
id=”337"
text=”Braking subsystem
shall prevent wheel lockup
under all braking conditions.”
«requirement»
Anti-LockPerformance
«deriveReqt»
req [package] VehicleSpecifications
[Requirements Diagram - Braking Requirements]
Braking Subsystem
Specification
Vehicle System
Specification
id=“102”
text=”The vehicle shall stop
from 60 mph within 150 ft
on a clean dry surface.”
«requirement»
StoppingDistance
SatisfiedBy
«block»Anti-LockController
id=”337"
text=”Braking subsystem
shall prevent wheel lockup
under all braking conditions.”
«requirement»
Anti-LockPerformance
«deriveReqt»
act PreventLockup [Activity Diagram]
DetectLossOf
Traction
Modulate
BrakingForce
TractionLoss:
par [constraintBlock] StraightLineVehicleDynamics [Parametric Diagram]
:Accelleration
Equation
[F = ma]
:VelocityEquation
[a = dv/dt]
:DistanceEquation
[v = dx/dt]
:BrakingForce
Equation
[f = (tf*bf)*(1-tl)]
tf: bf:tl:
f:
F:
c
a:
a:
v:
v:
x:
ibd [block] Anti-LockController
[Internal Block Diagram]
d1:Traction
Detector
m1:Brake
Modulator
c1:modulator
interface
Structure Behavior
Requirements Parametrics
act PreventLockup [Swimlane Diagram]
«allocate»
:TractionDetector
«allocate»
:BrakeModulator
allocatedTo
«connector»c1:modulatorInterface
DetectLossOf
Traction
Modulate
BrakingForce
TractionLoss:
ibd [block] Anti-LockController
[Internal Block Diagram]
allocatedFrom
«activity»DetectLos
OfTraction
d1:TractionDetector
allocatedFrom
«activity»Modulate
BrakingForce
m1:BrakeModulator
allocatedFrom
«ObjectNode»
TractionLoss:
c1:modulator
Interface
ibd [block] Anti-LockController
[Internal Block Diagram]
allocatedFrom
«activity»DetectLos
OfTraction
d1:TractionDetector
allocatedFrom
«activity»Modulate
BrakingForce
m1:BrakeModulator
allocatedFrom
«ObjectNode»
TractionLoss:
c1:modulator
Interface
satisfies
«requirement»
Anti-Lock
Performance
ibd [block] Anti-LockController
[Internal Block Diagram]
allocatedFrom
«activity»DetectLos
Of Traction
d1:TractionDetector
values
DutyCycle: Percentage
allocatedFrom
«activity»Modulate
BrakingForce
m1:BrakeModulator
allocatedFrom
«ObjectNode»
TractionLoss:
c1:modulator
Interface
satisfies
«requirement»
Anti-Lock
Performance
par [constraintBlock] StraightLineVehicleDynamics [Parametric Diagram]
:Accelleration
Equation
[F = ma]
:VelocityEquation
[a = dv/dt]
:DistanceEquation
[v = dx/dt]
:BrakingForce
Equation
[f = (tf*bf)*(1-tl)]
tf: bf:tl:
f:
F:
m:
a:
a:
v:
v:
x:
v.Position:
v.Weight:
v.chassis.tire.
Friction:
v.brake.abs.m1.
DutyCycle:
v.brake.rotor.
BrakingForce:
par [constraintBlock] StraightLineVehicleDynamics [Parametric Diagram]
:Accelleration
Equation
[F = ma]
:VelocityEquation
[a = dv/dt]
:DistanceEquation
[v = dx/dt]
:BrakingForce
Equation
[f = (tf*bf)*(1-tl)]
tf: bf:tl:
f:
F:
m:
a:
a:
v:
v:
x:
v.Position:
v.Weight:
v.chassis.tire.
Friction:
v.brake.abs.m1.
DutyCycle:
v.brake.rotor.
BrakingForce:
req [package] VehicleSpecifications
[Requirements Diagram - Braking Requirements]
Braking Subsystem
Specification
Vehicle System
Specification
VerifiedBy
«interaction»MinimumStopp
ingDistance
id=“102”
text=”The vehicle shall stop
from 60 mph within 150 ft
on a clean dry surface.”
«requirement»
StoppingDistance
SatisfiedBy
«block»Anti-LockController
id=”337"
text=”Braking subsystem
shall prevent wheel lockup
under all braking conditions.”
«requirement»
Anti-LockPerformance
«deriveReqt»
satisfy
Slide 29
Project activities using SysML
• Capture and analyze black box system requirements
– System Context & System Use Cases, Requirement Diagrams
• Develop one ore more candidate system architectures
– Block Definition & Internal Block Diagrams
• Perform engineering trade-off analysis to evaluate and
select the optimal architecture
– Parametric Diagrams
• Specify component requirements and their traceability to
system requirements
– Requirement diagrams
• Verify the system design by executing system-level test
cases
Slide 30
Perspectives for SysML
• Enable a common modeling language and
model across engineering disciplines
• Enable traceability between disciplines
• Enable different kinds of system analysis
• Enable integration of discrete and continuous
based modeling tools
• Critical enabler for Model Based System
Engineering with tool support
Slide 31
Summary
• SysML a common modeling language for different
disciplines e.g. Hardware, Software and Mechanics
• New and important concepts for cross disciplinary
analysis of system properties (e.g. parametric)
• Blocks and ports as general modeling elements
• Important enhancement to activity diagrams
• Lot of support for traceability between models and model
elements
• Must be supported by an appropriate Systems
Engineering (SE) process
Slide 32
References
• OMGs SysML homepage: www.omgsysml.org
• INCOSE organization: www.incose.org
• Books:
– ”A Practical Guide to SysML – The System Modeling Language”,
Sanford Friedenthal, Allan Moore, Rick Steiner, Elsevier, 2008.
– ”Systems Engineering with SysML/UML – Modeling, Analysis,
Design”, Tim Weilkiens, Elsevier, 2007.

More Related Content

Similar to Introduction to SysML - a modeling language for Systems Engineering

SiriusCon2016 - Modelling Spacecraft On-board Software with Sirius
SiriusCon2016 - Modelling Spacecraft On-board Software with SiriusSiriusCon2016 - Modelling Spacecraft On-board Software with Sirius
SiriusCon2016 - Modelling Spacecraft On-board Software with SiriusObeo
 
Exploring thousands of configurations: Find the best design out of infinite v...
Exploring thousands of configurations: Find the best design out of infinite v...Exploring thousands of configurations: Find the best design out of infinite v...
Exploring thousands of configurations: Find the best design out of infinite v...Siemens PLM Software
 
Efficient and Advanced Omniscient Debugging for xDSMLs (SLE 2015)
Efficient and Advanced Omniscient Debugging for xDSMLs (SLE 2015)Efficient and Advanced Omniscient Debugging for xDSMLs (SLE 2015)
Efficient and Advanced Omniscient Debugging for xDSMLs (SLE 2015)Benoit Combemale
 
Modelon Modelica executable requirements Ansys Conference 2016
Modelon Modelica executable requirements Ansys Conference 2016Modelon Modelica executable requirements Ansys Conference 2016
Modelon Modelica executable requirements Ansys Conference 2016Modelon
 
Backbone JS for mobile apps
Backbone JS for mobile appsBackbone JS for mobile apps
Backbone JS for mobile appsIvano Malavolta
 
Developing maintainable Cordova applications
Developing maintainable Cordova applicationsDeveloping maintainable Cordova applications
Developing maintainable Cordova applicationsIvano Malavolta
 
Energy efficient AI workload partitioning on multi-core systems
Energy efficient AI workload partitioning on multi-core systemsEnergy efficient AI workload partitioning on multi-core systems
Energy efficient AI workload partitioning on multi-core systemsDeepak Shankar
 
Monitoring Agile PLM with JConsole
Monitoring Agile PLM with JConsole Monitoring Agile PLM with JConsole
Monitoring Agile PLM with JConsole PLM Mechanic .
 
Automated and Scalable Solutions for Software Testing: The Essential Role of ...
Automated and Scalable Solutions for Software Testing: The Essential Role of ...Automated and Scalable Solutions for Software Testing: The Essential Role of ...
Automated and Scalable Solutions for Software Testing: The Essential Role of ...Lionel Briand
 
Automotive engineering design - Model Based Design
Automotive engineering design - Model Based DesignAutomotive engineering design - Model Based Design
Automotive engineering design - Model Based DesignVinayagam Mariappan
 
Simulation Tracking Object Reference Model (STORM)
Simulation Tracking Object Reference Model (STORM)Simulation Tracking Object Reference Model (STORM)
Simulation Tracking Object Reference Model (STORM)Umar Alharaky
 
Rhapsody Systems Software
Rhapsody Systems SoftwareRhapsody Systems Software
Rhapsody Systems SoftwareBill Duncan
 
SysML Training - Systems Modeling Language Training
SysML Training - Systems Modeling Language TrainingSysML Training - Systems Modeling Language Training
SysML Training - Systems Modeling Language TrainingWesley Comal
 
Model-based Automotive Software Development using Autosar, UML, and Domain-Sp...
Model-based Automotive Software Development using Autosar, UML, and Domain-Sp...Model-based Automotive Software Development using Autosar, UML, and Domain-Sp...
Model-based Automotive Software Development using Autosar, UML, and Domain-Sp...Alexander Nyßen
 
Visualizing, Analyzing and Optimizing Automotive Architecture Models using Si...
Visualizing, Analyzing and Optimizing Automotive Architecture Models using Si...Visualizing, Analyzing and Optimizing Automotive Architecture Models using Si...
Visualizing, Analyzing and Optimizing Automotive Architecture Models using Si...Obeo
 
EMF-IncQuery: Blazing-fast reaction time even for very large diagrams (Sirius...
EMF-IncQuery: Blazing-fast reaction time even for very large diagrams (Sirius...EMF-IncQuery: Blazing-fast reaction time even for very large diagrams (Sirius...
EMF-IncQuery: Blazing-fast reaction time even for very large diagrams (Sirius...Ákos Horváth
 

Similar to Introduction to SysML - a modeling language for Systems Engineering (20)

SiriusCon2016 - Modelling Spacecraft On-board Software with Sirius
SiriusCon2016 - Modelling Spacecraft On-board Software with SiriusSiriusCon2016 - Modelling Spacecraft On-board Software with Sirius
SiriusCon2016 - Modelling Spacecraft On-board Software with Sirius
 
AngularJS
AngularJSAngularJS
AngularJS
 
Exploring thousands of configurations: Find the best design out of infinite v...
Exploring thousands of configurations: Find the best design out of infinite v...Exploring thousands of configurations: Find the best design out of infinite v...
Exploring thousands of configurations: Find the best design out of infinite v...
 
Efficient and Advanced Omniscient Debugging for xDSMLs (SLE 2015)
Efficient and Advanced Omniscient Debugging for xDSMLs (SLE 2015)Efficient and Advanced Omniscient Debugging for xDSMLs (SLE 2015)
Efficient and Advanced Omniscient Debugging for xDSMLs (SLE 2015)
 
Modelon Modelica executable requirements Ansys Conference 2016
Modelon Modelica executable requirements Ansys Conference 2016Modelon Modelica executable requirements Ansys Conference 2016
Modelon Modelica executable requirements Ansys Conference 2016
 
Backbone JS for mobile apps
Backbone JS for mobile appsBackbone JS for mobile apps
Backbone JS for mobile apps
 
Developing maintainable Cordova applications
Developing maintainable Cordova applicationsDeveloping maintainable Cordova applications
Developing maintainable Cordova applications
 
Energy efficient AI workload partitioning on multi-core systems
Energy efficient AI workload partitioning on multi-core systemsEnergy efficient AI workload partitioning on multi-core systems
Energy efficient AI workload partitioning on multi-core systems
 
Monitoring Agile PLM with JConsole
Monitoring Agile PLM with JConsole Monitoring Agile PLM with JConsole
Monitoring Agile PLM with JConsole
 
Automated and Scalable Solutions for Software Testing: The Essential Role of ...
Automated and Scalable Solutions for Software Testing: The Essential Role of ...Automated and Scalable Solutions for Software Testing: The Essential Role of ...
Automated and Scalable Solutions for Software Testing: The Essential Role of ...
 
[2015/2016] Backbone JS
[2015/2016] Backbone JS[2015/2016] Backbone JS
[2015/2016] Backbone JS
 
Javascript
JavascriptJavascript
Javascript
 
Automotive engineering design - Model Based Design
Automotive engineering design - Model Based DesignAutomotive engineering design - Model Based Design
Automotive engineering design - Model Based Design
 
Simulation Tracking Object Reference Model (STORM)
Simulation Tracking Object Reference Model (STORM)Simulation Tracking Object Reference Model (STORM)
Simulation Tracking Object Reference Model (STORM)
 
Rhapsody Systems Software
Rhapsody Systems SoftwareRhapsody Systems Software
Rhapsody Systems Software
 
SysML Training - Systems Modeling Language Training
SysML Training - Systems Modeling Language TrainingSysML Training - Systems Modeling Language Training
SysML Training - Systems Modeling Language Training
 
Model-based Automotive Software Development using Autosar, UML, and Domain-Sp...
Model-based Automotive Software Development using Autosar, UML, and Domain-Sp...Model-based Automotive Software Development using Autosar, UML, and Domain-Sp...
Model-based Automotive Software Development using Autosar, UML, and Domain-Sp...
 
AngularJS Best Practices
AngularJS Best PracticesAngularJS Best Practices
AngularJS Best Practices
 
Visualizing, Analyzing and Optimizing Automotive Architecture Models using Si...
Visualizing, Analyzing and Optimizing Automotive Architecture Models using Si...Visualizing, Analyzing and Optimizing Automotive Architecture Models using Si...
Visualizing, Analyzing and Optimizing Automotive Architecture Models using Si...
 
EMF-IncQuery: Blazing-fast reaction time even for very large diagrams (Sirius...
EMF-IncQuery: Blazing-fast reaction time even for very large diagrams (Sirius...EMF-IncQuery: Blazing-fast reaction time even for very large diagrams (Sirius...
EMF-IncQuery: Blazing-fast reaction time even for very large diagrams (Sirius...
 

Recently uploaded

Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 

Recently uploaded (20)

Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 

Introduction to SysML - a modeling language for Systems Engineering

  • 1. Intoduction to SysML – a modeling language for Systems Engineering SummIT 2013, Axelborg 22. maj 2013 Ingeniørdocent Finn Overgaard Hansen, foh@iha.dk Department of Engineering Aarhus University Ver. 22.5.2013
  • 2. Slide 2 Agenda Systems Engineering and SysML What is SysML? New SysML concepts and diagrams 1. SysML Requirements 2. SysML Structure 3. SysML Behaviour 4. SysML Parametric Perspectives for SysML & Summary
  • 3. Slide 3 Model Based Systems Engineering (MBSE) • From a document-based to a model-based approach • A model-based approach requires modeling concepts and tools • MBSE: producing and controlling a coherent System Model • SysML is created to realize an MBSE approach based on a System model of the wanted system • SysML is a modeling language not a System Engineering (SE) process
  • 4. Slide 4 What is SysML? • A graphical modeling language created in response to the UML for Systems Engineering RFP developed by OMG and INCOSE. – a UML Profile that represents a subset of UML 2 with important extensions • Supports the specification, analysis, design, verification and validation of systems that include hardware, software, data, personnel, procedures, and facilities • Supports model and data interchange via XMI SysML is a Critical Enabler for Model Driven or Model Based Systems Engineering
  • 5. Slide 5 SysML Specification - History and Status • Nov. 1997: UML V1.1 launched by OMG • March 2003: The UML for Systems Engineering RFP (Request for Proposal) was developed jointly by OMG and INCOSE – The SysML specification was developed in response to these requirements by the diverse group of tool vendors, end users, academia, and government representatives • July 2005: UML V2.0 • Sept. 2007: OMG SysML v.1.0 • Nov. 2008: OMG SysML v1.1 (256 pages) • June 2012: OMG SysML v.1.3 (doc.id: 2012-06-01, 250 pages)
  • 6. Slide 6 System Model and HW/SW Components SysML UML
  • 7. Slide 7 Comparison of SysML and UML
  • 8. Slide 8 SysML Diagram Taxonomy SysML Diagram Behavior Diagram Requirement Diagram Structure Diagram Block Definition Diagram Internal Block Diagram Package Diagram Parametric Diagram Use Case Diagram State Machine Diagram Sequence Diagram Activity Diagram Same as UML 2.x Modified from UML 2.x New Diagram Type
  • 9. Slide 9 The 4 Pillars of SysML 1: 2: 3: 4:
  • 10. Slide 10 1. SysML Requirements • Requirement Diagram – a NEW diagram type • Graphical visualization of requirements – Functional – Non-functional • Requirements can graphical be related to: – Other requirements – Design elements – Test Cases • Standard stereotypes: – derive, satisfy, verify, refine, trace and copy – Used for requirement traceability
  • 11. Slide 11 Requirements Diagram (req) - Example
  • 13. Slide 13 2. SysML Structure • UMLs class concept is replaced with the Block concept • A Block connects to other blocks via Ports • Class diagrams are replaced with Block Definition Diagrams (bdd) • Each Block has an Internal Block Diagram (ibd) where the internal parts are connected via ports – a replacement for class composite diagrams • Ports can connect discrete as well as continuous flows of material or information
  • 14. Slide 14 Blocks are Basic Structural Elements
  • 15. Slide 15 Block Definition Diagram (bdd) - Example
  • 16. Slide 16 Internal Block Diagram (ibd) for an Automobile Domain Port
  • 17. Slide 17 Block Definition Diagram (bdd) - Example
  • 18. Slide 18 Internal Block Diagram (ibd) - Example Part Running the Vehicle Software
  • 19. Slide 19 Proxy Ports <> Ibd [Block] Camera [Nested flow] :Electronic Assembly :MPEG Converter :Image Processor :Video :MPEG4 :Image camera i/o: Camera Interface :Light :Camera Module :Optical Assembly :Imaging Assembly :Light :Light :Image Proxy port «flow specification» Camera Interface flowProperties out digital video: MPEG4 out analog video: Composite in control: Control Data in startup sig: Start Up
  • 20. Slide 20 Standard service based Ports (Full port) Monitoring Station Camera Control camera requests getCameraStatus(in cameraId: Integer, in cameraStatus: String) testCameras() panCamera(in strength: Integer) tiltCamera(in strength: Integer) operations Camera Control «interface» Provided interface Required interface
  • 21. Slide 21 3. SysML - Behavior • Activity diagrams are enhanced with new concepts • Flows can be continuous and model information as well as material flow • Control flows are introduced • SysML activities are based on token-flow semantics related to Petri-Nets • Tokens corresponds to values of inputs, outputs and control • Activities can have pins (acting as a buffer)
  • 22. Slide 22 Activity Diagram (act) Notation Flows can be discrete, streaming or control
  • 23. Slide 23 Activity Diagram (act) - Example swimlanes
  • 24. Slide 24 Activity Diagram - decomposed :CollectImages :CaptureVideo :GenerateVideo Outputs «optional» current image {stream} captured image {stream} «optional» MPEG output {stream} «optional» Composite out {stream} act Operate Camera [Object Flow] Object flow video out {stream} input signal {stream} Have subdiagrams Activity parameter node
  • 25. Slide 25 4. SysML Parametric • Parametric Diagram (par) – a NEW diagram type • Used to express constraints (equations) between value properties – Provides support for engineering analysis (e.g., performance, reliability) • Constraint block captures equations shown on a bdd – Expression language can be formal (e.g., MathML, OCL) or informal – A computational engine is defined by applicable analysis tool and not by SysML • Parametric diagrams represents the usage of the constraints in an analysis context – Binding of constraint usage to value properties of blocks (e.g., vehicle mass bound to F= m × a) • Parametric enable integration of engineering analysis with design models
  • 26. Slide 26 BDD Parametric Constraint Blocks Stereotype
  • 27. Slide 27 Parametric Diagram (par) - Example for a block Value bindings
  • 28. Slide 28 Cross Connecting Model Elements req [package] VehicleSpecifications [Requirements Diagram - Braking Requirements] Braking Subsystem Specification Vehicle System Specification id=“102” text=”The vehicle shall stop from 60 mph within 150 ft on a clean dry surface.” «requirement» StoppingDistance id=”337" text=”Braking subsystem shall prevent wheel lockup under all braking conditions.” «requirement» Anti-LockPerformance «deriveReqt» req [package] VehicleSpecifications [Requirements Diagram - Braking Requirements] Braking Subsystem Specification Vehicle System Specification id=“102” text=”The vehicle shall stop from 60 mph within 150 ft on a clean dry surface.” «requirement» StoppingDistance SatisfiedBy «block»Anti-LockController id=”337" text=”Braking subsystem shall prevent wheel lockup under all braking conditions.” «requirement» Anti-LockPerformance «deriveReqt» act PreventLockup [Activity Diagram] DetectLossOf Traction Modulate BrakingForce TractionLoss: par [constraintBlock] StraightLineVehicleDynamics [Parametric Diagram] :Accelleration Equation [F = ma] :VelocityEquation [a = dv/dt] :DistanceEquation [v = dx/dt] :BrakingForce Equation [f = (tf*bf)*(1-tl)] tf: bf:tl: f: F: c a: a: v: v: x: ibd [block] Anti-LockController [Internal Block Diagram] d1:Traction Detector m1:Brake Modulator c1:modulator interface Structure Behavior Requirements Parametrics act PreventLockup [Swimlane Diagram] «allocate» :TractionDetector «allocate» :BrakeModulator allocatedTo «connector»c1:modulatorInterface DetectLossOf Traction Modulate BrakingForce TractionLoss: ibd [block] Anti-LockController [Internal Block Diagram] allocatedFrom «activity»DetectLos OfTraction d1:TractionDetector allocatedFrom «activity»Modulate BrakingForce m1:BrakeModulator allocatedFrom «ObjectNode» TractionLoss: c1:modulator Interface ibd [block] Anti-LockController [Internal Block Diagram] allocatedFrom «activity»DetectLos OfTraction d1:TractionDetector allocatedFrom «activity»Modulate BrakingForce m1:BrakeModulator allocatedFrom «ObjectNode» TractionLoss: c1:modulator Interface satisfies «requirement» Anti-Lock Performance ibd [block] Anti-LockController [Internal Block Diagram] allocatedFrom «activity»DetectLos Of Traction d1:TractionDetector values DutyCycle: Percentage allocatedFrom «activity»Modulate BrakingForce m1:BrakeModulator allocatedFrom «ObjectNode» TractionLoss: c1:modulator Interface satisfies «requirement» Anti-Lock Performance par [constraintBlock] StraightLineVehicleDynamics [Parametric Diagram] :Accelleration Equation [F = ma] :VelocityEquation [a = dv/dt] :DistanceEquation [v = dx/dt] :BrakingForce Equation [f = (tf*bf)*(1-tl)] tf: bf:tl: f: F: m: a: a: v: v: x: v.Position: v.Weight: v.chassis.tire. Friction: v.brake.abs.m1. DutyCycle: v.brake.rotor. BrakingForce: par [constraintBlock] StraightLineVehicleDynamics [Parametric Diagram] :Accelleration Equation [F = ma] :VelocityEquation [a = dv/dt] :DistanceEquation [v = dx/dt] :BrakingForce Equation [f = (tf*bf)*(1-tl)] tf: bf:tl: f: F: m: a: a: v: v: x: v.Position: v.Weight: v.chassis.tire. Friction: v.brake.abs.m1. DutyCycle: v.brake.rotor. BrakingForce: req [package] VehicleSpecifications [Requirements Diagram - Braking Requirements] Braking Subsystem Specification Vehicle System Specification VerifiedBy «interaction»MinimumStopp ingDistance id=“102” text=”The vehicle shall stop from 60 mph within 150 ft on a clean dry surface.” «requirement» StoppingDistance SatisfiedBy «block»Anti-LockController id=”337" text=”Braking subsystem shall prevent wheel lockup under all braking conditions.” «requirement» Anti-LockPerformance «deriveReqt» satisfy
  • 29. Slide 29 Project activities using SysML • Capture and analyze black box system requirements – System Context & System Use Cases, Requirement Diagrams • Develop one ore more candidate system architectures – Block Definition & Internal Block Diagrams • Perform engineering trade-off analysis to evaluate and select the optimal architecture – Parametric Diagrams • Specify component requirements and their traceability to system requirements – Requirement diagrams • Verify the system design by executing system-level test cases
  • 30. Slide 30 Perspectives for SysML • Enable a common modeling language and model across engineering disciplines • Enable traceability between disciplines • Enable different kinds of system analysis • Enable integration of discrete and continuous based modeling tools • Critical enabler for Model Based System Engineering with tool support
  • 31. Slide 31 Summary • SysML a common modeling language for different disciplines e.g. Hardware, Software and Mechanics • New and important concepts for cross disciplinary analysis of system properties (e.g. parametric) • Blocks and ports as general modeling elements • Important enhancement to activity diagrams • Lot of support for traceability between models and model elements • Must be supported by an appropriate Systems Engineering (SE) process
  • 32. Slide 32 References • OMGs SysML homepage: www.omgsysml.org • INCOSE organization: www.incose.org • Books: – ”A Practical Guide to SysML – The System Modeling Language”, Sanford Friedenthal, Allan Moore, Rick Steiner, Elsevier, 2008. – ”Systems Engineering with SysML/UML – Modeling, Analysis, Design”, Tim Weilkiens, Elsevier, 2007.