SlideShare a Scribd company logo
MDD and its impact on testing... 
A nanotech case study 
Bryan Bakker 
bryan.bakker@sioux.eu 
@Bryan_Bakker
Contents 
Intro 
MDD 
MDD and Testing 
Vacuum redesign 
Experiences 
© Sioux 2014 | Confidential | 
2
About Bryan Bakker 
Test Expert 
Certifications: ISTQB, TMap, Prince2 
Member of ISTQB Expert Level on Test Automation 
Tutor of several test related courses 
Domains: medical systems, professional security systems, semi-industry, electron microscopy 
Specialties: test automation, integration testing, design for testability, reliability testing 
© Sioux 2014 | Confidential | 
3
About Sioux 
HERENTALS 
NEDERWEERT 
EINDHOVEN 
UTRECHT 
MOSCOW 
© Sioux 2014 | Confidential | 
4 
DANANG
About FEI 
World leader in electron microscopes 
Light microscope: 1000x  200nm (limited by the wavelength of light) 
Electron microscope: 4Mx  0.05 nm 
Nm = a billionth of a meter (10-9 meter) 
© Sioux 2014 | Confidential | 
5
About FEI 
22 nnm 00.. 55 nnm © Sioux 2014 | Confidential | 6 
Atomic structur of Ge 
(Germanium). Distance 
is 0.5 nm 
Breast cancer cell. 
Magnification 5.000x Salmonella bacteria. 
Magnification 80.000x
What is a model? 
These models are not meant: 
© Sioux 2014 | Confidential | 
7
What is a model? 
Simplification of the reality 
By definition wrong, but can be useful 
Do not try to put everything in the model 
© Sioux 2014 | Confidential | 
8
Traditional model 
© Sioux 2014 | Confidential | 
9 
Traditional ModelSource codeIs the model correct? Is the source code correct?
ASD (Analytical Software Design) 
Model Driven Development technology 
Component Based Development 
Models are verified mathematically at design time 
Extensive model checker: 
Deadlock 
Live-lock 
Starvation 
Race conditions, etc 
© Sioux 2014 | Confidential | 
10
Model 
© Sioux 2014 | Confidential | 
11 
Model: - Precise- Complete- Correct
Model verification 
© Sioux 2014 | Confidential | 
12 
Model: - Precise- Complete- CorrectFormal model and verificationGenerate formal modelDesign errors
Code generation 
© Sioux 2014 | Confidential | 
13 
Model: - Precise- Complete- CorrectFormal model and verificationSource code: - Java- MISCRA C- C++ - C# Generate formal modelDesign errorsGenerate defect free source code from verified modelGuaranteed equivalence
What is covered? 
Interface model: 
Specification of interfaces of components 
“What” 
Design model: 
Implementation of interfaces 
Internal implementation 
“How” 
Also the outside interfaces are specified 
Interfaces to not-modelled components 
© Sioux 2014 | Confidential | 
14
Handwritten vs. generated 
© Sioux 2014 | Confidential | 
15 
InterfaceInterfaceInterfaceInterfaceInterfaceInterface
Handwritten vs. generated 
© Sioux 2014 | Confidential | 16 
Interface 
Interface Interface 
Handwritten code 
Generated 
code 
Part of the model
Scope of model 
Typically used to model behaviour described in: 
State machines 
Sequence diagrams 
Algorithms 
© Sioux 2014 | Confidential | 
17
State machines 
© Sioux 2014 | Confidential | 
18 
Large (encapsulated) state machines can be modelled
Sequence diagrams 
© Sioux 2014 | Confidential | 
19
Scope of model 
Typically used to model behaviour described in: 
State machines 
Sequence diagrams 
Algorithms 
What is modelled? 
All normal functionality (good weather) 
All exceptional functionality (bad weather) 
All illegal behaviour 
© Sioux 2014 | Confidential | 
20
MDD and Testing 
© Sioux 2014 | Confidential | 21 
Implementation 
Design Component Test 
Architecture Integration Test 
System 
Requirements 
System Test 
User 
Requirements 
Acceptance Test 
Wish, need 
Release 
Formal 
methods
MDD and Testing 
Formal methods typically: 
Applied at Design level 
Only in Software 
For part of the software 
Not for legacy and 3rd party software 
© Sioux 2014 | Confidential | 
22 
ImplementationComponent TestDesignIntegration TestArchitectureSystem RequirementsSystem TestUser RequirementsAcceptance TestWish, needReleaseFormal methods
MDD and Testing 
Part of the component tests are not needed anymore (Software Engineer) 
Test activities of Test Engineer: 
From integration level and up 
Are still needed 
But: 
MDD has impact on quality of deliverables 
© Sioux 2014 | Confidential | 
23 Implementation 
Design Component Test 
Architecture Integration Test 
System 
Requirements 
System Test 
User 
Requirements 
Acceptance Test 
Wish, need 
Release 
Formal 
methods
Microscope Vacuum redesign 
Vacuum software + firmware redesign 
ASD has been used 
Functionality tested manually (by experts) 
Vacuum is critical part of system  verify reliability separately 
AutoIT used for test automation 
Freeware, mainly GUI tool 
Only scripting used (no recording) 
© Sioux 2014 | Confidential | 
24
Test automation 
First steps: quick and dirty 
Fast feedback 
Automation via GUI 
© Sioux 2014 | Confidential | 
25
Test automation 
© Sioux 2014 | Confidential | 
26
UI-Controls and graphics used for 
Test actions 
Test verifications 
Reliability tests 
System tests on vacuum system 
Executed for long time (days) 
Not only software but whole system is tested 
Test automation 
© Sioux 2014 | Confidential | 
27
Testing experiences 
Testing is still necessary 
Integration (with other SW, with HW) 
System testing 
Model incorrect  Rubbish in, rubbish out New insights, so model will change 
Functionality must still be verified (and errors are found) 
Programming errors or integration issues: 
In handwritten code 
On boundary between generated and handwritten code (hard to analyse) 
Not in generated code! 
© Sioux 2014 | Confidential | 
28
Testing experiences 
Reliability of generated code: very high! 
But crashes can still occur... (but not in generated code) 
Reliability tests  HW failures/wear detected much earlier Days instead of months 
Integration and system test  not hampered by reliability issues  big improvement, less cycles 
© Sioux 2014 | Confidential | 
29
Testing experiences 
Models are much easier to review, understand and adapt than code 
Design discussions are held early in project/sprint (as it should be!)  defects prevented! 
Refactoring (relatively) simple and reliable (less regression) 
Fits well in agile approach 
© Sioux 2014 | Confidential | 
30
Product Risk Analysis 
© Sioux 2014 | Confidential | 
31 
331515  Impact  Likelihood Comp1Comp2Comp399
Product Risk Analysis 
© Sioux 2014 | Confidential | 
32 
331515  Impact  Likelihood Comp1Comp2Comp399IIIIIVIICould testMust test“Won´t test”Should test
Product Risk Analysis 
© Sioux 2014 | Confidential | 
33 
331515  Impact  Likelihood Comp1Comp2Comp399
Product Risk Analysis 
© Sioux 2014 | Confidential | 
34 
331515  Impact  Likelihood Comp1Comp2Comp399 MDD
Conclusions 
Component tests (white box) could be skipped 
Internal working is correct 
Although functionality can be incorrect 
Integration and system testing a lot smoother 
Less interface issues 
Less reliability issues 
Reliability testing  reliability measurement 
Integration and system test more efficient (less cycles) 
Architecture and design takes more effort 
More re-designs with ASD are planned 
© Sioux 2014 | Confidential | 
35
Questions 
© Sioux 2014 | Confidential | 36
37 
© Sioux 2014 | Confidential | 
www.sioux.eu 
bryan.bakker@sioux.eu 
+31 (0)40 26 77 100

