SlideShare a Scribd company logo
1 of 40
Download to read offline
The Economics of Tool Qualification
2ndTool Qualification Symposium, Munich,April 2014!
!
Matteo Bordin,AdaCore, bordin@adacore.com
My personal feelings towards tool qualification
GNATcheck, DO-178BVer.Tool,!
Airbus Military,A400M, 2010
GNAT Pro Compiler, EN-50128T3,!
CERTIFER, 2014
GNATcoverage DO-178BVer.Tool,!
Thales Avionics,A350xwb, 2010
CodePeer DO-178BVer.Tool,!
Utas UK,A400M, 2014
Src-to-obj traceability!
Barco, MOSArt, 2010
CodePeer DO-178BVer.Tool,!
Utas UK,A400M, 2014
Runtime, DO-178B level A!
GE, 787, 2009
Runtime, ECSS-E-40 level A!
Astrium ST, Sentinel, 2010
Runtime, EN-50128 SIL 3/4!
CERTIFER, 2014
GNATtest, EN-50-128T2,!
CERTIFIER, 2014
http://en.wikipedia.org/wiki/Torture
WHY?
The Final User Forgets That Tools are
Components-Off-The-Shelf
7
# of features
cost User Validation Cost
Tool Development Cost
Tool Qualification Cost
Never underestimate tool validation!
and deployment costs!
Example: add a feature to a Code Generator!
DO-178C TQL1 style
8
Tool Developer Activities
1 new command line option!
3 + N new requirements (N »!100)!
N new testcases!
500 SLOC to develop, trace and review! ! !
Review qualified interface!
Re-execute all tests and review results !
Re-perform QA!
...
Tool User Activities
Review and asses new requirements!
Review new tool qualified interface!
Update internal procedures!
Develop, review and validate new use cases!
...!
!
“We need a code generation switch called --wrap-state !
that encapsulates persistent variables into a struct .”
Tool User
Align Stakeholders’ Interests
9
“We need more formal tools!”
“We need tools that are cheaper to develop and qualify!”
“We need to understand how tools work and assess their qualifications!”
“We need better tools that can be used by any engineer!”
QA Manager
Tool Manager
Tool Provider
Academic
We Stop Thinking in terms of ROI
10
“Tool Qualification is always a pointless waste !
of time and resources!”
“I need a Qualified Tool, no matter what !
(even if I am not gaining certification credit from it)!”
Tool Provider
Tool User
Main Sources of Waste in Tool
Qualification
• User Forgets thatTools are COTS!
• Uncontrolled Innovation: non-aligned interests!
• We Forget about ROI
11
The Economic Engine of
Tool Qualification
Where the Profit is Coming From!
a Tool Provider Perspective
AdaCore Total
$$$
AdaCore Qual. Kits AdaCore Income related !
to Qualification/Certification
Revenue
Costs
Profit
Costs
Revenue
Loss
N.B. columns size is not a precise measurement
Revenue
Costs
Where the Profit is Coming From!
a Tool Provider Perspective
14
Let’s be clear - Qualification Kits are quite costly !
to produce and generate very low revenue!
A Tool Provider cannot scale just by selling them
They bring very significant added value to customers!
And it is not their core business to produce and maintain them
Qualification Kits are true enablers for selling other products!
We need always up-to-date qualification kits
The Cost of Tool Qualification!
a Tool Provider Perspective
15
time
qualification!
cost
Wishful thinking expectation -
invest upfront and then the “big freeze”
Hard to face reality -
a COTS tool evolves, and qualification
evidence needs to follow
The Need for a New Focus !
from purely technical to operational excellence
16
Today: the “Big Freeze”: invest upfront on tech and qualification kit, !
followed by slow, on-demand, evolution
“So you found a bug in our qualified tool? !
Well, here you have a workaround: just do not use that feature!”
Tomorrow: a continuous, lean improvement of tool capabilities !
and qualification evidence
“So you found a bug in our qualified tool? !
Well, here you have a corrective patch plus an impact analysis report!”
INCREASING operational excellence
Increasing operational
excellence
• Align interests by choosing the right technology!
• Decrease costs by using Open-Source
Technologies!
• Improve your process by doing Lean & Agile
Qualification
18
Choosing the right technology
Aligning interests!
Case study: a code generator, to be qualified as per DO-178C TQL1
qualification !
cost!
development efficiency
Acceleo
Python
Java
C
Ada
Coq
High-!
confidence
Medium-!
confidence
Low-!
confidence
TOOL USER INTEREST
TOOL DEVELOPER INTEREST
Using Open/Free Technologies
A little bit of terminology…
Free software
Software distributed with a license that allows to !
study, change and redistribute its source code!
!
Open Source Community
A way to manage the development of !
software with multiple stakeholders!
!
The antonym of Free is “proprietary” not “commercial”
AdaCore sells Commercial, Free Software, QualifiableTools
AdaCore Process for Open Source
GCC community
Contributors
GDB community
Another community
…
Products
AdaCore Engineers
Aggregation, Productization,
Quality, Qualification, Support
Another Organization
AdaCore Product!
Managers
quality “buffer”
quality “buffer”
quality “buffer”…
24
Avionics DO-178B/C Railway EN-50128 Space ECSS-E-ST-40C
Alstom!
Ansaldo!
Invesys!
Siemens
Airbus!
Eurocopter!
General Electric!
Honeywell!
Rockwell Collins!
Thales
Astrium!
Thales Alenia Space
Runtime: DO-178B/C level A, EN-50128 SIL3/4, ECSS-E-ST-40C level B!
Compiler: DO-178B/C level A Src-to-obj traceability, EN-50128 T3!
Verification tools: DO-178B/C, EN-50128 T2
Qualified, Commercial Free Software is Possible
Benefits of Qualified, Commercial Free Software
Invests on products, not core technology!
Disrupts technology AND business model!
Innovate, always!
Track public repository!
Entry barrier is product/support quality, not vendor lock in!
Promote long-term clients engagement
No vendor lock in!
Free access to sources (certif. / qualif. )!
Long-term guarantee of tool sustainability!
Guarantee of controlled innovation
Industrial UsersTool Provider
The software distribution license (free or not) !
has no impact on tool qualification!
The use of open-source technology requires an investment in !
“qualifying” external contribution anyway!
Safety-related qualification is “just” another step in the same direction
Lean & Agile Tool Qualification
AdaCore Main Problem
• Two releases per year (major + minor)!
• Customers on both legacy (frozen toolchain) and future programs!
• Free SoftwareVendors: need to innovate to retain customers!
• Including qualification material
27
Lean & Agile Development
Backlog
Requirements &!
Test cases
Specification Review!
& Implementation
In Progress
Review Done
Test-driven development
Requirements and tests are developed within !
the same process by the same person. !
No feature is ever implemented if there is not a test for it.
Incremental development
At any time, multiple features are “In Progress”, at different steps!
(minimize backlog and work-in-progress)
Product Owner
A single person is in charge of both
long term product strategy and
day-to-day technical execution
Developers
Every developer is involved in both specification, !
implementation and review stages.
Highly Automated Quality Assurance and Configuration Management
Iterative development
Features goes back-and-forth between specification!
and implementation until an agreement is found
Measure
Continuous
performance!
measurement
CHALLENGES AHEAD a tool provider perspective
Challenges Ahead!
a Tool Provider Perspective
• Convergence of Safety Standards!
• Effective Qualification of DevelopmentToolchains!
• Effective Qualification of FormalTools !
• Support for Semi-Frozen Branches of QualifiedTools
30
Convergence of safety standards
DO-178C EN-50128 ECSS-Q80*
Tool Specifications
Tool Operational
Requirements
Can be a user guide,
requirements, … NO
ToolValidation
Requirement-driven!
testing
Can be testing, proven in
use, … NO
Configuration Management!
(Tool developer side) YES ISO-9000 or similar NO
Quality Assurance!
(Tool developer side) YES ISO-9000 or similar NO
Qualification entity FAA/EASA Independent Assessor ESA
Impact of category on
qualification cost +++ + zero
*Only de jure exception: automatic code generators. De facto, even code generators are not qualified.
Convergence of safety standards!
Example: Compiler Qualification
32
• In DO-178, qualifying development tools is so hard that qualifying a
compiler would have been impossible!
• Compiler qualification is in fact not required !!
• CompCert is a great tool but it is not qualified accordingly to DO-178 !
• In EN-50128, qualifying a compiler as aT3Tool takes a few weeks at most!
• As long as you know what you are doing !
Convergence of safety standards
• DO-330 is the most comprehensive tool qualification document!
• More emphasis on error impact analysis and mitigation techniques !
• Need to correlate tool category, certification credit and qualification
costs (tool qualification ROI)!
• Increasingly complex tools: need for toolchain qualification?
Camus et al.: “Tool Qualification in Multiple Domains: Status and Perspectives”, ERTS 2014
GNAT Pro Model Compiler:!
a complete, qualified model verification !
and compilation toolchain for Simulink®
34
See you at AdaCore booth for a !
preview of qualification material!Ada & MISRA C
Proof of absence of run-time errors !
& safety/functional properties
Qualified Code Generator
Validated Compiler
Effective Qualification Of Formal Tools
Domain Standard Last Version
FM for
specification
FM for
implementation
Avionics
DO-178,
DO-333
2012 Applicable Applicable
Automotive ISO-26262 2011 Applicable Applicable
Medical IEC 62304 2006 Recommended Recommended
Nuclear IEC 60880 2006 Encouraged Applicable
Railway EN 50128 2011 Applicable Recommended
Space ECSS-Q-ST-80C 2009 Applicable Applicable
Effective Qualification Of Formal Tools
• They offer 100% guarantee - as long as assumptions are verified!!
• How to ensure !
• Model is representative/adequate!
• Assumptions on environment/integration are verified!
• Several methods/tools: a common approach for tool qualification?
Working group on “Theorem Proving in Certification” since 2010!
Draft document soon available!
Join tpcert@googlegroups.com
Semi-Frozen Branches of Qualified Tools
37
Qualified Tool Release History
ver. X.0 ver. X.1 ver. X.2 ver.Y.0 ver.Y.1ver.Y.1
Qualified Tool User Project Lifecycle
Tool User Freezes Development Environment
Critical Bug In the Hardware!
Critical Issue In the QualifiedTool!
…
2 years later…
Semi-Frozen Branches of QualifiedTools: a service providing critical
patches to frozen product versions with detailed impact analysis
TAKE HOME messages
Take Home Messages
• Tool Qualification has a cost
• For both the tool provider AND the tool user!
• This cost is exponential w.r.t. the complexity of the tool!
• Think in terms of ROI when qualifying a tool
• Tool provider: “Is this qualification kit an enabler?”!
• Tool user: “Am I getting significant certification credit?”
39
Take Home Messages
• Qualification of Open-Source Tools
• Distribution license per se has no impact on qualification!
• You need to beVERY organized to collaborate with open communities!
• Your added value is in integration, validation, quality, support!
• Getting Things Done
• A lot to learn from modern development methods!
• We cannot do Continuous Deployment, but we can do DevOps, Lean, Agile
40
Take Home Messages
• Convergence of Safety Standards
• A direct relation betweenTool Category,Tool Qualification Cost and Certification
Credit!
• We, as a community, need to measure our ROI!
• Challenges Ahead
• Effective Qualification of DevelopmentToolchains: the GNAT Pro Model Compiler!
• Support semi-frozen branches of qualified tools
41
thanks!
Matteo Bordin, bordin@adacore.com

