SlideShare ist ein Scribd-Unternehmen logo
1 von 38
RÉGIS CASTERAN – SYSTEMS AND SOFTWARE ENGINEERING DOMAIN LEADER
09/23/2015 – V3
Sysml for embedded system
engineering
OVERVIEW PART 1 ● Background and challenges
PART 2 ● Using SysML at system level
PART 3 ● Using SysML at software level
PART 4 ● Perspectives
3
13
27
36
PART 1
Background and challenges
4
Definitions
Embedded system
BACKGROUND AND CHALLENGES
A collection of hardware and/or software elements
organized to accomplish a specific function or a set of
functions of a larger system. (AGPS, based on INCOSE
handbook and ISO/IEC 15288:2015)
System engineering
An interdisciplinary approach and means to enable the
realization of successful systems. (INCOSE handbook)
5
Definitions
Model
BACKGROUND AND CHALLENGES
A semantically closed abstraction of a system or a
complete description of a system from a particular
perspective. (ISO/IEC/IEEE 24765:2010)
System Modeling Language (SysML)
A general-purpose graphical modeling language for
specifying, analyzing, designing, and verifying complex
systems that may include hardware, software,
information, personnel, procedures, and facilities.
(Object Management Group)
6
Background
Embedded system breakdown structure
BACKGROUND AND CHALLENGES
7
Background
Why and how modeling ?
BACKGROUND AND CHALLENGES
8
Challenges
Traceability between managements
BACKGROUND AND CHALLENGES
9
Challenges
Traceability between managements
BACKGROUND AND CHALLENGES
10
Challenges
Traceability between tools
BACKGROUND AND CHALLENGES
11
Challenges
SysML model verification
BACKGROUND AND CHALLENGES
Criteria Formality
level
Complexity Review type Instrumentation
Understandable Informal Low Walkthrough None
Completion Informal
to Formal
High Model review to Formal
testing
- Traceability checker
- Model transformation to
UPPAAL language
- Model transformation to B
language
Robustness Informal High Model review None
Consistency Informal
to Formal
High Model review to Formal
testing
- OCL checker
- Model transformation to
UPPAAL language
- Model transformation to B
language
Stability Informal Low Walkthrough None
12
Challenges
SysML model validation
BACKGROUND AND CHALLENGES
Validation
techniques
Development
state
Complexity Instrumentation
Simulation At first B-sample
release
Low Data acquisition (inputs / outputs)
Cosimulation At validating first
architecture
High Model transformation to cosimulation plateform
model (Depending on solution capacity to import
SysML / UML model)
Rapid control
prototyping
At selecting
architecture
candidates
High - RCP platform
- Model transformation to RCP plateform model
(Depending on solution capacity to import SysML
/ UML model)
PART 2
Using SysML at system level
14
Motivations
Stakeholder engagement in requirement management
USING SYSML AT SYSTEM LEVEL
15
Motivations
Automisation in architecture management
USING SYSML AT SYSTEM LEVEL
cmp Network principle
NET1_NODE1
NET2_NODE2EQ1
NET1_NODE1
NET2_NODE2
Network_1
+ NET1_NODE1
+ NET1_NODE2
+ NET1_MSG
NET1_NODE2
NET2_NODE_1
EQ2
NET1_NODE2
NET2_NODE_1
Network_2
+ NET2_NODE1
+ NET2_NODE2
+ NET2_EQ1_EQ2_VAR
+ NET2_EQ2_EQ1_VAR
NET1_NODE1_PORT1
NET1_NODE2_PORT1
NET2_NODE1_PORT1
NET2_NODE2_PORT1
NET2_EQ1_EQ2_VAR
NET2_EQ2_EQ1_VAR
NET1_MSG
Link
Link
16
Motivations
Automisation in architecture management
USING SYSML AT SYSTEM LEVEL
«XSDcomplexType»
nodeType
«XSDelement»
+ address: string
+ equipment: string [0..1]
«XSDattribute»
+ isLocal: boolean
«XSDcomplexType»
BaseModel::abstractBaseType
«XSDattribute»
+ isActivated: boolean
+ name: string
«XSDextension»
del
class PeriodicDataModel
«XSDcomplexType»
periodicDataType
«XSDelement»
+ arrayNbItems: positiveInteger [0..1]
+ defaultValue: string [0..1]
+ offset: nonNegativeInteger [0..1]
+ type: baseExtendedDataEnumType [0..1]
«XSDattribute»
+ isFunctional: boolean
«XSDcomplexType»
BaseModel::abstractBaseType
«XSDattribute»
+ isActivated: boolean
+ name: string
string
«enumeration»
BaseModel::
baseExtendedDataEnumType
ANTIVALENT2
AR_CHAR8
AR_INTEGER16
AR_INTEGER32
AR_INTEGER8
AR_REAL32
AR_UNSIGNED16
AR_UNSIGNED32
AR_UNSIGNED8
BCD4
BIPOLAR216
BIPOLAR416
BITSET16
BITSET32
BITSET64
BITSET8
BOOLEAN1
CHARACTER8
ENUM4
ENUM8
INTEGER16
INTEGER32
INTEGER8
REAL32
UNICODE16
UNIPOLAR216
UNSIGNED16
UNSIGNED32
UNSIGNED8
WORD16
WORD8
«XSDextension»
Name:
Package:
Version:
Author:
PeriodicDataModel
«XSDschema» PeriodicDataModel
1.0
ASSYSTEM (RCA)
class AperiodicChannelModel
«XSDcomplexType»
aperiodicChannelType
«XSDelement»
+ arrayNbItems: positiveInteger [0..1]
+ defaultValue: string [0..1]
+ type: baseExtendedDataEnumType [0..1]
«XSDattribute»
+ isService: boolean
«XSDcomplexType»
BaseModel::abstractBaseType
«XSDattribute»
+ isActivated: boolean
+ name: string
string
«enumeration»
BaseModel::
baseExtendedDataEnumType
ANTIVALENT2
AR_CHAR8
AR_INTEGER16
AR_INTEGER32
AR_INTEGER8
AR_REAL32
AR_UNSIGNED16
AR_UNSIGNED32
AR_UNSIGNED8
BCD4
BIPOLAR216
BIPOLAR416
BITSET16
BITSET32
BITSET64
BITSET8
BOOLEAN1
CHARACTER8
ENUM4
ENUM8
INTEGER16
INTEGER32
INTEGER8
REAL32
UNICODE16
UNIPOLAR216
UNSIGNED16
UNSIGNED32
UNSIGNED8
WORD16
WORD8
«XSDextension»
Name:
Package:
Version:
Author:
AperiodicChannelModel
«XSDschema» AperiodicChannelModel
1.0
ASSYSTEM (RCA)
17
Profiles
Principle
USING SYSML AT SYSTEM LEVEL
18
Profiles
Rationale
USING SYSML AT SYSTEM LEVEL
19
Profiles
Rationale
USING SYSML AT SYSTEM LEVEL
20
Profiles
Rationale
USING SYSML AT SYSTEM LEVEL
21
Patterns
Example
USING SYSML AT SYSTEM LEVEL
stm [Package] System state [System state]
Powered on
INITTESTINGFLASHING FAILEDPower ON
SHUTDOWN
Final
VOLTAGE_MIN_LOW
DTC_STORED
VOLTAGE_MIN_LOW
VOLTAGE_MIN_HIGH
stm [StateMachine] Running mode [Running mode]
Initial
RUNNING
Choice
MASTER SLAVE
Final
[(IS_SLAVE_LAST_RUN && !
IS_MASTER_SLAVE_CHANGE_LAST_RUN) ||
IS_MASTER_LAST_RUN]
[Else]
stm [StateMachine] Power ON [Power ON]
INIT
Initial
Evaluate
requested mode
Running mode TESTINGFLASHING
Final
[MODE == RUNNING] [MODE == FLASHING] [MODE == TESTING]
22
Requirement management
Start with use cases
USING SYSML AT SYSTEM LEVEL
uc Maintenance Management
Embedded system
Class:Embedded system
«human actor»
Maintenance operator
Download
maintenance data
Process maintenance request
extension points
Maintenance access is granted and maintenance
data download is requested
Maintenance access is granted and system version
identification is requested
Maintenance access is granted and new sw version
deployment is requested
Extension Point :
Maintenance access is
granted and
maintenance data
Extension Point :
Maintenance access is
granted and
maintenance data
download is requested
Determine system
status
«requirement»
SYS_1
notes
The system shall set the current maintenance status to
"AUTHORIZATION GRANTED" by default.
«sw actor»
Customer application
«extend»
«extend»
23
Requirement management
Specify scenarii
USING SYSML AT SYSTEM LEVEL
sd Process maintenance request from USB key
embedded system:
Embedded system
RUNNING
USB key: USB key customer application:
Customer application
alt USB device test
[USB is correctly mounted]
alt Maintenance action file test
MaintenanceActionFile
UsbKeyInserted()
updateAuthorization(AUTH_STATUS):
boolean
readActionFile(): boolean
mountUSB(): boolean
ReadFile(): boolean
24
Requirement management
Build architecture context with block diagram
USING SYSML AT SYSTEM LEVEL
bdd [Package] Maintenance Management [Maintenance Management]
Ethernet port:
Ethernet interface
USB port: USB
interface
LED
[3]
ASW port:
~Application
interface
«sys block»
Embedded system
+ mountUSB(): boolean
+ readActionFile(): boolean
+ parseActionFile(): boolean
+ writeMaintenaceData(maintenanceDataType): boolean
+ updateSystemStatus(systemStatusType)
+ checkAuthorization(): boolean
+ updateAuthorization(boolean): boolean
properties
board : Board
bsw : Basic software
Ethernet port:
Ethernet interface
USB port: USB
interface
LED
[3]
ASW port:
~Application
interface
«sys actor»
Maintenance PC
«human actor»
Maintenance operator
«sys actor»
USB key
«hw interface»
Ethernet interface
isEncapsulated =
type = female
flow properties
in MaintenanceRequest : MaintenanceMessage
in swPackage
out MaintenanceDataFile : MaintenanceDataFile
«hw interface»
USB interface
isEncapsulated =
type = female
flow properties
in MaintenanceRequest : UsbKeyInserted
«signal»
UsbKeyInserted
Ethernet port:
~Ethernet
interface
«sys block»
Maintenance PC
Ethernet port:
~Ethernet
interface
USB port:
~USB
interface
«sys block»
USB key
+ ReadFile(): boolean
+ WriteFile(): boolean
USB port:
~USB
interface
MaintenanceMessage
MaintenanceDataFile
+ type: maintenanceDataType
«enumeration»
maintenanceDataType
«sw actor»
Customer application
ASW port:
Application
interface
«sw block»
Customer application
ASW port:
Application
interface
«trace»
LedState
«flow»
«trace»
«trace»
25
Architecture management
Split system functions
USING SYSML AT SYSTEM LEVEL
sd Process maintenance request from USB key
embedded system: Embedded system
RUNNING
USB key: USB key customer application:
Customer application
/board /bsw
alt USB device test
[USB is correctly mounted]
alt Maintenance action file test
[Maintenance action file is correctly formatted]
MaintenanceActionFile
UsbKeyInserted()
writeRAM(AUTH_ADDRESS, AUTH_STATUS):
boolean
readActionFile(): boolean
checkAuthorization(): boolean
updateAuthorization(AUTH_STATUS):
boolean
mountUSB(): boolean
ReadFile(): boolean
readFile(ACTION_FILENAME):
boolean
UsbKeyInserted()
26
Architecture management
Split system interfaces
USING SYSML AT SYSTEM LEVEL
bdd [Package] Maintenance management [Maintenance management]
Ethernet port:
Ethernet interface
LED[3]
USB port: USB
interface
ASW port:
~Application
interface
«sys block»
Maintenance Management::Embedded system
+ checkAuthorization(): boolean
+ mountUSB(): boolean
+ parseActionFile(): boolean
+ readActionFile(): boolean
+ updateAuthorization(boolean): boolean
+ updateSystemStatus(systemStatusType)
+ writeMaintenaceData(maintenanceDataType): boolean
properties
board : Board
bsw : Basic software
Ethernet port:
Ethernet interface
LED[3]
USB port: USB
interface
ASW port:
~Application
interface
Ethernet port
LED[3]
USB port
Filesystem: Board
filesystem
Register: Board
register
«hw block»
Board
+ readEEPROM(int, int): boolean
+ readFile(string): boolean
+ readNVRAM(int, int): boolean
+ readRAM(int, int): boolean
+ writeEEPROM(int, int): boolean
+ writeFile(string): boolean
+ writeNVRAM(int, int): boolean
+ writeRAM(int, int): boolean
Ethernet port
LED[3]
USB port
Filesystem: Board
filesystem
Register: Board
register
«hw interface»
Maintenance Management::Ethernet interface
flow properties
in MaintenanceRequest : MaintenanceMessage
in swPackage
out MaintenanceDataFile : MaintenanceDataFile
«hw interface»
Maintenance Management::
LED interface
flow properties
out LedState : LedState
«hw interface»
Maintenance Management::USB interface
flow properties
in MaintenanceRequest : UsbKeyInserted
in MaintenanceActionFile : MaintenanceActionFile
out MaintenanceDataFile : MaintenanceDataFile
ASW port
Register: ~Board
register
Filesystem: ~Board
filesystem
«sw block»
Basic software
+ checkAuthorization(): boolean
+ mountUSB(): boolean
+ parseActionFile(): boolean
+ readActionFile(): boolean
+ updateAuthorization(boolean): boolean
+ updateSystemStatus(systemStatusType)
+ writeMaintenaceData(maintenanceDataType): boolean
ASW port
Register: ~Board
register
Filesystem: ~Board
filesystem
«sw interface»
Maintenance Management::Application interface
flow properties
out AuthorizationStatus : Boolean
«sw interface»
Board register
flow properties
in AuthorizationStatus : Boolean
out MaintenanceActionFile : MaintenanceActionFile
out MaintenanceRequest : UsbKeyInserted
«sw interface»
Board filesystem
flow properties
out MaintenanceDataFile : MaintenanceDataFile
+bsw
+board
PART 3
Using SysML at software level
28
Motivations
Stakeholder engagement in requirement management
USING SYSML AT SOFTWARE LEVEL
29
Motivations
Automisation in architecture management
USING SYSML AT SOFTWARE LEVEL
ibd [Block] SwcB_JWILL [SwcB_JWILL]
RP_IPC_Lat_Acc
RP_IPC_Lat_Acc_Valid
TMT_RunB_JWILL_4ms
TMT_RunB_JWILL_10ms
TMT_RunB_JWILL_1ms
PP_OPM_Pinion_Torq_Tgt
ibd [Block] SwcB_JWILL [SwcB_JWILL]
RP_IPC_Lat_Acc
RP_IPC_Lat_Acc_Valid
TMT_RunB_JWILL_4ms
TMT_RunB_JWILL_10ms
TMT_RunB_JWILL_1ms
PP_OPM_Pinion_Torq_Tgt
RP_IPC_Lat_Acc
RP_IPC_Lat_Acc_Valid
TMT_RunB_JWILL_4ms
«Runnable»
RunB_JWILL_4ms
RP_IPC_Lat_Acc
RP_IPC_Lat_Acc_Valid
TMT_RunB_JWILL_4ms
IRV_TTG_Lat_Acc_weight_X_f
IRV_TTG_Lat_Acc_weight
IRV_TTG_Lat_Acc_weight_X_k
IRV_TTG_Weight_Den
TMT_RunB_JWILL_10ms
«Runnable»
RunB_JWILL_10ms
TMT_RunB_JWILL_10ms
TMT_RunB_JWILL_1ms
PP_OPM_Pinion_Torq_Tgt«Runnable»
RunB_JWILL_1ms
TMT_RunB_JWILL_1ms
PP_OPM_Pinion_Torq_Tgt
«delegate»
«delegate»
«delegate»
«delegate»
«delegate»
«delegate»
30
Motivations
Automisation in architecture management
USING SYSML AT SOFTWARE LEVEL
31
Requirement management
Focus use cases on HW interfaces
USING SYSML AT SOFTWARE LEVEL
uc Software System Overview
ECU Abstraction Layer
Component:ECUAbstractionLayer
«hw actor»
PDC ASIC Front: PDC
ASIC Front
Determine the Park Assistant
activation
extension points
Park Slave PDC Activation
Control the Park Assistant PDC Feature
extension points
before PDC Feature Initialization
Manage NVRAM
Datas
Determine
Application Power
State
extension point: before
PDC Feature Initialization
«hw actor»
Klemme KL15
Coverage: Klemme
KL15 coverage
extension point: Park
Slave PDC Activation
«extend»
«include»
«extend» «include»
«include»
«include»
«include»
32
Requirement management
Describe main features functional flow
USING SYSML AT SOFTWARE LEVEL
ibd [Block] Software composition [Software composition]
ECU GPIO ECU serial port
ibd [Block] Software composition [Software composition]
ECU GPIO ECU serial port
Park state
«fct part»
PDC activation logic
Park state
Park state
Power state
Error state
Sensor voltage
«fct part»
PDC control logic
Park state
Power state
Error state
Sensor voltage
Power state
Battery voltage
«fct part»
Application power state
Power state
Battery voltage
Error state
«fct part»
Diagnostic
Error state
Battery voltage
ECU GPIO ECU serial port
Sensor voltage
«fct part»
ECU abstraction layer
Battery voltage
ECU GPIO ECU serial port
Sensor voltage
33
Architecture management
Identify standard components
USING SYSML AT SOFTWARE LEVEL
«framework»
Application - BMW PDC L6
P1::APKM
tags
isModelDriven = True
isStandard = False
P1::APKS
tags
isModelDriven = True
isStandard = False
«framework»
STD Modules
P2::Detection
System
tags
isModelDriven = False
isStandard = True
P2::COMM
tags
isModelDriven = False
isStandard = True
P1::VOLT
tags
isModelDriven = False
isStandard = True
P2::MXAD
tags
isModelDriven = False
isStandard = True
P2::MX12
tags
isModelDriven = False
isStandard = True
P2::PLBMWUPI
tags
isModelDriven = False
isStandard = True
«framework»
Metrowerks Library
+ _CHECKSUM_QUAL
+ _CheckSum1ByteTyp
+ CHECKSUM
+ START12
+ CHECKSUM_VerifyRO
+ START12_StartECU
(from St
«framework»
BMW PDC Common Modules
P1::AHTST
tags
isModelDriven = False
isStandard = False
P1::AMM
tags
isModelDriven = False
isStandard = False
P1::AUPA
tags
isModelDriven = False
isStandard = False
P1::AKLC
tags
isModelDriven = False
isStandard = False
P1::AFESP
tags
isModelDriven = False
isStandard = False
P1::ACODI
tags
isModelDriven = False
isStandard = False
«BMWtemplatebased»
P1::ADIAG
«BMWtemplatebased»
P1::AMAIN
«import»
«import»
«import»«import»
34
Architecture management
Identify standard components
USING SYSML AT SOFTWARE LEVEL
«framework»
BMW PDC Common Modules
APKM
tags
isModelDriven = True
isStandard = False
APKS
tags
isModelDriven = True
isStandard = False
«framework»
STD Modules
Detection System
tags
isModelDriven = False
isStandard = True
COMM
tags
isModelDriven = False
isStandard = True
VOLT
tags
isModelDriven = False
isStandard = True
MXAD
tags
isModelDriven = False
isStandard = True
MX12
tags
isModelDriven = False
isStandard = True
PLBMWUPI
tags
isModelDriven = False
isStandard = True
«framework»
Application - BMW PDC L4
AFESP
tags
isModelDriven = False
isStandard = False
AHTST
tags
isModelDriven = False
isStandard = False
AKLC
tags
isModelDriven = False
isStandard = False
AMM
tags
isModelDriven = False
isStandard = False
AUPA
tags
isModelDriven = False
isStandard = False
ADESC
«framework»
Metrowerks Library
+ _CHECKSUM_QUALI
+ _CheckSum1ByteType
+ CHECKSUM
+ START12
+ CHECKSUM_VerifyROMChe
+ START12_StartECU
ACODI
tags
isModelDriven = False
isStandard = False
EEPIF_SC6:
EEPIF
EEP_SC6: EEP NVM_SC6: NVM
«BMWtemplatebased»
AMAIN
DEM_SC6: DEM
«import»«import»
«import»
«import»
35
Architecture management
Split main features functional flow between components
USING SYSML AT SOFTWARE LEVEL
sd Determine Park Assistant State
AUPA: AUPA«subsystem»
:Diagnostic
PDCControlLogic
subsystem:
PDCControlLogic
«subsystem»
:ApplicationPowerState
«subsystem»
PDCActivationLogic:
PDCActivationLogic
{Application power state has been determined}
AUPA_Config /
AUPA_Config
opt Application power state indicates that the sensor power is supplied
[Sensor power supply is ON]
UPA_SetRequestedState(u8)
XUPA_IS_USENSOR_ON(): bool_T
KLC_HSS_GetState(): KLC_HSS_STATE
UPA_Cyclic()
XUPA_IS_USENSOR_OK(): bool_T
PARK_ASSIST_STATE_REQD_IF(u8)
HSS_STATE_IF()
KLC_HSS_GetState(): KLC_HSS_STATE
HSS_STATE_IF()
PART 4
Perspectives
37
Towards a new AGPS discipline offer: “Model Based Engineering for
Embedded System”
Principle
PERSPECTIVES
• Auditing customer both system and software engineering processes
• Identifying profiles and patterns opportunities
• Building models at system and software level
• Specifying, developing and/or sustaining model transformation tools
• Specifying, developing and/or sustaining artefact generation tools
Next steps
• Deploying AGPS profiles and patterns
• Writing guidelines for variant management
• Writing guidelines for test requirement management
• Developing SysML model transformation schemes for verification
• …
Want to contribute ?
• Please send me a mail at rcasteran@assystem.com
Thank you !

Weitere ähnliche Inhalte

Was ist angesagt?

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
 
FMI Composer Overview
FMI Composer OverviewFMI Composer Overview
FMI Composer OverviewModelon
 
Results of model-based testing in automotive
Results of model-based testing in automotiveResults of model-based testing in automotive
Results of model-based testing in automotiveAnthony Faucogney
 
Procter & Gamble Modelon INCOSE 2017
Procter & Gamble Modelon INCOSE 2017Procter & Gamble Modelon INCOSE 2017
Procter & Gamble Modelon INCOSE 2017Modelon
 
Modelon FMI Tutorial NAMUG 2016
Modelon FMI Tutorial NAMUG 2016Modelon FMI Tutorial NAMUG 2016
Modelon FMI Tutorial NAMUG 2016Modelon
 
Rit 8.5.0 virtualization training slides
Rit 8.5.0 virtualization training slidesRit 8.5.0 virtualization training slides
Rit 8.5.0 virtualization training slidesDarrel Rader
 
Emerging standards and support organizations within engineering simulation
Emerging standards and support organizations within engineering simulation Emerging standards and support organizations within engineering simulation
Emerging standards and support organizations within engineering simulation Modelon
 
Rit 8.5.0 platform training slides
Rit 8.5.0 platform training slidesRit 8.5.0 platform training slides
Rit 8.5.0 platform training slidesDarrel Rader
 
Closing the Design Cycle Loop with Executable Requirements and OSLC - IBM Int...
Closing the Design Cycle Loop with Executable Requirements and OSLC - IBM Int...Closing the Design Cycle Loop with Executable Requirements and OSLC - IBM Int...
Closing the Design Cycle Loop with Executable Requirements and OSLC - IBM Int...Modelon
 
Model-Based Design For Motor Control Development
Model-Based Design For Motor Control DevelopmentModel-Based Design For Motor Control Development
Model-Based Design For Motor Control DevelopmentThe Hartford
 
Automotive engineering design - Model Based Design
Automotive engineering design - Model Based DesignAutomotive engineering design - Model Based Design
Automotive engineering design - Model Based DesignVinayagam Mariappan
 
Model-Based Integration for FMI Co-Simulation and Heterogeneous Simulations o...
Model-Based Integration for FMI Co-Simulation and Heterogeneous Simulations o...Model-Based Integration for FMI Co-Simulation and Heterogeneous Simulations o...
Model-Based Integration for FMI Co-Simulation and Heterogeneous Simulations o...Modelon
 
Rejunevating software reengineering processes
Rejunevating software reengineering processesRejunevating software reengineering processes
Rejunevating software reengineering processesmanishthaper
 
Rit 8.5.0 training release notes
Rit 8.5.0 training release notesRit 8.5.0 training release notes
Rit 8.5.0 training release notesDarrel Rader
 
fUML-Driven Design and Performance Analysis of Software Agents for Wireless S...
fUML-Driven Design and Performance Analysis of Software Agents for Wireless S...fUML-Driven Design and Performance Analysis of Software Agents for Wireless S...
fUML-Driven Design and Performance Analysis of Software Agents for Wireless S...Luca Berardinelli
 
Multi phase mixture media
Multi phase mixture mediaMulti phase mixture media
Multi phase mixture mediaModelon
 
One model, many use cases
One model, many use casesOne model, many use cases
One model, many use casesModelon
 

Was ist angesagt? (20)

Model based development(MBD)
Model based development(MBD) Model based development(MBD)
Model based development(MBD)
 
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
 
FMI Composer Overview
FMI Composer OverviewFMI Composer Overview
FMI Composer Overview
 
Results of model-based testing in automotive
Results of model-based testing in automotiveResults of model-based testing in automotive
Results of model-based testing in automotive
 
Procter & Gamble Modelon INCOSE 2017
Procter & Gamble Modelon INCOSE 2017Procter & Gamble Modelon INCOSE 2017
Procter & Gamble Modelon INCOSE 2017
 
Uml2 clearquest
Uml2 clearquestUml2 clearquest
Uml2 clearquest
 
Modelon FMI Tutorial NAMUG 2016
Modelon FMI Tutorial NAMUG 2016Modelon FMI Tutorial NAMUG 2016
Modelon FMI Tutorial NAMUG 2016
 
Configuring monitoring
Configuring monitoringConfiguring monitoring
Configuring monitoring
 
Rit 8.5.0 virtualization training slides
Rit 8.5.0 virtualization training slidesRit 8.5.0 virtualization training slides
Rit 8.5.0 virtualization training slides
 
Emerging standards and support organizations within engineering simulation
Emerging standards and support organizations within engineering simulation Emerging standards and support organizations within engineering simulation
Emerging standards and support organizations within engineering simulation
 
Rit 8.5.0 platform training slides
Rit 8.5.0 platform training slidesRit 8.5.0 platform training slides
Rit 8.5.0 platform training slides
 
Closing the Design Cycle Loop with Executable Requirements and OSLC - IBM Int...
Closing the Design Cycle Loop with Executable Requirements and OSLC - IBM Int...Closing the Design Cycle Loop with Executable Requirements and OSLC - IBM Int...
Closing the Design Cycle Loop with Executable Requirements and OSLC - IBM Int...
 
Model-Based Design For Motor Control Development
Model-Based Design For Motor Control DevelopmentModel-Based Design For Motor Control Development
Model-Based Design For Motor Control Development
 
Automotive engineering design - Model Based Design
Automotive engineering design - Model Based DesignAutomotive engineering design - Model Based Design
Automotive engineering design - Model Based Design
 
Model-Based Integration for FMI Co-Simulation and Heterogeneous Simulations o...
Model-Based Integration for FMI Co-Simulation and Heterogeneous Simulations o...Model-Based Integration for FMI Co-Simulation and Heterogeneous Simulations o...
Model-Based Integration for FMI Co-Simulation and Heterogeneous Simulations o...
 
Rejunevating software reengineering processes
Rejunevating software reengineering processesRejunevating software reengineering processes
Rejunevating software reengineering processes
 
Rit 8.5.0 training release notes
Rit 8.5.0 training release notesRit 8.5.0 training release notes
Rit 8.5.0 training release notes
 
fUML-Driven Design and Performance Analysis of Software Agents for Wireless S...
fUML-Driven Design and Performance Analysis of Software Agents for Wireless S...fUML-Driven Design and Performance Analysis of Software Agents for Wireless S...
fUML-Driven Design and Performance Analysis of Software Agents for Wireless S...
 
Multi phase mixture media
Multi phase mixture mediaMulti phase mixture media
Multi phase mixture media
 
One model, many use cases
One model, many use casesOne model, many use cases
One model, many use cases
 

Ähnlich wie SysML for embedded system engineering - Academy Camp 2015

09 basics operating and monitoring v1.00_en
09 basics operating and monitoring v1.00_en09 basics operating and monitoring v1.00_en
09 basics operating and monitoring v1.00_enconfidencial
 
Design the implementation of CDEx Robust DC Motor.
Design the implementation of CDEx Robust DC Motor.Design the implementation of CDEx Robust DC Motor.
Design the implementation of CDEx Robust DC Motor.Ankita Tiwari
 
Better Network Management Through Network Programmability
Better Network Management Through Network ProgrammabilityBetter Network Management Through Network Programmability
Better Network Management Through Network ProgrammabilityCisco Canada
 
PrismTech Integrated Communications Systems Modeling
PrismTech Integrated Communications Systems ModelingPrismTech Integrated Communications Systems Modeling
PrismTech Integrated Communications Systems ModelingADLINK Technology IoT
 
Fannie mae bmc remedy its mv7 production infrastructure_v8_021009
Fannie mae bmc remedy its mv7 production infrastructure_v8_021009Fannie mae bmc remedy its mv7 production infrastructure_v8_021009
Fannie mae bmc remedy its mv7 production infrastructure_v8_021009Accenture
 
UNIT I_Introduction.pptx
UNIT I_Introduction.pptxUNIT I_Introduction.pptx
UNIT I_Introduction.pptxssuser4ca1eb
 
To Perform SIL And PIL Testing on Fast Dynamic System using Economical AVR Co...
To Perform SIL And PIL Testing on Fast Dynamic System using Economical AVR Co...To Perform SIL And PIL Testing on Fast Dynamic System using Economical AVR Co...
To Perform SIL And PIL Testing on Fast Dynamic System using Economical AVR Co...ijsrd.com
 
17 demonstration server client system-v1.00_en
17 demonstration server client system-v1.00_en17 demonstration server client system-v1.00_en
17 demonstration server client system-v1.00_enconfidencial
 
Deploying Windows 7 With Configuration Manager 2007 R2
Deploying Windows 7 With Configuration Manager 2007 R2Deploying Windows 7 With Configuration Manager 2007 R2
Deploying Windows 7 With Configuration Manager 2007 R2Amit Gatenyo
 
Performance and Power Profiling on Intel Android Devices
Performance and Power Profiling on Intel Android DevicesPerformance and Power Profiling on Intel Android Devices
Performance and Power Profiling on Intel Android DevicesIntel® Software
 
C Cure Users Group Presentation Final 4
C Cure Users Group Presentation Final 4C Cure Users Group Presentation Final 4
C Cure Users Group Presentation Final 4halgig
 
Lot Completion Estimation Using Self-Configuring Equipment Model-based Applic...
Lot Completion Estimation Using Self-Configuring Equipment Model-based Applic...Lot Completion Estimation Using Self-Configuring Equipment Model-based Applic...
Lot Completion Estimation Using Self-Configuring Equipment Model-based Applic...Kimberly Daich
 
Ch2 v70 config_overview_en
Ch2 v70 config_overview_enCh2 v70 config_overview_en
Ch2 v70 config_overview_enconfidencial
 

Ähnlich wie SysML for embedded system engineering - Academy Camp 2015 (20)

09 basics operating and monitoring v1.00_en
09 basics operating and monitoring v1.00_en09 basics operating and monitoring v1.00_en
09 basics operating and monitoring v1.00_en
 
Ch8 v70 os_en
Ch8 v70 os_enCh8 v70 os_en
Ch8 v70 os_en
 
Design the implementation of CDEx Robust DC Motor.
Design the implementation of CDEx Robust DC Motor.Design the implementation of CDEx Robust DC Motor.
Design the implementation of CDEx Robust DC Motor.
 
Better Network Management Through Network Programmability
Better Network Management Through Network ProgrammabilityBetter Network Management Through Network Programmability
Better Network Management Through Network Programmability
 
Ia rm001 -en-p
Ia rm001 -en-pIa rm001 -en-p
Ia rm001 -en-p
 
PrismTech Integrated Communications Systems Modeling
PrismTech Integrated Communications Systems ModelingPrismTech Integrated Communications Systems Modeling
PrismTech Integrated Communications Systems Modeling
 
Sys ml presentation
Sys ml presentationSys ml presentation
Sys ml presentation
 
Fannie mae bmc remedy its mv7 production infrastructure_v8_021009
Fannie mae bmc remedy its mv7 production infrastructure_v8_021009Fannie mae bmc remedy its mv7 production infrastructure_v8_021009
Fannie mae bmc remedy its mv7 production infrastructure_v8_021009
 
UNIT I.pptx
UNIT I.pptxUNIT I.pptx
UNIT I.pptx
 
UNIT I_Introduction.pptx
UNIT I_Introduction.pptxUNIT I_Introduction.pptx
UNIT I_Introduction.pptx
 
PhD Slides
PhD SlidesPhD Slides
PhD Slides
 
To Perform SIL And PIL Testing on Fast Dynamic System using Economical AVR Co...
To Perform SIL And PIL Testing on Fast Dynamic System using Economical AVR Co...To Perform SIL And PIL Testing on Fast Dynamic System using Economical AVR Co...
To Perform SIL And PIL Testing on Fast Dynamic System using Economical AVR Co...
 
3DD 1e SyCers
3DD 1e SyCers3DD 1e SyCers
3DD 1e SyCers
 
17 demonstration server client system-v1.00_en
17 demonstration server client system-v1.00_en17 demonstration server client system-v1.00_en
17 demonstration server client system-v1.00_en
 
Deploying Windows 7 With Configuration Manager 2007 R2
Deploying Windows 7 With Configuration Manager 2007 R2Deploying Windows 7 With Configuration Manager 2007 R2
Deploying Windows 7 With Configuration Manager 2007 R2
 
Performance and Power Profiling on Intel Android Devices
Performance and Power Profiling on Intel Android DevicesPerformance and Power Profiling on Intel Android Devices
Performance and Power Profiling on Intel Android Devices
 
C Cure Users Group Presentation Final 4
C Cure Users Group Presentation Final 4C Cure Users Group Presentation Final 4
C Cure Users Group Presentation Final 4
 
Lot Completion Estimation Using Self-Configuring Equipment Model-based Applic...
Lot Completion Estimation Using Self-Configuring Equipment Model-based Applic...Lot Completion Estimation Using Self-Configuring Equipment Model-based Applic...
Lot Completion Estimation Using Self-Configuring Equipment Model-based Applic...
 
Ch2 v70 config_overview_en
Ch2 v70 config_overview_enCh2 v70 config_overview_en
Ch2 v70 config_overview_en
 
Cs 704 d set2
Cs 704 d set2Cs 704 d set2
Cs 704 d set2
 

Kürzlich hochgeladen

High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escortsranjana rawat
 
Processing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptxProcessing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptxpranjaldaimarysona
 
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur EscortsCall Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
Software Development Life Cycle By Team Orange (Dept. of Pharmacy)
Software Development Life Cycle By  Team Orange (Dept. of Pharmacy)Software Development Life Cycle By  Team Orange (Dept. of Pharmacy)
Software Development Life Cycle By Team Orange (Dept. of Pharmacy)Suman Mia
 
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...roncy bisnoi
 
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Serviceranjana rawat
 
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Dr.Costas Sachpazis
 
UNIT-III FMM. DIMENSIONAL ANALYSIS
UNIT-III FMM.        DIMENSIONAL ANALYSISUNIT-III FMM.        DIMENSIONAL ANALYSIS
UNIT-III FMM. DIMENSIONAL ANALYSISrknatarajan
 
247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt
247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt
247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).pptssuser5c9d4b1
 
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICSAPPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICSKurinjimalarL3
 
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLSMANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLSSIVASHANKAR N
 
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escortsranjana rawat
 
