Agile Model-Driven Engineering - Chalmersburden/ppts/AgileMDE.pdf · Agile Model-Driven Engineering...

12
Agile Model-Driven Engineering Håkan Burden Jonn Lantz University of Gothenburg Volvo Cars Corporation In collaboration with Jon Whittle and Rogardt Heldal

Transcript of Agile Model-Driven Engineering - Chalmersburden/ppts/AgileMDE.pdf · Agile Model-Driven Engineering...

Page 1: Agile Model-Driven Engineering - Chalmersburden/ppts/AgileMDE.pdf · Agile Model-Driven Engineering Håkan Burden Jonn Lantz ... •keeping the domain expertise •not getting too

Agile Model-Driven Engineering

Håkan Burden Jonn Lantz

University of Gothenburg Volvo Cars Corporation

In collaboration with Jon Whittle and Rogardt Heldal

Page 2: Agile Model-Driven Engineering - Chalmersburden/ppts/AgileMDE.pdf · Agile Model-Driven Engineering Håkan Burden Jonn Lantz ... •keeping the domain expertise •not getting too

Difficult to be innovative with external sw suppliers

– requires tight, robust and well-defined APIs!

– very very slow feedback loops, if not!

Challenges Exponential growth of software!

– maximized in e-vehicles

Off-the-shelf ≠ plug-and-play – due to complex dependencies

Page 3: Agile Model-Driven Engineering - Chalmersburden/ppts/AgileMDE.pdf · Agile Model-Driven Engineering Håkan Burden Jonn Lantz ... •keeping the domain expertise •not getting too

Increase in-house development

+ Control of software development

+ Speed

- Volvo Cars is not a C organization

www.womenworking.com

www.need4speed.ws

The challenge is to create VCC++ • keeping the domain expertise • not getting too large

Page 4: Agile Model-Driven Engineering - Chalmersburden/ppts/AgileMDE.pdf · Agile Model-Driven Engineering Håkan Burden Jonn Lantz ... •keeping the domain expertise •not getting too

Adafruit.com

MDE - Model-Driven Engineering

Let domain experts develop SW! – Quality

– Reuse

– Speed

MDE is a strategy to utilize

Abstraction – Simulation – Automation to facilitate sw-development and test

Note also: Next step is

agile!

Note also: Next step is

agile!

Forbes.com Note:

Graphics is not the key!

Note: Graphics is

not the key!

Page 5: Agile Model-Driven Engineering - Chalmersburden/ppts/AgileMDE.pdf · Agile Model-Driven Engineering Håkan Burden Jonn Lantz ... •keeping the domain expertise •not getting too

Implementation

Archi-tecture

Source

Model

Running

Code

• SW abstraction using Simulink

• Simulation using an executable environment

• Automation of code generation and integration

Page 6: Agile Model-Driven Engineering - Chalmersburden/ppts/AgileMDE.pdf · Agile Model-Driven Engineering Håkan Burden Jonn Lantz ... •keeping the domain expertise •not getting too

Specification

Archi-tecture

Source

Model

Running

Code • System design abstraction

• Source model automation (prepare models)

Page 7: Agile Model-Driven Engineering - Chalmersburden/ppts/AgileMDE.pdf · Agile Model-Driven Engineering Håkan Burden Jonn Lantz ... •keeping the domain expertise •not getting too

Integration

Archi-tecture

Source

Model

Running

Code • HIL (test rig) test using

environment simulation

• Automation of regression test and data feedback

Page 8: Agile Model-Driven Engineering - Chalmersburden/ppts/AgileMDE.pdf · Agile Model-Driven Engineering Håkan Burden Jonn Lantz ... •keeping the domain expertise •not getting too

Agile MDE:

Agile development of car features

Agile development of taylormade MDE framework

Continuous integration

(automated)

Still no free lunch…

Still no free lunch…

Seamless with MDE framework!

Seamless with MDE framework!

Fast feedback! Fast feedback!

Progress can be measured Progress can be measured

Dspace.com

Page 9: Agile Model-Driven Engineering - Chalmersburden/ppts/AgileMDE.pdf · Agile Model-Driven Engineering Håkan Burden Jonn Lantz ... •keeping the domain expertise •not getting too

Problem zones!!

Architecture Running code Architecture models

Requirements

Executable sw models

Executable boundary models

Test (“HIL”) Test (“MIL”)

Both transformations shall follow AUTOSAR (standard)

Several(!) not in-house parts of these transformations cause trouble

Req. models, Formal verification

Source

1 function ~ 1 pizza team … belongs to (hw-) domain group

… which belongs to department, etc.

Agile MDE requires fast loops!

1h 4 months

Page 10: Agile Model-Driven Engineering - Chalmersburden/ppts/AgileMDE.pdf · Agile Model-Driven Engineering Håkan Burden Jonn Lantz ... •keeping the domain expertise •not getting too

For agile MDE external organizations are both

risk

business

Page 11: Agile Model-Driven Engineering - Chalmersburden/ppts/AgileMDE.pdf · Agile Model-Driven Engineering Håkan Burden Jonn Lantz ... •keeping the domain expertise •not getting too

The CPU load

• Quality of generated code is no longer a problem

• Quality and efficiency of AUTOSAR system software is a serious problem

Running code Limping code

• Complicated and undeveloped AUTOSAR meta model. • Non robust interfaces & services. • “Basic SW” (system) modules can be faster? Or?

Mentor.com

Here we are

Page 12: Agile Model-Driven Engineering - Chalmersburden/ppts/AgileMDE.pdf · Agile Model-Driven Engineering Håkan Burden Jonn Lantz ... •keeping the domain expertise •not getting too

Wishlist

MDE for embedded software:

1. Hide the complexity behind tight APIs (like in web development)

2. Hide the model transformations (like html to browser)

• Better and open-source tools

• kill-your-darlings standards!