0% found this document useful (0 votes)
123 views20 pages

Model Based Design Presentation

The document discusses model-based design for high integrity software development. It presents an agenda covering development and verification of models and code. Key topics include: tracing models to requirements; conforming models to standards; verifying models against requirements through testing and formal methods; generating production code from models; tracing and linking code to models; conforming and verifying code against standards through static analysis and testing; and reusing test cases and performing processor-in-the-loop testing to verify object code. The document argues that model-based design can help detect errors earlier and reduce costs through requirements-driven development and verification.

Uploaded by

Krishna Kumar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
123 views20 pages

Model Based Design Presentation

The document discusses model-based design for high integrity software development. It presents an agenda covering development and verification of models and code. Key topics include: tracing models to requirements; conforming models to standards; verifying models against requirements through testing and formal methods; generating production code from models; tracing and linking code to models; conforming and verifying code against standards through static analysis and testing; and reusing test cases and performing processor-in-the-loop testing to verify object code. The document argues that model-based design can help detect errors earlier and reduce costs through requirements-driven development and verification.

Uploaded by

Krishna Kumar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 20

Model-Based Design for High Integrity

Software Development

Mike Anthony
Senior Application Engineer
MathWorks
Tucson, AZ USA

© 2013 The MathWorks, Inc.1


Model-Based Design for High Integrity Software Development
Agenda

Development and V&V of the Model Development and V&V of the Code
 Building a Model from Requirements  Production Code Generation
– Introduction to Simulink – Creating Data Objects
– Function Prototype Control
 Traceability of a Model to Requirements
– Using the Requirements Management Interface  Traceability of the Generated Code to the Model
– The Requirements Report – Code-to-Model Linking
– Model-to-Code Linking
 Conformance to Modeling Standards – Traceability Report & Traceability Matrix
– Using the Model Advisor
– Customizing the Model Advisor  Conformance to Coding Standards & Code Verification
– Model Advisor Report – PolySpace
 MISRA-C Compliance
 Verification of the Model against Requirements  Proving the Absence of Runtime Errors
– Requirements-Based Testing & Report Generation
– Formal Methods Verification  Verification of the Source Code
– Automating Code Reviews with Simulink Code
Inspector

 Verification of the Object Code


– Test Case reuse
– SIL/PIL Testing
– Code Coverage

2
Why did we miss our deadline?

Reasons for late projects, as reported by Venture Development Corporation.


Source: Embedded Software Strategic Market Intelligence report, Volume 4, December 2007, VDC.
Note: Percentages sum to over 100% due to multiple responses.
3
Minimize Costs by Detecting Errors Earlier

“…each delay in the detection and correction of a


design problem makes it an order of magnitude more
expensive to fix…”
Clive Maxfield and Kuhoo Goyal
“EDA: Where Electronics Begins”
TechBites Interactive, October 1, 2001
ISBN: 0971406308] 4
62% Cost Savings

Total Savings $3,720,000


Total
$1,500,000 $592,000
Investments
ROI 528%
MBD Dev Costs

$1,000,000
Trad Dev Costs

$500,000 Total Savings $3,720,000


Total
$592,000
Investments
ROI 528%
$0
Requirements Design Coding Analysis Testing

5
Methods for Verification and Validation
Verification: Did I do the design right?
Validation: Did I do the right design?

 Traceability
– Requirements to model and code
– Model to code
 Modeling and Coding Standards
– Modeling standards checking
– Coding standards checking
 Testing
– Model testing in simulation
– Processor In the loop
 Proving
– Proving design properties
– Proving code correctness

6
Workflow Example
Validate

Requirements

Trace Verify
Conformance
Verify

Design
Trace

Conformance

Source Code Verify Verify

Object Code

7
Workflow Example * DO-178C Qualifiable Tool
Verify
Validate EC: PIL
Simulink Report Generator
Trace Requirements PS Code Prover*
SLVNV: RMI Code Coverage
SLRG: SDD * Simulink Verify
Tool
Conformance Verify
Stateflow
SLVNV: DO-178C/DO-331 Simulink Report
SLRG: SDD *
Checks * Generator
Trace SLVNV: Model Coverage *
Model Simulink Design Verifier
Embedded Coder
Simulink Code Inspector*
Conformance Verify
Embedded Coder PS Bug Finder: EC: PIL
MISRA-C Checks* Simulink Report Generator
Abbreviations
SL: Simulink PS Code Prover*
SLVNV: Simulink Verification
and Validation
Source Code Verify Code Coverage
RMI: Requirements Simulink Code Inspector* Tool
Management Interface PS Bug Finder*
SDD: System Design
Description Compiler/IDE PS Code Prover*
SLDV: Simulink Design
Verifier
SLRG: Simulink Report Object Code
Generator
PS: Polyspace
RTE: Run-Time Error
EC: Embedded Coder
PIL: Processor-in-the-Loop 1
Model-Based Design Maturity
Modeling & Simulation Adoption

Requirements-Based Model Verification & System Verification & Fully-leveraged


V&V Validation Validation Model-Based Design
(requirements-based (simulation-based (re-use of (requirements-based
algorithm development analysis of requirements-based design, development,
and testing, requirements) tests and results and deployment of
requirements comparisons between production
modeling) simulation and real- hardware/software)
time environments)
System Simulation System Modeling System Prototyping Model-Based
(algorithm models and (closed-loop simulation (real-time closed-loop Development
plant models) of algorithms and plant simulation of (real-time closed-loop
models) algorithms and/or plant system simulation with
models) production algorithms
on target hardware)

