53
Automotive System and Software Architecture Yanja Dajsuren 2IW80 Software specification and architecture March 25, 2014

Automotive System and Software Architecture - …aserebre/2IW80/2013-2014/Automotive... ·  · 2014-03-25Automotive System and Software Architecture ... SysML Diagram Taxonomy SysML

  • Upload
    hahanh

  • View
    220

  • Download
    5

Embed Size (px)

Citation preview

Page 1: Automotive System and Software Architecture - …aserebre/2IW80/2013-2014/Automotive... ·  · 2014-03-25Automotive System and Software Architecture ... SysML Diagram Taxonomy SysML

Automotive System and

Software Architecture

Yanja Dajsuren

2IW80 Software specification and architecture

March 25, 2014

Page 2: Automotive System and Software Architecture - …aserebre/2IW80/2013-2014/Automotive... ·  · 2014-03-25Automotive System and Software Architecture ... SysML Diagram Taxonomy SysML

Which one has more software?

PAGE 1 25-3-2014

Boeing 787, the most electronic airliner

Chevrolet Volt, an example

modern day car

~8,000,000 LOC ~40,000,000 LOC

Page 3: Automotive System and Software Architecture - …aserebre/2IW80/2013-2014/Automotive... ·  · 2014-03-25Automotive System and Software Architecture ... SysML Diagram Taxonomy SysML

PAGE 2 25-3-2014

Image source: http://www.thetruthaboutcars.com

Why more software?

Page 4: Automotive System and Software Architecture - …aserebre/2IW80/2013-2014/Automotive... ·  · 2014-03-25Automotive System and Software Architecture ... SysML Diagram Taxonomy SysML

Automotive supply chain software integration

Architecture-driven: • (Partially) Automated

• Early detection of errors

• Less effort/cost to change

Document-centric: • Manual

• Error prone

• Costly to change

Adapted from http://www.edibasics.hu/edi-resources/edi-by-industry/automotive.htm

Page 5: Automotive System and Software Architecture - …aserebre/2IW80/2013-2014/Automotive... ·  · 2014-03-25Automotive System and Software Architecture ... SysML Diagram Taxonomy SysML

Automotive architecture modeling

PAGE 4 25-3-2014

• Top-down system development i.o. bottom up

• Separation of concerns in different architectural models/views

• Model-driven i.o. document-centric approach

• Improved design quality by detecting errors early

• …

/ Department of Mathematics and Computer Science

Page 6: Automotive System and Software Architecture - …aserebre/2IW80/2013-2014/Automotive... ·  · 2014-03-25Automotive System and Software Architecture ... SysML Diagram Taxonomy SysML

Automotive companies and ADLs

• Automotive Modeling Language (AML)

• COmponent Language (COLA)

• EAST-ADL

• Timing Augmented Description Language

(TADL)

• The ICT MAENAD project EAST-ADL2

/ Department of Mathematics and Computer Science PAGE 5 25-3-2014

Page 7: Automotive System and Software Architecture - …aserebre/2IW80/2013-2014/Automotive... ·  · 2014-03-25Automotive System and Software Architecture ... SysML Diagram Taxonomy SysML

EAST-ADL

• EAST-ADL

• Advancing Traffic Efficiency and Safety through Software

Technology 2 (ATESST) project

• Refined EAST-ADL2 language, profile, methodology, tools

• It provides means to represent the embedded system in several

abstraction levels.

• Main source: http://www.east-adl.info/

/ Department of Mathematics and Computer Science PAGE 6 25-3-2014

Page 8: Automotive System and Software Architecture - …aserebre/2IW80/2013-2014/Automotive... ·  · 2014-03-25Automotive System and Software Architecture ... SysML Diagram Taxonomy SysML

EAST-ADL and AUTOSAR

PAGE 7 25-3-2014

http://maenad.eu/

Page 9: Automotive System and Software Architecture - …aserebre/2IW80/2013-2014/Automotive... ·  · 2014-03-25Automotive System and Software Architecture ... SysML Diagram Taxonomy SysML

EAST-ADL Abstraction Levels

/ Department of Mathematics and Computer Science PAGE 9 25-3-2014

Page 10: Automotive System and Software Architecture - …aserebre/2IW80/2013-2014/Automotive... ·  · 2014-03-25Automotive System and Software Architecture ... SysML Diagram Taxonomy SysML

