PLAY-OUT FOR HIERARCHICAL COMPONENT ARCHITECTURES



Similar documents
Automotive System and Software Architecture

SysML Modelling Language explained

Intoduction to SysML

Compliance and Requirement Traceability for SysML v.1.0a

The SPES Methodology Modeling- and Analysis Techniques

SCADE System Technical Data Sheet. System Requirements Analysis. Technical Data Sheet SCADE System

AutoSAR Overview. FESA Workshop at KTH Prof. Jakob Axelsson Volvo Cars and Mälardalen University

EMBEDDED SOFTWARE DEVELOPMENT: COMPONENTS AND CONTRACTS

Herstellerinitiative Software (OEM Initiative Software)

Mastering increasing product complexity with Collaborative Systems Engineering and PLM

How To Develop Software

A Collaborative Platform for Systems Engineering tools over the Internet With Connections to Wolfram SystemModeler

Model-based Testing of Automotive Systems

isolar Integrated Solution for AUTOSAR

SYSML PLUGIN. version user guide

Development of AUTOSAR Software Components within Model-Based Design

Architecture. Reda Bendraou

Questions? Assignment. Techniques for Gathering Requirements. Gathering and Analysing Requirements

ECU State Manager Module Development and Design for Automotive Platform Software Based on AUTOSAR 4.0

Modeling and Verification of a Telecommunication Application using Live Sequence Charts and the Play-Engine Tool

i. Node Y Represented by a block or part. SysML::Block,

Model-Driven Software Development for Robotics: an overview

Applying Use Cases to Microcontroller Code Development. Chris Gilbert Cypress Semiconductor

Software Design Document (SDD) Template

SysML Vad och varför. Varför Vad. Diskussion. Relation till UML Innehåll Struktur Beteende Krav Cross cutting constructs. Allocations Profiles

Software Development in the Large!

Agile Model-Based Systems Engineering (ambse)

Object Oriented Programming. Risk Management

Contents. Introduction and System Engineering 1. Introduction 2. Software Process and Methodology 16. System Engineering 53

Created by: Austin Davis Neel Iyer Darcie Jones Sascha Schwarz

Model-Based Requirements Engineering with AutoRAID

AUTOSAR Software Architecture

Safety Driven Design with UML and STPA M. Rejzek, S. Krauss, Ch. Hilbes. Fourth STAMP Workshop, March 23-26, 2015, MIT Boston

Intel CoFluent Methodology for SysML *

Hardware in the Loop (HIL) Testing VU 2.0, , WS 2008/09

What is Automotive Software Engineering? What is Automotive Software Engineering? What is Automotive Software Engineering?

Introduction to Simulink & Stateflow. Coorous Mohtadi

Chap 1. Introduction to Software Architecture

openmdm an Open Source Platform for Measured Data Management Dr. Dietmar Rapf, Michael Schwarzbach

Seminar Automotive Open Systems Architecture

Safe Automotive software architecture (SAFE) WP3 Deliverable D3.6.b: Safety Code Generator Specification

VDI 2206 Prof. Dr. Magdy M. Abdelhameed

How To Write A Train Control System

Component-based Development Process and Component Lifecycle Ivica Crnkovic 1, Stig Larsson 2, Michel Chaudron 3

Frameworks of Process Improvement for Mobile Applications

openmdm an Open Source Platform for Measured Data Management Dr. Dietmar Rapf, Michael Schwarzbach

Software Production. Industrialized integration and validation of TargetLink models for series production

Automotive Software Engineering at Hella KGaA. Software Engineering for Software Intensive Systems,

Software Development Methodologies

MBSE Practices in Telescope Modeling. Section I: Introduction. Project Description

A new approach to automotive electric/electronic engineering life-cycle management

Security Test s i t ng Eileen Donlon CMSC 737 Spring 2008

Shadow TX(A) Shadow RX

Vehicle Electronics. Services and Solutions to Manage the Complexity

INTELLECT TM Software Package

The Concern-Oriented Software Architecture Analysis Method

Software Architecture Document

Explicit Connectors in Component Based Software Engineering for Distributed Embedded Systems. Dietmar Schreiner and Karl M.

