© 2010 Atego. All rights reserved. © 2013 Atego. All rights reserved.
Ontology and Patterns Prof. Jon Holt
2 © 2013 Atego. All rights reserved.
1. The MBSE Ontology
Identifies and defines concepts and terms related to MBSE
Many sources (over 50), fully referenced:
− ISO standards
− Best-practice models
− Industry standards, etc
Used as a basis for all our MBSE activities relating to
− Requirements, processes, competences, architectures, systems, projects, life cycles, etc
Defined using SysML
Available to INCOSE MBSE WG
3 © 2013 Atego. All rights reserved.
MBSE Ontology – System-related concepts
1 1
11..*
*1 1..*1
1..* 11..* 1
1..*
1
«block»Directed
«block»Product
«block»Service
«block»System Context
«block»System of Interest
«block»Enabling System
«block»Virtual
«block»System
«block»System of Systems
«block»Acknowledged
«block»Collaborative
«block»Constituent System
«block»System Element
1 1represents the need for
11..*
interacts with
*1
interacts with
1..*1 is realised as
1..* 11..* 1
1..*
1
interacts with
4 © 2013 Atego. All rights reserved.
MBSE Ontology – Architecture-related concepts
1..* 1
1 1..*
1..*
1
1..*
11..*1
1
1
1..*
1
1 1..*
1..*
1
11 11 «block»System
«block»Architecture
«block»Perspective
«block»View
«block»Viewpoint
«block»Architectural Framework
«block»Viewpoint Element
«block»Ontology
«block»View Element
1..* 1
collects together1 1..*
conforms to
1..*
1
1..*
11..*1
uses elements from
1
1
1..*
1
1 1..*
visualises
1..*
1
11
describes structure of
11
describes
5 © 2013 Atego. All rights reserved.
MBSE Ontology – Life Cycle-related concepts
1..*1
1 1..*
11
1..*
1
1..*
1
1..*1
1..*
1
1
1..*
1
1
1..* 1
1..*
1
«block»Gate
«block»Process Execution Group
«block»Process
«block»Life Cycle Model
«block»Life Cycle Interaction
«block»Stage
«block»Life Cycle
«block»Life Cycle Interaction Point
«block»Project
«block»System
1..*1
describes the evolution of
1 1..*
11
describes interactions between
1..*
1
interacts with
1..*
1
shows the order of execution of
1..*1
interfaces with
1..*
1
1
1..*
describes the evolution of
1
1assesses the execution of
1..* 1
is executed during
1..*
1
is executed during
6 © 2013 Atego. All rights reserved.
MBSE Ontology – Project-related concepts
1
1..*
1..*
1
1..*
1
1..*1..*1
1..*
1
1..*
1..* 1
«block»Programme
«block»Project
«block»Life Cycle
«block»Project Context
«block»Organisational Context
«block»System
«block»Organisation
«block»Organisational Unit
1
1..*
represents the need for
1..*
1
1..*
1
1..*1..* runs1
1..* describes the need for
1
1..*
describes the evolution of
1..* 1produces
7 © 2013 Atego. All rights reserved.
MBSE Ontology – Process-related concepts
1..* 1
1..* 1..*
1..*
1
1..* 1
1..*
1..*
1..*1..*
1..*
1
1..*
1
1..*
1
1..*
1
«block»Activity
«block»Artefact
«block»Process Execution Group
«block»Service
«block»Process Context
«block»Context
«block»Process
«block»Stakeholder Role
«block»Use Case
«block»Resource
1..* 1
represents the need for
1..* 1..*
yields an observable result to1..*
1
is responsible for
1..* 1
consumes
1..*
1..*
produces/consumes
1..*1..*
realises
1..*
1
1..*
1
1..*
1
1..*
1
is executed during{incomplete}
8 © 2013 Atego. All rights reserved.
MBSE Ontology – Need-related concepts
1..*
1..*
11
1..* 1..*
1
1..* 1..*
1..*
1
*1..*
1..*
1
1
«block»Stakeholder Context
«block»Need Description
«block»Formal Scenario
«block»Semi-formal Scenario
«block»Concern
«block»Need
{Abstract}
«block»Requirement
«block»Capability
«block»Goal
«block»System Context
«block»Project Context
«block»Organisational Context
«block»Context
«block»Use Case
«block»Scenario
«block»Rule
«block»Source Element
1..*
1..*
validates
11
describes
1..* 1..*
is elicited from
1
1..*
is needed to deliver
1..*
1..* meets
1
*
is related to
1..*
1..* constrains
1
1describes
{incomplete}
9 © 2013 Atego. All rights reserved.
MBSE Ontology – Competence-related concepts
1
1..*
11..*
1
1
1
1
111..*
1..*
11
1 1
1..*
1
1..*
1
1
1
1..*
1
1
1
«block»Competency
«block»Support
«block»Awareness
«block»Indicator
«block»Level
«block»Resource
«block»Person
«block»Stakeholder Role
«block»Competency Framework
«block»Competence
«block»Competency Profile
«block»Competency Scope
«block»Lead
«block»Expert
«block»Competency Area
1
1..* describes measured
11..*
describes desired
1
1
exhibits
1
1defines
11
describes abilities of
1..*
1..*
holds
11
requires
1 1is held at
1..*
1
1..*
1
1
1
1..*
1
classifies
1
1
is assessed against
10 © 2013 Atego. All rights reserved.
MBSE Ontology - Complete
1..*1
1..*
1
1..*
1
1..*
1
1..*
1
1 1..*
1
1
1..*
11..*1
*
1
1 1..*
1..*
1
1..*
1
1..*1
11
1..*
1
1
1..*
1..*
1
1 1..*
1..*
11 1..*
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1..*
1
1
1
1
1
1..* 1..*1..*
1
1..*
1
1..*1
1..*1..*
1..*
1..* 1
1
1..*1..*
1..*1..*1..*
1
1
1..*
1..*
1
11
1..*
1
1
1
1..*
1
1..*
1
1..*
1
1..*
1
1..*
1..*
1..*
1
1..*
1
1..*
1..*
1..* 1
11
1
1..*
11
1..*
1
«block»Competency
«block»Competency Profile
«block»Competency Scope
«block»Source Element
«block»Scenario
«block»Stakeholder Role
«block»Gate
«block»Process
«block»Activity
«block»Artefact
«block»Person
«block»Resource
«block»Semi-formal Scenario
«block»Need Description
«block»Programme
«block»Service
«block»Architecture
«block»View
«block»Architectural Framework
«block»View Element
«block»Viewpoint
«block»Viewpoint Element
«block»Ontology Element
«block»Ontology
«block»System of Systems
«block»System of Interest
«block»Enabling System
«block»Acknowledged
«block»Collaborative
«block»Directed
«block»Virtual
«block»System
«block»Process Execution Group
«block»Life Cycle
«block»Life Cycle Interaction Point
«block»Stage
«block»Project
«block»Life Cycle Model
«block»Organisational Unit
«block»Requirement
«block»Capability
«block»Goal
«block»Constituent System
«block»System Element
«block»Organisation
«block»Life Cycle Interaction
«block»System Context
«block»Stakeholder Context
«block»Project Context
«block»Organisational Context
«block»Context
«block»Need
{Abstract}
«block»Use Case
«block»Competence
«block»Level
«block»Product
«block»Rule
«block»Formal Scenario
1..*1
corresponds to
1..*
1
1..*
1
1..*
1
1..*
1
1 1..*
visualises
1
1
1..*
11..*1
uses elements from
*
1
interacts with
1 1..*
interacts with
1..*
1
interacts with
1..*
1
interacts with
1..*1
interfaces with
11
describes interactions between
1..*
1
1
1..*
describes the evolution of
1..*
1
describes the evolution of
1 1..*shows behaviour of
1..*
11 1..*
conforms to
1
1
describes abilities of
1
1
describes desired
1
1
exhibits
1
1
is assessed against
1
1
describes measured
1
1
requires
1
1
1..*
1
1
1is held at
1
1
represents the need for
1..* 1..*validates 1..*
1
1..*
1
interacts with
1..*1 is realised as
1..*1..*
constrains
1..*
1..*
is elicited from
1
1
describes
1..*1..*
realises
1..*1..*runs
1..*
1
1
1..*
describes the need for
1..*
1
shows the order of execution of
11
describes
1..*
1is executed during
1
1assesses the execution of
1..*
1
is executed during
1..*
1
1..*
1
1..*
1
1..*
1..*
holds
1..*
1
is responsible for
1..*
1
consumes
1..*
1..*
produces/consumes
1..* 1
11
describes structure of
1
1..* represents the need for
11
describes
1..*
1
produces
11 © 2013 Atego. All rights reserved.
2. Patterns
We define a pattern as:
− ‘a repeatable best-practice solution to a known, recurring problem within a given context’
Patterns identified:
− Interface definition, Testing, Traceability, Process, Measurement, Ontology, Life Cycle, Context and Architecture definition
− Not exhaustive
− Part of on-going work
Defined using SysML
− May be realised using nay notation
− Examples given using SysML
12 © 2013 Atego. All rights reserved.
Pattern concepts
1..* 1..*
1 1..* 1..*
11
1..*1 1..*
1..*
1
1..*
Framework
Modelling Pattern
Ontology ViewAim Rule
1..* 1..*
ensures consistency between
1 1..* 1..*
11
1..*
describes relationship between
1 1..*
shows concepts from
1..*
1
1..*
describes the purpose of
13 © 2013 Atego. All rights reserved.
Interface Pattern - Concepts
*
1*
1..*
*
1
1..* 1..*
*
1
*
*
*
*
1
*
*1
Interface Connection
Port Connection
Protocol
Flow Type
Interface Definition
Flow-Based Interface
Port
Service-Based Interface
Interface
Direction : DirectionType
System Element
*
1
owns
*
1..*
uses
*
1
is connected to
1..* 1..*
exposes
*
1
is connected to
*
*
conforms to
*
*
conforms to
1
*
takes place across
*1 describes
14 © 2013 Atego. All rights reserved.
Interface Pattern - Framework
1..*
1
1..*
1..*
1..*
1..*
1..*
1..*Interface Definition View
Interface Identification View
Interface Behaviour View Protocol Definition ViewInterface Connectivity View
1..*
1
shows connections between interfaces on
1..*
1..*
show interaction of interfaces on
1..*
1..*
defines interfaces shown on
1..*
1..*
defines protocol for interfaces & ports on
15 © 2013 Atego. All rights reserved.
Interface Pattern – Interface Identification View
1..* 1..*** *
* 1
Interface Identification View
System ElementInterface Port1..* 1..*exposes
** ** 1
owns
16 © 2013 Atego. All rights reserved.
Example View - Interface Identification View
«Interface Identification View»ibd Service-Based Interface Identification
«block»System
: Pump
Controller Input : USB
: Pump ControllerController Output : USB
: Pump
Controller Input : USBController Input : USB
: Pump ControllerController Output : USBController Output : USB
PumpIF
PumpIF
17 © 2013 Atego. All rights reserved.
Interface Pattern – Interface Definition View
*1..** *
Interface Definition View
Interface Definition Flow Type*1..*uses
* *
18 © 2013 Atego. All rights reserved.
Example View - Interface Definition View
«Interface Definition View»bdd PumpIF & LiquidFS Definitions
«FlowSpecification»LiquidFS
«block»Liquid
«block»Concrete
«block»Oil
«block»Water
«valueType»«enumeration»
attributesForwardReverse
DirectionType
«valueType»PowerLevel
«valueType»«enumeration»
attributesTRUEFALSE
Boolean
«interface»PumpIF
CurrentDirection : DirectionTypestart (in powerLevel : PowerLevel)stop (in emergency : Boolean)reverse (in powerLevel : PowerLevel)
«use»
«use»
«use»
«use»
{incomplete}
19 © 2013 Atego. All rights reserved.
Interface Pattern – Interface Connectivity View
1*
*
1
* *
*
1..* 1..*
*
1
*
1
PortInterface
System Element
Interface Connectivity View
Interface Connection Port Connection
1*takes place across
*
1
is connected to
* *
*
1..* 1..*exposes
*
1
is connected to
*
1owns
20 © 2013 Atego. All rights reserved.
Example View - Interface Connectivity View
«Interface Connectivity View»ibd Service-Based Interface Connectivity
«block»System
: Pump: Pump Controller : Pump: Pump ControllerPumpIF
«Connector»«USB Cable»
21 © 2013 Atego. All rights reserved.
Interface Pattern – Interface Behaviour View
1..*
1..*
1..*
1..*System Element
Interface
Interface Behaviour View
1..*
1..*
1..*
1..*
interacts with
22 © 2013 Atego. All rights reserved.
Example View - Interface Behaviour View
23 © 2013 Atego. All rights reserved.
Interface Pattern – Protocol Definition View
1
*
*
*
*
Protocol
Interface
Protocol Definition View
Port
1
*
*
conforms to*
*
conforms to
24 © 2013 Atego. All rights reserved.
Example View - Protocol Definition View
priming
primed
pumping
reversed
pumping in reverse
reversing
working
flushing
idling
smd PumpIF Protocol
«Protocol Definition View»
priming
primed
pumping
reversed
pumping in reverse
reversing
working
priming
primed
pumping
reversed
pumping in reverse
reversing
flushing
idling
[CurrentDirection = Forward]/CurrentDirection = Reverse
/pum pRevers e
revers e/s topP um p
s tart/CurrentDirec t ion = Forward
/p rim e
/p u m p
revers e/s topP um p
[CurrentDirection = Reverse]/CurrentDirection = Forward
s top[em ergenc y = TRUE ]/s topP um p
s top[em ergenc y = FALS E ]/flush
/s topP um p
s tart/CurrentDirec t ion = Forward
25 © 2013 Atego. All rights reserved.
5. Conclusions
The MBSE Ontology has been defined
− Concepts
− Terms
− Fully referenced
A number of MBSE Pattern have been identified
− So far, not all have been defined
− Each must be applied on real projects
− On-going work
26 © 2013 Atego. All rights reserved.
Shameless self promotion
To contact the presenter (join me on LinkedIn)
For more on training, webinars, tools and professional services
www.atego.com
To read more
http://www.atego.com/community/published-authors