EAST-ADL Abstraction Levels

/ Department of Mathematics and Computer Science PAGE 10 25-3-2014

Page 11: Automotive System and Software Architecture - …aserebre/2IW80/2013-2014/Automotive... ·  · 2014-03-25Automotive System and Software Architecture ... SysML Diagram Taxonomy SysML

Example of function-to-component Mapping

/ Department of Mathematics and Computer Science PAGE 11 25-3-2014

Page 12: Automotive System and Software Architecture - …aserebre/2IW80/2013-2014/Automotive... ·  · 2014-03-25Automotive System and Software Architecture ... SysML Diagram Taxonomy SysML

EAST-ADL Metamodel Structure

/ Department of Mathematics and Computer Science PAGE 12 25-3-2014

Page 13: Automotive System and Software Architecture - …aserebre/2IW80/2013-2014/Automotive... ·  · 2014-03-25Automotive System and Software Architecture ... SysML Diagram Taxonomy SysML

/ Department of Mathematics and Computer Science PAGE 13 25-3-2014

Page 14: Automotive System and Software Architecture - …aserebre/2IW80/2013-2014/Automotive... ·  · 2014-03-25Automotive System and Software Architecture ... SysML Diagram Taxonomy SysML

PAGE 14 25-3-2014

Page 15: Automotive System and Software Architecture - …aserebre/2IW80/2013-2014/Automotive... ·  · 2014-03-25Automotive System and Software Architecture ... SysML Diagram Taxonomy SysML

EAST-ADL Summary

• Defines several abstraction levels and mapping between them

• Extensions to traditional ADLs:

• Requirements

• Variability

• Timing

• Dependability

• Safety (alignment with ISO26262)

• Environment modeling

• Not well applied yet in automotive industry

/ Department of Mathematics and Computer Science PAGE 15 25-3-2014

Page 16: Automotive System and Software Architecture - …aserebre/2IW80/2013-2014/Automotive... ·  · 2014-03-25Automotive System and Software Architecture ... SysML Diagram Taxonomy SysML

SysML and UML

PAGE 16 25-3-2014

Page 17: Automotive System and Software Architecture - …aserebre/2IW80/2013-2014/Automotive... ·  · 2014-03-25Automotive System and Software Architecture ... SysML Diagram Taxonomy SysML

SysML Diagram Taxonomy

SysML Diagram

Structure

Diagram

Behavior

Diagram

Use Case

Diagram

Activity

Diagram

Internal Block

Diagram

Block Definition

Diagram

Sequence

Diagram

State Machine

Diagram

Parametric

Diagram

Requirement

Diagram

Modified from UML 2

New diagram type

Package Diagram

Same as UML 2

PAGE 17 25-3-2014

Page 18: Automotive System and Software Architecture - …aserebre/2IW80/2013-2014/Automotive... ·  · 2014-03-25Automotive System and Software Architecture ... SysML Diagram Taxonomy SysML

18

Blocks are Basic Structural Elements

• Provides a unifying concept to describe the structure of an element or system

• System

• Hardware

• Software

• Data

• Procedure

• Facility

• Person

• Multiple standard compartments can describe the block characteristics • Properties (parts, references, values, ports)

• Operations

• Constraints

• Allocations from/to other model elements (e.g. activities)

• Requirements the block satisfies

• User defined compartments

Compartment

Label

values DutyCycle : Percentage

allocatedFrom «activity»Modulate BrakingForce

«block» BrakeModulator

Page 19: Automotive System and Software Architecture - …aserebre/2IW80/2013-2014/Automotive... ·  · 2014-03-25Automotive System and Software Architecture ... SysML Diagram Taxonomy SysML

19

Using Blocks

• Based on UML Class from UML Composite Structure

• Supports unique features (e.g., flow ports, value

properties)

• Block definition diagram describes the relationship

among blocks (e.g., composition, association,

specialization)

• Internal block diagram describes the internal

structure of a block in terms of its properties and

connectors

• Behavior can be allocated to blocks

Blocks Used to Specify Hierarchies and Interconnection

Page 20: Automotive System and Software Architecture - …aserebre/2IW80/2013-2014/Automotive... ·  · 2014-03-25Automotive System and Software Architecture ... SysML Diagram Taxonomy SysML

20

Block Definition vs. Usage

Definition

• Block is a definition/type

