Establishing Development Process and Automation · : Daily build / Continuous integration builds...

22
1

Transcript of Establishing Development Process and Automation · : Daily build / Continuous integration builds...

Page 1: Establishing Development Process and Automation · : Daily build / Continuous integration builds The practice of each day doing software build of the latest version –Compiled to

1

2copy 2016 The MathWorks Inc

Establishing Development Process and Automation

MathWorks

Consulting Services Group

3

Todayrsquos Agenda

Verification Activities in MBD

Automation of Model Verification Activities

ndash Model Testing with Simulink Test

Build Automation of Generated Code and Legacy Code Integration

Automation of Polyspace Code Verification

ndash Coding Standard Checks

ndash Formal Verification (Absence of Run-Time Error)

Questions and Answers

4

Verification Activities in MBD

Model Verification

minus Design Review

bull Requirement Traceability

bull Report Generation

minus Static Analysis

bull Model Standards Checking

bull Design Error Detection

bull Prove Design Correctness

minus Dynamic Test

bull Simulation-based Functional Test

bull Coverage Analysis

bull Simulink Test

5

Verification Activities in MBD (contrsquod)

Code Generation and Verification

minus Code Review

bull Code Generation Report

minus Static Analysis

bull Code Metrics and Coding Rule Checking

bull Formal Verification (Abstract Interpretation)

minus Equivalence Test

bull SIL(Software-In-the-Loop) and PIL(Processor-In-the-Loop)

6

Motivation

New Users Early stage MBD adoption

Map and Prioritize Processes

Model Architecture Establishment and Review

Tool implementation support

Advanced Users Continuous verification

Automate various verification activities

Continuous model and code review reports

7

Model-Based Design

for ISO 26262 ASIL D Safety Functions

Observations

ndash Many of the advanced analysis and design techniques called out by the standard are manually intensive to perform using traditional methods eg Range checks of inputoutput data Diverse SW Design Prototype generation

ndash Model-Based Design supports many of methods called out by the standard and provides automation to further reduce the manual effort

Me

tho

ds

Process Steps

8

Adopting Capabilities to Optimize

Model-Based Design for ISO 26262

Time

9

CI Tool Integration with MBD

CI Tool (Jenkins) Integration for Model Based Verification Activities

ndash Automation of Modeling Testing

ndash Build Automation for Code Integration (Generated Code and Legacy Code)

ndash Automation of Polyspace Code Verification

Coding Standard Checks

Formal Verification (Absence of Run-Time Error)

10

Integration with CI Tools

Environment and Workflow

Jenkins

httpdomainport

Work Area

CM

Repository

SVN(Client Models)

Models

amp Tests

Calls

Test

Report

Monitors

1 Regular (ex10PM every day) update developersrsquo model from SVN repository

2 Automatically trigger MATLAB application

3 Regular Test Reports

MATLAB

11copy 2016 The MathWorks Inc

Automation of Model Verification

12

Motivation

Model Verification (Simulink Test)

Continuous Model Verification Test

ndash Tedious repetitive tests

ndash Pre-defined test scenarios

ndash Simulation vs expected behaviors by test scenario

ndash Regression test

ndash Result analysis

ndash Simulink Test Report

ndash EARLY detected potential bugs

13

Automated Model Testing with Jenkins

DEMO

14copy 2016 The MathWorks Inc

Continuous Integration Builds

15

Motivation

Daily build Continuous integration builds

The practice of each day doing software build of the latest version

ndash Compiled to ensure all required dependencies are present

ndash Build is the results of compiling and linking

ndash Particularly necessary in large organizations

ndash New bugs that shows up as a results of work done within the last day

16

Application Software

- Model Generated Code

PID+-

Basic Software

- Hand Written Code

Motivation

Daily build Continuous integration builds

HW amp

Device DriverS1

S2S3

Software amp

Algorithms

Binary and a2l file generation

Interface integration (Input Output and Parameters)

Early Detection through continuous integration builds

17

Build Automation with Jenkins

DEMO

18copy 2016 The MathWorks Inc

Automation of Polyspace Code Verification

19

Motivation

Code Verification (Polyspace)

Continuous Code Verification Test

ndash Pre-defined compliance with Coding Standards

ndash Reduce Test Cycles by Fixing Bug early

Provide detailed information on what caused the defect

Tracing Code Analysis Results to Simulink Models

ndash Code Metrics and Monitor Software Quality

Progress of software quality

20

Automated Polyspace Code Verification with Jenkins

DEMO

2121

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

+ Tools

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

+ Tools

+ Tools+ Consulting

Productivity Improvement Dynamics

Speed Return on Investment in technology

Conclusion

22

QampA

Page 2: Establishing Development Process and Automation · : Daily build / Continuous integration builds The practice of each day doing software build of the latest version –Compiled to

2copy 2016 The MathWorks Inc

Establishing Development Process and Automation

MathWorks

Consulting Services Group

3

Todayrsquos Agenda

Verification Activities in MBD

Automation of Model Verification Activities

ndash Model Testing with Simulink Test

Build Automation of Generated Code and Legacy Code Integration

Automation of Polyspace Code Verification

ndash Coding Standard Checks

ndash Formal Verification (Absence of Run-Time Error)

Questions and Answers

4

Verification Activities in MBD

Model Verification

minus Design Review

bull Requirement Traceability

bull Report Generation

minus Static Analysis

bull Model Standards Checking

bull Design Error Detection

bull Prove Design Correctness

minus Dynamic Test

bull Simulation-based Functional Test

bull Coverage Analysis

bull Simulink Test

5

Verification Activities in MBD (contrsquod)

Code Generation and Verification

minus Code Review

bull Code Generation Report

minus Static Analysis

bull Code Metrics and Coding Rule Checking

bull Formal Verification (Abstract Interpretation)

minus Equivalence Test

bull SIL(Software-In-the-Loop) and PIL(Processor-In-the-Loop)

6

Motivation

New Users Early stage MBD adoption

Map and Prioritize Processes

Model Architecture Establishment and Review