More Related Content

What's hot

What is Localization Testing?
What is Localization Testing?What is Localization Testing?
What is Localization Testing?QA InfoTech
 
Vikraman Balasubramanian
Vikraman BalasubramanianVikraman Balasubramanian
Vikraman BalasubramanianVikraman Balu
 
AdaCore Paris Tech Day 2016: Jamie Ayre - Market Perspective
AdaCore Paris Tech Day 2016: Jamie Ayre - Market PerspectiveAdaCore Paris Tech Day 2016: Jamie Ayre - Market Perspective
AdaCore Paris Tech Day 2016: Jamie Ayre - Market Perspectivejamieayre
 
Resume_Prabhu Kumar
Resume_Prabhu KumarResume_Prabhu Kumar
Resume_Prabhu KumarPrabhu Kumar
 

What's hot (7)

What is Localization Testing?
What is Localization Testing?What is Localization Testing?
What is Localization Testing?
 
Vikraman Balasubramanian
Vikraman BalasubramanianVikraman Balasubramanian
Vikraman Balasubramanian
 
Regression Suite Optimization
Regression Suite OptimizationRegression Suite Optimization
Regression Suite Optimization
 
AdaCore Paris Tech Day 2016: Jamie Ayre - Market Perspective
AdaCore Paris Tech Day 2016: Jamie Ayre - Market PerspectiveAdaCore Paris Tech Day 2016: Jamie Ayre - Market Perspective
AdaCore Paris Tech Day 2016: Jamie Ayre - Market Perspective
 
