Software Detailed Design for Model-Based Development Obligatory or Superfluous?

Similar documents
Development of AUTOSAR Software Components within Model-Based Design

TÜ V Rheinland Industrie Service

How to Upgrade SPICE-Compliant Processes for Functional Safety

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

Efficient and Faster PLC Software Development Process for Automotive industry. Demetrio Cortese IVECO Embedded Software Design

ISO/IEC Part 2 provides the following copyright release:

Automotive SPICE 3.0 What is new and what has changed? Fabio Bella Klaus Hoermann Bhaskar Vanamali Steffen Herrmann Markus Müller Dezember 2015

Herstellerinitiative Software (OEM Initiative Software)

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

Why Adopt Model-Based Design for Embedded Control Software Development?

MathWorks Automotive Conference 2015 Simon Fürst, 2015/09/24. MODEL-BASED SOFTWARE DEVELOPMENT: AN OEM S PERSPECTIVE.

Software Development with Real- Time Workshop Embedded Coder Nigel Holliday Thales Missile Electronics. Missile Electronics

Introduction of ISO/DIS (ISO 26262) Parts of ISO ASIL Levels Part 6 : Product Development Software Level

Automatic ASAM MCD-3 supported test. PikeTec GmbH Dr. Jens Lüdemann

Integrating MATLAB into your C/C++ Product Development Workflow Andy Thé Product Marketing Image Processing Applications

Introduction to MATLAB Gergely Somlay Application Engineer

Intelligent development tools Design methods and tools Functional safety

Verification and Validation According to ISO 26262: A Workflow to Facilitate the Development of High-Integrity Software

Using Model and Code Reviews in Model-based Development of ECU Software Mirko Conrad, Heiko Dörr, Ines Fey, Ingo Stürmer

Best practices for developing DO-178 compliant software using Model-Based Design

MODEL-BASED DEVELOPMENT OF AUTOMOTIVE EMBEDDED SOFTWARE IN COMPLIANCE WITH ISO 26262: CHALLENGES & EFFECTIVE SOLUTIONS 8 JUNE - 9 JUNE 2015

Model-driven development solutions To support your business objectives. IBM Rational Rhapsody edition comparison matrix

Simulink Modeling Guidelines for High-Integrity Systems

IBM Rational Rhapsody

Model-Based Development of Safety-Critical Software: Safe and Effi cient

Procedure for Assessment of System and Software

Correlation matrices between 9100:2009 and 9100:2016

DNV GL Assessment Checklist ISO 9001:2015

Development Process Automation Experiences in Japan

Die wichtigsten Use Cases für MISRA, HIS, SQO, IEC, ISO und Co. - Warum Polyspace DIE Embedded Code-Verifikationslösung ist.

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

ISO 9001:2008 Quality Management System Requirements (Third Revision)

Software House Embedded Systems

Functional Safety with ISO Principles and Practice Dr. Christof Ebert, Dr. Arnulf Braatz Vector Consulting Services

Embedded Vision on FPGAs The MathWorks, Inc. 1

Systems Engineering: Development of Mechatronics and Software Need to be Integrated Closely

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

Impact of Safety Standards to Processes and Methodologies. Dr. Herbert Eichfeld

Automating Code Reviews with Simulink Code Inspector

Improving Interoperability in Mechatronic Product Developement. Dr. Alain Biahmou, Dr. Arnulf Fröhlich, Dr. Josip Stjepandic

ISO 9001:2000 AUDIT CHECKLIST

Automotive CAE Integration.

The Software Process. The Unified Process (Cont.) The Unified Process (Cont.)

ISO 9001:2000 Gap Analysis Checklist

Making model-based development a reality: The development of NEC Electronics' automotive system development environment in conjunction with MATLAB

TL 9000 and TS16949 Comparison

Schnell und effizient durch Automatische Codegenerierung

Embedded OS. Product Information

Echtzeittesten mit MathWorks leicht gemacht Simulink Real-Time Tobias Kuschmider Applikationsingenieur

Wiederverwendung von Testfällen bei der modellbasierten SW-Entwicklung

How To Develop A Car

3SL. Requirements Definition and Management Using Cradle

Syllabus. REQB Certified Professional for Requirements Engineering. Foundation Level

Demand & Requirements Management Software Development QA & Test Management IT Operations & DevOps Change Management Agile, SAFe, Waterfall Support

ISO 9001:2015 Internal Audit Checklist

Converting Models from Floating Point to Fixed Point for Production Code Generation

Caterpillar Automatic Code Generation

Performance Study based on Matlab Modeling for Hybrid Electric Vehicles

Certification of a Scade 6 compiler

Power inverters: Efficient energy transformation through efficient TargetLink code

Demand & Requirements Management Software Development QA & Test Management IT Operations & DevOps Change Management Agile, SAFe, Waterfall Support