More Related Content

What's hot

Software testing basic concepts
Software testing basic conceptsSoftware testing basic concepts
Software testing basic conceptsRaju Jadhav
 
Software Testing Techniques
Software Testing TechniquesSoftware Testing Techniques
Software Testing TechniquesPramod Parajuli
 
Essential Test Management and Planning
Essential Test Management and PlanningEssential Test Management and Planning
Essential Test Management and PlanningTechWell
 
Software Quality Assurance and Testing at NIIT
Software Quality Assurance and Testing at NIITSoftware Quality Assurance and Testing at NIIT
Software Quality Assurance and Testing at NIITVikas Maheshwary
 
Fundamentals of Testing 2
Fundamentals of Testing 2Fundamentals of Testing 2
Fundamentals of Testing 2Hoang Nguyen
 
Atos Origin - Testing - An Olympic Challenge
Atos Origin - Testing - An Olympic ChallengeAtos Origin - Testing - An Olympic Challenge
Atos Origin - Testing - An Olympic ChallengeTEST Huddle
 
'Automated Reliability Testing via Hardware Interfaces' by Bryan Bakker
'Automated Reliability Testing via Hardware Interfaces' by Bryan Bakker'Automated Reliability Testing via Hardware Interfaces' by Bryan Bakker
'Automated Reliability Testing via Hardware Interfaces' by Bryan BakkerTEST Huddle
 