Resume_Prabhu Kumar
Resume_Prabhu KumarResume_Prabhu Kumar
Resume_Prabhu Kumar
 
Vandana B
Vandana BVandana B
Vandana B
 
CAN FD Stack Introduction & Related FAQ
CAN FD Stack Introduction & Related FAQCAN FD Stack Introduction & Related FAQ
CAN FD Stack Introduction & Related FAQ
 

Viewers also liked

Viewers also liked (6)

QGen GNAT Industrial User Day
QGen GNAT Industrial User DayQGen GNAT Industrial User Day
QGen GNAT Industrial User Day
 
Writingafairytale
WritingafairytaleWritingafairytale
Writingafairytale
 
Project P
Project PProject P
Project P
 
Project P Open Workshop
Project P Open WorkshopProject P Open Workshop
Project P Open Workshop
 
Shrek
ShrekShrek
Shrek
 
Writing a diary
Writing a diaryWriting a diary
Writing a diary
 

Similar to Matteo bordin tqs_2014_web

Crafting a Cloud Native API Platform to Accelerate Your Platform Maturity - B...
Crafting a Cloud Native API Platform to Accelerate Your Platform Maturity - B...Crafting a Cloud Native API Platform to Accelerate Your Platform Maturity - B...
Crafting a Cloud Native API Platform to Accelerate Your Platform Maturity - B...Nordic APIs
 