Porous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writingPorous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writingrakeshbaidya232001
 
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICSHARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICSRajkumarAkumalla
 
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete RecordCCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete RecordAsst.prof M.Gokilavani
 
Introduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxIntroduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxupamatechverse
 
Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)simmis5
 
AKTU Computer Networks notes --- Unit 3.pdf
AKTU Computer Networks notes ---  Unit 3.pdfAKTU Computer Networks notes ---  Unit 3.pdf
AKTU Computer Networks notes --- Unit 3.pdfankushspencer015
 
result management system report for college project
result management system report for college projectresult management system report for college project
result management system report for college projectTonystark477637
 
Introduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxIntroduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxupamatechverse
 

Kürzlich hochgeladen (20)

High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
 
Processing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptxProcessing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptx
 
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur EscortsCall Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
 
Software Development Life Cycle By Team Orange (Dept. of Pharmacy)
Software Development Life Cycle By  Team Orange (Dept. of Pharmacy)Software Development Life Cycle By  Team Orange (Dept. of Pharmacy)
Software Development Life Cycle By Team Orange (Dept. of Pharmacy)
 
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
 
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
 
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
 
UNIT-III FMM. DIMENSIONAL ANALYSIS
UNIT-III FMM.        DIMENSIONAL ANALYSISUNIT-III FMM.        DIMENSIONAL ANALYSIS
UNIT-III FMM. DIMENSIONAL ANALYSIS
 