Tool implementation support

Advanced Users Continuous verification

Automate various verification activities

Continuous model and code review reports

7

Model-Based Design

for ISO 26262 ASIL D Safety Functions

Observations

ndash Many of the advanced analysis and design techniques called out by the standard are manually intensive to perform using traditional methods eg Range checks of inputoutput data Diverse SW Design Prototype generation

ndash Model-Based Design supports many of methods called out by the standard and provides automation to further reduce the manual effort

Me

tho

ds

Process Steps

8

Adopting Capabilities to Optimize

Model-Based Design for ISO 26262

Time

9

CI Tool Integration with MBD

CI Tool (Jenkins) Integration for Model Based Verification Activities

ndash Automation of Modeling Testing

ndash Build Automation for Code Integration (Generated Code and Legacy Code)

ndash Automation of Polyspace Code Verification

Coding Standard Checks

Formal Verification (Absence of Run-Time Error)

10

Integration with CI Tools

Environment and Workflow

Jenkins

httpdomainport

Work Area

CM

Repository

SVN(Client Models)

Models

amp Tests

Calls

Test

Report

Monitors

1 Regular (ex10PM every day) update developersrsquo model from SVN repository

2 Automatically trigger MATLAB application

3 Regular Test Reports

MATLAB

11copy 2016 The MathWorks Inc

Automation of Model Verification

12

Motivation

Model Verification (Simulink Test)

Continuous Model Verification Test

ndash Tedious repetitive tests

ndash Pre-defined test scenarios

ndash Simulation vs expected behaviors by test scenario

ndash Regression test

ndash Result analysis

ndash Simulink Test Report

ndash EARLY detected potential bugs

13

Automated Model Testing with Jenkins

DEMO

14copy 2016 The MathWorks Inc

Continuous Integration Builds

15

Motivation

Daily build Continuous integration builds

The practice of each day doing software build of the latest version

ndash Compiled to ensure all required dependencies are present

ndash Build is the results of compiling and linking

ndash Particularly necessary in large organizations

ndash New bugs that shows up as a results of work done within the last day

16

Application Software

- Model Generated Code

PID+-

Basic Software

- Hand Written Code

Motivation

Daily build Continuous integration builds

HW amp

Device DriverS1

S2S3

Software amp

Algorithms

Binary and a2l file generation

Interface integration (Input Output and Parameters)

Early Detection through continuous integration builds

17

Build Automation with Jenkins

DEMO

18copy 2016 The MathWorks Inc

Automation of Polyspace Code Verification

19

Motivation

Code Verification (Polyspace)

Continuous Code Verification Test

ndash Pre-defined compliance with Coding Standards

ndash Reduce Test Cycles by Fixing Bug early

Provide detailed information on what caused the defect

Tracing Code Analysis Results to Simulink Models

ndash Code Metrics and Monitor Software Quality

Progress of software quality

20

Automated Polyspace Code Verification with Jenkins

DEMO

2121

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

+ Tools

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

+ Tools

+ Tools+ Consulting

Productivity Improvement Dynamics

Speed Return on Investment in technology

Conclusion

22

QampA

Page 3: Establishing Development Process and Automation · : Daily build / Continuous integration builds The practice of each day doing software build of the latest version –Compiled to

3

Todayrsquos Agenda

Verification Activities in MBD

Automation of Model Verification Activities

ndash Model Testing with Simulink Test

Build Automation of Generated Code and Legacy Code Integration

Automation of Polyspace Code Verification

ndash Coding Standard Checks

ndash Formal Verification (Absence of Run-Time Error)

Questions and Answers

4

Verification Activities in MBD

Model Verification

minus Design Review

bull Requirement Traceability

bull Report Generation

minus Static Analysis

bull Model Standards Checking

bull Design Error Detection

bull Prove Design Correctness

minus Dynamic Test

bull Simulation-based Functional Test

bull Coverage Analysis

bull Simulink Test

5

Verification Activities in MBD (contrsquod)

Code Generation and Verification

minus Code Review

bull Code Generation Report

minus Static Analysis

bull Code Metrics and Coding Rule Checking

bull Formal Verification (Abstract Interpretation)

minus Equivalence Test

bull SIL(Software-In-the-Loop) and PIL(Processor-In-the-Loop)

6

Motivation

New Users Early stage MBD adoption

Map and Prioritize Processes

Model Architecture Establishment and Review

Tool implementation support

Advanced Users Continuous verification

Automate various verification activities

Continuous model and code review reports

7

Model-Based Design

for ISO 26262 ASIL D Safety Functions

Observations

ndash Many of the advanced analysis and design techniques called out by the standard are manually intensive to perform using traditional methods eg Range checks of inputoutput data Diverse SW Design Prototype generation

ndash Model-Based Design supports many of methods called out by the standard and provides automation to further reduce the manual effort

Me

tho

ds

Process Steps

8

Adopting Capabilities to Optimize

Model-Based Design for ISO 26262

Time

9

CI Tool Integration with MBD

CI Tool (Jenkins) Integration for Model Based Verification Activities

ndash Automation of Modeling Testing

ndash Build Automation for Code Integration (Generated Code and Legacy Code)

ndash Automation of Polyspace Code Verification

Coding Standard Checks

Formal Verification (Absence of Run-Time Error)

10

Integration with CI Tools

Environment and Workflow

Jenkins

httpdomainport

Work Area

CM

Repository

SVN(Client Models)

Models

amp Tests

Calls

Test

Report

Monitors

1 Regular (ex10PM every day) update developersrsquo model from SVN repository

2 Automatically trigger MATLAB application

3 Regular Test Reports

MATLAB

11copy 2016 The MathWorks Inc

Automation of Model Verification

12

Motivation

Model Verification (Simulink Test)

Continuous Model Verification Test

ndash Tedious repetitive tests

ndash Pre-defined test scenarios

ndash Simulation vs expected behaviors by test scenario

ndash Regression test

ndash Result analysis

ndash Simulink Test Report

ndash EARLY detected potential bugs