Safety compliance. Energy management. System architecture advisory services. Diagnostics. Network topologies. Physical and functional partitioning

Industrial Case Study on the Integration of SysML and AUTOSAR with Triple Graph Grammars

4.4 What is a Requirement? 4.5 Types of Requirements. Functional Requirements

Model-Based Testing of Software Product Lines

PLM Center of Excellence PLM for Embedded Product Development - Challenges, Experiences and Solution. M a y

The key linkage of Strategy, Process and Requirements

METHOD & TOOLS TO SECURE AND SUPPORT COLLABORATIVE ARCHITECTING OF CONSTRAINED SYSTEMS

ARIS Design Platform Getting Started with BPM

VAIL-Plant Asset Integrity Management System. Software Development Process

Decomposition into Parts. Software Engineering, Lecture 4. Data and Function Cohesion. Allocation of Functions and Data. Component Interfaces

Nikolay Grozev. Supervisor: Juraj Feljan, Mälardalen University Consultant: Sylvia Ilieva, University of Sofia

Do AUTOSAR and functional safety rule each other out?

Developing Complex Systems using DOORS and UML

Modeling and Validation of a Data Process Unit Control for Space Applications

Project Plan for <project name>

To introduce software process models To describe three generic process models and when they may be used

Applying 4+1 View Architecture with UML 2. White Paper

Software Engineering Reference Framework

Business Process (BPMN) Course

1.. This UI allows the performance of the business process, for instance, on an ecommerce system buy a book.

Ontology for Home Energy Management Domain

Kirsten Sinclair SyntheSys Systems Engineers

In this Lecture you will Learn: Development Process. Unified Software Development Process. Best Practice

Table of Contents. CHAPTER 1 Web-Based Systems 1. CHAPTER 2 Web Engineering 12. CHAPTER 3 A Web Engineering Process 24

1 Business Modeling. 1.1 Event-driven Process Chain (EPC) Seite 2

A Model-Based Development Process for Embedded System

Some Software Technologies for Resilient Computing

Laboratory Information Management and Process Control Software for Microbiological Laboratories of the Government Hospitals

11 Tips to make the requirements definition process more effective and results more usable

System Behaviour Analysis with UML and Ptolemy. Scope and goals

Opportunities and Challenges in Software Engineering for the Next Generation Automotive

Linux. Reverse Debugging. Target Communication Framework. Nexus. Intel Trace Hub GDB. PIL Simulation CONTENTS

CadSoft EAGLE Version 7

Architecture Design & Sequence Diagram. Week 7

Best Practice Guideline Software Release

SAP Cross-Connector Software Architecture

Safety and security related features in AUTOSAR

Model Based System Engineering (MBSE) For Accelerating Software Development Cycle

An integrated approach to implement system engineering and safety engineering processes: SASHA Project

Strong authentication of GUI sessions over Dedicated Links. ipmg Workshop on Connectivity 25 May 2012

FUNCTIONAL ANALYSIS AND ALLOCATION

Transcription:

PLAY-OUT FOR HIERARCHICAL COMPONENT ARCHITECTURES Jörg Holtmann, Matthias Meyer Automotive Software Engineering, 17. September 2013 Sheet 1

Introduction and Motivation Automotive Domain Approach to cope with complexity: component-based software development Requirements Elicitation Development process according to Automotive SPICE (supplier viewpoint) System Requirements Analysis System Testing System Architecture Design System Integration Test Hardware Requirements Analysis Software Requirements Analysis Software Testing Hardware Testing Hardware Design Software Design Software Integration Test Hardware Integration Test Module Test Software Construction Hardware Construction Module Test Software Focus Hardware Focus Sheet 2