• Captures properties, etc.

• Reused in multiple contexts

Usage

– Part is the usage of a block

in the context of a

composing block

– Also known as a role

Block Definition Diagram Internal Block Diagram

Page 21: Automotive System and Software Architecture - …aserebre/2IW80/2013-2014/Automotive... ·  · 2014-03-25Automotive System and Software Architecture ... SysML Diagram Taxonomy SysML

21

Internal Block Diagram (ibd) Blocks, Parts, Ports, Connectors & Flows

Enclosing

Block

Connector

Port

Item Flow

Internal Block Diagram Specifies Interconnection of Parts

Part

Page 22: Automotive System and Software Architecture - …aserebre/2IW80/2013-2014/Automotive... ·  · 2014-03-25Automotive System and Software Architecture ... SysML Diagram Taxonomy SysML

22

Reference Property Explained

•S1 is a reference part*

•Shown in dashed outline box

*Actual name is reference property

s

Page 23: Automotive System and Software Architecture - …aserebre/2IW80/2013-2014/Automotive... ·  · 2014-03-25Automotive System and Software Architecture ... SysML Diagram Taxonomy SysML

23

SysML Ports

• Specifies interaction points on blocks and parts

• Integrates behavior with structure

• portName:TypeName

• Kinds of ports

• Standard (UML) Port

− Specifies a set of required or provided operations

and/or signals

− Typed by a UML interface

• Flow Port

− Specifies what can flow in or out of block/part

− Typed by a block, value type, or flow specification

− Atomic, non-atomic, and conjugate variations Standard Port and Flow Port

Support Different Interface Concepts

Page 24: Automotive System and Software Architecture - …aserebre/2IW80/2013-2014/Automotive... ·  · 2014-03-25Automotive System and Software Architecture ... SysML Diagram Taxonomy SysML

24

Port Notation

Standard

Port

Flow

Port

provided interface

(provides the operations)

required interface

(calls the operations)

item flow

Flow Port

part2: part1:

part1: part2:

Page 25: Automotive System and Software Architecture - …aserebre/2IW80/2013-2014/Automotive... ·  · 2014-03-25Automotive System and Software Architecture ... SysML Diagram Taxonomy SysML

25

State Machines

• Typically used to represent the life cycle of a block

• Support event-based behavior (generally

asynchronous)

• Transition with trigger, guard, action

• State with entry, exit, and do-activity

• Can include nested sequential or concurrent states

• Can send/receive signals to communicate between

blocks during state transitions, etc.

• Event types

• Change event

• Time event

• Signal event

Page 26: Automotive System and Software Architecture - …aserebre/2IW80/2013-2014/Automotive... ·  · 2014-03-25Automotive System and Software Architecture ... SysML Diagram Taxonomy SysML

26

stm HSUVOperationalStates

Operate

Idle

Accelerating/

CruisingBraking

engageBrake/

accelerate/

when (speed = 0)

releaseBrake/

shutOff/stop engine

Off

start[in neutral]/start engine Nominal

states only

keyOff/

Operational States (Drive)

Transition notation:

trigger[guard]/action

Page 27: Automotive System and Software Architecture - …aserebre/2IW80/2013-2014/Automotive... ·  · 2014-03-25Automotive System and Software Architecture ... SysML Diagram Taxonomy SysML

DEMO

/ Department of Mathematics and Computer Science PAGE 27 25-3-2014

Page 28: Automotive System and Software Architecture - …aserebre/2IW80/2013-2014/Automotive... ·  · 2014-03-25Automotive System and Software Architecture ... SysML Diagram Taxonomy SysML

PAGE 28 25-3-2014

Page 29: Automotive System and Software Architecture - …aserebre/2IW80/2013-2014/Automotive... ·  · 2014-03-25Automotive System and Software Architecture ... SysML Diagram Taxonomy SysML

Adaptive Cruise Control (ACC) in SysML

Modeling the ACC system for an E-truck with a top-

down approach in SysML

/ Department of Mathematics and Computer Science PAGE 29 25-3-2014

Image: http://www.extremetech.com/

Page 30: Automotive System and Software Architecture - …aserebre/2IW80/2013-2014/Automotive... ·  · 2014-03-25Automotive System and Software Architecture ... SysML Diagram Taxonomy SysML

PAGE 30 25-3-2014

Requirements Diagram