13

Automated Model Testing with Jenkins

DEMO

14copy 2016 The MathWorks Inc

Continuous Integration Builds

15

Motivation

Daily build Continuous integration builds

The practice of each day doing software build of the latest version

ndash Compiled to ensure all required dependencies are present

ndash Build is the results of compiling and linking

ndash Particularly necessary in large organizations

ndash New bugs that shows up as a results of work done within the last day

16

Application Software

- Model Generated Code

PID+-

Basic Software

- Hand Written Code

Motivation

Daily build Continuous integration builds

HW amp

Device DriverS1

S2S3

Software amp

Algorithms

Binary and a2l file generation

Interface integration (Input Output and Parameters)

Early Detection through continuous integration builds

17

Build Automation with Jenkins

DEMO

18copy 2016 The MathWorks Inc

Automation of Polyspace Code Verification

19

Motivation

Code Verification (Polyspace)

Continuous Code Verification Test

ndash Pre-defined compliance with Coding Standards

ndash Reduce Test Cycles by Fixing Bug early

Provide detailed information on what caused the defect

Tracing Code Analysis Results to Simulink Models

ndash Code Metrics and Monitor Software Quality

Progress of software quality

20

Automated Polyspace Code Verification with Jenkins

DEMO

2121

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

+ Tools

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

+ Tools

+ Tools+ Consulting

Productivity Improvement Dynamics

Speed Return on Investment in technology

Conclusion

22

QampA

Page 4: Establishing Development Process and Automation · : Daily build / Continuous integration builds The practice of each day doing software build of the latest version –Compiled to

4

Verification Activities in MBD

Model Verification

minus Design Review

bull Requirement Traceability

bull Report Generation

minus Static Analysis

bull Model Standards Checking

bull Design Error Detection

bull Prove Design Correctness

minus Dynamic Test

bull Simulation-based Functional Test

bull Coverage Analysis

bull Simulink Test

5

Verification Activities in MBD (contrsquod)

Code Generation and Verification

minus Code Review

bull Code Generation Report

minus Static Analysis

bull Code Metrics and Coding Rule Checking

bull Formal Verification (Abstract Interpretation)

minus Equivalence Test

bull SIL(Software-In-the-Loop) and PIL(Processor-In-the-Loop)

6

Motivation

New Users Early stage MBD adoption

Map and Prioritize Processes

Model Architecture Establishment and Review

Tool implementation support

Advanced Users Continuous verification

Automate various verification activities

Continuous model and code review reports

7

Model-Based Design

for ISO 26262 ASIL D Safety Functions

Observations

ndash Many of the advanced analysis and design techniques called out by the standard are manually intensive to perform using traditional methods eg Range checks of inputoutput data Diverse SW Design Prototype generation

ndash Model-Based Design supports many of methods called out by the standard and provides automation to further reduce the manual effort

Me

tho

ds

Process Steps

8

Adopting Capabilities to Optimize

Model-Based Design for ISO 26262

Time

9

CI Tool Integration with MBD

CI Tool (Jenkins) Integration for Model Based Verification Activities

ndash Automation of Modeling Testing

ndash Build Automation for Code Integration (Generated Code and Legacy Code)

ndash Automation of Polyspace Code Verification

Coding Standard Checks

Formal Verification (Absence of Run-Time Error)

10

Integration with CI Tools

Environment and Workflow

Jenkins

httpdomainport

Work Area

CM

Repository

SVN(Client Models)

Models

amp Tests

Calls

Test

Report

Monitors

1 Regular (ex10PM every day) update developersrsquo model from SVN repository

2 Automatically trigger MATLAB application

3 Regular Test Reports

MATLAB

11copy 2016 The MathWorks Inc

Automation of Model Verification

12

Motivation

Model Verification (Simulink Test)

Continuous Model Verification Test

ndash Tedious repetitive tests

ndash Pre-defined test scenarios

ndash Simulation vs expected behaviors by test scenario

ndash Regression test

ndash Result analysis

ndash Simulink Test Report

ndash EARLY detected potential bugs

13

Automated Model Testing with Jenkins

DEMO

14copy 2016 The MathWorks Inc

Continuous Integration Builds

15

Motivation

Daily build Continuous integration builds

The practice of each day doing software build of the latest version

ndash Compiled to ensure all required dependencies are present

ndash Build is the results of compiling and linking

ndash Particularly necessary in large organizations

ndash New bugs that shows up as a results of work done within the last day

16

Application Software

- Model Generated Code

PID+-

Basic Software

- Hand Written Code

Motivation

Daily build Continuous integration builds

HW amp

Device DriverS1

S2S3

Software amp

Algorithms

Binary and a2l file generation

Interface integration (Input Output and Parameters)

Early Detection through continuous integration builds

17

Build Automation with Jenkins

DEMO

18copy 2016 The MathWorks Inc

Automation of Polyspace Code Verification

19

Motivation

Code Verification (Polyspace)

Continuous Code Verification Test

ndash Pre-defined compliance with Coding Standards

ndash Reduce Test Cycles by Fixing Bug early

Provide detailed information on what caused the defect

Tracing Code Analysis Results to Simulink Models

ndash Code Metrics and Monitor Software Quality

Progress of software quality

20

Automated Polyspace Code Verification with Jenkins

DEMO

2121

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

+ Tools

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

+ Tools

+ Tools+ Consulting

Productivity Improvement Dynamics

Speed Return on Investment in technology

Conclusion

22

QampA

Page 5: Establishing Development Process and Automation · : Daily build / Continuous integration builds The practice of each day doing software build of the latest version –Compiled to

5

Verification Activities in MBD (contrsquod)

Code Generation and Verification

minus Code Review

bull Code Generation Report

minus Static Analysis

bull Code Metrics and Coding Rule Checking

bull Formal Verification (Abstract Interpretation)

minus Equivalence Test

bull SIL(Software-In-the-Loop) and PIL(Processor-In-the-Loop)

6

Motivation

New Users Early stage MBD adoption

Map and Prioritize Processes