Test management with iso 29119 building up an efficient test process
Test management with iso 29119 building up an efficient test processTest management with iso 29119 building up an efficient test process
Test management with iso 29119 building up an efficient test processYulia Zavertailo
 
Fundamentals of testing 1
Fundamentals of testing 1Fundamentals of testing 1
Fundamentals of testing 1Hoang Nguyen
 
ISTQB Foundation Level Basic
ISTQB Foundation Level BasicISTQB Foundation Level Basic
ISTQB Foundation Level BasicErol Selitektay
 
Software Testing Principles
Software Testing PrinciplesSoftware Testing Principles
Software Testing PrinciplesKanoah
 

What's hot (20)

Software Testing
Software TestingSoftware Testing
Software Testing
 
Software testing
Software testingSoftware testing
Software testing
 
Software testing basic concepts
Software testing basic conceptsSoftware testing basic concepts
Software testing basic concepts
 
Software Testing Techniques
Software Testing TechniquesSoftware Testing Techniques
Software Testing Techniques
 
Essential Test Management and Planning
Essential Test Management and PlanningEssential Test Management and Planning
Essential Test Management and Planning
 
Functional testing patterns
Functional testing patternsFunctional testing patterns
Functional testing patterns
 
Functional Testing
Functional TestingFunctional Testing
Functional Testing
 
Software Quality Assurance and Testing at NIIT
Software Quality Assurance and Testing at NIITSoftware Quality Assurance and Testing at NIIT
Software Quality Assurance and Testing at NIIT
 
Software testing
Software testingSoftware testing
Software testing
 
Fundamentals of Testing 2
Fundamentals of Testing 2Fundamentals of Testing 2
Fundamentals of Testing 2
 
Atos Origin - Testing - An Olympic Challenge
Atos Origin - Testing - An Olympic ChallengeAtos Origin - Testing - An Olympic Challenge
Atos Origin - Testing - An Olympic Challenge
 
Software Testing
Software Testing Software Testing
Software Testing
 
'Automated Reliability Testing via Hardware Interfaces' by Bryan Bakker
'Automated Reliability Testing via Hardware Interfaces' by Bryan Bakker'Automated Reliability Testing via Hardware Interfaces' by Bryan Bakker
'Automated Reliability Testing via Hardware Interfaces' by Bryan Bakker
 