Source: Artisan Software Tools

Page 31: Automotive System and Software Architecture - …aserebre/2IW80/2013-2014/Automotive... ·  · 2014-03-25Automotive System and Software Architecture ... SysML Diagram Taxonomy SysML

Use Case diagram

• Provides means for

describing basic

functionality in terms of

usages of system by

actors

• Generally elaborated via

other behavioral

representations to

describe detailed

scenarios

/ Department of Mathematics and Computer Science PAGE 31 25-3-2014

Source: Artisan Software Tools

Page 32: Automotive System and Software Architecture - …aserebre/2IW80/2013-2014/Automotive... ·  · 2014-03-25Automotive System and Software Architecture ... SysML Diagram Taxonomy SysML

System architecture

PAGE 32 25-3-2014

Page 33: Automotive System and Software Architecture - …aserebre/2IW80/2013-2014/Automotive... ·  · 2014-03-25Automotive System and Software Architecture ... SysML Diagram Taxonomy SysML

System integration

• Software

• Hardware

PAGE 33 25-3-2014

Page 34: Automotive System and Software Architecture - …aserebre/2IW80/2013-2014/Automotive... ·  · 2014-03-25Automotive System and Software Architecture ... SysML Diagram Taxonomy SysML

Running ACC_UI on Freescale board

PAGE 34 25-3-2014

Page 35: Automotive System and Software Architecture - …aserebre/2IW80/2013-2014/Automotive... ·  · 2014-03-25Automotive System and Software Architecture ... SysML Diagram Taxonomy SysML

SysML summary

• SysML provides a general purpose modeling language to support specification,

analysis, design and verification of complex systems

• Subset of UML 2 with extensions

• 4 Pillars of SysML include modeling of requirements, behavior, structure, and parametrics

• Intended to improve communications, tool interoperability, and design quality

• Multiple tools available

• IBM –Rhapsody

• Sparx Systems -Enterprise Architect

• Atego –Artisan Studio etc.

/ Department of Mathematics and Computer Science PAGE 35 25-3-2014

Page 36: Automotive System and Software Architecture - …aserebre/2IW80/2013-2014/Automotive... ·  · 2014-03-25Automotive System and Software Architecture ... SysML Diagram Taxonomy SysML

Automotive supply chain software integration

Adapted from http://www.edibasics.hu/edi-resources/edi-by-industry/automotive.htm

• Hardware dependent SW

• Not efficient software reuse and exchange

• Costly integration

Electronic Control Unit

(ECU)

ECU

ECU

Page 37: Automotive System and Software Architecture - …aserebre/2IW80/2013-2014/Automotive... ·  · 2014-03-25Automotive System and Software Architecture ... SysML Diagram Taxonomy SysML

AUTOSAR (AUTomotive Open System

Architecture)

• An open and standardized automotive

software architecture

• Architecture

• Methodology

• Application Interfaces

Page 38: Automotive System and Software Architecture - …aserebre/2IW80/2013-2014/Automotive... ·  · 2014-03-25Automotive System and Software Architecture ... SysML Diagram Taxonomy SysML

AUTOSAR Milestones

/ Department of Mathematics and Computer Science PAGE 38 25-3-2014

http://autosar.org/

Page 39: Automotive System and Software Architecture - …aserebre/2IW80/2013-2014/Automotive... ·  · 2014-03-25Automotive System and Software Architecture ... SysML Diagram Taxonomy SysML

AUTOSAR Layered Architecture

http://autosar.org/

Page 40: Automotive System and Software Architecture - …aserebre/2IW80/2013-2014/Automotive... ·  · 2014-03-25Automotive System and Software Architecture ... SysML Diagram Taxonomy SysML

AUTOSAR Methodology

http://autosar.org/

Page 41: Automotive System and Software Architecture - …aserebre/2IW80/2013-2014/Automotive... ·  · 2014-03-25Automotive System and Software Architecture ... SysML Diagram Taxonomy SysML

PAGE 41 25-3-2014

http://autosar.org/

AUTOSAR Application Interface

Page 42: Automotive System and Software Architecture - …aserebre/2IW80/2013-2014/Automotive... ·  · 2014-03-25Automotive System and Software Architecture ... SysML Diagram Taxonomy SysML

AUTOSAR Use Case

http://autosar.org/