Model Architecture Establishment and Review

Tool implementation support

Advanced Users Continuous verification

Automate various verification activities

Continuous model and code review reports

7

Model-Based Design

for ISO 26262 ASIL D Safety Functions

Observations

ndash Many of the advanced analysis and design techniques called out by the standard are manually intensive to perform using traditional methods eg Range checks of inputoutput data Diverse SW Design Prototype generation

ndash Model-Based Design supports many of methods called out by the standard and provides automation to further reduce the manual effort

Me

tho

ds

Process Steps

8

Adopting Capabilities to Optimize

Model-Based Design for ISO 26262

Time

9

CI Tool Integration with MBD

CI Tool (Jenkins) Integration for Model Based Verification Activities

ndash Automation of Modeling Testing

ndash Build Automation for Code Integration (Generated Code and Legacy Code)

ndash Automation of Polyspace Code Verification

Coding Standard Checks

Formal Verification (Absence of Run-Time Error)

10

Integration with CI Tools

Environment and Workflow

Jenkins

httpdomainport

Work Area

CM

Repository

SVN(Client Models)

Models

amp Tests

Calls

Test

Report

Monitors

1 Regular (ex10PM every day) update developersrsquo model from SVN repository

2 Automatically trigger MATLAB application

3 Regular Test Reports

MATLAB

11copy 2016 The MathWorks Inc

Automation of Model Verification

12

Motivation

Model Verification (Simulink Test)

Continuous Model Verification Test

ndash Tedious repetitive tests

ndash Pre-defined test scenarios

ndash Simulation vs expected behaviors by test scenario

ndash Regression test

ndash Result analysis

ndash Simulink Test Report

ndash EARLY detected potential bugs

13

Automated Model Testing with Jenkins

DEMO

14copy 2016 The MathWorks Inc

Continuous Integration Builds

15

Motivation

Daily build Continuous integration builds

The practice of each day doing software build of the latest version

ndash Compiled to ensure all required dependencies are present

ndash Build is the results of compiling and linking

ndash Particularly necessary in large organizations

ndash New bugs that shows up as a results of work done within the last day

16

Application Software

- Model Generated Code

PID+-

Basic Software

- Hand Written Code

Motivation

Daily build Continuous integration builds

HW amp

Device DriverS1

S2S3

Software amp

Algorithms

Binary and a2l file generation

Interface integration (Input Output and Parameters)

Early Detection through continuous integration builds

17

Build Automation with Jenkins

DEMO

18copy 2016 The MathWorks Inc

Automation of Polyspace Code Verification

19

Motivation

Code Verification (Polyspace)

Continuous Code Verification Test

ndash Pre-defined compliance with Coding Standards

ndash Reduce Test Cycles by Fixing Bug early

Provide detailed information on what caused the defect

Tracing Code Analysis Results to Simulink Models

ndash Code Metrics and Monitor Software Quality

Progress of software quality

20

Automated Polyspace Code Verification with Jenkins

DEMO

2121

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

+ Tools

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

+ Tools

+ Tools+ Consulting

Productivity Improvement Dynamics

Speed Return on Investment in technology

Conclusion

22

QampA

Page 6: Establishing Development Process and Automation · : Daily build / Continuous integration builds The practice of each day doing software build of the latest version –Compiled to

6

Motivation

New Users Early stage MBD adoption

Map and Prioritize Processes

Model Architecture Establishment and Review

Tool implementation support

Advanced Users Continuous verification

Automate various verification activities

Continuous model and code review reports

7

Model-Based Design

for ISO 26262 ASIL D Safety Functions

Observations

ndash Many of the advanced analysis and design techniques called out by the standard are manually intensive to perform using traditional methods eg Range checks of inputoutput data Diverse SW Design Prototype generation

ndash Model-Based Design supports many of methods called out by the standard and provides automation to further reduce the manual effort

Me

tho

ds

Process Steps

8

Adopting Capabilities to Optimize

Model-Based Design for ISO 26262

Time

9

CI Tool Integration with MBD

CI Tool (Jenkins) Integration for Model Based Verification Activities

ndash Automation of Modeling Testing

ndash Build Automation for Code Integration (Generated Code and Legacy Code)

ndash Automation of Polyspace Code Verification

Coding Standard Checks

Formal Verification (Absence of Run-Time Error)

10

Integration with CI Tools

Environment and Workflow

Jenkins

httpdomainport

Work Area

CM

Repository

SVN(Client Models)

Models

amp Tests

Calls

Test

Report

Monitors

1 Regular (ex10PM every day) update developersrsquo model from SVN repository

2 Automatically trigger MATLAB application

3 Regular Test Reports

MATLAB

11copy 2016 The MathWorks Inc

Automation of Model Verification

12

Motivation

Model Verification (Simulink Test)

Continuous Model Verification Test

ndash Tedious repetitive tests

ndash Pre-defined test scenarios

ndash Simulation vs expected behaviors by test scenario

ndash Regression test

ndash Result analysis

ndash Simulink Test Report

ndash EARLY detected potential bugs

13

Automated Model Testing with Jenkins

DEMO

14copy 2016 The MathWorks Inc

Continuous Integration Builds

15

Motivation

Daily build Continuous integration builds

The practice of each day doing software build of the latest version

ndash Compiled to ensure all required dependencies are present

ndash Build is the results of compiling and linking

ndash Particularly necessary in large organizations

ndash New bugs that shows up as a results of work done within the last day

16

Application Software

- Model Generated Code

PID+-

Basic Software

- Hand Written Code

Motivation

Daily build Continuous integration builds

HW amp

Device DriverS1

S2S3

Software amp

Algorithms

Binary and a2l file generation

Interface integration (Input Output and Parameters)

Early Detection through continuous integration builds

17

Build Automation with Jenkins

DEMO

18copy 2016 The MathWorks Inc

Automation of Polyspace Code Verification

19

Motivation

Code Verification (Polyspace)

Continuous Code Verification Test

ndash Pre-defined compliance with Coding Standards