247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt
247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt
247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt
 
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICSAPPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
 
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLSMANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
 
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
 
Porous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writingPorous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writing
 
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICSHARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
 
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete RecordCCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
 
Introduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxIntroduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptx
 
Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)
 
AKTU Computer Networks notes --- Unit 3.pdf
AKTU Computer Networks notes ---  Unit 3.pdfAKTU Computer Networks notes ---  Unit 3.pdf
AKTU Computer Networks notes --- Unit 3.pdf
 
result management system report for college project
result management system report for college projectresult management system report for college project
result management system report for college project
 
Introduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxIntroduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptx
 

SysML for embedded system engineering - Academy Camp 2015

  • 1. RÉGIS CASTERAN – SYSTEMS AND SOFTWARE ENGINEERING DOMAIN LEADER 09/23/2015 – V3 Sysml for embedded system engineering
  • 2. OVERVIEW PART 1 ● Background and challenges PART 2 ● Using SysML at system level PART 3 ● Using SysML at software level PART 4 ● Perspectives 3 13 27 36
  • 4. 4 Definitions Embedded system BACKGROUND AND CHALLENGES A collection of hardware and/or software elements organized to accomplish a specific function or a set of functions of a larger system. (AGPS, based on INCOSE handbook and ISO/IEC 15288:2015) System engineering An interdisciplinary approach and means to enable the realization of successful systems. (INCOSE handbook)
  • 5. 5 Definitions Model BACKGROUND AND CHALLENGES A semantically closed abstraction of a system or a complete description of a system from a particular perspective. (ISO/IEC/IEEE 24765:2010) System Modeling Language (SysML) A general-purpose graphical modeling language for specifying, analyzing, designing, and verifying complex systems that may include hardware, software, information, personnel, procedures, and facilities. (Object Management Group)
  • 6. 6 Background Embedded system breakdown structure BACKGROUND AND CHALLENGES
  • 7. 7 Background Why and how modeling ? BACKGROUND AND CHALLENGES
  • 11. 11 Challenges SysML model verification BACKGROUND AND CHALLENGES Criteria Formality level Complexity Review type Instrumentation Understandable Informal Low Walkthrough None Completion Informal to Formal High Model review to Formal testing - Traceability checker - Model transformation to UPPAAL language - Model transformation to B language Robustness Informal High Model review None Consistency Informal to Formal High Model review to Formal testing - OCL checker - Model transformation to UPPAAL language - Model transformation to B language Stability Informal Low Walkthrough None
  • 12. 12 Challenges SysML model validation BACKGROUND AND CHALLENGES Validation techniques Development state Complexity Instrumentation Simulation At first B-sample release Low Data acquisition (inputs / outputs) Cosimulation At validating first architecture High Model transformation to cosimulation plateform model (Depending on solution capacity to import SysML / UML model) Rapid control prototyping At selecting architecture candidates High - RCP platform - Model transformation to RCP plateform model (Depending on solution capacity to import SysML / UML model)
  • 13. PART 2 Using SysML at system level
  • 14. 14 Motivations Stakeholder engagement in requirement management USING SYSML AT SYSTEM LEVEL
  • 15. 15 Motivations Automisation in architecture management USING SYSML AT SYSTEM LEVEL cmp Network principle NET1_NODE1 NET2_NODE2EQ1 NET1_NODE1 NET2_NODE2 Network_1 + NET1_NODE1 + NET1_NODE2 + NET1_MSG NET1_NODE2 NET2_NODE_1 EQ2 NET1_NODE2 NET2_NODE_1 Network_2 + NET2_NODE1 + NET2_NODE2 + NET2_EQ1_EQ2_VAR + NET2_EQ2_EQ1_VAR NET1_NODE1_PORT1 NET1_NODE2_PORT1 NET2_NODE1_PORT1 NET2_NODE2_PORT1 NET2_EQ1_EQ2_VAR NET2_EQ2_EQ1_VAR NET1_MSG Link Link
  • 16. 16 Motivations Automisation in architecture management USING SYSML AT SYSTEM LEVEL «XSDcomplexType» nodeType «XSDelement» + address: string + equipment: string [0..1] «XSDattribute» + isLocal: boolean «XSDcomplexType» BaseModel::abstractBaseType «XSDattribute» + isActivated: boolean + name: string «XSDextension» del class PeriodicDataModel «XSDcomplexType» periodicDataType «XSDelement» + arrayNbItems: positiveInteger [0..1] + defaultValue: string [0..1] + offset: nonNegativeInteger [0..1] + type: baseExtendedDataEnumType [0..1] «XSDattribute» + isFunctional: boolean «XSDcomplexType» BaseModel::abstractBaseType «XSDattribute» + isActivated: boolean + name: string string «enumeration» BaseModel:: baseExtendedDataEnumType ANTIVALENT2 AR_CHAR8 AR_INTEGER16 AR_INTEGER32 AR_INTEGER8 AR_REAL32 AR_UNSIGNED16 AR_UNSIGNED32 AR_UNSIGNED8 BCD4 BIPOLAR216 BIPOLAR416 BITSET16 BITSET32 BITSET64 BITSET8 BOOLEAN1 CHARACTER8 ENUM4 ENUM8 INTEGER16 INTEGER32 INTEGER8 REAL32 UNICODE16 UNIPOLAR216 UNSIGNED16 UNSIGNED32 UNSIGNED8 WORD16 WORD8 «XSDextension» Name: Package: Version: Author: PeriodicDataModel «XSDschema» PeriodicDataModel 1.0 ASSYSTEM (RCA) class AperiodicChannelModel «XSDcomplexType» aperiodicChannelType «XSDelement» + arrayNbItems: positiveInteger [0..1] + defaultValue: string [0..1] + type: baseExtendedDataEnumType [0..1] «XSDattribute» + isService: boolean «XSDcomplexType» BaseModel::abstractBaseType «XSDattribute» + isActivated: boolean + name: string string «enumeration» BaseModel:: baseExtendedDataEnumType ANTIVALENT2 AR_CHAR8 AR_INTEGER16 AR_INTEGER32 AR_INTEGER8 AR_REAL32 AR_UNSIGNED16 AR_UNSIGNED32 AR_UNSIGNED8 BCD4 BIPOLAR216 BIPOLAR416 BITSET16 BITSET32 BITSET64 BITSET8 BOOLEAN1 CHARACTER8 ENUM4 ENUM8 INTEGER16 INTEGER32 INTEGER8 REAL32 UNICODE16 UNIPOLAR216 UNSIGNED16 UNSIGNED32 UNSIGNED8 WORD16 WORD8 «XSDextension» Name: Package: Version: Author: AperiodicChannelModel «XSDschema» AperiodicChannelModel 1.0 ASSYSTEM (RCA)
  • 21. 21 Patterns Example USING SYSML AT SYSTEM LEVEL stm [Package] System state [System state] Powered on INITTESTINGFLASHING FAILEDPower ON SHUTDOWN Final VOLTAGE_MIN_LOW DTC_STORED VOLTAGE_MIN_LOW VOLTAGE_MIN_HIGH stm [StateMachine] Running mode [Running mode] Initial RUNNING Choice MASTER SLAVE Final [(IS_SLAVE_LAST_RUN && ! IS_MASTER_SLAVE_CHANGE_LAST_RUN) || IS_MASTER_LAST_RUN] [Else] stm [StateMachine] Power ON [Power ON] INIT Initial Evaluate requested mode Running mode TESTINGFLASHING Final [MODE == RUNNING] [MODE == FLASHING] [MODE == TESTING]
  • 22. 22 Requirement management Start with use cases USING SYSML AT SYSTEM LEVEL uc Maintenance Management Embedded system Class:Embedded system «human actor» Maintenance operator Download maintenance data Process maintenance request extension points Maintenance access is granted and maintenance data download is requested Maintenance access is granted and system version identification is requested Maintenance access is granted and new sw version deployment is requested Extension Point : Maintenance access is granted and maintenance data Extension Point : Maintenance access is granted and maintenance data download is requested Determine system status «requirement» SYS_1 notes The system shall set the current maintenance status to "AUTHORIZATION GRANTED" by default. «sw actor» Customer application «extend» «extend»
  • 23. 23 Requirement management Specify scenarii USING SYSML AT SYSTEM LEVEL sd Process maintenance request from USB key embedded system: Embedded system RUNNING USB key: USB key customer application: Customer application alt USB device test [USB is correctly mounted] alt Maintenance action file test MaintenanceActionFile UsbKeyInserted() updateAuthorization(AUTH_STATUS): boolean readActionFile(): boolean mountUSB(): boolean ReadFile(): boolean
  • 24. 24 Requirement management Build architecture context with block diagram USING SYSML AT SYSTEM LEVEL bdd [Package] Maintenance Management [Maintenance Management] Ethernet port: Ethernet interface USB port: USB interface LED [3] ASW port: ~Application interface «sys block» Embedded system + mountUSB(): boolean + readActionFile(): boolean + parseActionFile(): boolean + writeMaintenaceData(maintenanceDataType): boolean + updateSystemStatus(systemStatusType) + checkAuthorization(): boolean + updateAuthorization(boolean): boolean properties board : Board bsw : Basic software Ethernet port: Ethernet interface USB port: USB interface LED [3] ASW port: ~Application interface «sys actor» Maintenance PC «human actor» Maintenance operator «sys actor» USB key «hw interface» Ethernet interface isEncapsulated = type = female flow properties in MaintenanceRequest : MaintenanceMessage in swPackage out MaintenanceDataFile : MaintenanceDataFile «hw interface» USB interface isEncapsulated = type = female flow properties in MaintenanceRequest : UsbKeyInserted «signal» UsbKeyInserted Ethernet port: ~Ethernet interface «sys block» Maintenance PC Ethernet port: ~Ethernet interface USB port: ~USB interface «sys block» USB key + ReadFile(): boolean + WriteFile(): boolean USB port: ~USB interface MaintenanceMessage MaintenanceDataFile + type: maintenanceDataType «enumeration» maintenanceDataType «sw actor» Customer application ASW port: Application interface «sw block» Customer application ASW port: Application interface «trace» LedState «flow» «trace» «trace»
  • 25. 25 Architecture management Split system functions USING SYSML AT SYSTEM LEVEL sd Process maintenance request from USB key embedded system: Embedded system RUNNING USB key: USB key customer application: Customer application /board /bsw alt USB device test [USB is correctly mounted] alt Maintenance action file test [Maintenance action file is correctly formatted] MaintenanceActionFile UsbKeyInserted() writeRAM(AUTH_ADDRESS, AUTH_STATUS): boolean readActionFile(): boolean checkAuthorization(): boolean updateAuthorization(AUTH_STATUS): boolean mountUSB(): boolean ReadFile(): boolean readFile(ACTION_FILENAME): boolean UsbKeyInserted()
  • 26. 26 Architecture management Split system interfaces USING SYSML AT SYSTEM LEVEL bdd [Package] Maintenance management [Maintenance management] Ethernet port: Ethernet interface LED[3] USB port: USB interface ASW port: ~Application interface «sys block» Maintenance Management::Embedded system + checkAuthorization(): boolean + mountUSB(): boolean + parseActionFile(): boolean + readActionFile(): boolean + updateAuthorization(boolean): boolean + updateSystemStatus(systemStatusType) + writeMaintenaceData(maintenanceDataType): boolean properties board : Board bsw : Basic software Ethernet port: Ethernet interface LED[3] USB port: USB interface ASW port: ~Application interface Ethernet port LED[3] USB port Filesystem: Board filesystem Register: Board register «hw block» Board + readEEPROM(int, int): boolean + readFile(string): boolean + readNVRAM(int, int): boolean + readRAM(int, int): boolean + writeEEPROM(int, int): boolean + writeFile(string): boolean + writeNVRAM(int, int): boolean + writeRAM(int, int): boolean Ethernet port LED[3] USB port Filesystem: Board filesystem Register: Board register «hw interface» Maintenance Management::Ethernet interface flow properties in MaintenanceRequest : MaintenanceMessage in swPackage out MaintenanceDataFile : MaintenanceDataFile «hw interface» Maintenance Management:: LED interface flow properties out LedState : LedState «hw interface» Maintenance Management::USB interface flow properties in MaintenanceRequest : UsbKeyInserted in MaintenanceActionFile : MaintenanceActionFile out MaintenanceDataFile : MaintenanceDataFile ASW port Register: ~Board register Filesystem: ~Board filesystem «sw block» Basic software + checkAuthorization(): boolean + mountUSB(): boolean + parseActionFile(): boolean + readActionFile(): boolean + updateAuthorization(boolean): boolean + updateSystemStatus(systemStatusType) + writeMaintenaceData(maintenanceDataType): boolean ASW port Register: ~Board register Filesystem: ~Board filesystem «sw interface» Maintenance Management::Application interface flow properties out AuthorizationStatus : Boolean «sw interface» Board register flow properties in AuthorizationStatus : Boolean out MaintenanceActionFile : MaintenanceActionFile out MaintenanceRequest : UsbKeyInserted «sw interface» Board filesystem flow properties out MaintenanceDataFile : MaintenanceDataFile +bsw +board
  • 27. PART 3 Using SysML at software level
  • 28. 28 Motivations Stakeholder engagement in requirement management USING SYSML AT SOFTWARE LEVEL
  • 29. 29 Motivations Automisation in architecture management USING SYSML AT SOFTWARE LEVEL ibd [Block] SwcB_JWILL [SwcB_JWILL] RP_IPC_Lat_Acc RP_IPC_Lat_Acc_Valid TMT_RunB_JWILL_4ms TMT_RunB_JWILL_10ms TMT_RunB_JWILL_1ms PP_OPM_Pinion_Torq_Tgt ibd [Block] SwcB_JWILL [SwcB_JWILL] RP_IPC_Lat_Acc RP_IPC_Lat_Acc_Valid TMT_RunB_JWILL_4ms TMT_RunB_JWILL_10ms TMT_RunB_JWILL_1ms PP_OPM_Pinion_Torq_Tgt RP_IPC_Lat_Acc RP_IPC_Lat_Acc_Valid TMT_RunB_JWILL_4ms «Runnable» RunB_JWILL_4ms RP_IPC_Lat_Acc RP_IPC_Lat_Acc_Valid TMT_RunB_JWILL_4ms IRV_TTG_Lat_Acc_weight_X_f IRV_TTG_Lat_Acc_weight IRV_TTG_Lat_Acc_weight_X_k IRV_TTG_Weight_Den TMT_RunB_JWILL_10ms «Runnable» RunB_JWILL_10ms TMT_RunB_JWILL_10ms TMT_RunB_JWILL_1ms PP_OPM_Pinion_Torq_Tgt«Runnable» RunB_JWILL_1ms TMT_RunB_JWILL_1ms PP_OPM_Pinion_Torq_Tgt «delegate» «delegate» «delegate» «delegate» «delegate» «delegate»
  • 30. 30 Motivations Automisation in architecture management USING SYSML AT SOFTWARE LEVEL
  • 31. 31 Requirement management Focus use cases on HW interfaces USING SYSML AT SOFTWARE LEVEL uc Software System Overview ECU Abstraction Layer Component:ECUAbstractionLayer «hw actor» PDC ASIC Front: PDC ASIC Front Determine the Park Assistant activation extension points Park Slave PDC Activation Control the Park Assistant PDC Feature extension points before PDC Feature Initialization Manage NVRAM Datas Determine Application Power State extension point: before PDC Feature Initialization «hw actor» Klemme KL15 Coverage: Klemme KL15 coverage extension point: Park Slave PDC Activation «extend» «include» «extend» «include» «include» «include» «include»
  • 32. 32 Requirement management Describe main features functional flow USING SYSML AT SOFTWARE LEVEL ibd [Block] Software composition [Software composition] ECU GPIO ECU serial port ibd [Block] Software composition [Software composition] ECU GPIO ECU serial port Park state «fct part» PDC activation logic Park state Park state Power state Error state Sensor voltage «fct part» PDC control logic Park state Power state Error state Sensor voltage Power state Battery voltage «fct part» Application power state Power state Battery voltage Error state «fct part» Diagnostic Error state Battery voltage ECU GPIO ECU serial port Sensor voltage «fct part» ECU abstraction layer Battery voltage ECU GPIO ECU serial port Sensor voltage
  • 33. 33 Architecture management Identify standard components USING SYSML AT SOFTWARE LEVEL «framework» Application - BMW PDC L6 P1::APKM tags isModelDriven = True isStandard = False P1::APKS tags isModelDriven = True isStandard = False «framework» STD Modules P2::Detection System tags isModelDriven = False isStandard = True P2::COMM tags isModelDriven = False isStandard = True P1::VOLT tags isModelDriven = False isStandard = True P2::MXAD tags isModelDriven = False isStandard = True P2::MX12 tags isModelDriven = False isStandard = True P2::PLBMWUPI tags isModelDriven = False isStandard = True «framework» Metrowerks Library + _CHECKSUM_QUAL + _CheckSum1ByteTyp + CHECKSUM + START12 + CHECKSUM_VerifyRO + START12_StartECU (from St «framework» BMW PDC Common Modules P1::AHTST tags isModelDriven = False isStandard = False P1::AMM tags isModelDriven = False isStandard = False P1::AUPA tags isModelDriven = False isStandard = False P1::AKLC tags isModelDriven = False isStandard = False P1::AFESP tags isModelDriven = False isStandard = False P1::ACODI tags isModelDriven = False isStandard = False «BMWtemplatebased» P1::ADIAG «BMWtemplatebased» P1::AMAIN «import» «import» «import»«import»
  • 34. 34 Architecture management Identify standard components USING SYSML AT SOFTWARE LEVEL «framework» BMW PDC Common Modules APKM tags isModelDriven = True isStandard = False APKS tags isModelDriven = True isStandard = False «framework» STD Modules Detection System tags isModelDriven = False isStandard = True COMM tags isModelDriven = False isStandard = True VOLT tags isModelDriven = False isStandard = True MXAD tags isModelDriven = False isStandard = True MX12 tags isModelDriven = False isStandard = True PLBMWUPI tags isModelDriven = False isStandard = True «framework» Application - BMW PDC L4 AFESP tags isModelDriven = False isStandard = False AHTST tags isModelDriven = False isStandard = False AKLC tags isModelDriven = False isStandard = False AMM tags isModelDriven = False isStandard = False AUPA tags isModelDriven = False isStandard = False ADESC «framework» Metrowerks Library + _CHECKSUM_QUALI + _CheckSum1ByteType + CHECKSUM + START12 + CHECKSUM_VerifyROMChe + START12_StartECU ACODI tags isModelDriven = False isStandard = False EEPIF_SC6: EEPIF EEP_SC6: EEP NVM_SC6: NVM «BMWtemplatebased» AMAIN DEM_SC6: DEM «import»«import» «import» «import»
  • 35. 35 Architecture management Split main features functional flow between components USING SYSML AT SOFTWARE LEVEL sd Determine Park Assistant State AUPA: AUPA«subsystem» :Diagnostic PDCControlLogic subsystem: PDCControlLogic «subsystem» :ApplicationPowerState «subsystem» PDCActivationLogic: PDCActivationLogic {Application power state has been determined} AUPA_Config / AUPA_Config opt Application power state indicates that the sensor power is supplied [Sensor power supply is ON] UPA_SetRequestedState(u8) XUPA_IS_USENSOR_ON(): bool_T KLC_HSS_GetState(): KLC_HSS_STATE UPA_Cyclic() XUPA_IS_USENSOR_OK(): bool_T PARK_ASSIST_STATE_REQD_IF(u8) HSS_STATE_IF() KLC_HSS_GetState(): KLC_HSS_STATE HSS_STATE_IF()
  • 37. 37 Towards a new AGPS discipline offer: “Model Based Engineering for Embedded System” Principle PERSPECTIVES • Auditing customer both system and software engineering processes • Identifying profiles and patterns opportunities • Building models at system and software level • Specifying, developing and/or sustaining model transformation tools • Specifying, developing and/or sustaining artefact generation tools Next steps • Deploying AGPS profiles and patterns • Writing guidelines for variant management • Writing guidelines for test requirement management • Developing SysML model transformation schemes for verification • … Want to contribute ? • Please send me a mail at rcasteran@assystem.com

Hinweis der Redaktion

  1. INCOSE: INternational Council On Systems Engineering ISO/IEC 15288: systems and software engineering: system life cycle processes Why our own definition for Embedded system ? Because there is no standardized definition To understand each other To share our discipline vision with our customers Embedded system is interfaced with: Sensors which provide Embedded system inputs Actuators which receive Embedded system outputs
  2. ISO 24765: systems and software engineering: vocabulary Please reminder that a complete modelling of an embedded system is a myth !
  3. On the right : project specification tree, as specified by INCOSE On the left: sysml decomposition of an embedded system in ALSTOM TIS
  4. Two kinds of models: - interpretable: based on a modelling language, allowing to transform it into another language or model space - executable: embeds executable software code to compute discrete input values to discrete output values First model: not interpretable, not executable (comparison of brackets notation and without brackets notation in transition) Second model: more interpretable (based on UML notation), not executable (transition meaning ?) Third model: interpretable, executable
  5. Architecture world relies on elements/interfaces decomposition and allocation Requirement world relies on needs refinement and allocation Challenge: how to link architecture artefacts to requirement artefacts ?
  6. Solution : Architecture “satisfies” requirements (technical solution) Architecture “justifies” derived requirements (additional requirements to due to technical solution)
  7. Example of a tool chain implementing this solution for VALEO: Requirement management is performed in DOORS Architecture management is performed in EA Standard design management is performed in Statemate
  8. UPPAAL: UPPsala AALborlg university language Model verification criteria inherits from architecture verification criteria: Understandable: Scope, objectives, assumption of architecture are clearly defined Response navigation through the model elements/diagrams Clear traceability between model elements Completion: Fulfilment and traceability of all requirements Degraded modes and performances defined Range and precision justified Robustness Justification of derived requirements Justification of design pattern Justification of metamodeling and profiling usage Consistency Structural : instances vs classes Logic : sequence diagrams vs statemachine diagrams vs block diagrams Constraints Names Stability Baselining flexibility Scalability between variants
  9. MDA : Model Driven Archicture Here an example of PIM for network description
  10. Here the results of the MDA transformation of this network description into XML/XSD description
  11. Everything can be modelized in SysML with a Block. So we need to specialize the block element for embedded system.
  12. Why a “function block” ? - 1st argument: requirement satisfaction (functional view)
  13. Why a “function block” ? - 2st argument: ibd of a “function block” is simplier than an “activity diagram”
  14. Why a “function block” ? - 3st argument: structural view consistency with functional view
  15. Please do not reinvent the wheel at each new project setup ! Here is an example of a classical statemachine for embedded system.
  16. First level of requirement traceability: A use case is not a function, but a “bundle of function” that “satisfies” a requirement (functional view) First level of interface definition Here an example of maintenance management function of an embedded system
  17. Refine interfaces with sequence diagrams (Please note the link with the state machine)
  18. Here an example of an architecture description of an AUTOSAR software component in SysML
  19. The related AUTOSAR configuration generated from the architecture description
  20. We do not know about software architecture and decomposition at this stage, but we design main features. Please note that “ECU abstraction layer”, “Application voltage state” and “Diagnostic” are standard features for embedded systems.
  21. Here an example of software component classification, where the green modules was considered as “non standard” by the management. Please always consider two levels of standardisation / reusability: 1st level for all projects based on the same system, whatever the customer is (so called “STD modules” in the example) 2nd level for all projects for one customer based on the same system (so called “BMW PDC common modules in the example)
  22. Why these two levels ? Improving variant management of embedded systems ! Here the results for VALEO in a new BMW project concerning the same embedded system as previously.