cmp Presentation_ICSE ECU 1 * Car composite structure Pedelec Env ironment (SysML IBD) «EnvironmentElementExemplar» umgebung 1 schmutz «Flow» «EnvironmentElementExemplar» smartphone «Flow» «SystemExemplar» pedelec besitzt «Flow» «Flow» «EnvironmentElementExemplar» besitzer Software Hardware ladeenergiesmartphone stiehlt «Flow» ladeenergieladestation «Flow» «Flow» «EnvironmentElementExemplar» dieb «Environme ladestation composite structure Pedelec Env ironment (SysML IBD) «EnvironmentElementExemplar» umgebung schmutz «Flow» «EnvironmentElementExemplar» smartphone «Flow» «SystemExemplar» pedelec besitzt «Flow» «Flow» «EnvironmentElementExemplar» besitzer ladeenergiesmartphone stiehlt «Flow» ladeenergieladestation «Flow» «Flow» «EnvironmentElementExemplar» dieb «Environme ladestation Introduction and Motivation Automotive Domain Approach to cope with complexity: component-based software development System requirements System Requirements Analysis System architecture System Architecture Design Sy System In Software requirements Hardware Requirements Analysis Software Requirements Analysis Software Testing T Software Design Hardware Design Software Design Software Integration Test Hard Integ Test Software Construction Module Test Hardware Construction Sheet 3

Running Example Body Control Module (BCM) Remote key Body Control Module (BCM) Door Locks ID BCM System Requirements 49 When the remote key sends a central door locking request, the BCM has to send lock commands to all door locks. 236 When locking the doors was successful, the door locks have to confirm this by means of an nowledment message. 524 After the door locks were successfully locked, the BCM has to send a feedb command to the turn signal actuators. Speed Turn Signals 851 When the speed threshold spd_thrsh is exceeded, the body control module has to send commands to all door locks in order to lock the doors. Sheet 4

RemoteLockDoorsAndFeedb lockfeedbcmd SignalAcuator RemoteLockDoorsAndFeedb lockfeedbcmd SignalAcuator Introduction and Motivation Formal Requirements and Hierarchical Component Architectures Previous work Formal, scenario-based requirements engineering approach Not suited for hierarchical component architectures! RemoteLockDoorsAndFeedb RemoteLockDoorsAndFeedb RemoteLockDoorsAndFeedb lockfeedbcmd SignalAcuator RemoteLockDoorsAndFeedb RemoteLockDoorsAndFeedb RemoteLockDoorsAndFeedb SignalAcuator lockfeedbcmd? RemoteLockDoorsAndFeedb RemoteLockDoorsAndFeedb RemoteLockDoorsAndFeedb RemoteLockDoorsAndFeedb How to specify formal requirements for hierarchical component architectures across several abstraction levels? Sheet 5

CONTENTS 1. Introduction + motivation 2. Preliminaries: Previous approach on formal requirements engineering 3. Problem description: Approach not sufficient for hierarchical component architectures 4. Adapted modeling approach 5. Simulative validation of requirements for hierarchical component architectures Sheet 6

Previous work Formal Requirements Engineering with Modal Sequence Diagrams (MSDs) Modal Sequence Diagrams (MSDs) UML-compliant variant of Live Sequence Charts Formal and modal semantics Environment elements RemoteLockDoors dl_passenger: System under development c = 0 c 100 Sheet 7

Previous work Formal Requirements Engineering with Modal Sequence Diagrams (MSDs) Modal Sequence Diagrams (MSDs) UML-compliant variant of Live Sequence Charts Formal and modal semantics Provisional message Analysis techniques Formal verification on consistency Simulative validation by means of Play-out algorithm Mandatory messages RemoteLockDoors c = 0 c 100 Timing requirement dl_passenger: Sheet 8

Previous work Simulative Validation by Means of Play-out Algorithm Operational interpretation of formal semantics of MSDs Plays out messages specified by the scenarios RemoteLockDoors Cut = state of an active MSD Detects safety violations Allows to validate for unintended behavior LockingFeedb lockfeedbcmd Sheet 9

Previous work Simulative Validation by Means of Play-out Algorithm Operational interpretation of formal semantics of MSDs Plays out messages specified by the scenarios RemoteLockDoors Cut = state of an active MSD Detects safety violations Allows to validate for unintended behavior LockingFeedb lockfeedbcmd Sheet 10

Previous work Simulative Validation by Means of Play-out Algorithm Operational interpretation of formal semantics of MSDs Plays out messages specified by the scenarios RemoteLockDoors Cut = state of an active MSD Detects safety violations Allows to validate for unintended behavior LockingFeedb lockfeedbcmd Activation and synchronisation of scenarios by message exchange Sheet 11