ndash Reduce Test Cycles by Fixing Bug early

Provide detailed information on what caused the defect

Tracing Code Analysis Results to Simulink Models

ndash Code Metrics and Monitor Software Quality

Progress of software quality

20

Automated Polyspace Code Verification with Jenkins

DEMO

2121

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

+ Tools

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

+ Tools

+ Tools+ Consulting

Productivity Improvement Dynamics

Speed Return on Investment in technology

Conclusion

22

QampA

Page 7: Establishing Development Process and Automation · : Daily build / Continuous integration builds The practice of each day doing software build of the latest version –Compiled to

7

Model-Based Design

for ISO 26262 ASIL D Safety Functions

Observations

ndash Many of the advanced analysis and design techniques called out by the standard are manually intensive to perform using traditional methods eg Range checks of inputoutput data Diverse SW Design Prototype generation

ndash Model-Based Design supports many of methods called out by the standard and provides automation to further reduce the manual effort

Me

tho

ds

Process Steps

8

Adopting Capabilities to Optimize

Model-Based Design for ISO 26262

Time

9

CI Tool Integration with MBD

CI Tool (Jenkins) Integration for Model Based Verification Activities

ndash Automation of Modeling Testing

ndash Build Automation for Code Integration (Generated Code and Legacy Code)

ndash Automation of Polyspace Code Verification

Coding Standard Checks

Formal Verification (Absence of Run-Time Error)

10

Integration with CI Tools

Environment and Workflow

Jenkins

httpdomainport

Work Area

CM

Repository

SVN(Client Models)

Models

amp Tests

Calls

Test

Report

Monitors

1 Regular (ex10PM every day) update developersrsquo model from SVN repository

2 Automatically trigger MATLAB application

3 Regular Test Reports

MATLAB

11copy 2016 The MathWorks Inc

Automation of Model Verification

12

Motivation

Model Verification (Simulink Test)

Continuous Model Verification Test

ndash Tedious repetitive tests

ndash Pre-defined test scenarios

ndash Simulation vs expected behaviors by test scenario

ndash Regression test

ndash Result analysis

ndash Simulink Test Report

ndash EARLY detected potential bugs

13

Automated Model Testing with Jenkins

DEMO

14copy 2016 The MathWorks Inc

Continuous Integration Builds

15

Motivation

Daily build Continuous integration builds

The practice of each day doing software build of the latest version

ndash Compiled to ensure all required dependencies are present

ndash Build is the results of compiling and linking

ndash Particularly necessary in large organizations

ndash New bugs that shows up as a results of work done within the last day

16

Application Software

- Model Generated Code

PID+-

Basic Software

- Hand Written Code

Motivation

Daily build Continuous integration builds

HW amp

Device DriverS1

S2S3

Software amp

Algorithms

Binary and a2l file generation

Interface integration (Input Output and Parameters)

Early Detection through continuous integration builds

17

Build Automation with Jenkins

DEMO

18copy 2016 The MathWorks Inc

Automation of Polyspace Code Verification

19

Motivation

Code Verification (Polyspace)

Continuous Code Verification Test

ndash Pre-defined compliance with Coding Standards

ndash Reduce Test Cycles by Fixing Bug early

Provide detailed information on what caused the defect

Tracing Code Analysis Results to Simulink Models

ndash Code Metrics and Monitor Software Quality

Progress of software quality

20

Automated Polyspace Code Verification with Jenkins

DEMO

2121

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

+ Tools

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

+ Tools

+ Tools+ Consulting

Productivity Improvement Dynamics

Speed Return on Investment in technology

Conclusion

22

QampA

Page 8: Establishing Development Process and Automation · : Daily build / Continuous integration builds The practice of each day doing software build of the latest version –Compiled to

8

Adopting Capabilities to Optimize

Model-Based Design for ISO 26262

Time

9

CI Tool Integration with MBD

CI Tool (Jenkins) Integration for Model Based Verification Activities

ndash Automation of Modeling Testing

ndash Build Automation for Code Integration (Generated Code and Legacy Code)

ndash Automation of Polyspace Code Verification

Coding Standard Checks

Formal Verification (Absence of Run-Time Error)

10

Integration with CI Tools

Environment and Workflow

Jenkins

httpdomainport

Work Area

CM

Repository

SVN(Client Models)

Models

amp Tests

Calls

Test

Report

Monitors

1 Regular (ex10PM every day) update developersrsquo model from SVN repository

2 Automatically trigger MATLAB application

3 Regular Test Reports

MATLAB

11copy 2016 The MathWorks Inc

Automation of Model Verification

12

Motivation

Model Verification (Simulink Test)

Continuous Model Verification Test

ndash Tedious repetitive tests

ndash Pre-defined test scenarios

ndash Simulation vs expected behaviors by test scenario

ndash Regression test

ndash Result analysis

ndash Simulink Test Report

ndash EARLY detected potential bugs

13

Automated Model Testing with Jenkins

DEMO

14copy 2016 The MathWorks Inc

Continuous Integration Builds

15

Motivation

Daily build Continuous integration builds

The practice of each day doing software build of the latest version

ndash Compiled to ensure all required dependencies are present

ndash Build is the results of compiling and linking

ndash Particularly necessary in large organizations

ndash New bugs that shows up as a results of work done within the last day

16

Application Software

- Model Generated Code

PID+-

Basic Software

- Hand Written Code

Motivation

Daily build Continuous integration builds

HW amp

Device DriverS1

S2S3

Software amp

Algorithms

Binary and a2l file generation

Interface integration (Input Output and Parameters)

Early Detection through continuous integration builds

17

Build Automation with Jenkins

DEMO

18copy 2016 The MathWorks Inc

Automation of Polyspace Code Verification

19

Motivation

Code Verification (Polyspace)

Continuous Code Verification Test

ndash Pre-defined compliance with Coding Standards

ndash Reduce Test Cycles by Fixing Bug early

Provide detailed information on what caused the defect

Tracing Code Analysis Results to Simulink Models

ndash Code Metrics and Monitor Software Quality

