Anda di halaman 1dari 30

SysML and AADL, patterns for integrated Use

Jrme Hugues, ISAE Pierre de Saqui-Sannes, ISAE

Objectives

OMG SysML for filling the gap between requirements (textbased) and early design solutions, prior to go to AADL Objective: investigate patterns to bridge SysML and AADL Method: use a lab session from ISAE/ENSICA cursus
Longitudinal Flight Management System Available DOORS requirement base + SCADE design

page 2

Case study: Longitudinal Flight Management System

page 3

Longitudinal FMS

Support for a lab session at ENSICA Mission: pilot the plane on the z axis
Automatic and manual modes 1 system, 4 sub-systems, 27 requirements Support take-off, landing, stall detection Naive piloting laws and environment modeled

Approach: follow typical SCADE development cycle


Model blocks, integrate functional behavior Map requirements to blocks Model coverage, simulation, model checking Integration of a GUI using SCADE Display
page 4

Longitudinal FMS in action

page 5

Metrics for this project

Time to perform the whole case: 20 hours


Include modeling, testing, V&V, demonstration, report

27 requirements, approx. 20 blocks modeled


All requirements traced to block 100% MC/DC covered Functional testing and model checking

Limits: open loop models


No feedback from the environment due to limited models available Only playback of inputs

Yet sufficiently representative


only need to improve the modeling of the plant
page 6

Modeling the L/FMS using SysML/AADL

page 7

Rationale

DOORS/SCADE is a big jump, needs additional steps in the modeling process


Add SysML for first step modeling, then refine down to AADLv2

First, elicit high-level design blocks using SysML, behaviors, and map it to actual architecture represented in AADLv2 Validate on both abstract models and the actual architecture the solution
Note#1: Lab session does not cover the latter step Note#2: SCADE to integrate SysML modeler (using MDT-Papyrus) in September 2011 release

page 8

About the modeling process

SysML is a UML profile, comes with its inherent complexity


Need to tailor it to match one modeling process

We retained a very nave one, limited to SysML-only


Requirement diagram Use cases Block diagrams State machines Parametric diagrams

This constrains the semantics fuzziness of SysML to a tractable subset and prepare for the transition to AADLv2
page 9

Modeling process

Requirement capture: provide a tree-like structures, with hierarchy and clustering of all requirements Modeling assumptions: define perimeter of the model Problem Analysis (-la UML): define use cases Architectural Design (-la UML): define the static architecture Validation: mostly functional at this level Architecture refinement: refine the static architecture into runtime architecture Architecture mapping: map blocks to hardware/software Validation: refine all computed metrics

page 10

AADL

SysML

Requirements

page 11

Use cases

page 12

Block

page 13

State Machine

AVATAR forces the binding of state machines to a block


page 14

Divergences from SysML

Problem: SysML has a weak semantics model


Efforts at ISAE and Telecom ParisTech (Sophia campus) to fill these holes

Solution: AVATAR profile + TEPE


Constraints on the modeling pattern to avoid loopholes in the specs. Reduce the number of diagrams to avoid inconsistencies Ensure models can be mapped onto UPPAAL for verification

Tool support using TTool


http://labsoc.comelec.enst.fr/turtle/ttool.html

Note: this is in-line with typical UML approach


Adapt the notation to a project/company
page 15

TEPE parametric diagram

Definition of observers, used by UPPALL Combined use with Block and State Machine diagrams

page 16

From SysML to AADL

page 17

Rationale for the mapping

Goal: integrate AADLv2 as part of the global workflow


Ideally, round-trip for some parts

Constraints:
Avoid introducing specific properties Do not forbid analysis at SysML-level

Start from a manual mapping perspective


With automation in mind

page 18

Mapping Requirements

Requirements define a hierarchy of concerns Each requirement maps to


A constraint on the architecture

A block shall support function A Shall have such quality of service metric
A check-obligation

System shall exhibit this metric Careful design to trace them to AADL level
page 19

Mapping requirements (contd)

SysML requirements are bound to SysML entities


This feature has to be imported by AADLv2

Quickn dirty way: use a string property


Not sufficient: unsafe, poor support for analysis

Better: interleaves of SysML and AADLv2 meta-models


See interaction with RDALT

Import SysML as an AADLv2 annex language


Allows for naming SysML identifier as a classifier See 11.1.1 Property Types, naming rule (N6) SysML_Req : classifier (<SysML_MM_Req>); Allow for easy navigation, to be evaluated by tool vendors
page 20

Mapping use case

Question: does it make sense? Not clear, depends on the use in the original process Mostly documentation purpose, poor link with other SysML diagrams in tools
Could be used to check high-level connectivity between blocks

page 21

Mapping block diagrams

SysML Data types <-> AADL data types


Map primitive types (boolean, integers, ) to elements from Base_Types package defined in AADLv2 Data Modeling annex

SysML Block and Internal Block


Combination of system/ system implementation for top-level (BD) Abstract/Abstract implementation for internals

Connection in IBD are typed, have a direction, no more


Use abstract features connection facilities introducted in AADLv2

page 22

From IBD to AADLv2

IBD defines a top-level architecture to be mapped to concrete blocks: this is the role of AADLv2 BD (systems) and IBD (abstract) are refined onto concrete AADLv2 components
The approach maps to Incremental design presented in ARAM

Note some requirements also map directly to AADLv2 concrete components


E.g. Airbus requirement to use the IMA2G hardware architecture This implies the parallel construction of a library of AADL blocks This library is used to populate refinements of abstract functions
page 23

Mapping activity

Nothing but automata Mapping to a BA subset? SysML is elusive about dispatch conditions
Timing? Queuing? Deferred to later steps

Does AADL/BA has notion of fuzzy dispatch conditions that can be refined? Are AADL-BA annex subclauses inherited?

page 24

SysML/AADL integrated process


1/ SysML
Requirements Use Cases AADL repository Block diagrams State machines Abstract components
BA annex

2/ AADL
Device Processor Memory

subcomponents Systems Systems Systems

System impls

page 25

Bi-directional model navigation and update

IBD/abstract components is the pivot Any update to one can be reflected to the others Raises concerns for dependencies
SysML updated -> AADL Systems may change

Checked by AADL grammar or tool support


AADL updated -> SysML models to be updated

Tool support, usually weak no incremental checks Question: which IBD to translate? Some of them are really too abstract to be relevant at AADL level
page 26

Conclusion

page 27

Not-so final words

Some interesting results for a restricted case study Modeling process shares a lot of similarities with TASTE incremental modeling
1. Mapping SysML block diagrams to set of abstract functions 2. Mapping of abstract to concrete AADL follow TASTE patterns

Use of AVATAR/TEPE allows for checks at SysML-level, later completed by checks at AADL-level RDATE by UBS/Lab-STICC provides the missing pieces for linking Requirement diagrams to model validation. Should be enriched to point to multiple levels of validation OMG started work on SySML/MARTE alignement
page 28

About tool support

Automated mapping between SysML and AADL


Generation of abstract components from IBD easy Other diagrams more tricky

Behavior diagram <-> AADL-BA to be evaluated Notion of SysML complete models fuzzy
Many SysML models lack key details

E.g. dispatch time, trigger condition Global clock, actual connection, etc

page 29

Acknowledgements

Thanks to Esterel Technologies for providing academic licenses of SCADE Suite and SCADE Display TTool is developed by L. Apvrille, at Telecom ParisTech Avatar profile by L. Aprvrille and P. de Saqui-Sannes ENSICA students for their reports ;)

page 30

Anda mungkin juga menyukai