Test-Driven Code Review: An Empirical Study
Test-Driven Code Review: An Empirical StudyTest-Driven Code Review: An Empirical Study
Test-Driven Code Review: An Empirical Study
 
Test management with iso 29119 building up an efficient test process
Test management with iso 29119 building up an efficient test processTest management with iso 29119 building up an efficient test process
Test management with iso 29119 building up an efficient test process
 
Fundamentals of testing 1
Fundamentals of testing 1Fundamentals of testing 1
Fundamentals of testing 1
 
ISTQB Foundation Level Basic
ISTQB Foundation Level BasicISTQB Foundation Level Basic
ISTQB Foundation Level Basic
 
Software Testing Principles
Software Testing PrinciplesSoftware Testing Principles
Software Testing Principles
 
Software Testing Concepts
Software Testing  ConceptsSoftware Testing  Concepts
Software Testing Concepts
 
Software testing
Software testingSoftware testing
Software testing
 

Similar to Mdd test qa_test2014_bryan_bakker

Testing Strategy in Micro Frontend architecture
Testing Strategy in Micro Frontend architectureTesting Strategy in Micro Frontend architecture
Testing Strategy in Micro Frontend architecturevodQA
 
Implementing Continuous Integration to Improve Software Quality
Implementing Continuous Integration to Improve Software QualityImplementing Continuous Integration to Improve Software Quality
Implementing Continuous Integration to Improve Software QualityRocket Software
 
Enabling Mobility through Continuous Delivery
Enabling Mobility through Continuous DeliveryEnabling Mobility through Continuous Delivery
Enabling Mobility through Continuous DeliveryMichael Medin
 
Designing for Testability: Differentiator in a Competitive Market
Designing for Testability: Differentiator in a Competitive MarketDesigning for Testability: Differentiator in a Competitive Market
Designing for Testability: Differentiator in a Competitive MarketTechWell
 
Reliable software in a continuous integration/continuous deployment (CI/CD) e...
Reliable software in a continuous integration/continuous deployment (CI/CD) e...Reliable software in a continuous integration/continuous deployment (CI/CD) e...
Reliable software in a continuous integration/continuous deployment (CI/CD) e...Ann Marie Neufelder
 
Innovation in Action - #MFSummit2017
Innovation in Action - #MFSummit2017Innovation in Action - #MFSummit2017
Innovation in Action - #MFSummit2017Micro Focus
 
Enhancing Quality and Test in Medical Device Design - Part 2.pdf
Enhancing Quality and Test in Medical Device Design - Part 2.pdfEnhancing Quality and Test in Medical Device Design - Part 2.pdf
Enhancing Quality and Test in Medical Device Design - Part 2.pdfICS
 
Enterprise Cloud with IBM & Chef (ChefConf 2013)
Enterprise Cloud with IBM & Chef (ChefConf 2013)Enterprise Cloud with IBM & Chef (ChefConf 2013)
Enterprise Cloud with IBM & Chef (ChefConf 2013)Michael Elder
 
IBM DevOps Enabling continuous integration & delivery
IBM DevOps Enabling continuous integration & deliveryIBM DevOps Enabling continuous integration & delivery
IBM DevOps Enabling continuous integration & deliveryRoberto Pozzi
 
Testingfor continuousdeliverywithvisualstudio2012
Testingfor continuousdeliverywithvisualstudio2012Testingfor continuousdeliverywithvisualstudio2012
Testingfor continuousdeliverywithvisualstudio2012Steve Xu
 
Software Testing - Online Guide
Software Testing - Online GuideSoftware Testing - Online Guide
Software Testing - Online Guidebigspire
 
Finally… reliable software!
Finally… reliable software!Finally… reliable software!
Finally… reliable software!nextbuild
 
Performance Testing
Performance TestingPerformance Testing
Performance TestingvodQA
 
