SlideShare a Scribd company logo
T8
Test Techniques
5/8/2014 11:15:00 AM
Designing for Testability:
Differentiator in a Competitive
Market
Presented by:
David Campbell
MITRE Corporation
Brought to you by:
340 Corporate Way, Suite 300, Orange Park, FL 32073
888-268-8770 ∙ 904-278-0524 ∙ sqeinfo@sqe.com ∙ www.sqe.com
David Campbell
MITRE Corporation
David Campbell has twenty-seven years of technical management and software development
experience focusing on high performance and real-time systems. Much of that time was spent
with Silicon Graphics Computer Systems and Kasenna, Inc. working on joint programs with
customers and partners from a wide variety of markets and development cultures. Today Dave
works for the MITRE Corporation directing a lab that focuses on research and evaluation of time
critical systems.
4/26/2014
1
| 1 |
© 2014 The MITRE Corporation. All rights reserved. For internal MITRE use
Designing For Testability
Dave Campbell
MITRE
Approved for Public Release; Distribution Unlimited. 14-0356
| 2 |
© 2014 The MITRE Corporation. All rights reserved. For internal MITRE use
Biography
Dave Campbell
– MITRE Corporation
Time Critical Systems
dcampbell@mitre.org
25 years of software development and technical
management
– Silicon Graphics Inc.
High Performance Servers and Workstations
Operating and Real Time Systems
Entertainment, Media, High Performance Solutions
– Kasenna Inc.
IPTV and Video Delivery Platforms
4/26/2014
2
| 3 |
© 2014 The MITRE Corporation. All rights reserved. For internal MITRE use
Continuing Problem
Software Systems are often key contributors to
program/project execution risk
- Schedule Delays
- Cost Overruns
- Reliability
- Security and Information Assurance
| 4 |
© 2014 The MITRE Corporation. All rights reserved. For internal MITRE use
Observation
When analyzing all the software systems that I
have observed over 27 years a trend becomes
clear:
Development organizations that take the
long view and invest in testing
infrastructure consistently outperform all
others in cost, schedule and quality
execution
4/26/2014
3
| 5 |
© 2014 The MITRE Corporation. All rights reserved. For internal MITRE use
Design for Testability (DFT)
Earliest stages of design must include test team
representation
– Requirements, Scheduling, Funding
No design is approved without a complete picture of
how each subsystem is tested independently or
integrated into system
Need to have long term view
– Initial hit to schedule and EVM (Earned Value Metrics)
Agile, Continuous, Waterfall – all methodologies can
support approach
Steps to Enforce Design Testability will Follow
| 6 |
© 2014 The MITRE Corporation. All rights reserved. For internal MITRE use
What to Avoid
Evolving development into a process where
any comprehensive integration testing
requires all software and hardware system
components to be effective
Full system configuration dependency for
testing slows engineering productivity
–Lose agility
–Lose effectiveness of test coverage
–Forces big bang integration testing late in
development
What is your experience?
4/26/2014
4
| 7 |
© 2014 The MITRE Corporation. All rights reserved. For internal MITRE use
Example: Radar Processing
Classic example, involves distributed
hardware and software system components
–System of systems
Time Critical and batch processing
requirements
Service level agreement requirements
System that will be in operation for over 25
years with technology refreshes over lifespan
| 8 |
© 2014 The MITRE Corporation. All rights reserved. For internal MITRE use
Radar System Components
Web services takes requests/presents results
Other components manage radar and data it generates
Antenna
Controller
Radar Signal
Processing
Operations
and
Control
Web
Services
Repository
Clients
Does the design require all these
components to be available to
effectively integration test?
4/26/2014
5
| 9 |
© 2014 The MITRE Corporation. All rights reserved. For internal MITRE use
Designing for Testability, Step 1
Define Time Critical Core of System
Identify all timing critical areas of the system
– Understand constraints
– Concurrency and potential race conditions
Ensure implementation is self monitoring
– Reports violations
– Effective under loading and scaling
All ongoing testing must verify the time critical
processing is not compromised as system is
integrated
| 10 |
© 2014 The MITRE Corporation. All rights reserved. For internal MITRE use
Designing for Testability, Step 2
Ensure System Can Be Characterized
System must be able to be diagnosed
– Avoid debug and production builds
– Logging system must not alter system timing
– Distributed system traceability and time stamping
– Keep diagnostic capability native
Design to greater than capacity and service load
limits
– Define denial of service behavior
– Data drops or loss handling
4/26/2014
6
| 11 |
© 2014 The MITRE Corporation. All rights reserved. For internal MITRE use
Designing for Testability, Step 3
Define Component Simulators
Create high fidelity software simulations of key
system components
–Formalizes interfaces and messaging
–Resources for every developer, no sharing
–Validates the design of component
–Much more than stubbing
Simulated components allow testing of related
components independent of hardware availability
–Allow for introduction of error states
–Can be used throughout lifecycle
| 12 |
© 2014 The MITRE Corporation. All rights reserved. For internal MITRE use
Designing for Testability, Step 4
Data Injection and Taps
Identify areas in system where key data items
can be injected or extracted without performance
impact
–Identify APIs and necessary state setup
Create low impact tools to perform function,
insure the tools meet required performance
–Load generators, IA probes
Injectors and taps allow for post processing
analysis and inserting data generated from
hardware prototypes
4/26/2014
7
| 13 |
© 2014 The MITRE Corporation. All rights reserved. For internal MITRE use
Designing for Testability, Step 5
Apply Continuous Integration Testing
Integration testing never stops
– Avoid waiting on testing anything
– Capacity and service loading early and often
– Avoid point testing only of a capability
– Apply automation and testing frameworks
Use simulators, injectors and any available hardware
to construct test configurations
– Not uncommon for system to be used for hardware
debugging during day and running integration tests with
simulated hardware at night
Complex distributed systems of systems may have more end to
end dependencies than designers can predict, mitigate with a
testable design
| 14 |
© 2014 The MITRE Corporation. All rights reserved. For internal MITRE use
Tale of Two Engineering Teams
Two teams design and implement the same Video on
Demand (VOD) system for competitive contract award
– Requirements bound implementation choices
Team A designs for testability and implements many
of the necessary steps
Team B does not implement any testability
Team B initially performs better but as development
advances they become more dependent on limited
hardware configurations
Team A emerges with a product that has a much lower cost
of ownership
4/26/2014
8
| 15 |
© 2014 The MITRE Corporation. All rights reserved. For internal MITRE use
Key Factors Impacting Decision
Cost advantage emerges for Team A
– Shorter implementation time to add new capabilities
– Short reintegration time to fix and test defects
– Simulation components can be utilized for training and
provisioning of deployed system
Flexibility advantage emerges for Team A
– VOD was a new technology and many deployment
trials were needed with different configurations
– Increased ability to work with more partners, investors
DFT concepts eventually become part of the Open Cable
Architecture Specification
| 16 |
© 2014 The MITRE Corporation. All rights reserved. For internal MITRE use
Sample Steps Review
Define Time Critical Core of System
– Ensure this never breaks
Ensure System can be Characterized
– No performance impact, one implementation
High Fidelity Simulation Components
– Refine design, Provide flexibility, Key artifact
Data Injectors and Extractors
– Design for key points of system (i.e. IA boundaries)
Continuous Testing Approach
– Avoid the “big bang” and “one and done” scenarios
– Test hard stuff first, capacity and service loading
Use approaches that work within your project and culture
4/26/2014
9
| 17 |
© 2014 The MITRE Corporation. All rights reserved. For internal MITRE use
Conclusion
There is additional initial cost to a testable
design
Testable design needs to be defined in
specification and requirements, contract
deliverable
During development execution, need to resist
temptation to pull development resources
and funding away from testability efforts
High Performing Engineering Organizations Design for
Testability