Multilanguage Pipelines with Jenkins, Docker and Kubernetes (Commit Conf 2018)
Multilanguage Pipelines with Jenkins, Docker and Kubernetes (Commit Conf 2018)Multilanguage Pipelines with Jenkins, Docker and Kubernetes (Commit Conf 2018)
Multilanguage Pipelines with Jenkins, Docker and Kubernetes (Commit Conf 2018)Jorge Hidalgo
 
Soirée du Test Logiciel - Présentation de Kiuwan (Jack ABDO)
Soirée du Test Logiciel - Présentation de Kiuwan (Jack ABDO)Soirée du Test Logiciel - Présentation de Kiuwan (Jack ABDO)
Soirée du Test Logiciel - Présentation de Kiuwan (Jack ABDO)TelecomValley
 
Platform Engineering - a 360 degree view
Platform Engineering - a 360 degree viewPlatform Engineering - a 360 degree view
Platform Engineering - a 360 degree viewGiulio Roggero
 
Build the Right Regression Suite with Behavior-Driven Testing
Build the Right Regression Suite with Behavior-Driven TestingBuild the Right Regression Suite with Behavior-Driven Testing
Build the Right Regression Suite with Behavior-Driven TestingTechWell
 
Semiconductor Design Community
Semiconductor Design CommunitySemiconductor Design Community
Semiconductor Design CommunityAndre van de Geijn
 
PMI-ACP Lesson 06 Quality
PMI-ACP Lesson 06 QualityPMI-ACP Lesson 06 Quality
PMI-ACP Lesson 06 QualityThanh Nguyen
 
Failure is an Option: Scaling Resilient Feature Delivery
Failure is an Option: Scaling Resilient Feature DeliveryFailure is an Option: Scaling Resilient Feature Delivery
Failure is an Option: Scaling Resilient Feature DeliveryOptimizely
 
Content Strategy and Developer Engagement for DevPortals
Content Strategy and Developer Engagement for DevPortalsContent Strategy and Developer Engagement for DevPortals
Content Strategy and Developer Engagement for DevPortalsAxway
 
kirusanthan_Automotive_validation_engineer_4Year_experince
kirusanthan_Automotive_validation_engineer_4Year_experincekirusanthan_Automotive_validation_engineer_4Year_experince
kirusanthan_Automotive_validation_engineer_4Year_experinceGiri Kirush
 
Open-DO: Towards a Lean Approach for Certification (Cyrille Comar)
Open-DO: Towards a Lean Approach for Certification  (Cyrille Comar)Open-DO: Towards a Lean Approach for Certification  (Cyrille Comar)
Open-DO: Towards a Lean Approach for Certification (Cyrille Comar)AdaCore
 
Rapise Overview Presentation (2021)
Rapise Overview Presentation (2021)Rapise Overview Presentation (2021)
Rapise Overview Presentation (2021)Inflectra
 