Previous work Simulative Validation by Means of Play-out Algorithm Operational interpretation of formal semantics of MSDs Plays out messages specified by the scenarios RemoteLockDoors Cut = state of an active MSD Detects safety violations Allows to validate for unintended behavior LockingFeedb lockfeedbcmd Activation and synchronisation of scenarios by message exchange Sheet 12

Previous work Simulative Validation by Means of Play-out Algorithm Operational interpretation of formal semantics of MSDs Plays out messages specified by the scenarios RemoteLockDoors SpeedLockDoors idi: Inter Domain Interface speedthreshold Reached Detects safety violations Allows to validate for unintended behavior LockingFeedb lockfeedbcmd Sheet 13

Previous work Simulative Validation by Means of Play-out Algorithm Operational interpretation of formal semantics of MSDs Plays out messages specified by the scenarios RemoteLockDoors SpeedLockDoors idi: Inter Domain Interface speedthreshold Reached Detects safety violations Allows to validate for unintended behavior LockingFeedb lockfeedbcmd Sheet 14

Previous work Simulative Validation by Means of Play-out Algorithm Operational interpretation of formal semantics of MSDs Plays out messages specified by the scenarios RemoteLockDoors SpeedLockDoors idi: Inter Domain Interface speedthreshold Reached Detects safety violations Allows to validate for unintended behavior LockingFeedb lockfeedbcmd Unintended behavior: speed locking activates locking feedb! Sheet 15

Previous work Simulative Validation by Means of Play-out Algorithm Operational interpretation of formal semantics of MSDs Plays out messages specified by the scenarios Scenario merge: locking feedb only on remote key operation SpeedLockDoors idi: Inter Domain Interface speedthreshold Reached Detects safety violations RemoteLockDoorsAndFeedb Allows to validate for unintended behavior lockfeedbcmd Sheet 16

CONTENTS 1. Introduction + motivation 2. Preliminaries: Previous approach on formal requirements engineering 3. Problem description: Approach not sufficient for hierarchical component architectures 4. Adapted modeling approach 5. Simulative validation of requirements for hierarchical component architectures Sheet 17

Problem Description How to Specify and Simulate MSDs for Hierarchical Component Architectures? Component architectures Arranged hierarchically Ports + directed connectors lcm: Lockg CenMst fm: Flash Manager Until now: Plain class models as structural basis for MSDs Scenarios only at one hierarchy level Each entity can communicate with arbitrary others RemoteLockDoorsAndFeedb lockfeedbcmd Sheet 18

CONTENTS 1. Introduction + motivation 2. Preliminaries: Previous approach on formal requirements engineering 3. Problem description: Approach not sufficient for hierarchical component architectures 4. Adapted modeling approach 5. Simulative validation of requirements for hierarchical component architectures Sheet 19

Modeling Approach + + signature connector bdd System [Interfaces] bdd System [Blocks] type ref Top Level Subsystem Level Subsubsystem Level type ibd ibd represents refersto ProcessLockingRequest ProcessLockingRequest ibd Type View Internal Structure View Interaction View Sheet 20

Modeling Approach Overview Port interfaces Component types Internal structure signature connector Scenarios bdd System [Interfaces] bdd System [Blocks] type ref Top Level Subsystem Level Subsubsystem Level Top level Subsystem level(s) type ibd ibd represents refersto ProcessLockingRequest ProcessLockingRequest ibd Type View Internal Structure View Interaction View Sheet 21

signature connector Modeling Approach Top Level: Specify Port Interfaces + Component Types Interfaces specify, which messages can be sent within MSDs Top Level Subsystem Level Subsubsystem Level bdd System [Interfaces] bdd System [Blocks] type type ibd ProcessLockingRequest ProcessLockingRequest ibd ibd Type View Internal Structure View Interaction View Interface usages in ports define possible communication directions represents ref refersto bdd System [Interfaces] bdd System [Blocks] RK2BCM () type (provided) type (required) :~RK2BCM TurnSignal Actuator BCM2DL () DL2BCM () :RK2BCM BCM2TSA lockfeedbcmd() BodyControl Module Sheet 22 Blocks specify the types for the component architecture