Progress of software quality

20

Automated Polyspace Code Verification with Jenkins

DEMO

2121

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

+ Tools

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

+ Tools

+ Tools+ Consulting

Productivity Improvement Dynamics

Speed Return on Investment in technology

Conclusion

22

QampA

Page 9: Establishing Development Process and Automation · : Daily build / Continuous integration builds The practice of each day doing software build of the latest version –Compiled to

9

CI Tool Integration with MBD

CI Tool (Jenkins) Integration for Model Based Verification Activities

ndash Automation of Modeling Testing

ndash Build Automation for Code Integration (Generated Code and Legacy Code)

ndash Automation of Polyspace Code Verification

Coding Standard Checks

Formal Verification (Absence of Run-Time Error)

10

Integration with CI Tools

Environment and Workflow

Jenkins

httpdomainport

Work Area

CM

Repository

SVN(Client Models)

Models

amp Tests

Calls

Test

Report

Monitors

1 Regular (ex10PM every day) update developersrsquo model from SVN repository

2 Automatically trigger MATLAB application

3 Regular Test Reports

MATLAB

11copy 2016 The MathWorks Inc

Automation of Model Verification

12

Motivation

Model Verification (Simulink Test)

Continuous Model Verification Test

ndash Tedious repetitive tests

ndash Pre-defined test scenarios

ndash Simulation vs expected behaviors by test scenario

ndash Regression test

ndash Result analysis

ndash Simulink Test Report

ndash EARLY detected potential bugs

13

Automated Model Testing with Jenkins

DEMO

14copy 2016 The MathWorks Inc

Continuous Integration Builds

15

Motivation

Daily build Continuous integration builds

The practice of each day doing software build of the latest version

ndash Compiled to ensure all required dependencies are present

ndash Build is the results of compiling and linking

ndash Particularly necessary in large organizations

ndash New bugs that shows up as a results of work done within the last day

16

Application Software

- Model Generated Code

PID+-

Basic Software

- Hand Written Code

Motivation

Daily build Continuous integration builds

HW amp

Device DriverS1

S2S3

Software amp

Algorithms

Binary and a2l file generation

Interface integration (Input Output and Parameters)

Early Detection through continuous integration builds

17

Build Automation with Jenkins

DEMO

18copy 2016 The MathWorks Inc

Automation of Polyspace Code Verification

19

Motivation

Code Verification (Polyspace)

Continuous Code Verification Test

ndash Pre-defined compliance with Coding Standards

ndash Reduce Test Cycles by Fixing Bug early

Provide detailed information on what caused the defect

Tracing Code Analysis Results to Simulink Models

ndash Code Metrics and Monitor Software Quality

Progress of software quality

20

Automated Polyspace Code Verification with Jenkins

DEMO

2121

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

+ Tools

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

+ Tools

+ Tools+ Consulting

Productivity Improvement Dynamics

Speed Return on Investment in technology

Conclusion

22

QampA

Page 10: Establishing Development Process and Automation · : Daily build / Continuous integration builds The practice of each day doing software build of the latest version –Compiled to

10

Integration with CI Tools

Environment and Workflow

Jenkins

httpdomainport

Work Area

CM

Repository

SVN(Client Models)

Models

amp Tests

Calls

Test

Report

Monitors

1 Regular (ex10PM every day) update developersrsquo model from SVN repository

2 Automatically trigger MATLAB application

3 Regular Test Reports

MATLAB

11copy 2016 The MathWorks Inc

Automation of Model Verification

12

Motivation

Model Verification (Simulink Test)

Continuous Model Verification Test

ndash Tedious repetitive tests

ndash Pre-defined test scenarios

ndash Simulation vs expected behaviors by test scenario

ndash Regression test

ndash Result analysis

ndash Simulink Test Report

ndash EARLY detected potential bugs

13

Automated Model Testing with Jenkins

DEMO

14copy 2016 The MathWorks Inc

Continuous Integration Builds

15

Motivation

Daily build Continuous integration builds

The practice of each day doing software build of the latest version

ndash Compiled to ensure all required dependencies are present

ndash Build is the results of compiling and linking

ndash Particularly necessary in large organizations

ndash New bugs that shows up as a results of work done within the last day

16

Application Software

- Model Generated Code

PID+-

Basic Software

- Hand Written Code

Motivation

Daily build Continuous integration builds

HW amp

Device DriverS1

S2S3

Software amp

Algorithms

Binary and a2l file generation

Interface integration (Input Output and Parameters)

Early Detection through continuous integration builds

17

Build Automation with Jenkins

DEMO

18copy 2016 The MathWorks Inc

Automation of Polyspace Code Verification

19

Motivation

Code Verification (Polyspace)

Continuous Code Verification Test

ndash Pre-defined compliance with Coding Standards

ndash Reduce Test Cycles by Fixing Bug early

Provide detailed information on what caused the defect

Tracing Code Analysis Results to Simulink Models

ndash Code Metrics and Monitor Software Quality

Progress of software quality

20

Automated Polyspace Code Verification with Jenkins

DEMO

2121

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

+ Tools

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

+ Tools

+ Tools+ Consulting

Productivity Improvement Dynamics

Speed Return on Investment in technology

Conclusion

22

QampA

Page 11: Establishing Development Process and Automation · : Daily build / Continuous integration builds The practice of each day doing software build of the latest version –Compiled to

11copy 2016 The MathWorks Inc

Automation of Model Verification

12

Motivation

Model Verification (Simulink Test)

Continuous Model Verification Test

ndash Tedious repetitive tests

ndash Pre-defined test scenarios

ndash Simulation vs expected behaviors by test scenario

ndash Regression test

ndash Result analysis

ndash Simulink Test Report

ndash EARLY detected potential bugs

13

Automated Model Testing with Jenkins

DEMO

14copy 2016 The MathWorks Inc

Continuous Integration Builds

15

Motivation

Daily build Continuous integration builds

The practice of each day doing software build of the latest version

ndash Compiled to ensure all required dependencies are present