More Related Content

What's hot

Essential Test Management and Planning
Essential Test Management and PlanningEssential Test Management and Planning
Essential Test Management and Planning
TechWell
 
ITIL Best Practice for Software Companies
ITIL Best Practice for Software CompaniesITIL Best Practice for Software Companies
ITIL Best Practice for Software Companies
Daniel Brody
 
DevOps Workshop - Addressing Quality Challenges of Highly Complex and Integra...
DevOps Workshop - Addressing Quality Challenges of Highly Complex and Integra...DevOps Workshop - Addressing Quality Challenges of Highly Complex and Integra...
DevOps Workshop - Addressing Quality Challenges of Highly Complex and Integra...
Andrew Williams
 
Site Reliability Engineering: An Enterprise Adoption Story (an ITSM Academy W...
Site Reliability Engineering: An Enterprise Adoption Story (an ITSM Academy W...Site Reliability Engineering: An Enterprise Adoption Story (an ITSM Academy W...
Site Reliability Engineering: An Enterprise Adoption Story (an ITSM Academy W...
ITSM Academy, Inc.
 
Test Automation Strategy
Test Automation StrategyTest Automation Strategy
Test Automation Strategy
Martin Ruddy
 
Fundamental of testing
Fundamental of testingFundamental of testing
Fundamental of testing
Dr. Ahmed Al Zaidy
 
How to Deliver Winning Mobile Apps
How to Deliver Winning Mobile AppsHow to Deliver Winning Mobile Apps
How to Deliver Winning Mobile Apps
TechWell
 
Whitepaper fluke
Whitepaper flukeWhitepaper fluke
Whitepaper fluke
Clair Kirby
 
testing throughout-the-software-life-cycle-section-2
testing throughout-the-software-life-cycle-section-2testing throughout-the-software-life-cycle-section-2
testing throughout-the-software-life-cycle-section-2
Dr. Ahmed Al Zaidy
 
Essential Test Management and Planning
Essential Test Management and PlanningEssential Test Management and Planning
Essential Test Management and Planning
TechWell
 
Agile Maintenance 1.0
Agile Maintenance 1.0Agile Maintenance 1.0
Agile Maintenance 1.0
Xebia IT Architects
 
An Introduction to Software Performance Engineering
An Introduction to Software Performance EngineeringAn Introduction to Software Performance Engineering
An Introduction to Software Performance Engineering
Correlsense
 
Lean for Competitive Advantage and Customer Delight
Lean for Competitive Advantage and Customer DelightLean for Competitive Advantage and Customer Delight
Lean for Competitive Advantage and Customer Delight
Lean India Summit
 
SPS IPC Drives 2015 - Itris Automation paper
SPS IPC Drives 2015 - Itris Automation paperSPS IPC Drives 2015 - Itris Automation paper
SPS IPC Drives 2015 - Itris Automation paper
Itris Automation Square
 
Top 8 Trends in Performance Engineering
Top 8 Trends in Performance EngineeringTop 8 Trends in Performance Engineering
Top 8 Trends in Performance Engineering
Convetit
 
Performance Engineering Basics
Performance Engineering BasicsPerformance Engineering Basics
Performance Engineering Basics
Impetus Technologies
 
kshitij_resume_Ln
kshitij_resume_Lnkshitij_resume_Ln
kshitij_resume_Ln
KSHITIJ PANDEY
 
DST Vega test Tool
DST Vega test ToolDST Vega test Tool
DST Vega test Tool
BabuDevanandam
 
USUGM 2014 - Zhenbin Li (Boehringer Ingelheim): Challenges and Approach in Mi...
USUGM 2014 - Zhenbin Li (Boehringer Ingelheim): Challenges and Approach in Mi...USUGM 2014 - Zhenbin Li (Boehringer Ingelheim): Challenges and Approach in Mi...
USUGM 2014 - Zhenbin Li (Boehringer Ingelheim): Challenges and Approach in Mi...
ChemAxon
 
C.V, Narayanan - Open Source Tools for Test Management - EuroSTAR 2010
C.V, Narayanan - Open Source Tools for Test Management - EuroSTAR 2010C.V, Narayanan - Open Source Tools for Test Management - EuroSTAR 2010
C.V, Narayanan - Open Source Tools for Test Management - EuroSTAR 2010
TEST Huddle
 

What's hot (20)

Essential Test Management and Planning
Essential Test Management and PlanningEssential Test Management and Planning
Essential Test Management and Planning
 
ITIL Best Practice for Software Companies
ITIL Best Practice for Software CompaniesITIL Best Practice for Software Companies
ITIL Best Practice for Software Companies
 
DevOps Workshop - Addressing Quality Challenges of Highly Complex and Integra...
DevOps Workshop - Addressing Quality Challenges of Highly Complex and Integra...DevOps Workshop - Addressing Quality Challenges of Highly Complex and Integra...
DevOps Workshop - Addressing Quality Challenges of Highly Complex and Integra...
 
Site Reliability Engineering: An Enterprise Adoption Story (an ITSM Academy W...
Site Reliability Engineering: An Enterprise Adoption Story (an ITSM Academy W...Site Reliability Engineering: An Enterprise Adoption Story (an ITSM Academy W...
Site Reliability Engineering: An Enterprise Adoption Story (an ITSM Academy W...
 
Test Automation Strategy
Test Automation StrategyTest Automation Strategy
Test Automation Strategy
 
Fundamental of testing
Fundamental of testingFundamental of testing
Fundamental of testing
 
How to Deliver Winning Mobile Apps
How to Deliver Winning Mobile AppsHow to Deliver Winning Mobile Apps
How to Deliver Winning Mobile Apps
 
Whitepaper fluke
Whitepaper flukeWhitepaper fluke
Whitepaper fluke
 
testing throughout-the-software-life-cycle-section-2
testing throughout-the-software-life-cycle-section-2testing throughout-the-software-life-cycle-section-2
testing throughout-the-software-life-cycle-section-2
 
Essential Test Management and Planning
Essential Test Management and PlanningEssential Test Management and Planning
Essential Test Management and Planning
 
Agile Maintenance 1.0
Agile Maintenance 1.0Agile Maintenance 1.0
Agile Maintenance 1.0
 
An Introduction to Software Performance Engineering
An Introduction to Software Performance EngineeringAn Introduction to Software Performance Engineering
An Introduction to Software Performance Engineering
 
Lean for Competitive Advantage and Customer Delight
Lean for Competitive Advantage and Customer DelightLean for Competitive Advantage and Customer Delight
Lean for Competitive Advantage and Customer Delight
 
SPS IPC Drives 2015 - Itris Automation paper
SPS IPC Drives 2015 - Itris Automation paperSPS IPC Drives 2015 - Itris Automation paper
SPS IPC Drives 2015 - Itris Automation paper
 
Top 8 Trends in Performance Engineering
Top 8 Trends in Performance EngineeringTop 8 Trends in Performance Engineering
Top 8 Trends in Performance Engineering
 
Performance Engineering Basics
Performance Engineering BasicsPerformance Engineering Basics
Performance Engineering Basics
 
kshitij_resume_Ln
kshitij_resume_Lnkshitij_resume_Ln
kshitij_resume_Ln
 
DST Vega test Tool
DST Vega test ToolDST Vega test Tool
DST Vega test Tool
 
USUGM 2014 - Zhenbin Li (Boehringer Ingelheim): Challenges and Approach in Mi...
USUGM 2014 - Zhenbin Li (Boehringer Ingelheim): Challenges and Approach in Mi...USUGM 2014 - Zhenbin Li (Boehringer Ingelheim): Challenges and Approach in Mi...
USUGM 2014 - Zhenbin Li (Boehringer Ingelheim): Challenges and Approach in Mi...
 
C.V, Narayanan - Open Source Tools for Test Management - EuroSTAR 2010
C.V, Narayanan - Open Source Tools for Test Management - EuroSTAR 2010C.V, Narayanan - Open Source Tools for Test Management - EuroSTAR 2010
C.V, Narayanan - Open Source Tools for Test Management - EuroSTAR 2010
 

Viewers also liked

Congruent Coaching: An Interactive Exploration
Congruent Coaching: An Interactive ExplorationCongruent Coaching: An Interactive Exploration
Congruent Coaching: An Interactive Exploration
TechWell
 
CAN I USE THIS?—A Mnemonic for Usability Testing
CAN I USE THIS?—A Mnemonic for Usability TestingCAN I USE THIS?—A Mnemonic for Usability Testing
CAN I USE THIS?—A Mnemonic for Usability Testing
TechWell
 
Measurement and Metrics for Test Managers
Measurement and Metrics for Test ManagersMeasurement and Metrics for Test Managers
Measurement and Metrics for Test Managers
TechWell
 
Critical Thinking for Software Testers
Critical Thinking for Software TestersCritical Thinking for Software Testers
Critical Thinking for Software Testers
TechWell
 
The Art of Complex System Testing
The Art of Complex System TestingThe Art of Complex System Testing
The Art of Complex System Testing
TechWell
 
A Guide to Cross-Browser Functional Testingv
A Guide to Cross-Browser Functional TestingvA Guide to Cross-Browser Functional Testingv
A Guide to Cross-Browser Functional Testingv
TechWell
 
User Acceptance Testing: Make the User a Part of the Team
User Acceptance Testing: Make the User a Part of the TeamUser Acceptance Testing: Make the User a Part of the Team
User Acceptance Testing: Make the User a Part of the Team
TechWell
 
T1
T1T1
Improving the Mobile Application User Experience (UX)
Improving the Mobile Application User Experience (UX)Improving the Mobile Application User Experience (UX)
Improving the Mobile Application User Experience (UX)
TechWell
 
Rapid Software Testing: Reporting
Rapid Software Testing: ReportingRapid Software Testing: Reporting
Rapid Software Testing: Reporting
TechWell
 
Extreme Automation: Software Quality for the Next Generation Enterprise
Extreme Automation: Software Quality for the Next Generation EnterpriseExtreme Automation: Software Quality for the Next Generation Enterprise
Extreme Automation: Software Quality for the Next Generation Enterprise
TechWell
 
Testing in the Wild: Practices for Testing Beyond the Lab
Testing in the Wild: Practices for Testing Beyond the LabTesting in the Wild: Practices for Testing Beyond the Lab
Testing in the Wild: Practices for Testing Beyond the Lab
TechWell
 
Automate Mobile App Testing—Or Go Crazy
Automate Mobile App Testing—Or Go CrazyAutomate Mobile App Testing—Or Go Crazy
Automate Mobile App Testing—Or Go Crazy
TechWell
 
Continuous Test Automation
Continuous Test AutomationContinuous Test Automation
Continuous Test Automation
TechWell
 

Viewers also liked (14)

Congruent Coaching: An Interactive Exploration
Congruent Coaching: An Interactive ExplorationCongruent Coaching: An Interactive Exploration
Congruent Coaching: An Interactive Exploration
 
CAN I USE THIS?—A Mnemonic for Usability Testing
CAN I USE THIS?—A Mnemonic for Usability TestingCAN I USE THIS?—A Mnemonic for Usability Testing
CAN I USE THIS?—A Mnemonic for Usability Testing
 
Measurement and Metrics for Test Managers
Measurement and Metrics for Test ManagersMeasurement and Metrics for Test Managers
Measurement and Metrics for Test Managers
 
Critical Thinking for Software Testers
Critical Thinking for Software TestersCritical Thinking for Software Testers
Critical Thinking for Software Testers
 
The Art of Complex System Testing
The Art of Complex System TestingThe Art of Complex System Testing
The Art of Complex System Testing
 
A Guide to Cross-Browser Functional Testingv
A Guide to Cross-Browser Functional TestingvA Guide to Cross-Browser Functional Testingv
A Guide to Cross-Browser Functional Testingv
 
User Acceptance Testing: Make the User a Part of the Team
User Acceptance Testing: Make the User a Part of the TeamUser Acceptance Testing: Make the User a Part of the Team
User Acceptance Testing: Make the User a Part of the Team
 
T1
T1T1
T1
 
Improving the Mobile Application User Experience (UX)
Improving the Mobile Application User Experience (UX)Improving the Mobile Application User Experience (UX)
Improving the Mobile Application User Experience (UX)
 
Rapid Software Testing: Reporting
Rapid Software Testing: ReportingRapid Software Testing: Reporting
Rapid Software Testing: Reporting
 
Extreme Automation: Software Quality for the Next Generation Enterprise
Extreme Automation: Software Quality for the Next Generation EnterpriseExtreme Automation: Software Quality for the Next Generation Enterprise
Extreme Automation: Software Quality for the Next Generation Enterprise
 
Testing in the Wild: Practices for Testing Beyond the Lab
Testing in the Wild: Practices for Testing Beyond the LabTesting in the Wild: Practices for Testing Beyond the Lab
Testing in the Wild: Practices for Testing Beyond the Lab
 
Automate Mobile App Testing—Or Go Crazy
Automate Mobile App Testing—Or Go CrazyAutomate Mobile App Testing—Or Go Crazy
Automate Mobile App Testing—Or Go Crazy
 
Continuous Test Automation
Continuous Test AutomationContinuous Test Automation
Continuous Test Automation
 

Similar to Designing for Testability: Differentiator in a Competitive Market

Webinar Presentation: Best Practices in QA Testing - Leveraging Open Source T...
Webinar Presentation: Best Practices in QA Testing - Leveraging Open Source T...Webinar Presentation: Best Practices in QA Testing - Leveraging Open Source T...
Webinar Presentation: Best Practices in QA Testing - Leveraging Open Source T...
Emtec Inc.
 
Improving Quality through Continuous Integration - A case study of CollabNet
Improving Quality through Continuous Integration - A case study of CollabNetImproving Quality through Continuous Integration - A case study of CollabNet
Improving Quality through Continuous Integration - A case study of CollabNet
Venkat Janardhanam, MS, MBA
 
Achieving DevOps using Open Source Tools in the Enterprise
Achieving DevOps using Open Source Tools in the EnterpriseAchieving DevOps using Open Source Tools in the Enterprise
Achieving DevOps using Open Source Tools in the Enterprise
CollabNet
 
Mule soft meetup_th_no1
Mule soft meetup_th_no1Mule soft meetup_th_no1
Mule soft meetup_th_no1
WendyTey4
 
PureApp Presentation
PureApp PresentationPureApp Presentation
PureApp Presentation
Prolifics
 
Mule soft meetup_tw_no1_june17
Mule soft meetup_tw_no1_june17Mule soft meetup_tw_no1_june17
Mule soft meetup_tw_no1_june17
WendyTey4
 
Spira Team Overview Presentation
Spira Team Overview PresentationSpira Team Overview Presentation
Spira Team Overview Presentation
Adam Sandman
 
Mule soft meetup_hk_june2020
Mule soft meetup_hk_june2020Mule soft meetup_hk_june2020
Mule soft meetup_hk_june2020
WendyTey4
 
DevOps in the Hybrid Cloud
DevOps in the Hybrid CloudDevOps in the Hybrid Cloud
DevOps in the Hybrid Cloud
Richard Irving
 
Measuring and Maximizing the Business Impact of Network Automation
Measuring and Maximizing the Business Impact of Network AutomationMeasuring and Maximizing the Business Impact of Network Automation
Measuring and Maximizing the Business Impact of Network Automation
Itential
 
Pure App + Patterns + Prolifics = Feeding Change
Pure App + Patterns + Prolifics = Feeding Change Pure App + Patterns + Prolifics = Feeding Change
Pure App + Patterns + Prolifics = Feeding Change
Prolifics
 
How to build confidence in your release cycle
How to build confidence in your release cycleHow to build confidence in your release cycle
How to build confidence in your release cycle
DiUS
 
kishore
kishorekishore
Service Virtualization: What, Who, When, and How
Service Virtualization: What, Who, When, and HowService Virtualization: What, Who, When, and How
Service Virtualization: What, Who, When, and How
TechWell
 
Innovation in Action - #MFSummit2017
Innovation in Action - #MFSummit2017Innovation in Action - #MFSummit2017
Innovation in Action - #MFSummit2017
Micro Focus
 
Continuous Performance Testing in DevOps - Lee Barnes
Continuous Performance Testing in DevOps - Lee BarnesContinuous Performance Testing in DevOps - Lee Barnes
Continuous Performance Testing in DevOps - Lee Barnes
QA or the Highway
 
MuleSoft Singapore Meetup May 2020
MuleSoft Singapore Meetup May 2020MuleSoft Singapore Meetup May 2020
MuleSoft Singapore Meetup May 2020
Julian Douch
 
Enterprise Agile at Lockheed Martin - 4th February 2014
Enterprise Agile at Lockheed Martin - 4th February 2014Enterprise Agile at Lockheed Martin - 4th February 2014
Enterprise Agile at Lockheed Martin - 4th February 2014
Association for Project Management
 
Delivering A Great End User Experience
Delivering A Great End User ExperienceDelivering A Great End User Experience
Delivering A Great End User Experience
Trevor Warren
 
Curiosity Software, Infuse and Kumoco present: The Democratisation of Testing
Curiosity Software, Infuse and Kumoco present: The Democratisation of TestingCuriosity Software, Infuse and Kumoco present: The Democratisation of Testing
Curiosity Software, Infuse and Kumoco present: The Democratisation of Testing
Curiosity Software Ireland
 

Similar to Designing for Testability: Differentiator in a Competitive Market (20)

Webinar Presentation: Best Practices in QA Testing - Leveraging Open Source T...
Webinar Presentation: Best Practices in QA Testing - Leveraging Open Source T...Webinar Presentation: Best Practices in QA Testing - Leveraging Open Source T...
Webinar Presentation: Best Practices in QA Testing - Leveraging Open Source T...
 
Improving Quality through Continuous Integration - A case study of CollabNet
Improving Quality through Continuous Integration - A case study of CollabNetImproving Quality through Continuous Integration - A case study of CollabNet
Improving Quality through Continuous Integration - A case study of CollabNet
 
Achieving DevOps using Open Source Tools in the Enterprise
Achieving DevOps using Open Source Tools in the EnterpriseAchieving DevOps using Open Source Tools in the Enterprise
Achieving DevOps using Open Source Tools in the Enterprise
 
Mule soft meetup_th_no1
Mule soft meetup_th_no1Mule soft meetup_th_no1
Mule soft meetup_th_no1
 
PureApp Presentation
PureApp PresentationPureApp Presentation
PureApp Presentation
 
Mule soft meetup_tw_no1_june17
Mule soft meetup_tw_no1_june17Mule soft meetup_tw_no1_june17
Mule soft meetup_tw_no1_june17
 
Spira Team Overview Presentation
Spira Team Overview PresentationSpira Team Overview Presentation
Spira Team Overview Presentation
 
Mule soft meetup_hk_june2020
Mule soft meetup_hk_june2020Mule soft meetup_hk_june2020
Mule soft meetup_hk_june2020
 
DevOps in the Hybrid Cloud
DevOps in the Hybrid CloudDevOps in the Hybrid Cloud
DevOps in the Hybrid Cloud
 
Measuring and Maximizing the Business Impact of Network Automation
Measuring and Maximizing the Business Impact of Network AutomationMeasuring and Maximizing the Business Impact of Network Automation
Measuring and Maximizing the Business Impact of Network Automation
 
Pure App + Patterns + Prolifics = Feeding Change
Pure App + Patterns + Prolifics = Feeding Change Pure App + Patterns + Prolifics = Feeding Change
Pure App + Patterns + Prolifics = Feeding Change
 
How to build confidence in your release cycle
How to build confidence in your release cycleHow to build confidence in your release cycle
How to build confidence in your release cycle
 
kishore
kishorekishore
kishore
 
Service Virtualization: What, Who, When, and How
Service Virtualization: What, Who, When, and HowService Virtualization: What, Who, When, and How
Service Virtualization: What, Who, When, and How
 
Innovation in Action - #MFSummit2017
Innovation in Action - #MFSummit2017Innovation in Action - #MFSummit2017
Innovation in Action - #MFSummit2017
 
Continuous Performance Testing in DevOps - Lee Barnes
Continuous Performance Testing in DevOps - Lee BarnesContinuous Performance Testing in DevOps - Lee Barnes
Continuous Performance Testing in DevOps - Lee Barnes
 
MuleSoft Singapore Meetup May 2020
MuleSoft Singapore Meetup May 2020MuleSoft Singapore Meetup May 2020
MuleSoft Singapore Meetup May 2020
 
Enterprise Agile at Lockheed Martin - 4th February 2014
Enterprise Agile at Lockheed Martin - 4th February 2014Enterprise Agile at Lockheed Martin - 4th February 2014
Enterprise Agile at Lockheed Martin - 4th February 2014
 
Delivering A Great End User Experience
Delivering A Great End User ExperienceDelivering A Great End User Experience
Delivering A Great End User Experience
 
Curiosity Software, Infuse and Kumoco present: The Democratisation of Testing
Curiosity Software, Infuse and Kumoco present: The Democratisation of TestingCuriosity Software, Infuse and Kumoco present: The Democratisation of Testing
Curiosity Software, Infuse and Kumoco present: The Democratisation of Testing
 

More from TechWell

Failing and Recovering
Failing and RecoveringFailing and Recovering
Failing and Recovering
TechWell
 
Instill a DevOps Testing Culture in Your Team and Organization
Instill a DevOps Testing Culture in Your Team and Organization Instill a DevOps Testing Culture in Your Team and Organization
Instill a DevOps Testing Culture in Your Team and Organization
TechWell
 
Test Design for Fully Automated Build Architecture
Test Design for Fully Automated Build ArchitectureTest Design for Fully Automated Build Architecture
Test Design for Fully Automated Build Architecture
TechWell
 
System-Level Test Automation: Ensuring a Good Start
System-Level Test Automation: Ensuring a Good StartSystem-Level Test Automation: Ensuring a Good Start
System-Level Test Automation: Ensuring a Good Start
TechWell
 
Build Your Mobile App Quality and Test Strategy
Build Your Mobile App Quality and Test StrategyBuild Your Mobile App Quality and Test Strategy
Build Your Mobile App Quality and Test Strategy
TechWell
 
Testing Transformation: The Art and Science for Success
Testing Transformation: The Art and Science for SuccessTesting Transformation: The Art and Science for Success
Testing Transformation: The Art and Science for Success
TechWell
 
Implement BDD with Cucumber and SpecFlow
Implement BDD with Cucumber and SpecFlowImplement BDD with Cucumber and SpecFlow
Implement BDD with Cucumber and SpecFlow
TechWell
 
Develop WebDriver Automated Tests—and Keep Your Sanity
Develop WebDriver Automated Tests—and Keep Your SanityDevelop WebDriver Automated Tests—and Keep Your Sanity
Develop WebDriver Automated Tests—and Keep Your Sanity
TechWell
 
Ma 15
Ma 15Ma 15
Ma 15
TechWell
 
Eliminate Cloud Waste with a Holistic DevOps Strategy
Eliminate Cloud Waste with a Holistic DevOps StrategyEliminate Cloud Waste with a Holistic DevOps Strategy
Eliminate Cloud Waste with a Holistic DevOps Strategy
TechWell
 
Transform Test Organizations for the New World of DevOps
Transform Test Organizations for the New World of DevOpsTransform Test Organizations for the New World of DevOps
Transform Test Organizations for the New World of DevOps
TechWell
 
The Fourth Constraint in Project Delivery—Leadership
The Fourth Constraint in Project Delivery—LeadershipThe Fourth Constraint in Project Delivery—Leadership
The Fourth Constraint in Project Delivery—Leadership
TechWell
 
Resolve the Contradiction of Specialists within Agile Teams
Resolve the Contradiction of Specialists within Agile TeamsResolve the Contradiction of Specialists within Agile Teams
Resolve the Contradiction of Specialists within Agile Teams
TechWell
 
Pin the Tail on the Metric: A Field-Tested Agile Game
Pin the Tail on the Metric: A Field-Tested Agile GamePin the Tail on the Metric: A Field-Tested Agile Game
Pin the Tail on the Metric: A Field-Tested Agile Game
TechWell
 
Agile Performance Holarchy (APH)—A Model for Scaling Agile Teams
Agile Performance Holarchy (APH)—A Model for Scaling Agile TeamsAgile Performance Holarchy (APH)—A Model for Scaling Agile Teams
Agile Performance Holarchy (APH)—A Model for Scaling Agile Teams
TechWell
 
A Business-First Approach to DevOps Implementation
A Business-First Approach to DevOps ImplementationA Business-First Approach to DevOps Implementation
A Business-First Approach to DevOps Implementation
TechWell
 
Databases in a Continuous Integration/Delivery Process
Databases in a Continuous Integration/Delivery ProcessDatabases in a Continuous Integration/Delivery Process
Databases in a Continuous Integration/Delivery Process
TechWell
 
Mobile Testing: What—and What Not—to Automate
Mobile Testing: What—and What Not—to AutomateMobile Testing: What—and What Not—to Automate
Mobile Testing: What—and What Not—to Automate
TechWell
 
Cultural Intelligence: A Key Skill for Success
Cultural Intelligence: A Key Skill for SuccessCultural Intelligence: A Key Skill for Success
Cultural Intelligence: A Key Skill for Success
TechWell
 
Turn the Lights On: A Power Utility Company's Agile Transformation
Turn the Lights On: A Power Utility Company's Agile TransformationTurn the Lights On: A Power Utility Company's Agile Transformation
Turn the Lights On: A Power Utility Company's Agile Transformation
TechWell
 

More from TechWell (20)

Failing and Recovering
Failing and RecoveringFailing and Recovering
Failing and Recovering
 
Instill a DevOps Testing Culture in Your Team and Organization
Instill a DevOps Testing Culture in Your Team and Organization Instill a DevOps Testing Culture in Your Team and Organization
Instill a DevOps Testing Culture in Your Team and Organization
 
Test Design for Fully Automated Build Architecture
Test Design for Fully Automated Build ArchitectureTest Design for Fully Automated Build Architecture
Test Design for Fully Automated Build Architecture
 
System-Level Test Automation: Ensuring a Good Start
System-Level Test Automation: Ensuring a Good StartSystem-Level Test Automation: Ensuring a Good Start
System-Level Test Automation: Ensuring a Good Start
 
Build Your Mobile App Quality and Test Strategy
Build Your Mobile App Quality and Test StrategyBuild Your Mobile App Quality and Test Strategy
Build Your Mobile App Quality and Test Strategy
 
Testing Transformation: The Art and Science for Success
Testing Transformation: The Art and Science for SuccessTesting Transformation: The Art and Science for Success
Testing Transformation: The Art and Science for Success
 
Implement BDD with Cucumber and SpecFlow
Implement BDD with Cucumber and SpecFlowImplement BDD with Cucumber and SpecFlow
Implement BDD with Cucumber and SpecFlow
 
Develop WebDriver Automated Tests—and Keep Your Sanity
Develop WebDriver Automated Tests—and Keep Your SanityDevelop WebDriver Automated Tests—and Keep Your Sanity
Develop WebDriver Automated Tests—and Keep Your Sanity
 
Ma 15
Ma 15Ma 15
Ma 15
 
Eliminate Cloud Waste with a Holistic DevOps Strategy
Eliminate Cloud Waste with a Holistic DevOps StrategyEliminate Cloud Waste with a Holistic DevOps Strategy
Eliminate Cloud Waste with a Holistic DevOps Strategy
 
Transform Test Organizations for the New World of DevOps
Transform Test Organizations for the New World of DevOpsTransform Test Organizations for the New World of DevOps
Transform Test Organizations for the New World of DevOps
 
The Fourth Constraint in Project Delivery—Leadership
The Fourth Constraint in Project Delivery—LeadershipThe Fourth Constraint in Project Delivery—Leadership
The Fourth Constraint in Project Delivery—Leadership
 
Resolve the Contradiction of Specialists within Agile Teams
Resolve the Contradiction of Specialists within Agile TeamsResolve the Contradiction of Specialists within Agile Teams
Resolve the Contradiction of Specialists within Agile Teams
 
Pin the Tail on the Metric: A Field-Tested Agile Game
Pin the Tail on the Metric: A Field-Tested Agile GamePin the Tail on the Metric: A Field-Tested Agile Game
Pin the Tail on the Metric: A Field-Tested Agile Game
 
Agile Performance Holarchy (APH)—A Model for Scaling Agile Teams
Agile Performance Holarchy (APH)—A Model for Scaling Agile TeamsAgile Performance Holarchy (APH)—A Model for Scaling Agile Teams
Agile Performance Holarchy (APH)—A Model for Scaling Agile Teams
 
A Business-First Approach to DevOps Implementation
A Business-First Approach to DevOps ImplementationA Business-First Approach to DevOps Implementation
A Business-First Approach to DevOps Implementation
 
Databases in a Continuous Integration/Delivery Process
Databases in a Continuous Integration/Delivery ProcessDatabases in a Continuous Integration/Delivery Process
Databases in a Continuous Integration/Delivery Process
 
Mobile Testing: What—and What Not—to Automate
Mobile Testing: What—and What Not—to AutomateMobile Testing: What—and What Not—to Automate
Mobile Testing: What—and What Not—to Automate
 
Cultural Intelligence: A Key Skill for Success
Cultural Intelligence: A Key Skill for SuccessCultural Intelligence: A Key Skill for Success
Cultural Intelligence: A Key Skill for Success
 
Turn the Lights On: A Power Utility Company's Agile Transformation
Turn the Lights On: A Power Utility Company's Agile TransformationTurn the Lights On: A Power Utility Company's Agile Transformation
Turn the Lights On: A Power Utility Company's Agile Transformation
 

Recently uploaded

Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
Kari Kakkonen
 
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
Neo4j
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
Neo4j
 
“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”
Claudio Di Ciccio
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
Neo4j
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
SOFTTECHHUB
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
Adtran
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
Matthew Sinclair
 
Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
Uni Systems S.M.S.A.
 
Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...
Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...
Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...
Zilliz
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
Matthew Sinclair
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
James Anderson
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
danishmna97
 
Building RAG with self-deployed Milvus vector database and Snowpark Container...
Building RAG with self-deployed Milvus vector database and Snowpark Container...Building RAG with self-deployed Milvus vector database and Snowpark Container...
Building RAG with self-deployed Milvus vector database and Snowpark Container...
Zilliz
 
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
名前 です男
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
Ana-Maria Mihalceanu
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
Alpen-Adria-Universität
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
Edge AI and Vision Alliance
 

Recently uploaded (20)

Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
 
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
 
“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
 
Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
 
Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...
Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...
Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
 
Building RAG with self-deployed Milvus vector database and Snowpark Container...
Building RAG with self-deployed Milvus vector database and Snowpark Container...Building RAG with self-deployed Milvus vector database and Snowpark Container...
Building RAG with self-deployed Milvus vector database and Snowpark Container...
 
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
 

Designing for Testability: Differentiator in a Competitive Market

  • 1. T8 Test Techniques 5/8/2014 11:15:00 AM Designing for Testability: Differentiator in a Competitive Market Presented by: David Campbell MITRE Corporation Brought to you by: 340 Corporate Way, Suite 300, Orange Park, FL 32073 888-268-8770 ∙ 904-278-0524 ∙ sqeinfo@sqe.com ∙ www.sqe.com
  • 2. David Campbell MITRE Corporation David Campbell has twenty-seven years of technical management and software development experience focusing on high performance and real-time systems. Much of that time was spent with Silicon Graphics Computer Systems and Kasenna, Inc. working on joint programs with customers and partners from a wide variety of markets and development cultures. Today Dave works for the MITRE Corporation directing a lab that focuses on research and evaluation of time critical systems.
  • 3. 4/26/2014 1 | 1 | © 2014 The MITRE Corporation. All rights reserved. For internal MITRE use Designing For Testability Dave Campbell MITRE Approved for Public Release; Distribution Unlimited. 14-0356 | 2 | © 2014 The MITRE Corporation. All rights reserved. For internal MITRE use Biography Dave Campbell – MITRE Corporation Time Critical Systems dcampbell@mitre.org 25 years of software development and technical management – Silicon Graphics Inc. High Performance Servers and Workstations Operating and Real Time Systems Entertainment, Media, High Performance Solutions – Kasenna Inc. IPTV and Video Delivery Platforms
  • 4. 4/26/2014 2 | 3 | © 2014 The MITRE Corporation. All rights reserved. For internal MITRE use Continuing Problem Software Systems are often key contributors to program/project execution risk - Schedule Delays - Cost Overruns - Reliability - Security and Information Assurance | 4 | © 2014 The MITRE Corporation. All rights reserved. For internal MITRE use Observation When analyzing all the software systems that I have observed over 27 years a trend becomes clear: Development organizations that take the long view and invest in testing infrastructure consistently outperform all others in cost, schedule and quality execution
  • 5. 4/26/2014 3 | 5 | © 2014 The MITRE Corporation. All rights reserved. For internal MITRE use Design for Testability (DFT) Earliest stages of design must include test team representation – Requirements, Scheduling, Funding No design is approved without a complete picture of how each subsystem is tested independently or integrated into system Need to have long term view – Initial hit to schedule and EVM (Earned Value Metrics) Agile, Continuous, Waterfall – all methodologies can support approach Steps to Enforce Design Testability will Follow | 6 | © 2014 The MITRE Corporation. All rights reserved. For internal MITRE use What to Avoid Evolving development into a process where any comprehensive integration testing requires all software and hardware system components to be effective Full system configuration dependency for testing slows engineering productivity –Lose agility –Lose effectiveness of test coverage –Forces big bang integration testing late in development What is your experience?
  • 6. 4/26/2014 4 | 7 | © 2014 The MITRE Corporation. All rights reserved. For internal MITRE use Example: Radar Processing Classic example, involves distributed hardware and software system components –System of systems Time Critical and batch processing requirements Service level agreement requirements System that will be in operation for over 25 years with technology refreshes over lifespan | 8 | © 2014 The MITRE Corporation. All rights reserved. For internal MITRE use Radar System Components Web services takes requests/presents results Other components manage radar and data it generates Antenna Controller Radar Signal Processing Operations and Control Web Services Repository Clients Does the design require all these components to be available to effectively integration test?
  • 7. 4/26/2014 5 | 9 | © 2014 The MITRE Corporation. All rights reserved. For internal MITRE use Designing for Testability, Step 1 Define Time Critical Core of System Identify all timing critical areas of the system – Understand constraints – Concurrency and potential race conditions Ensure implementation is self monitoring – Reports violations – Effective under loading and scaling All ongoing testing must verify the time critical processing is not compromised as system is integrated | 10 | © 2014 The MITRE Corporation. All rights reserved. For internal MITRE use Designing for Testability, Step 2 Ensure System Can Be Characterized System must be able to be diagnosed – Avoid debug and production builds – Logging system must not alter system timing – Distributed system traceability and time stamping – Keep diagnostic capability native Design to greater than capacity and service load limits – Define denial of service behavior – Data drops or loss handling
  • 8. 4/26/2014 6 | 11 | © 2014 The MITRE Corporation. All rights reserved. For internal MITRE use Designing for Testability, Step 3 Define Component Simulators Create high fidelity software simulations of key system components –Formalizes interfaces and messaging –Resources for every developer, no sharing –Validates the design of component –Much more than stubbing Simulated components allow testing of related components independent of hardware availability –Allow for introduction of error states –Can be used throughout lifecycle | 12 | © 2014 The MITRE Corporation. All rights reserved. For internal MITRE use Designing for Testability, Step 4 Data Injection and Taps Identify areas in system where key data items can be injected or extracted without performance impact –Identify APIs and necessary state setup Create low impact tools to perform function, insure the tools meet required performance –Load generators, IA probes Injectors and taps allow for post processing analysis and inserting data generated from hardware prototypes
  • 9. 4/26/2014 7 | 13 | © 2014 The MITRE Corporation. All rights reserved. For internal MITRE use Designing for Testability, Step 5 Apply Continuous Integration Testing Integration testing never stops – Avoid waiting on testing anything – Capacity and service loading early and often – Avoid point testing only of a capability – Apply automation and testing frameworks Use simulators, injectors and any available hardware to construct test configurations – Not uncommon for system to be used for hardware debugging during day and running integration tests with simulated hardware at night Complex distributed systems of systems may have more end to end dependencies than designers can predict, mitigate with a testable design | 14 | © 2014 The MITRE Corporation. All rights reserved. For internal MITRE use Tale of Two Engineering Teams Two teams design and implement the same Video on Demand (VOD) system for competitive contract award – Requirements bound implementation choices Team A designs for testability and implements many of the necessary steps Team B does not implement any testability Team B initially performs better but as development advances they become more dependent on limited hardware configurations Team A emerges with a product that has a much lower cost of ownership
  • 10. 4/26/2014 8 | 15 | © 2014 The MITRE Corporation. All rights reserved. For internal MITRE use Key Factors Impacting Decision Cost advantage emerges for Team A – Shorter implementation time to add new capabilities – Short reintegration time to fix and test defects – Simulation components can be utilized for training and provisioning of deployed system Flexibility advantage emerges for Team A – VOD was a new technology and many deployment trials were needed with different configurations – Increased ability to work with more partners, investors DFT concepts eventually become part of the Open Cable Architecture Specification | 16 | © 2014 The MITRE Corporation. All rights reserved. For internal MITRE use Sample Steps Review Define Time Critical Core of System – Ensure this never breaks Ensure System can be Characterized – No performance impact, one implementation High Fidelity Simulation Components – Refine design, Provide flexibility, Key artifact Data Injectors and Extractors – Design for key points of system (i.e. IA boundaries) Continuous Testing Approach – Avoid the “big bang” and “one and done” scenarios – Test hard stuff first, capacity and service loading Use approaches that work within your project and culture
  • 11. 4/26/2014 9 | 17 | © 2014 The MITRE Corporation. All rights reserved. For internal MITRE use Conclusion There is additional initial cost to a testable design Testable design needs to be defined in specification and requirements, contract deliverable During development execution, need to resist temptation to pull development resources and funding away from testability efforts High Performing Engineering Organizations Design for Testability