signature connector bdd System [Interfaces] bdd System [Blocks] Modeling Approach Top Level: Specify Use Cases Top Level Subsystem Level Subsubsystem Level type type ibd ibd represents ProcessLockingRequest ProcessLockingRequest ibd ref refersto Type View Internal Structure View Interaction View Use cases by means of UML collaboration diagrams Specify participants for a particular use case to be used in its scenarios bdd System [Blocks] Directed connectors Lock Doors Remotely and Give Feedb rk2bcm dld2bcm bcm2dld BodyControl Module type Parts typed by blocks bcm2tsa Sheet 23

signature connector bdd System [Interfaces] bdd System [Blocks] Modeling Approach Top Level: Specify Scenarios bdd System [Interfaces] Lock Doors Remotely and Give Feedb Top Level Subsystem Level Subsubsystem Level type Type View type ibd ibd Internal Structure View represents ProcessLockingRequest ProcessLockingRequest ibd ref refersto Interaction View RK2BCM () rk2bcm dld2bcm bcm2dld Messages sent via connectors connector represents bcm2tsa Lifelines represent use case participants RemoteLockDoorsAndFeedb signature Messages compliant to port interfaces lockfeedbcmd Sheet 24

signature connector bdd System [Interfaces] bdd System [Blocks] Modeling Approach Subsystem Level(s): Decompose Structural Elements Lock Doors Remotely and Give Feedb Top Level Subsystem Level Subsubsystem Level type Type View type ibd ibd Internal Structure View represents ProcessLockingRequest ProcessLockingRequest ibd ref refersto Interaction View rk2bcm dld2bcm bcm2dld Hierarchically decompose components ibd Body bcm2tsa Connect inner components to superordinate level with delegation connectors Add and connect inner components Sheet 25 lcm: Lockg CenMst lcm2fm fm: Flash Manager

signature connector bdd System [Interfaces] bdd System [Blocks] Modeling Approach Subsystem Level(s): Specify Interactions Top Level Subsystem Level Subsubsystem Level type type ibd ibd represents ProcessLockingRequest ProcessLockingRequest ibd ref refersto Type View Internal Structure View Interaction View RemoteLockDoorsAndFeedb ref Connect MSDs with UML InteractionUse refersto lockfeedbcmd Messages crossing hierarchy levels connected via gates Add MSDs for new hierarchy level ProcessLockingRequest lcm: Lockg CenMst fm: Flash Manager lockfeedbreq lockfeedbcmd Sheet 26

Syntactical Constraints for Complete and Executable Models Automatic Checks as Support for the Engineer All links set? bdd System [Interfaces] RK2BCM () type (provided) type (required) bdd System [Blocks] :RK2BCM :~RK2BCM Connector directions respected? BodyControl Module type :~RK 2BCM RemoteLockDoorsAndFeedb rk2bcm :RK2 BCM connector Lock Doors Remotely and Give Feedb represents bcm2dld bcm2tsa dld2bcm :~DL2BC :BCM2 d D tsa Si :BCM 2TSA tsa_ Sign signature Interface compatibility? lockfeedbcmd Sheet 27

CONTENTS 1. Introduction + motivation 2. Preliminaries: Previous approach on formal requirements engineering 3. Problem description: Approach not sufficient for hierarchical component architectures 4. Adapted modeling approach 5. Simulative validation of requirements for hierarchical component architectures Sheet 28

Hierarchical Play-out Functional Principle RemoteLockDoorsAndFeedb ref lockfeedbcmd refersto ProcessLockingRequest lcm: Lockg CenMst fm: Flash Manager lockfeedbreq lockfeedbcmd Sheet 29

Hierarchical Play-out Functional Principle RemoteLockDoorsAndFeedb ref lockfeedbcmd refersto ProcessLockingRequest lcm: Lockg CenMst fm: Flash Manager lockfeedbreq lockfeedbcmd Sheet 30