Algorithm Modeling Design Modeling Design Prototyping Model-Based


(algorithm models, no (open-loop simulation (real-time open-loop Programming
plant models) of algorithms) simulation of (automatic production
algorithms) code generation from
algorithm models)

Simulation Real-Time Testing Production

Code Generation Adoption

9
Septentrio Streamlines DO-178B
Certification with MATLAB and Simulink

Challenge
Obtain DO-178B certification for a GNSS-based landing
system for precision aviation applications
Solution Simulink model of part of the AiRx2 system.

Use Model-Based Design with MATLAB and Simulink to


trace requirements, architect system components,
simulate the design, and generate and verify source code “Model-Based Design enabled us
Results to streamline the certification
 Design test cases reused on generated C source process by tracking requirements,
code verifying the design using
 Models verified via simulation, ensuring virtually simulation, and maintaining the
bug-free code
system model as the single source
 Key SOI-1 certification milestone achieved
of truth throughout development.”
Jan D'Espallier
Septentrio

Link to article

10
Eurocopter Accelerates Development
of DO-178B Certified Software with
Model-Based Design

Challenge
Speed the development, validation, and verification of The Eurocopter EC130 helicopter.
DO-178B certified helicopter flight software
Solution “We use our system design
Use Model-Based Design to model the system design model in Simulink for ARP4754 to
and software design, and to generate flight code establish stable, objective
Results requirements. We save time by
 Software testing time cut by two-thirds using the model as the basis for
 Requirements stabilized earlier our software design model for
 Certified flight software automatically generated DO-178—from which we generate
flight code—and reusing
validation tests for software
verification.”
Ronald Blanrue
Eurocopter
Link to user story

11
Airbus Develops Fuel Management System
for the A380 Using Model-Based Design

Challenge Airbus A380, the world’s largest


Develop a controller for the Airbus A380 fuel management commercial aircraft.

system
Solution
Use MATLAB, Simulink, and Stateflow for Model-Based “Model-Based Design gave us
Design to model and simulate the control logic, advanced visibility into the
communicate the functional specification, and accelerate functional design of the system.
the development of simulators
We also completed requirements
Results
validation earlier than was
 Months of development time eliminated
previously possible and simulated
 Models reused throughout development
multiple simultaneous component
 Additional complexity handled without staff increases
failures, so we know what will
happen and have confidence that
the control logic will manage it.”
Christopher Slack
Airbus
Link to user story

12
MathWorks Services & Support

13
Support and Community

14
MATLAB Central

 Open exchange for the MATLAB and


Simulink user community
 662,000 visits per month
 File Exchange
– Upload/download free files including MATLAB
code, Simulink models, and documents
– Rate files, comment, and ask questions
– More than 9,000 contributed files, 400
submissions per month, 25,500 downloads per
day
 Newsgroup
– Web forum and newsgroup for technical
discussions about MATLAB and Simulink
– 200 posts per day
 Blogs
– Read posts from key MathWorks developers
who design and build the products
– Join the conversation at blogs.mathworks.com
Based on February 2009 data www.mathworks.com/matlabcentral 15
Technical Support

Resources
 Over 100 support engineers
– All with MS degrees (EE, ME, CS)
– Local support in North America,
Europe, and Asia
 Comprehensive, product-specific Web
support resources

High customer satisfaction  


 95% of calls answered
within three minutes
 
 70% of issues resolved
within 24 hours 
 80% of customers surveyed
rate satisfaction at 80-100%

www.mathworks.com/support 16
Training

 Three ways to get training


– Public training
 Offered throughout the world
 Schedule and course information at www.mathworks.com/training
– Onsite training
 Bring training to your site, with course customization available
– Web-based training
 Instructor-led e-learning
 Train at work or at home, with flexible dates and times

 Example course topics


– Introductory and intermediate training on MATLAB, Simulink, Stateflow,
and Real-Time Workshop
– Specialized courses in control design, signal processing, parallel computing,
code generation, communications, financial analysis, and other areas

www.mathworks.com/training 17
Consulting

 Engineering expertise and deep product knowledge, specializing


in:

– Application development using MATLAB


– Model-Based Design using Simulink and Stateflow
– Embedded systems development
– Enterprise-wide integration of MathWorks products into engineering
process and systems
– Jumpstart services for a fast, smooth transition to MathWorks products

 Project-based services for a growing number of industries,


including aerospace and defense, automotive, communications,
power and marine, and financial services

www.mathworks.com/consulting 18
Partner Program

More than 300 add-on products and services that


complement and extend MathWorks products:

– Specialized third-party toolboxes for MATLAB


– Interfaces to third-party software and hardware products
– Specialized training courses and consulting services
– System integrators and suppliers that incorporate
MathWorks products

www.mathworks.com/connections 19
We want to hear from you –
demonstrate how MathWorks products support
innovation and improve development process
within your organization

We host dozens of events annually

If you would like to


 Present at a MathWorks seminar or symposium
 Write a white paper
 Develop a user story

Sign up
At the registration table
Fill out form

20

You might also like