ndash Build is the results of compiling and linking

ndash Particularly necessary in large organizations

ndash New bugs that shows up as a results of work done within the last day

16

Application Software

- Model Generated Code

PID+-

Basic Software

- Hand Written Code

Motivation

Daily build Continuous integration builds

HW amp

Device DriverS1

S2S3

Software amp

Algorithms

Binary and a2l file generation

Interface integration (Input Output and Parameters)

Early Detection through continuous integration builds

17

Build Automation with Jenkins

DEMO

18copy 2016 The MathWorks Inc

Automation of Polyspace Code Verification

19

Motivation

Code Verification (Polyspace)

Continuous Code Verification Test

ndash Pre-defined compliance with Coding Standards

ndash Reduce Test Cycles by Fixing Bug early

Provide detailed information on what caused the defect

Tracing Code Analysis Results to Simulink Models

ndash Code Metrics and Monitor Software Quality

Progress of software quality

20

Automated Polyspace Code Verification with Jenkins

DEMO

2121

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

+ Tools

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

+ Tools

+ Tools+ Consulting

Productivity Improvement Dynamics

Speed Return on Investment in technology

Conclusion

22

QampA

Page 12: Establishing Development Process and Automation · : Daily build / Continuous integration builds The practice of each day doing software build of the latest version –Compiled to

12

Motivation

Model Verification (Simulink Test)

Continuous Model Verification Test

ndash Tedious repetitive tests

ndash Pre-defined test scenarios

ndash Simulation vs expected behaviors by test scenario

ndash Regression test

ndash Result analysis

ndash Simulink Test Report

ndash EARLY detected potential bugs

13

Automated Model Testing with Jenkins

DEMO

14copy 2016 The MathWorks Inc

Continuous Integration Builds

15

Motivation

Daily build Continuous integration builds

The practice of each day doing software build of the latest version

ndash Compiled to ensure all required dependencies are present

ndash Build is the results of compiling and linking

ndash Particularly necessary in large organizations

ndash New bugs that shows up as a results of work done within the last day

16

Application Software

- Model Generated Code

PID+-

Basic Software

- Hand Written Code

Motivation

Daily build Continuous integration builds

HW amp

Device DriverS1

S2S3

Software amp

Algorithms

Binary and a2l file generation

Interface integration (Input Output and Parameters)

Early Detection through continuous integration builds

17

Build Automation with Jenkins

DEMO

18copy 2016 The MathWorks Inc

Automation of Polyspace Code Verification

19

Motivation

Code Verification (Polyspace)

Continuous Code Verification Test

ndash Pre-defined compliance with Coding Standards

ndash Reduce Test Cycles by Fixing Bug early

Provide detailed information on what caused the defect

Tracing Code Analysis Results to Simulink Models

ndash Code Metrics and Monitor Software Quality

Progress of software quality

20

Automated Polyspace Code Verification with Jenkins

DEMO

2121

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

+ Tools

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

+ Tools

+ Tools+ Consulting

Productivity Improvement Dynamics

Speed Return on Investment in technology

Conclusion

22

QampA

Page 13: Establishing Development Process and Automation · : Daily build / Continuous integration builds The practice of each day doing software build of the latest version –Compiled to

13

Automated Model Testing with Jenkins

DEMO

14copy 2016 The MathWorks Inc

Continuous Integration Builds

15

Motivation

Daily build Continuous integration builds

The practice of each day doing software build of the latest version

ndash Compiled to ensure all required dependencies are present

ndash Build is the results of compiling and linking

ndash Particularly necessary in large organizations

ndash New bugs that shows up as a results of work done within the last day

16

Application Software

- Model Generated Code

PID+-

Basic Software

- Hand Written Code

Motivation

Daily build Continuous integration builds

HW amp

Device DriverS1

S2S3

Software amp

Algorithms

Binary and a2l file generation

Interface integration (Input Output and Parameters)

Early Detection through continuous integration builds

17

Build Automation with Jenkins

DEMO

18copy 2016 The MathWorks Inc

Automation of Polyspace Code Verification

19

Motivation

Code Verification (Polyspace)

Continuous Code Verification Test

ndash Pre-defined compliance with Coding Standards

ndash Reduce Test Cycles by Fixing Bug early

Provide detailed information on what caused the defect

Tracing Code Analysis Results to Simulink Models

ndash Code Metrics and Monitor Software Quality

Progress of software quality

20

Automated Polyspace Code Verification with Jenkins

DEMO

2121

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

+ Tools

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

+ Tools

+ Tools+ Consulting

Productivity Improvement Dynamics

Speed Return on Investment in technology

Conclusion

22

QampA

Page 14: Establishing Development Process and Automation · : Daily build / Continuous integration builds The practice of each day doing software build of the latest version –Compiled to

14copy 2016 The MathWorks Inc

Continuous Integration Builds

15

Motivation

Daily build Continuous integration builds

The practice of each day doing software build of the latest version

ndash Compiled to ensure all required dependencies are present

ndash Build is the results of compiling and linking

ndash Particularly necessary in large organizations

ndash New bugs that shows up as a results of work done within the last day

16

Application Software

- Model Generated Code

PID+-

Basic Software

- Hand Written Code

Motivation

Daily build Continuous integration builds

HW amp

Device DriverS1

S2S3

Software amp

Algorithms

Binary and a2l file generation

Interface integration (Input Output and Parameters)

Early Detection through continuous integration builds

17

Build Automation with Jenkins

DEMO

18copy 2016 The MathWorks Inc

Automation of Polyspace Code Verification

19

Motivation

Code Verification (Polyspace)

Continuous Code Verification Test

ndash Pre-defined compliance with Coding Standards

ndash Reduce Test Cycles by Fixing Bug early

Provide detailed information on what caused the defect

Tracing Code Analysis Results to Simulink Models

ndash Code Metrics and Monitor Software Quality

Progress of software quality

20

Automated Polyspace Code Verification with Jenkins

DEMO

2121

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

+ Tools

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

+ Tools

+ Tools+ Consulting