Final Year Projects at itm. Topics 2010/2011

SQMB '11 Automated Model Quality Rating of Embedded Systems

Software Quality Standards and. from Ontological Point of View SMEF. Konstantina Georgieva

Software Requirements Specification

QUALITY MANUAL ISO 9001:2015

Automotive SPICE & ISO/CD Their Mutual Relationship

Australian Standard. Information technology Service management. Part 2: Guidance on the application of service management systems

Continuous Integration Build-Test-Delivery (CI-BTD) Framework in compliance with ISO26262

MathWorks Products and Prices North America Academic March 2013

ANSYS SCADE Model-Based Development Solutions for Industrial Equipment and Energy. Critical Systems & Software Development Solutions

CONDIS. IT Service Management and CMDB

AS9100:2016 Transition Guide

Space Project Management

Software Development Principles Applied to Graphical Model Development

Development models. 1 Introduction. 2 Analyzing development models. R. Kuiper and E.J. Luit

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

Application Functional Safety IEC 61511

Quality Assurance of Models for Autocoding

Product Development Flow Including Model- Based Design and System-Level Functional Verification

Product Information CANape Option Simulink XCP Server

Quality Assurance Methods for Model-based Development: A Survey and Assessment

Requirement Traceability in Practice

Advanced Techniques for Simulating ECU C-code on the PC

ISO-9001:2000 Quality Management Systems

Configuration management in AUTOSAR

F15. Towards a More Mature Test Process. Anne Mette-Hass. P r e s e n t a t i o n

ISO 9001 : 2008 QUALITY MANAGEMENT SYSTEM AUDIT CHECK LIST INTRODUCTION

EHOOKS Prototyping is Rapid Again

Software Engineering. Software Processes. Based on Software Engineering, 7 th Edition by Ian Sommerville

Qualifying Software Tools According to ISO 26262

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

Benefits to the Quality Management System in implementing an IT Service Management Standard ISO/IEC

The way from ISO/TS 16949:2002 Model to EFQM Excellence Modelcomparisons

Transcription:

Dimitri Bermas ASPICE Assessor Diego Barral Senior Application Engineer Software Detailed Design for Model-Based Development Obligatory or Superfluous? VW AG, Dimitri Bermas, MathWorks Automotive Conference 2016

Outline o Introduction o Necessity of Software Detailed Design o Requirements on Detailed Design o Challenges Model Based Development and Detailed Design VW AG, Dimitri Bermas, MathWorks Automotive Conference 2016 2

Introduction VW Software Quality Assurance o VW Group Supplier Quality Assurance Electric/Electronics o Responsible for quality assurance of VW group suppliers o Potential analysis before nomination o Full ASPICE assessments for focus projects o Technical revisions and supplier improvement program support o 10 ASPICE assessors (+ colleagues at AUDI, MAN, Porsche, CARMEQ) o Approx. 100 Software assessments/audits per year o Focus on critical Software/ECU-projects for series with tier 1 suppliers o Specification of VW Group Basic Software Requirements VW AG, Dimitri Bermas, MathWorks Automotive Conference 2016 3

ASPICE and ISO 26262 o requirements for development processes and quality criteria for automotive system and software development o in general not specific to any programming language, but defined with the mindset of classic c-code implementation. ENG.2 ENG.10 SYS.1 SYS.2 SYS.6 SYS.5 ENG.3 ENG.4 ENG.9 ENG.8 SWE.1 SYS.3 SYS.4 SWE.6 ENG.5 ENG.7 SWE.2 SWE.5 ENG.6 SWE.3 SWE.4 VW AG, Dimitri Bermas, MathWorks Automotive Conference 2016 4

Model based development for series projects o used mostly for functional application software, e.g. engine control, steering, suspension, climate control for series ECU development o fast growing in new projects o job split - functional modelling at OEM and industrialization / code generation at supplier use of model based development in series projects* 25% with code generation 70% 5% as design tool w/o model based *internal survey, projects of VW group suppliers 2013-2016 VW AG, Dimitri Bermas, MathWorks Automotive Conference 2016 5

Software Design Understanding VW AG, Dimitri Bermas, MathWorks Automotive Conference 2016 6

Why Software Design? ISO / IEC 25010:2011 VW AG, Dimitri Bermas, MathWorks Automotive Conference 2016 7

Automotive SPICE v3.0 and implementation model Model VW AG, Dimitri Bermas, MathWorks Automotive Conference 2016 8

Requirements from Automotive SPICE v3.0 (extract) As a result of successful implementation of process SWE.3 Software Detailed Design and Unit Construction : o A detailed design is developed that describes software units. o Interfaces of each software unit are defined. o The dynamic behavior of the software units is defined. o Consistency and bidirectional traceability are established between: Software requirements and software units. Software architectural design and software detailed design. Software detailed design and software units. o Software units defined by the software detailed design are produced. VW AG, Dimitri Bermas, MathWorks Automotive Conference 2016 9