Page 43: Automotive System and Software Architecture - …aserebre/2IW80/2013-2014/Automotive... ·  · 2014-03-25Automotive System and Software Architecture ... SysML Diagram Taxonomy SysML

PAGE 43 25-3-2014

AUTOSAR Benefits

http://autosar.org/

Page 44: Automotive System and Software Architecture - …aserebre/2IW80/2013-2014/Automotive... ·  · 2014-03-25Automotive System and Software Architecture ... SysML Diagram Taxonomy SysML

Automotive Standards

• ISO 26262:

• Absence of unreasonable risk due to hazards caused by

malfunctioning behavior of E/E systems

• IEC 61508:

• Part of the overall safety related to the equipment under

control (EUC) that depends on the correct functioning of

the safety-related system.

• MISRA C:

• Software development standard PAGE 44 25-3-2014

Page 45: Automotive System and Software Architecture - …aserebre/2IW80/2013-2014/Automotive... ·  · 2014-03-25Automotive System and Software Architecture ... SysML Diagram Taxonomy SysML

ISO 26262

/ Department of Mathematics and Computer Science PAGE 45 25-3-2014

KoenLeekens, ISO-26262 introduction, 2012

Page 46: Automotive System and Software Architecture - …aserebre/2IW80/2013-2014/Automotive... ·  · 2014-03-25Automotive System and Software Architecture ... SysML Diagram Taxonomy SysML

Safety in V cycle

/ Department of Mathematics and Computer Science PAGE 46 25-3-2014

Page 47: Automotive System and Software Architecture - …aserebre/2IW80/2013-2014/Automotive... ·  · 2014-03-25Automotive System and Software Architecture ... SysML Diagram Taxonomy SysML

Safety Analysis in ISO 26262

PAGE 47 25-3-2014

KoenLeekens, ISO-26262 introduction, 2012

Page 48: Automotive System and Software Architecture - …aserebre/2IW80/2013-2014/Automotive... ·  · 2014-03-25Automotive System and Software Architecture ... SysML Diagram Taxonomy SysML

MISRA C

• MISRA C is a software development standard for the

C programming language developed by MISRA

(Motor Industry Software Reliability Association).

• Its aims are to facilitate code safety, portability and

reliability in the context of embedded systems,

specifically those systems programmed in ISO C

• As with many standards the MISRA C guideline

documents are not free to users or developers

/ Department of Mathematics and Computer Science PAGE 48 25-3-2014

Page 49: Automotive System and Software Architecture - …aserebre/2IW80/2013-2014/Automotive... ·  · 2014-03-25Automotive System and Software Architecture ... SysML Diagram Taxonomy SysML

Summary

• In the automotive industry, more and more software

and electronics system require system and software

architecture methods.

• Automotive specific and generic purpose ADLs are

being developed and applied.

• Many stakeholders, functionalities, safety and

environment requirements require automotive

specific standards.

/ Department of Mathematics and Computer Science PAGE 49 25-3-2014

Page 50: Automotive System and Software Architecture - …aserebre/2IW80/2013-2014/Automotive... ·  · 2014-03-25Automotive System and Software Architecture ... SysML Diagram Taxonomy SysML
Page 51: Automotive System and Software Architecture - …aserebre/2IW80/2013-2014/Automotive... ·  · 2014-03-25Automotive System and Software Architecture ... SysML Diagram Taxonomy SysML

Contact for comments and questions:

Tel: +31(0)402475052

Email: [email protected]

Address:

MF 7.123, Eindhoven University of Technology

5612 AZ Eindhoven, The Netherlands

Page 52: Automotive System and Software Architecture - …aserebre/2IW80/2013-2014/Automotive... ·  · 2014-03-25Automotive System and Software Architecture ... SysML Diagram Taxonomy SysML

Automotive Modeling Exercise

Design a PowerWindow System of a vehicle:

A. Elicit requirements

B. PowerWindow system architecture (decompose the

system into software and hardware components)

/ Department of Mathematics and Computer Science PAGE 52 25-3-2014

Page 53: Automotive System and Software Architecture - …aserebre/2IW80/2013-2014/Automotive... ·  · 2014-03-25Automotive System and Software Architecture ... SysML Diagram Taxonomy SysML

Required Software Tools

IBM Rational Rhapsody 8.0.5

/ Department of Mathematics and Computer Science PAGE 53 25-3-2014

Matlab R2011b