John Fodeh - Adventures in Test Automation-Breaking the Boundaries of Regress...
John Fodeh - Adventures in Test Automation-Breaking the Boundaries of Regress...John Fodeh - Adventures in Test Automation-Breaking the Boundaries of Regress...
John Fodeh - Adventures in Test Automation-Breaking the Boundaries of Regress...TEST Huddle
 
John Fodeh Adventures in Test Automation - EuroSTAR 2013
John Fodeh Adventures in Test Automation - EuroSTAR 2013John Fodeh Adventures in Test Automation - EuroSTAR 2013
John Fodeh Adventures in Test Automation - EuroSTAR 2013TEST Huddle
 
UrbanCode Deploy course and product overview slides
UrbanCode Deploy course and product overview slidesUrbanCode Deploy course and product overview slides
UrbanCode Deploy course and product overview slidesIBM Rational software
 
Surrogate Model-Based Reliability Analysis of Composite UAV Wing facilitation...
Surrogate Model-Based Reliability Analysis of Composite UAV Wing facilitation...Surrogate Model-Based Reliability Analysis of Composite UAV Wing facilitation...
Surrogate Model-Based Reliability Analysis of Composite UAV Wing facilitation...Altair
 
Introduce Test Harness for Direct To Consumer Solutions.pdf
Introduce Test Harness for Direct To Consumer Solutions.pdfIntroduce Test Harness for Direct To Consumer Solutions.pdf
Introduce Test Harness for Direct To Consumer Solutions.pdfKnoldus Inc.
 

Similar to Mdd test qa_test2014_bryan_bakker (20)

Testing Strategy in Micro Frontend architecture
Testing Strategy in Micro Frontend architectureTesting Strategy in Micro Frontend architecture
Testing Strategy in Micro Frontend architecture
 
Implementing Continuous Integration to Improve Software Quality
Implementing Continuous Integration to Improve Software QualityImplementing Continuous Integration to Improve Software Quality
Implementing Continuous Integration to Improve Software Quality
 
Enabling Mobility through Continuous Delivery
Enabling Mobility through Continuous DeliveryEnabling Mobility through Continuous Delivery
Enabling Mobility through Continuous Delivery
 
Designing for Testability: Differentiator in a Competitive Market
Designing for Testability: Differentiator in a Competitive MarketDesigning for Testability: Differentiator in a Competitive Market
Designing for Testability: Differentiator in a Competitive Market
 
2-models.pptx
2-models.pptx2-models.pptx
2-models.pptx
 
Reliable software in a continuous integration/continuous deployment (CI/CD) e...
Reliable software in a continuous integration/continuous deployment (CI/CD) e...Reliable software in a continuous integration/continuous deployment (CI/CD) e...
Reliable software in a continuous integration/continuous deployment (CI/CD) e...
 
Innovation in Action - #MFSummit2017
Innovation in Action - #MFSummit2017Innovation in Action - #MFSummit2017
Innovation in Action - #MFSummit2017
 
Enhancing Quality and Test in Medical Device Design - Part 2.pdf
Enhancing Quality and Test in Medical Device Design - Part 2.pdfEnhancing Quality and Test in Medical Device Design - Part 2.pdf
Enhancing Quality and Test in Medical Device Design - Part 2.pdf
 
Enterprise Cloud with IBM & Chef (ChefConf 2013)
Enterprise Cloud with IBM & Chef (ChefConf 2013)Enterprise Cloud with IBM & Chef (ChefConf 2013)
Enterprise Cloud with IBM & Chef (ChefConf 2013)
 
IBM DevOps Enabling continuous integration & delivery
IBM DevOps Enabling continuous integration & deliveryIBM DevOps Enabling continuous integration & delivery
IBM DevOps Enabling continuous integration & delivery
 
Testingfor continuousdeliverywithvisualstudio2012
Testingfor continuousdeliverywithvisualstudio2012Testingfor continuousdeliverywithvisualstudio2012
Testingfor continuousdeliverywithvisualstudio2012
 