Thesis: My model is my detailed design! VW AG, Dimitri Bermas, MathWorks Automotive Conference 2016 10

Why a model may not be a Detailed Design? Why a model may not be a Detailed Design (typical challenges): - Missing design decisions - no answer why something is implemented that way (ISO 25010: functional suitability, maintainability, portability, etc.) (SWE3.BP4) - No distinction between architectural and detailed design (sometimes) - No distinction between specification and implementation model (ISO 26262) - No specification of non-functional requirements (e.g. RAM, ROM usage) VW AG, Dimitri Bermas, MathWorks Automotive Conference 2016 11

Why a model may be a Detailed Design? Why a model may be a detailed design (typical issues): Describes structural break down and allows definition of smallest unit (e.g. submodel), which can be run dedicated. Consistency of interfaces is ensured inside of the model by use of data dictionary (SWE3.BP2, SWE3.BP6). Visualization of dataflow supported by graphical representation directly in the model (SWE3.BP1). Description of dynamic behavior (SWE3.BP3) by using synchronization elements, internal scheduler and sample timing definition. VW AG, Dimitri Bermas, MathWorks Automotive Conference 2016 12

Challenge find the optimum! suitable extent of detailed design, no unnecessary overlap with model fullfillment of quality requirements high low low VW AG, Dimitri Bermas, MathWorks Automotive Conference 2016 high detailed design granularity 13

So, how do YOU find the optimum? And still achieve Automotive SPICE Compliance? 14

Automotive SPICE SWE.3 Software Detailed Design - Typical Challenges All development activities must add value to the model. Activities effort has to be sustainable (and realistic) along the whole project lifecycle. Find the optimum and avoid duplicate work! Since end of 2014 we have been working on this topic together with Volkswagen to define a solution. 15

Traceability Model-Based Design & Automotive SPICE Software Engineering Process Group (SWE) Software Requirements Analysis SWE 1 Software Qualification Test SWE 6 SWE 2 Software Architectural Design Software Integration and Integration Test SWE 5 Software Detailed Design Software Unit Verification SWE 4 SWE 3 Unit Construction 16

Traceability Model-Based Design & Automotive SPICE Software Engineering Process Group (SWE) BP1: Develop software detailed design. SWE.3 - Base Practices Software Requirements Analysis SWE 1 BP2: Define interfaces of software units. BP3: Describe dynamic behavior. Software Qualification Test SWE 6 SWE 2 Software Architectural Design BP4: Evaluate software detailed Software design. Integration and Integration Test BP5: Establish bidirectional traceability. SWE 5 Software Detailed Design BP6: Ensure consistency. Software Unit Verification BP7: Communicate agreed software detailed design. SWE 4 BP8: Develop software units. SWE 3 Unit Construction Software Construction 17

Traceability Model-Based Design & Automotive SPICE Software Engineering Process Group (SWE) BP1: Develop software detailed design. SWE.3 - Base Practices Software Requirements Analysis SWE 1 BP2: Define interfaces of software units. BP3: Describe dynamic behavior. Software Qualification Test SWE 6 SWE 2 Software Architectural Design BP4: Evaluate software detailed Software design. Integration and Integration Test BP5: Establish bidirectional traceability. SWE 5 Software Detailed Design BP6: Ensure consistency. Software Unit Verification BP7: Communicate agreed software detailed design. SWE 4 BP8: Develop software units. SWE 3 Unit Construction Software Construction 18

Automotive SPICE SWE.3 BP1: Develop software detailed design. Develop a detailed design for each software component Use Simulink, Stateflow and toolboxes. Involve functional and non-functional requirements. Develop Specification Model Assess the impact of requirements and design changes through simulation. Derive an Implementation Model Fulfills all automotive relevant Model-Advisor checks (e.g. MISRA C, ISO 26262, MAAB, ). Is ready for production code generation (e.g. uses Fixed-Point Data types,...). Manage and document design decisions Directly in the model or (if applicable) in the RM Tool. Establish bidirectional linking between relevant blocks and satisfied requirements. 19

Model-Based Design & Automotive SPICE SWE.3 BP1: Develop software detailed design (2) Document Design Decisions textually in Model (or in RM tool) RM Tool Link Bidirectional traceability with Software Requirements Generate Software Design Document 20