Enhancing Your Test Automation Scenario Coverage with Selenium - QA or the Hi...
Enhancing Your Test Automation Scenario Coverage with Selenium - QA or the Hi...Enhancing Your Test Automation Scenario Coverage with Selenium - QA or the Hi...
Enhancing Your Test Automation Scenario Coverage with Selenium - QA or the Hi...Perfecto by Perforce
 
Technology and Digital Platform | 2019 partner summit
Technology and Digital Platform | 2019 partner summitTechnology and Digital Platform | 2019 partner summit
Technology and Digital Platform | 2019 partner summitAndrew Kumar
 
Elevating Developer Experiences with AI-Powered API Testing & Documentation
Elevating Developer Experiences with AI-Powered API Testing & DocumentationElevating Developer Experiences with AI-Powered API Testing & Documentation
Elevating Developer Experiences with AI-Powered API Testing & DocumentationPostman
 
Requirements Engineering: A Practicum
Requirements Engineering: A PracticumRequirements Engineering: A Practicum
Requirements Engineering: A PracticumTechWell
 

Similar to Matteo bordin tqs_2014_web (20)

Crafting a Cloud Native API Platform to Accelerate Your Platform Maturity - B...
Crafting a Cloud Native API Platform to Accelerate Your Platform Maturity - B...Crafting a Cloud Native API Platform to Accelerate Your Platform Maturity - B...
Crafting a Cloud Native API Platform to Accelerate Your Platform Maturity - B...
 
Multilanguage Pipelines with Jenkins, Docker and Kubernetes (Commit Conf 2018)
Multilanguage Pipelines with Jenkins, Docker and Kubernetes (Commit Conf 2018)Multilanguage Pipelines with Jenkins, Docker and Kubernetes (Commit Conf 2018)
Multilanguage Pipelines with Jenkins, Docker and Kubernetes (Commit Conf 2018)
 
Soirée du Test Logiciel - Présentation de Kiuwan (Jack ABDO)
Soirée du Test Logiciel - Présentation de Kiuwan (Jack ABDO)Soirée du Test Logiciel - Présentation de Kiuwan (Jack ABDO)
Soirée du Test Logiciel - Présentation de Kiuwan (Jack ABDO)
 
Platform Engineering - a 360 degree view
Platform Engineering - a 360 degree viewPlatform Engineering - a 360 degree view
Platform Engineering - a 360 degree view
 
Build the Right Regression Suite with Behavior-Driven Testing
Build the Right Regression Suite with Behavior-Driven TestingBuild the Right Regression Suite with Behavior-Driven Testing
Build the Right Regression Suite with Behavior-Driven Testing
 
Technical Debt.pptx
Technical Debt.pptxTechnical Debt.pptx
Technical Debt.pptx
 
Semiconductor Design Community
Semiconductor Design CommunitySemiconductor Design Community
Semiconductor Design Community
 
PMI-ACP Lesson 06 Quality
PMI-ACP Lesson 06 QualityPMI-ACP Lesson 06 Quality
PMI-ACP Lesson 06 Quality
 
Failure is an Option: Scaling Resilient Feature Delivery
Failure is an Option: Scaling Resilient Feature DeliveryFailure is an Option: Scaling Resilient Feature Delivery
Failure is an Option: Scaling Resilient Feature Delivery
 
Content Strategy and Developer Engagement for DevPortals
Content Strategy and Developer Engagement for DevPortalsContent Strategy and Developer Engagement for DevPortals
Content Strategy and Developer Engagement for DevPortals
 
kirusanthan_Automotive_validation_engineer_4Year_experince
kirusanthan_Automotive_validation_engineer_4Year_experincekirusanthan_Automotive_validation_engineer_4Year_experince
kirusanthan_Automotive_validation_engineer_4Year_experince
 
Abhijit_Testing
Abhijit_TestingAbhijit_Testing
Abhijit_Testing
 
Open-DO: Towards a Lean Approach for Certification (Cyrille Comar)
Open-DO: Towards a Lean Approach for Certification  (Cyrille Comar)Open-DO: Towards a Lean Approach for Certification  (Cyrille Comar)
Open-DO: Towards a Lean Approach for Certification (Cyrille Comar)
 
Rapise Overview Presentation (2021)
Rapise Overview Presentation (2021)Rapise Overview Presentation (2021)
Rapise Overview Presentation (2021)
 