Hierarchical Play-out Functional Principle RemoteLockDoorsAndFeedb ref lockfeedbcmd refersto ProcessLockingRequest lcm: Lockg CenMst fm: Flash Manager lockfeedbreq lockfeedbcmd Sheet 31

Hierarchical Play-out Functional Principle RemoteLockDoorsAndFeedb ref lockfeedbcmd refersto ProcessLockingRequest lcm: Lockg CenMst fm: Flash Manager lockfeedbreq lockfeedbcmd Sheet 32

Hierarchical Play-out Functional Principle RemoteLockDoorsAndFeedb ref lockfeedbcmd refersto ProcessLockingRequest lcm: Lockg CenMst fm: Flash Manager lockfeedbreq lockfeedbcmd Sheet 33

Hierarchical Play-out Functional Principle RemoteLockDoorsAndFeedb ref lockfeedbcmd refersto ProcessLockingRequest lcm: Lockg CenMst fm: Flash Manager lockfeedbreq lockfeedbcmd Sheet 34

Hierarchical Play-out Functional Principle RemoteLockDoorsAndFeedb ref lockfeedbcmd refersto ProcessLockingRequest lcm: Lockg CenMst fm: Flash Manager lockfeedbreq lockfeedbcmd Sheet 35

Hierarchical Play-out Functional Principle RemoteLockDoorsAndFeedb ref lockfeedbcmd refersto ProcessLockingRequest lcm: Lockg CenMst fm: Flash Manager lockfeedbreq lockfeedbcmd Sheet 36

RemoteLockDoorsAndFeedb lockfeedbcmd SignalAcuator RemoteLockDoorsAndFeedb lockfeedbcmd SignalAcuator Starting Situation Formal Requirements and Hierarchical Component Architectures Previous work Formal, scenario-based requirements engineering approach Not suited for hierarchical component architectures! RemoteLockDoorsAndFeedb RemoteLockDoorsAndFeedb RemoteLockDoorsAndFeedb lockfeedbcmd SignalAcuator RemoteLockDoorsAndFeedb RemoteLockDoorsAndFeedb RemoteLockDoorsAndFeedb SignalAcuator lockfeedbcmd? RemoteLockDoorsAndFeedb RemoteLockDoorsAndFeedb RemoteLockDoorsAndFeedb RemoteLockDoorsAndFeedb How to specify formal requirements for hierarchical component architectures across several abstraction levels? Sheet 37

Summary and Outlook Lock Doors Remotely and Give Feedb dld2bcm :~DL2BCM :DL2BCM rk2bcm :~BCM bcm2dld :~RK :BCM2DL :RK2 2DL 2BCM BCM :~BCM2TSA bcm2tsa SignalAcuator :BCM 2TSA RemoteLockDoorsAndFeedb RemoteLockDoorsAndFeedb RemoteLockDoorsAndFeedb ref lockfeedbcmd SignalAcuator ibd Body lcm: Lockg CenMst fm: Flash Manager ProcessLockingRequest ProcessLockingRequest ProcessLockingRequest lcm: Lockg fm: Flash CenMst Manager lockfeedbreq lockfeedbcmd ibd FlashManager Outlook ibd LockgCenMst Verification of correct refinement Cover AUTOSAR specifics More detailed timing information Alignment with systems engineering Enables integrated requirements engineering and component architecture design across multiple abstraction levels! Sheet 38

Vielen Dank für Ihre Aufmerksamkeit Dipl.-Inform. Jörg Holtmann Fraunhofer-Institut für Produktionstechnik Projektgruppe Entwurfstechnik Mechatronik Zukunftsmeile 1 33102 Paderborn Telefon: +49 5251 5456-271 Fax: +49 5251 5465-102 Joerg.Holtmann@ipt.fraunhofer.de www.ipt.fraunhofer.de/mechatronik Dr. Matthias Meyer Fraunhofer-Institut für Produktionstechnik Projektgruppe Entwurfstechnik Mechatronik Zukunftsmeile 1 33102 Paderborn Telefon: +49 5251 5456-122 Fax: +49 5251 5465-102 Matthias.Meyer@ipt.fraunhofer.de www.ipt.fraunhofer.de/mechatronik Sheet 39