Traceability Model-Based Design & Automotive SPICE Software Engineering Process Group (SWE) BP1: Develop software detailed design. SWE.3 - Base Practices Software Requirements Analysis SWE 1 BP2: Define interfaces of software units. BP3: Describe dynamic behavior. Software Qualification Test SWE 6 SWE 2 Software Architectural Design BP4: Evaluate software detailed Software design. Integration and Integration Test BP5: Establish bidirectional traceability. SWE 5 Software Detailed Design BP6: Ensure consistency. Software Unit Verification BP7: Communicate agreed software detailed design. SWE 4 BP8: Develop software units. SWE 3 Unit Construction Software Construction 21

Model-Based Design & Automotive SPICE BP4: Evaluate software detailed design. Review models, design decisions and requirements linking. Execute test cases and model coverage analysis. Assess size and complexity of software units with model-metrics. Assess conformance to standards at model level (ISO 26262, MISRA, etc.). Justify non-conformities through model annotations. 22

Traceability Model-Based Design & Automotive SPICE Software Engineering Process Group (SWE) BP1: Develop software detailed design. SWE.3 - Base Practices Software Requirements Analysis SWE 1 BP2: Define interfaces of software units. BP3: Describe dynamic behavior. Software Qualification Test SWE 6 SWE 2 Software Architectural Design BP4: Evaluate software detailed Software design. Integration and Integration Test BP5: Establish bidirectional traceability. SWE 5 Software Detailed Design BP6: Ensure consistency. Software Unit Verification BP7: Communicate agreed software detailed design. SWE 4 BP8: Develop software units. SWE 3 Unit Construction Software Construction 23

Model-Based Design & Automotive SPICE BP5: Establish bidirectional traceability. RM Tool Establish bidirectional traceability between software requirements and the software detailed design. Bidirectional traceability Requirements Design decisions Model These can include: Parametrization and interface requirements on a high-level of abstraction Specific requirements, e.g. for a start-up task Ensure traceability through traceability report or traceability matrix 24

Traceability Model-Based Design & Automotive SPICE Software Engineering Process Group (SWE) BP1: Develop software detailed design. SWE.3 - Base Practices Software Requirements Analysis SWE 1 BP2: Define interfaces of software units. BP3: Describe dynamic behavior. Software Qualification Test SWE 6 SWE 2 Software Architectural Design BP4: Evaluate software detailed Software design. Integration and Integration Test BP5: Establish bidirectional traceability. SWE 5 Software Detailed Design BP6: Ensure consistency. Software Unit Verification BP7: Communicate agreed software detailed design. SWE 4 BP8: Develop software units. SWE 3 Unit Construction Software Construction 25

Model-Based Design & Automotive SPICE BP6: Ensure consistency. Ensure consistency between software requirements and software units. Ensure consistency between the software detailed design and software units. Consistency check Missing documents Invalid links Modified requirements Unidirectional links Traceability Report Requirements Consistency Check 26

Traceability Model-Based Design & Automotive SPICE Software Engineering Process Group (SWE) BP1: Develop software detailed design. SWE.3 - Base Practices Software Requirements Analysis SWE 1 BP2: Define interfaces of software units. BP3: Describe dynamic behavior. Software Qualification Test SWE 6 SWE 2 Software Architectural Design BP4: Evaluate software detailed Software design. Integration and Integration Test BP5: Establish bidirectional traceability. SWE 5 Software Detailed Design BP6: Ensure consistency. Software Unit Verification BP7: Communicate agreed software detailed design. SWE 4 BP8: Develop software units. SWE 3 Unit Construction Software Construction 27

Model-Based Design & Automotive SPICE BP8: Develop software units. Code generation for MBD Implementation model (consideration of all production code parameters as fixed-point arithmetic, etc.) Coder Configuration Target hardware Resources optimization Function prototypes and variables allocation Automatic report with bidirectional traceability Requirements Design Decisions Model Code 28

Model-Based Design & Automotive SPICE Model & Detailed Design Thesis: My model is my detailed design! Model = Detailed Design, if fulfills: Design Decisions documentation Interfaces definition Dynamic behavior description Design review Bidirectional requirements traceability Consistency check Software Units Implementation model Code generation Model has much more value than a static drawing MBD ASPICE Compliance Guideline Result of collaboration: Guideline for efficient ASPICE-conform Model-Based Design development. MathWorks Expertise for customer support. 29

Conclusion and Outlook VW Quality Goal: Improvement of VW Group Basic Software Requirements to consider a Model-Based Design development workflow VW and MathWorks successfully collaborated to craft a Model-Based Design process that is targeted towards reaching compliance with important industry quality standards MATLAB & Simulink provides a documented and traceable workflow aligned with the requirements of Automotive SPICE and ISO 26262-6 Auditor community needs to adopt a common approach for assessments with Model-Based Design Definition of industry-wide standards for model quality criteria, e.g. complexity indicators and limits (like HIS- MISRA for C). VW AG, Dimitri Bermas, MathWorks Automotive Conference 2016 30