Enhancing Your Test Automation Scenario Coverage with Selenium - QA or the Hi...
Enhancing Your Test Automation Scenario Coverage with Selenium - QA or the Hi...Enhancing Your Test Automation Scenario Coverage with Selenium - QA or the Hi...
Enhancing Your Test Automation Scenario Coverage with Selenium - QA or the Hi...
 
Logan Bob
Logan BobLogan Bob
Logan Bob
 
codEnforcer 2013
codEnforcer 2013codEnforcer 2013
codEnforcer 2013
 
Technology and Digital Platform | 2019 partner summit
Technology and Digital Platform | 2019 partner summitTechnology and Digital Platform | 2019 partner summit
Technology and Digital Platform | 2019 partner summit
 
Elevating Developer Experiences with AI-Powered API Testing & Documentation
Elevating Developer Experiences with AI-Powered API Testing & DocumentationElevating Developer Experiences with AI-Powered API Testing & Documentation
Elevating Developer Experiences with AI-Powered API Testing & Documentation
 
Requirements Engineering: A Practicum
Requirements Engineering: A PracticumRequirements Engineering: A Practicum
Requirements Engineering: A Practicum
 

Recently uploaded

Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsArshad QA
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comFatema Valibhai
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...kellynguyen01
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerThousandEyes
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AIABDERRAOUF MEHENNI
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxbodapatigopi8531
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsAndolasoft Inc
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...OnePlan Solutions
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)OPEN KNOWLEDGE GmbH
 
Test Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendTest Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendArshad QA
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...gurkirankumar98700
 
Active Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfActive Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfCionsystems
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfkalichargn70th171
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfjoe51371421
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideChristina Lin
 

Recently uploaded (20)

Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
Exploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the ProcessExploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the Process
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptx
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)
 
Test Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendTest Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and Backend
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
 
Active Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfActive Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdf
 
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdf
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
 