Productivity Improvement Dynamics

Speed Return on Investment in technology

Conclusion

22

QampA

Page 15: Establishing Development Process and Automation · : Daily build / Continuous integration builds The practice of each day doing software build of the latest version –Compiled to

15

Motivation

Daily build Continuous integration builds

The practice of each day doing software build of the latest version

ndash Compiled to ensure all required dependencies are present

ndash Build is the results of compiling and linking

ndash Particularly necessary in large organizations

ndash New bugs that shows up as a results of work done within the last day

16

Application Software

- Model Generated Code

PID+-

Basic Software

- Hand Written Code

Motivation

Daily build Continuous integration builds

HW amp

Device DriverS1

S2S3

Software amp

Algorithms

Binary and a2l file generation

Interface integration (Input Output and Parameters)

Early Detection through continuous integration builds

17

Build Automation with Jenkins

DEMO

18copy 2016 The MathWorks Inc

Automation of Polyspace Code Verification

19

Motivation

Code Verification (Polyspace)

Continuous Code Verification Test

ndash Pre-defined compliance with Coding Standards

ndash Reduce Test Cycles by Fixing Bug early

Provide detailed information on what caused the defect

Tracing Code Analysis Results to Simulink Models

ndash Code Metrics and Monitor Software Quality

Progress of software quality

20

Automated Polyspace Code Verification with Jenkins

DEMO

2121

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

+ Tools

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

+ Tools

+ Tools+ Consulting

Productivity Improvement Dynamics

Speed Return on Investment in technology

Conclusion

22

QampA

Page 16: Establishing Development Process and Automation · : Daily build / Continuous integration builds The practice of each day doing software build of the latest version –Compiled to

16

Application Software

- Model Generated Code

PID+-

Basic Software

- Hand Written Code

Motivation

Daily build Continuous integration builds

HW amp

Device DriverS1

S2S3

Software amp

Algorithms

Binary and a2l file generation

Interface integration (Input Output and Parameters)

Early Detection through continuous integration builds

17

Build Automation with Jenkins

DEMO

18copy 2016 The MathWorks Inc

Automation of Polyspace Code Verification

19

Motivation

Code Verification (Polyspace)

Continuous Code Verification Test

ndash Pre-defined compliance with Coding Standards

ndash Reduce Test Cycles by Fixing Bug early

Provide detailed information on what caused the defect

Tracing Code Analysis Results to Simulink Models

ndash Code Metrics and Monitor Software Quality

Progress of software quality

20

Automated Polyspace Code Verification with Jenkins

DEMO

2121

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

+ Tools

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

+ Tools

+ Tools+ Consulting

Productivity Improvement Dynamics

Speed Return on Investment in technology

Conclusion

22

QampA

Page 17: Establishing Development Process and Automation · : Daily build / Continuous integration builds The practice of each day doing software build of the latest version –Compiled to

17

Build Automation with Jenkins

DEMO

18copy 2016 The MathWorks Inc

Automation of Polyspace Code Verification

19

Motivation

Code Verification (Polyspace)

Continuous Code Verification Test

ndash Pre-defined compliance with Coding Standards

ndash Reduce Test Cycles by Fixing Bug early

Provide detailed information on what caused the defect

Tracing Code Analysis Results to Simulink Models

ndash Code Metrics and Monitor Software Quality

Progress of software quality

20

Automated Polyspace Code Verification with Jenkins

DEMO

2121

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

+ Tools

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

+ Tools

+ Tools+ Consulting

Productivity Improvement Dynamics

Speed Return on Investment in technology

Conclusion

22

QampA

Page 18: Establishing Development Process and Automation · : Daily build / Continuous integration builds The practice of each day doing software build of the latest version –Compiled to

18copy 2016 The MathWorks Inc

Automation of Polyspace Code Verification

19

Motivation

Code Verification (Polyspace)

Continuous Code Verification Test

ndash Pre-defined compliance with Coding Standards

ndash Reduce Test Cycles by Fixing Bug early

Provide detailed information on what caused the defect

Tracing Code Analysis Results to Simulink Models

ndash Code Metrics and Monitor Software Quality

Progress of software quality

20

Automated Polyspace Code Verification with Jenkins

DEMO

2121

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

+ Tools

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

+ Tools

+ Tools+ Consulting

Productivity Improvement Dynamics

Speed Return on Investment in technology

Conclusion

22

QampA

Page 19: Establishing Development Process and Automation · : Daily build / Continuous integration builds The practice of each day doing software build of the latest version –Compiled to

19

Motivation

Code Verification (Polyspace)

Continuous Code Verification Test

ndash Pre-defined compliance with Coding Standards

ndash Reduce Test Cycles by Fixing Bug early

Provide detailed information on what caused the defect

Tracing Code Analysis Results to Simulink Models

ndash Code Metrics and Monitor Software Quality

Progress of software quality

20

Automated Polyspace Code Verification with Jenkins

DEMO

2121

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

+ Tools

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

+ Tools

+ Tools+ Consulting

Productivity Improvement Dynamics

Speed Return on Investment in technology

Conclusion

22

QampA

Page 20: Establishing Development Process and Automation · : Daily build / Continuous integration builds The practice of each day doing software build of the latest version –Compiled to

20

Automated Polyspace Code Verification with Jenkins

DEMO

2121

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

+ Tools

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

+ Tools

+ Tools+ Consulting

Productivity Improvement Dynamics

Speed Return on Investment in technology

Conclusion

22

QampA

Page 21: Establishing Development Process and Automation · : Daily build / Continuous integration builds The practice of each day doing software build of the latest version –Compiled to

2121

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

+ Tools

Cu

mu

lati

ve V

alu

e

Time

Ideal(no cost)

Status Quo

+ Tools

+ Tools+ Consulting

Productivity Improvement Dynamics

Speed Return on Investment in technology

Conclusion

22

QampA

Page 22: Establishing Development Process and Automation · : Daily build / Continuous integration builds The practice of each day doing software build of the latest version –Compiled to

22

QampA