Software Testing - Online Guide
Software Testing - Online GuideSoftware Testing - Online Guide
Software Testing - Online Guide
 
Finally… reliable software!
Finally… reliable software!Finally… reliable software!
Finally… reliable software!
 
Performance Testing
Performance TestingPerformance Testing
Performance Testing
 
Overview
OverviewOverview
Overview
 
John Fodeh - Adventures in Test Automation-Breaking the Boundaries of Regress...
John Fodeh - Adventures in Test Automation-Breaking the Boundaries of Regress...John Fodeh - Adventures in Test Automation-Breaking the Boundaries of Regress...
John Fodeh - Adventures in Test Automation-Breaking the Boundaries of Regress...
 
John Fodeh Adventures in Test Automation - EuroSTAR 2013
John Fodeh Adventures in Test Automation - EuroSTAR 2013John Fodeh Adventures in Test Automation - EuroSTAR 2013
John Fodeh Adventures in Test Automation - EuroSTAR 2013
 
UrbanCode Deploy course and product overview slides
UrbanCode Deploy course and product overview slidesUrbanCode Deploy course and product overview slides
UrbanCode Deploy course and product overview slides
 
Surrogate Model-Based Reliability Analysis of Composite UAV Wing facilitation...
Surrogate Model-Based Reliability Analysis of Composite UAV Wing facilitation...Surrogate Model-Based Reliability Analysis of Composite UAV Wing facilitation...
Surrogate Model-Based Reliability Analysis of Composite UAV Wing facilitation...
 
Introduce Test Harness for Direct To Consumer Solutions.pdf
Introduce Test Harness for Direct To Consumer Solutions.pdfIntroduce Test Harness for Direct To Consumer Solutions.pdf
Introduce Test Harness for Direct To Consumer Solutions.pdf
 

Recently uploaded

How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...Product School
 
Search and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical FuturesSearch and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical FuturesBhaskar Mitra
 
Speed Wins: From Kafka to APIs in Minutes
Speed Wins: From Kafka to APIs in MinutesSpeed Wins: From Kafka to APIs in Minutes
Speed Wins: From Kafka to APIs in Minutesconfluent
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3DianaGray10
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backElena Simperl
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...Product School
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesThousandEyes
 
Exploring UiPath Orchestrator API: updates and limits in 2024 🚀
Exploring UiPath Orchestrator API: updates and limits in 2024 🚀Exploring UiPath Orchestrator API: updates and limits in 2024 🚀
Exploring UiPath Orchestrator API: updates and limits in 2024 🚀DianaGray10
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf91mobiles
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Jeffrey Haguewood
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfCheryl Hung
 
In-Depth Performance Testing Guide for IT Professionals
In-Depth Performance Testing Guide for IT ProfessionalsIn-Depth Performance Testing Guide for IT Professionals
In-Depth Performance Testing Guide for IT ProfessionalsExpeed Software
 
UiPath Test Automation using UiPath Test Suite series, part 2
UiPath Test Automation using UiPath Test Suite series, part 2UiPath Test Automation using UiPath Test Suite series, part 2
UiPath Test Automation using UiPath Test Suite series, part 2DianaGray10
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...UiPathCommunity
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Alison B. Lowndes
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...BookNet Canada
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaRTTS
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Product School
 

Recently uploaded (20)

How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
 
Search and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical FuturesSearch and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical Futures
 
Speed Wins: From Kafka to APIs in Minutes
Speed Wins: From Kafka to APIs in MinutesSpeed Wins: From Kafka to APIs in Minutes
Speed Wins: From Kafka to APIs in Minutes
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
 
Exploring UiPath Orchestrator API: updates and limits in 2024 🚀
Exploring UiPath Orchestrator API: updates and limits in 2024 🚀Exploring UiPath Orchestrator API: updates and limits in 2024 🚀
Exploring UiPath Orchestrator API: updates and limits in 2024 🚀
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
 