Matteo bordin tqs_2014_web

  • 1. The Economics of Tool Qualification 2ndTool Qualification Symposium, Munich,April 2014! ! Matteo Bordin,AdaCore, bordin@adacore.com
  • 2. My personal feelings towards tool qualification
  • 3. GNATcheck, DO-178BVer.Tool,! Airbus Military,A400M, 2010 GNAT Pro Compiler, EN-50128T3,! CERTIFER, 2014 GNATcoverage DO-178BVer.Tool,! Thales Avionics,A350xwb, 2010 CodePeer DO-178BVer.Tool,! Utas UK,A400M, 2014 Src-to-obj traceability! Barco, MOSArt, 2010 CodePeer DO-178BVer.Tool,! Utas UK,A400M, 2014 Runtime, DO-178B level A! GE, 787, 2009 Runtime, ECSS-E-40 level A! Astrium ST, Sentinel, 2010 Runtime, EN-50128 SIL 3/4! CERTIFER, 2014 GNATtest, EN-50-128T2,! CERTIFIER, 2014 http://en.wikipedia.org/wiki/Torture
  • 5. The Final User Forgets That Tools are Components-Off-The-Shelf 7 # of features cost User Validation Cost Tool Development Cost Tool Qualification Cost Never underestimate tool validation! and deployment costs!
  • 6. Example: add a feature to a Code Generator! DO-178C TQL1 style 8 Tool Developer Activities 1 new command line option! 3 + N new requirements (N »!100)! N new testcases! 500 SLOC to develop, trace and review! ! ! Review qualified interface! Re-execute all tests and review results ! Re-perform QA! ... Tool User Activities Review and asses new requirements! Review new tool qualified interface! Update internal procedures! Develop, review and validate new use cases! ...! ! “We need a code generation switch called --wrap-state ! that encapsulates persistent variables into a struct .” Tool User
  • 7. Align Stakeholders’ Interests 9 “We need more formal tools!” “We need tools that are cheaper to develop and qualify!” “We need to understand how tools work and assess their qualifications!” “We need better tools that can be used by any engineer!” QA Manager Tool Manager Tool Provider Academic
  • 8. We Stop Thinking in terms of ROI 10 “Tool Qualification is always a pointless waste ! of time and resources!” “I need a Qualified Tool, no matter what ! (even if I am not gaining certification credit from it)!” Tool Provider Tool User
  • 9. Main Sources of Waste in Tool Qualification • User Forgets thatTools are COTS! • Uncontrolled Innovation: non-aligned interests! • We Forget about ROI 11
  • 10. The Economic Engine of Tool Qualification
  • 11. Where the Profit is Coming From! a Tool Provider Perspective AdaCore Total $$$ AdaCore Qual. Kits AdaCore Income related ! to Qualification/Certification Revenue Costs Profit Costs Revenue Loss N.B. columns size is not a precise measurement Revenue Costs
  • 12. Where the Profit is Coming From! a Tool Provider Perspective 14 Let’s be clear - Qualification Kits are quite costly ! to produce and generate very low revenue! A Tool Provider cannot scale just by selling them They bring very significant added value to customers! And it is not their core business to produce and maintain them Qualification Kits are true enablers for selling other products! We need always up-to-date qualification kits
  • 13. The Cost of Tool Qualification! a Tool Provider Perspective 15 time qualification! cost Wishful thinking expectation - invest upfront and then the “big freeze” Hard to face reality - a COTS tool evolves, and qualification evidence needs to follow
  • 14. The Need for a New Focus ! from purely technical to operational excellence 16 Today: the “Big Freeze”: invest upfront on tech and qualification kit, ! followed by slow, on-demand, evolution “So you found a bug in our qualified tool? ! Well, here you have a workaround: just do not use that feature!” Tomorrow: a continuous, lean improvement of tool capabilities ! and qualification evidence “So you found a bug in our qualified tool? ! Well, here you have a corrective patch plus an impact analysis report!”
  • 16. Increasing operational excellence • Align interests by choosing the right technology! • Decrease costs by using Open-Source Technologies! • Improve your process by doing Lean & Agile Qualification 18
  • 17. Choosing the right technology
  • 18. Aligning interests! Case study: a code generator, to be qualified as per DO-178C TQL1 qualification ! cost! development efficiency Acceleo Python Java C Ada Coq High-! confidence Medium-! confidence Low-! confidence TOOL USER INTEREST TOOL DEVELOPER INTEREST
  • 20. A little bit of terminology… Free software Software distributed with a license that allows to ! study, change and redistribute its source code! ! Open Source Community A way to manage the development of ! software with multiple stakeholders! ! The antonym of Free is “proprietary” not “commercial” AdaCore sells Commercial, Free Software, QualifiableTools
  • 21. AdaCore Process for Open Source GCC community Contributors GDB community Another community … Products AdaCore Engineers Aggregation, Productization, Quality, Qualification, Support Another Organization AdaCore Product! Managers quality “buffer” quality “buffer” quality “buffer”…
  • 22. 24 Avionics DO-178B/C Railway EN-50128 Space ECSS-E-ST-40C Alstom! Ansaldo! Invesys! Siemens Airbus! Eurocopter! General Electric! Honeywell! Rockwell Collins! Thales Astrium! Thales Alenia Space Runtime: DO-178B/C level A, EN-50128 SIL3/4, ECSS-E-ST-40C level B! Compiler: DO-178B/C level A Src-to-obj traceability, EN-50128 T3! Verification tools: DO-178B/C, EN-50128 T2 Qualified, Commercial Free Software is Possible
  • 23. Benefits of Qualified, Commercial Free Software Invests on products, not core technology! Disrupts technology AND business model! Innovate, always! Track public repository! Entry barrier is product/support quality, not vendor lock in! Promote long-term clients engagement No vendor lock in! Free access to sources (certif. / qualif. )! Long-term guarantee of tool sustainability! Guarantee of controlled innovation Industrial UsersTool Provider The software distribution license (free or not) ! has no impact on tool qualification! The use of open-source technology requires an investment in ! “qualifying” external contribution anyway! Safety-related qualification is “just” another step in the same direction
  • 24. Lean & Agile Tool Qualification
  • 25. AdaCore Main Problem • Two releases per year (major + minor)! • Customers on both legacy (frozen toolchain) and future programs! • Free SoftwareVendors: need to innovate to retain customers! • Including qualification material 27
  • 26. Lean & Agile Development Backlog Requirements &! Test cases Specification Review! & Implementation In Progress Review Done Test-driven development Requirements and tests are developed within ! the same process by the same person. ! No feature is ever implemented if there is not a test for it. Incremental development At any time, multiple features are “In Progress”, at different steps! (minimize backlog and work-in-progress) Product Owner A single person is in charge of both long term product strategy and day-to-day technical execution Developers Every developer is involved in both specification, ! implementation and review stages. Highly Automated Quality Assurance and Configuration Management Iterative development Features goes back-and-forth between specification! and implementation until an agreement is found Measure Continuous performance! measurement
  • 27. CHALLENGES AHEAD a tool provider perspective
  • 28. Challenges Ahead! a Tool Provider Perspective • Convergence of Safety Standards! • Effective Qualification of DevelopmentToolchains! • Effective Qualification of FormalTools ! • Support for Semi-Frozen Branches of QualifiedTools 30
  • 29. Convergence of safety standards DO-178C EN-50128 ECSS-Q80* Tool Specifications Tool Operational Requirements Can be a user guide, requirements, … NO ToolValidation Requirement-driven! testing Can be testing, proven in use, … NO Configuration Management! (Tool developer side) YES ISO-9000 or similar NO Quality Assurance! (Tool developer side) YES ISO-9000 or similar NO Qualification entity FAA/EASA Independent Assessor ESA Impact of category on qualification cost +++ + zero *Only de jure exception: automatic code generators. De facto, even code generators are not qualified.
  • 30. Convergence of safety standards! Example: Compiler Qualification 32 • In DO-178, qualifying development tools is so hard that qualifying a compiler would have been impossible! • Compiler qualification is in fact not required !! • CompCert is a great tool but it is not qualified accordingly to DO-178 ! • In EN-50128, qualifying a compiler as aT3Tool takes a few weeks at most! • As long as you know what you are doing !
  • 31. Convergence of safety standards • DO-330 is the most comprehensive tool qualification document! • More emphasis on error impact analysis and mitigation techniques ! • Need to correlate tool category, certification credit and qualification costs (tool qualification ROI)! • Increasingly complex tools: need for toolchain qualification? Camus et al.: “Tool Qualification in Multiple Domains: Status and Perspectives”, ERTS 2014
  • 32. GNAT Pro Model Compiler:! a complete, qualified model verification ! and compilation toolchain for Simulink® 34 See you at AdaCore booth for a ! preview of qualification material!Ada & MISRA C Proof of absence of run-time errors ! & safety/functional properties Qualified Code Generator Validated Compiler
  • 33. Effective Qualification Of Formal Tools Domain Standard Last Version FM for specification FM for implementation Avionics DO-178, DO-333 2012 Applicable Applicable Automotive ISO-26262 2011 Applicable Applicable Medical IEC 62304 2006 Recommended Recommended Nuclear IEC 60880 2006 Encouraged Applicable Railway EN 50128 2011 Applicable Recommended Space ECSS-Q-ST-80C 2009 Applicable Applicable
  • 34. Effective Qualification Of Formal Tools • They offer 100% guarantee - as long as assumptions are verified!! • How to ensure ! • Model is representative/adequate! • Assumptions on environment/integration are verified! • Several methods/tools: a common approach for tool qualification? Working group on “Theorem Proving in Certification” since 2010! Draft document soon available! Join tpcert@googlegroups.com
  • 35. Semi-Frozen Branches of Qualified Tools 37 Qualified Tool Release History ver. X.0 ver. X.1 ver. X.2 ver.Y.0 ver.Y.1ver.Y.1 Qualified Tool User Project Lifecycle Tool User Freezes Development Environment Critical Bug In the Hardware! Critical Issue In the QualifiedTool! … 2 years later… Semi-Frozen Branches of QualifiedTools: a service providing critical patches to frozen product versions with detailed impact analysis
  • 37. Take Home Messages • Tool Qualification has a cost • For both the tool provider AND the tool user! • This cost is exponential w.r.t. the complexity of the tool! • Think in terms of ROI when qualifying a tool • Tool provider: “Is this qualification kit an enabler?”! • Tool user: “Am I getting significant certification credit?” 39
  • 38. Take Home Messages • Qualification of Open-Source Tools • Distribution license per se has no impact on qualification! • You need to beVERY organized to collaborate with open communities! • Your added value is in integration, validation, quality, support! • Getting Things Done • A lot to learn from modern development methods! • We cannot do Continuous Deployment, but we can do DevOps, Lean, Agile 40
  • 39. Take Home Messages • Convergence of Safety Standards • A direct relation betweenTool Category,Tool Qualification Cost and Certification Credit! • We, as a community, need to measure our ROI! • Challenges Ahead • Effective Qualification of DevelopmentToolchains: the GNAT Pro Model Compiler! • Support semi-frozen branches of qualified tools 41