In-Depth Performance Testing Guide for IT Professionals
In-Depth Performance Testing Guide for IT ProfessionalsIn-Depth Performance Testing Guide for IT Professionals
In-Depth Performance Testing Guide for IT Professionals
 
UiPath Test Automation using UiPath Test Suite series, part 2
UiPath Test Automation using UiPath Test Suite series, part 2UiPath Test Automation using UiPath Test Suite series, part 2
UiPath Test Automation using UiPath Test Suite series, part 2
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
 

Mdd test qa_test2014_bryan_bakker

  • 1. MDD and its impact on testing... A nanotech case study Bryan Bakker bryan.bakker@sioux.eu @Bryan_Bakker
  • 2. Contents Intro MDD MDD and Testing Vacuum redesign Experiences © Sioux 2014 | Confidential | 2
  • 3. About Bryan Bakker Test Expert Certifications: ISTQB, TMap, Prince2 Member of ISTQB Expert Level on Test Automation Tutor of several test related courses Domains: medical systems, professional security systems, semi-industry, electron microscopy Specialties: test automation, integration testing, design for testability, reliability testing © Sioux 2014 | Confidential | 3
  • 4. About Sioux HERENTALS NEDERWEERT EINDHOVEN UTRECHT MOSCOW © Sioux 2014 | Confidential | 4 DANANG
  • 5. About FEI World leader in electron microscopes Light microscope: 1000x  200nm (limited by the wavelength of light) Electron microscope: 4Mx  0.05 nm Nm = a billionth of a meter (10-9 meter) © Sioux 2014 | Confidential | 5
  • 6. About FEI 22 nnm 00.. 55 nnm © Sioux 2014 | Confidential | 6 Atomic structur of Ge (Germanium). Distance is 0.5 nm Breast cancer cell. Magnification 5.000x Salmonella bacteria. Magnification 80.000x
  • 7. What is a model? These models are not meant: © Sioux 2014 | Confidential | 7
  • 8. What is a model? Simplification of the reality By definition wrong, but can be useful Do not try to put everything in the model © Sioux 2014 | Confidential | 8
  • 9. Traditional model © Sioux 2014 | Confidential | 9 Traditional ModelSource codeIs the model correct? Is the source code correct?
  • 10. ASD (Analytical Software Design) Model Driven Development technology Component Based Development Models are verified mathematically at design time Extensive model checker: Deadlock Live-lock Starvation Race conditions, etc © Sioux 2014 | Confidential | 10
  • 11. Model © Sioux 2014 | Confidential | 11 Model: - Precise- Complete- Correct
  • 12. Model verification © Sioux 2014 | Confidential | 12 Model: - Precise- Complete- CorrectFormal model and verificationGenerate formal modelDesign errors
  • 13. Code generation © Sioux 2014 | Confidential | 13 Model: - Precise- Complete- CorrectFormal model and verificationSource code: - Java- MISCRA C- C++ - C# Generate formal modelDesign errorsGenerate defect free source code from verified modelGuaranteed equivalence
  • 14. What is covered? Interface model: Specification of interfaces of components “What” Design model: Implementation of interfaces Internal implementation “How” Also the outside interfaces are specified Interfaces to not-modelled components © Sioux 2014 | Confidential | 14
  • 15. Handwritten vs. generated © Sioux 2014 | Confidential | 15 InterfaceInterfaceInterfaceInterfaceInterfaceInterface
  • 16. Handwritten vs. generated © Sioux 2014 | Confidential | 16 Interface Interface Interface Handwritten code Generated code Part of the model
  • 17. Scope of model Typically used to model behaviour described in: State machines Sequence diagrams Algorithms © Sioux 2014 | Confidential | 17
  • 18. State machines © Sioux 2014 | Confidential | 18 Large (encapsulated) state machines can be modelled
  • 19. Sequence diagrams © Sioux 2014 | Confidential | 19
  • 20. Scope of model Typically used to model behaviour described in: State machines Sequence diagrams Algorithms What is modelled? All normal functionality (good weather) All exceptional functionality (bad weather) All illegal behaviour © Sioux 2014 | Confidential | 20
  • 21. MDD and Testing © Sioux 2014 | Confidential | 21 Implementation Design Component Test Architecture Integration Test System Requirements System Test User Requirements Acceptance Test Wish, need Release Formal methods
  • 22. MDD and Testing Formal methods typically: Applied at Design level Only in Software For part of the software Not for legacy and 3rd party software © Sioux 2014 | Confidential | 22 ImplementationComponent TestDesignIntegration TestArchitectureSystem RequirementsSystem TestUser RequirementsAcceptance TestWish, needReleaseFormal methods
  • 23. MDD and Testing Part of the component tests are not needed anymore (Software Engineer) Test activities of Test Engineer: From integration level and up Are still needed But: MDD has impact on quality of deliverables © Sioux 2014 | Confidential | 23 Implementation Design Component Test Architecture Integration Test System Requirements System Test User Requirements Acceptance Test Wish, need Release Formal methods
  • 24. Microscope Vacuum redesign Vacuum software + firmware redesign ASD has been used Functionality tested manually (by experts) Vacuum is critical part of system  verify reliability separately AutoIT used for test automation Freeware, mainly GUI tool Only scripting used (no recording) © Sioux 2014 | Confidential | 24
  • 25. Test automation First steps: quick and dirty Fast feedback Automation via GUI © Sioux 2014 | Confidential | 25
  • 26. Test automation © Sioux 2014 | Confidential | 26
  • 27. UI-Controls and graphics used for Test actions Test verifications Reliability tests System tests on vacuum system Executed for long time (days) Not only software but whole system is tested Test automation © Sioux 2014 | Confidential | 27
  • 28. Testing experiences Testing is still necessary Integration (with other SW, with HW) System testing Model incorrect  Rubbish in, rubbish out New insights, so model will change Functionality must still be verified (and errors are found) Programming errors or integration issues: In handwritten code On boundary between generated and handwritten code (hard to analyse) Not in generated code! © Sioux 2014 | Confidential | 28
  • 29. Testing experiences Reliability of generated code: very high! But crashes can still occur... (but not in generated code) Reliability tests  HW failures/wear detected much earlier Days instead of months Integration and system test  not hampered by reliability issues  big improvement, less cycles © Sioux 2014 | Confidential | 29
  • 30. Testing experiences Models are much easier to review, understand and adapt than code Design discussions are held early in project/sprint (as it should be!)  defects prevented! Refactoring (relatively) simple and reliable (less regression) Fits well in agile approach © Sioux 2014 | Confidential | 30
  • 31. Product Risk Analysis © Sioux 2014 | Confidential | 31 331515  Impact  Likelihood Comp1Comp2Comp399
  • 32. Product Risk Analysis © Sioux 2014 | Confidential | 32 331515  Impact  Likelihood Comp1Comp2Comp399IIIIIVIICould testMust test“Won´t test”Should test
  • 33. Product Risk Analysis © Sioux 2014 | Confidential | 33 331515  Impact  Likelihood Comp1Comp2Comp399
  • 34. Product Risk Analysis © Sioux 2014 | Confidential | 34 331515  Impact  Likelihood Comp1Comp2Comp399 MDD
  • 35. Conclusions Component tests (white box) could be skipped Internal working is correct Although functionality can be incorrect Integration and system testing a lot smoother Less interface issues Less reliability issues Reliability testing  reliability measurement Integration and system test more efficient (less cycles) Architecture and design takes more effort More re-designs with ASD are planned © Sioux 2014 | Confidential | 35
  • 36. Questions © Sioux 2014 | Confidential | 36
  • 37. 37 © Sioux 2014 | Confidential | www.sioux.eu bryan.bakker@sioux.eu +31 (0)40 26 77 100