Enhancing Quality and Test in Medical Device Design - Part 2.pdf

ICS
ICSICS
Sub-Header Text
Welcome
1
About ICS
Established in 1987, Integrated
Computer Solutions, Inc. (ICS)
delivers innovative software
solutions with a full suite of
services to accelerate development
of successful next-gen products.
ICS is headquartered outside
Boston in Waltham, Mass. with
offices in California, Canada and
Europe. Currently 160+ people.
www.ics.com
Delivering a Full Suite of
Medtech Services
● IEC 62366-UX/UI Design
● Custom Frontend & Backend Software Development
● Development with IEC 62304-Compliant Platform
● Low-code Tools that Convert UX Prototype to
Product
● Medical Device Cybersecurity
● AWS and Azure Cloud Services and Analytics
● ISO 14971-Compliant Hazard Analysis
● Software Verification Testing
● Digital Twins for Training and Simulation
● Complimentary Software Technology Assessments
Quality and Test in Medical Devices
1. Part 1 - Recap
2. Part 2 - Test Methods, Pros, Cons
3. The complete picture Quality and Test
Page #
Part 1 Recap
1. Usability to systematically reduce Use Errors through product design - impacts quality
2. Architecture for quality - maintainable, testable, extensible, reliable, available
a. Tiered layers - visibility / access
b. Error injection - difficult to test sub-systems
c. Dependency inversion - simulators and visibility
3. Code analyzers
a. A quality tool, with tradeoffs
b. Necessary but not sufficient (for complex projects)
Usability and Architecture for Quality
5
Part 2
➢ Test Canon
● Automated GUI testing
● System testing
● Integration testing
● Unit tests
➢ High-Value testing
○ Key goals
○ Example
➢ Verification vs. test canon
➢ Software “Reliability"
Pros and Cons of Testing
6
Automated UI
Testing
Page #
Using a 3rd party application to automate mouse clicks on a GUI (Graphical User Interface)
Test tools manage scripts and collections and support automation
Good for:
- Stable User Interfaces (not undergoing changes)
- Enduring value - runs ‘for free’
- Functional/system/black-box testing
Automated Graphical
User Interface Testing
8
Lambda Test
Selenium
AutoHotKey
Squish
Test Complete
Cypress
Challenges
- Brittle - Superficial changes to UI can cause tests to fail
- Test strategy - create modular/reusable tests that can be daisy-chained
- No variability - tests the same thing over and over
- Mostly tells you something changed
- Changes system - additional process running on system with threading considerations
- i.e. a graphic bug example (triangles)
Automated User Interface Testing
9
Lambda Test
Selenium
AutoHotKey
Squish
System Testing
Page #
UI vs. System testing → same?
● Depends on architecture and functionality of the UI
● Are all system behaviors available from the UI?
System Testing
● May require additional test software/framework (i.e. LIS, Cloud services)
● Focuses on positive and negative test cases
● Can be harder to automate
Both
Are tested vs. product requirements
System Testing
11
Integration Testing
Page #
Why integration testing is important
- Behavior obscured by system
complexity
- FDA language indicating that functional
testing (Black box), is not sufficient as it
does not exercise hidden dependencies
- Rigorously test behavior for each block
and each interface
- Essential for large or complex products
Integration Testing
13
Pro
- Essential, irreplaceable form of test for
a complex system
Con
- Labor intensive
- Time-consuming
Unit Tests
Page #
Unit Tests
Background
- The smallest unit of test
- Software functions that call product functions
- They usually are numerous, multiple test functions for
a single product function. Executed by a framework in
an automated build/test sequence.
- Necessary, but far from adequate
As valuable as we thought?
15
Unit Tests
Pros
- Finds bugs early, at check-in
- Easily automated - Part of Continuous Integration
- Automated coverage metrics
- Enduring value
- Mature tool set (Google Test, xUnit, Mocha)
- Gold standard
Cons
- Increases initial development effort
- Finds few bugs
- Static
- Obvious/trivial
- Low value/effort ratio
- Small code changes can take much longer
- False confidence in code quality
Pros / Cons?
16
Commonly seen:
- Low value unit tests that rarely find
a bug
- Unit test code > product source
code - making changes difficult
- High effort to get the last 10%
coverage - with little apparent
return
- But,... still essential
Unit Tests
Keep it light
Don’t try for 100% everywhere
Differentiate highly critical vs. non-critical
Pin down the corners vs. exhaustive testing
Don’t:
Add high levels of test if product in flux
Add trivial testing to improve code coverage metrics
Best applied to
Stable products
When losing experienced staff
Sophisticated/complex designs
Automation: Continuous Integration, automated emails
Best practices
Page #
Best practice
Non-trivial tests written for stable
products with low staffing levels in an
automated environment
Worst practice
Simple tests written for 100% code
coverage on products undergoing change
TL;DR
High Value Testing
Page #
➢ Analyze software sub-components for criticality
○ Comes from IEC 62304: risk based
analysis for each software
sub-component
○ Adjust your process according to risk
➢ Allows you to discriminate between critical
sub-systems and non-critical sub-systems
➢ Overall safety class = MAX(each functional
aspect)
High Value Testing
19
C B C C B C C A B A C A
Key goals
1) Balance test resources around criticality of
component to Intended Use, Safety, Efficacy
2) Minimize development overhead
3) Minimize regulatory burden
Example
- “Offline Data Access” omits unit, integration,
system testing
Pro
- Less budget overall
- More budget on critical areas
Con
- Expertise: More complicated to plan and apply
- Hard to keep track of →Test Plan
High Value Testing
20
A
C B C C B C C A B C A
➢ Test vs. Verification
➢ Reliability
Page #
Quality
team
V&V
team
Engineering
Quality Assurance
- Confirm process
- Checking that SDP steps were followed
- Issuing/processing CAPAs
Engineering Test Engineer
- Test automation (scripts, CI integration)
- Ad-hoc testing
- Smoke testing
- Build management
Verification Test Engineer
- Formal test protocol writing
- Formal test protocol execution
- Test coverage
- Requirement focus
Validation Test
- Formal test protocol writing
- Formal test protocol execution
- Clinical focus
- Statistical test treatment
HF/UE Test
Engineer
- Summative test
HF/UE Test
Engineer
- Formative test
Engineering
Vs
Quality
Developer
- Unit tests
- Ad-hoc testing
Quality driven
Plan → Review → Report
Plan
Accounts for engineering tests
Analyze/Review
Determines outcome
Report
Formally documents
Engineering driven
- Development process
- Includes ad-hoc
Engineering Test vs. Verification & Validation
● Software is logical not physical so traditional concepts of failure
don’t apply
○ Mechanical or electrical systems have Bathtub failure curves
● Software Reliability is a nuanced concept different from Software
Quality
○ Reliability is Software Quality over time
○ i.e. How long has the software been meeting it’s requirements
● Reliability
○ Considers Total Inputs vs Total Outputs
○ Tests a sample of Total Inputs
○ Probability = Number failing cases / Total cases
○ Testing types: Feature/Load/Regression test
○
● Takeaway:
○ Reliability is a sample based, predictive metric different from
QA/QC/Test
○ A complete, quantitative, system for assessing software
Software Reliability
23
Tying it together:
Part 1 & 2
Quality vs. Test
Page #
Quality → Test
What’s the relationship between quality and test?
Quality as an outcome, Test as a method?
Can you test quality into a product?
Usability
Use Errors
Prevent unintended behaviors
Architecture
Separation
Clear responsibilities
Access / Visibility
Prevent unintended functionality
Test canon (unit, integration, system, UI)
Quality/Test relationship
25
Quality Assurance
Quality Control
Testing
Prevent Defects
Correct Defects
Detect Defects
Thank You
Page #
1 von 26

Recomendados

Solano Labs presented at MassTLC's automated testing von
Solano Labs presented at MassTLC's automated testingSolano Labs presented at MassTLC's automated testing
Solano Labs presented at MassTLC's automated testingMassTLC
701 views11 Folien
Triple Assurance: AI-Powered Test Automation in UI Design and Functionality von
Triple Assurance: AI-Powered Test Automation in UI Design and FunctionalityTriple Assurance: AI-Powered Test Automation in UI Design and Functionality
Triple Assurance: AI-Powered Test Automation in UI Design and FunctionalityApplitools
50 views17 Folien
6.11.2013 - 2013 - Continuous Delivery - Testing for Agile Through Continuo... von
6.11.2013   - 2013 - Continuous Delivery - Testing for Agile Through Continuo...6.11.2013   - 2013 - Continuous Delivery - Testing for Agile Through Continuo...
6.11.2013 - 2013 - Continuous Delivery - Testing for Agile Through Continuo...IBM Rational
1.8K views28 Folien
Building a Complete Pipeline: The Essential Components of Continuous Testing ... von
Building a Complete Pipeline: The Essential Components of Continuous Testing ...Building a Complete Pipeline: The Essential Components of Continuous Testing ...
Building a Complete Pipeline: The Essential Components of Continuous Testing ...Applitools
688 views41 Folien
Test automation lessons from WebSphere Application Server von
Test automation lessons from WebSphere Application ServerTest automation lessons from WebSphere Application Server
Test automation lessons from WebSphere Application ServerRobbie Minshall
608 views53 Folien
CI/CT/CD and Role of Quality Engineering von
CI/CT/CD and Role of Quality EngineeringCI/CT/CD and Role of Quality Engineering
CI/CT/CD and Role of Quality EngineeringSushma
6.1K views15 Folien

Más contenido relacionado

Similar a Enhancing Quality and Test in Medical Device Design - Part 2.pdf

Dev ops for mainframe innovate session 2402 von
Dev ops for mainframe innovate session 2402Dev ops for mainframe innovate session 2402
Dev ops for mainframe innovate session 2402Rosalind Radcliffe
1.4K views31 Folien
20070925 03 - La qualimétrie en environnement industriel (Schneider automation) von
20070925 03 - La qualimétrie en environnement industriel (Schneider automation)20070925 03 - La qualimétrie en environnement industriel (Schneider automation)
20070925 03 - La qualimétrie en environnement industriel (Schneider automation)LeClubQualiteLogicielle
113 views22 Folien
Future of QA von
Future of QAFuture of QA
Future of QAamitagarwal2006
480 views47 Folien
Futureofqa von
FutureofqaFutureofqa
Futureofqaamitagarwal2006
260 views47 Folien
An Ultimate Guide to Continuous Testing in Agile Projects.pdf von
An Ultimate Guide to Continuous Testing in Agile Projects.pdfAn Ultimate Guide to Continuous Testing in Agile Projects.pdf
An Ultimate Guide to Continuous Testing in Agile Projects.pdfKMSSolutionsMarketin
124 views10 Folien
Test Automation: Investment Today Pays Back Tomorrow von
Test Automation: Investment Today Pays Back TomorrowTest Automation: Investment Today Pays Back Tomorrow
Test Automation: Investment Today Pays Back TomorrowTechWell
528 views23 Folien

Similar a Enhancing Quality and Test in Medical Device Design - Part 2.pdf(20)

Dev ops for mainframe innovate session 2402 von Rosalind Radcliffe
Dev ops for mainframe innovate session 2402Dev ops for mainframe innovate session 2402
Dev ops for mainframe innovate session 2402
Rosalind Radcliffe1.4K views
20070925 03 - La qualimétrie en environnement industriel (Schneider automation) von LeClubQualiteLogicielle
20070925 03 - La qualimétrie en environnement industriel (Schneider automation)20070925 03 - La qualimétrie en environnement industriel (Schneider automation)
20070925 03 - La qualimétrie en environnement industriel (Schneider automation)
An Ultimate Guide to Continuous Testing in Agile Projects.pdf von KMSSolutionsMarketin
An Ultimate Guide to Continuous Testing in Agile Projects.pdfAn Ultimate Guide to Continuous Testing in Agile Projects.pdf
An Ultimate Guide to Continuous Testing in Agile Projects.pdf
Test Automation: Investment Today Pays Back Tomorrow von TechWell
Test Automation: Investment Today Pays Back TomorrowTest Automation: Investment Today Pays Back Tomorrow
Test Automation: Investment Today Pays Back Tomorrow
TechWell528 views
Nuevosoft Test Manager Overview von Suhas Patil
Nuevosoft Test Manager OverviewNuevosoft Test Manager Overview
Nuevosoft Test Manager Overview
Suhas Patil716 views
Presentation Verification & Validation von Elmar Selbach
Presentation Verification & ValidationPresentation Verification & Validation
Presentation Verification & Validation
Elmar Selbach1.1K views
Ady beleanu automate-theprocessdelivery von Romania Testing
Ady beleanu   automate-theprocessdeliveryAdy beleanu   automate-theprocessdelivery
Ady beleanu automate-theprocessdelivery
Romania Testing1.5K views
Rtc2014 automate the_process_deliver_quality_ady_beleanu von Ady Beleanu
Rtc2014 automate the_process_deliver_quality_ady_beleanuRtc2014 automate the_process_deliver_quality_ady_beleanu
Rtc2014 automate the_process_deliver_quality_ady_beleanu
Ady Beleanu414 views
Impetus qLabs Solutions von Vipul Gupta
Impetus qLabs SolutionsImpetus qLabs Solutions
Impetus qLabs Solutions
Vipul Gupta644 views
Automated Software Testing Framework Training by Quontra Solutions von Quontra Solutions
Automated Software Testing Framework Training by Quontra SolutionsAutomated Software Testing Framework Training by Quontra Solutions
Automated Software Testing Framework Training by Quontra Solutions
Quontra Solutions 857 views
Agile Engineering Sparker GLASScon 2015 von Stephen Ritchie
Agile Engineering Sparker GLASScon 2015Agile Engineering Sparker GLASScon 2015
Agile Engineering Sparker GLASScon 2015
Stephen Ritchie668 views
Automating The Process For Building Reliable Software von guest8861ff
Automating The Process For Building Reliable SoftwareAutomating The Process For Building Reliable Software
Automating The Process For Building Reliable Software
guest8861ff759 views
Lightning Talks by Globant - Automation (This app runs by itself ) von Globant
Lightning Talks by Globant -  Automation (This app runs by itself ) Lightning Talks by Globant -  Automation (This app runs by itself )
Lightning Talks by Globant - Automation (This app runs by itself )
Globant105 views
Creating a successful continuous testing environment by Eran Kinsbruner von QA or the Highway
Creating a successful continuous testing environment by Eran KinsbrunerCreating a successful continuous testing environment by Eran Kinsbruner
Creating a successful continuous testing environment by Eran Kinsbruner
QA or the Highway184 views
Continuous integration practices to improve the software quality von Fabricio Epaminondas
Continuous integration practices to improve the software qualityContinuous integration practices to improve the software quality
Continuous integration practices to improve the software quality

Más de ICS

Overcoming CMake Configuration Issues Webinar von
Overcoming CMake Configuration Issues WebinarOvercoming CMake Configuration Issues Webinar
Overcoming CMake Configuration Issues WebinarICS
98 views38 Folien
Designing and Managing IoT Devices for Rapid Deployment - Webinar.pdf von
Designing and Managing IoT Devices for Rapid Deployment - Webinar.pdfDesigning and Managing IoT Devices for Rapid Deployment - Webinar.pdf
Designing and Managing IoT Devices for Rapid Deployment - Webinar.pdfICS
73 views27 Folien
Creating Digital Twins Using Rapid Development Techniques.pdf von
Creating Digital Twins Using Rapid Development Techniques.pdfCreating Digital Twins Using Rapid Development Techniques.pdf
Creating Digital Twins Using Rapid Development Techniques.pdfICS
155 views28 Folien
Secure Your Medical Devices From the Ground Up von
Secure Your Medical Devices From the Ground Up Secure Your Medical Devices From the Ground Up
Secure Your Medical Devices From the Ground Up ICS
423 views26 Folien
Cybersecurity and Software Updates in Medical Devices.pdf von
Cybersecurity and Software Updates in Medical Devices.pdfCybersecurity and Software Updates in Medical Devices.pdf
Cybersecurity and Software Updates in Medical Devices.pdfICS
427 views41 Folien
Bridging the Gap Between Development and Regulatory Teams von
Bridging the Gap Between Development and Regulatory TeamsBridging the Gap Between Development and Regulatory Teams
Bridging the Gap Between Development and Regulatory TeamsICS
44 views30 Folien

Más de ICS(20)

Overcoming CMake Configuration Issues Webinar von ICS
Overcoming CMake Configuration Issues WebinarOvercoming CMake Configuration Issues Webinar
Overcoming CMake Configuration Issues Webinar
ICS98 views
Designing and Managing IoT Devices for Rapid Deployment - Webinar.pdf von ICS
Designing and Managing IoT Devices for Rapid Deployment - Webinar.pdfDesigning and Managing IoT Devices for Rapid Deployment - Webinar.pdf
Designing and Managing IoT Devices for Rapid Deployment - Webinar.pdf
ICS73 views
Creating Digital Twins Using Rapid Development Techniques.pdf von ICS
Creating Digital Twins Using Rapid Development Techniques.pdfCreating Digital Twins Using Rapid Development Techniques.pdf
Creating Digital Twins Using Rapid Development Techniques.pdf
ICS155 views
Secure Your Medical Devices From the Ground Up von ICS
Secure Your Medical Devices From the Ground Up Secure Your Medical Devices From the Ground Up
Secure Your Medical Devices From the Ground Up
ICS423 views
Cybersecurity and Software Updates in Medical Devices.pdf von ICS
Cybersecurity and Software Updates in Medical Devices.pdfCybersecurity and Software Updates in Medical Devices.pdf
Cybersecurity and Software Updates in Medical Devices.pdf
ICS427 views
Bridging the Gap Between Development and Regulatory Teams von ICS
Bridging the Gap Between Development and Regulatory TeamsBridging the Gap Between Development and Regulatory Teams
Bridging the Gap Between Development and Regulatory Teams
ICS44 views
IoT Device Fleet Management: Create a Robust Solution with Azure von ICS
IoT Device Fleet Management: Create a Robust Solution with AzureIoT Device Fleet Management: Create a Robust Solution with Azure
IoT Device Fleet Management: Create a Robust Solution with Azure
ICS172 views
Basic Cmake for Qt Users von ICS
Basic Cmake for Qt UsersBasic Cmake for Qt Users
Basic Cmake for Qt Users
ICS490 views
Software Update Mechanisms: Selecting the Best Solutin for Your Embedded Linu... von ICS
Software Update Mechanisms: Selecting the Best Solutin for Your Embedded Linu...Software Update Mechanisms: Selecting the Best Solutin for Your Embedded Linu...
Software Update Mechanisms: Selecting the Best Solutin for Your Embedded Linu...
ICS388 views
Qt Installer Framework von ICS
Qt Installer FrameworkQt Installer Framework
Qt Installer Framework
ICS463 views
Bridging the Gap Between Development and Regulatory Teams von ICS
Bridging the Gap Between Development and Regulatory TeamsBridging the Gap Between Development and Regulatory Teams
Bridging the Gap Between Development and Regulatory Teams
ICS104 views
Overcome Hardware And Software Challenges - Medical Device Case Study von ICS
Overcome Hardware And Software Challenges - Medical Device Case StudyOvercome Hardware And Software Challenges - Medical Device Case Study
Overcome Hardware And Software Challenges - Medical Device Case Study
ICS159 views
User Experience Design for IoT von ICS
User Experience Design for IoTUser Experience Design for IoT
User Experience Design for IoT
ICS239 views
Software Bill of Materials - Accelerating Your Secure Embedded Development.pdf von ICS
Software Bill of Materials - Accelerating Your Secure Embedded Development.pdfSoftware Bill of Materials - Accelerating Your Secure Embedded Development.pdf
Software Bill of Materials - Accelerating Your Secure Embedded Development.pdf
ICS773 views
5 Key Considerations at the Start of SaMD Development von ICS
5 Key Considerations at the Start of SaMD Development5 Key Considerations at the Start of SaMD Development
5 Key Considerations at the Start of SaMD Development
ICS328 views
An In-Depth Look Into Microcontrollers von ICS
An In-Depth Look Into MicrocontrollersAn In-Depth Look Into Microcontrollers
An In-Depth Look Into Microcontrollers
ICS432 views
Introduction to the Qt State Machine Framework using Qt 6 von ICS
Introduction to the Qt State Machine Framework using Qt 6Introduction to the Qt State Machine Framework using Qt 6
Introduction to the Qt State Machine Framework using Qt 6
ICS1.8K views
Leveraging Open Standards to Build Highly Extensible Autonomous Systems von ICS
Leveraging Open Standards to Build Highly Extensible Autonomous SystemsLeveraging Open Standards to Build Highly Extensible Autonomous Systems
Leveraging Open Standards to Build Highly Extensible Autonomous Systems
ICS442 views
Creating Advanced GUIs for Low-power MCUs with Qt von ICS
Creating Advanced GUIs for Low-power MCUs with QtCreating Advanced GUIs for Low-power MCUs with Qt
Creating Advanced GUIs for Low-power MCUs with Qt
ICS472 views
Safeguard Your Medical Devices from Cyber Threats von ICS
Safeguard Your Medical Devices from Cyber ThreatsSafeguard Your Medical Devices from Cyber Threats
Safeguard Your Medical Devices from Cyber Threats
ICS261 views

Último

360 graden fabriek von
360 graden fabriek360 graden fabriek
360 graden fabriekinfo33492
37 views25 Folien
Unmasking the Dark Art of Vectored Exception Handling: Bypassing XDR and EDR ... von
Unmasking the Dark Art of Vectored Exception Handling: Bypassing XDR and EDR ...Unmasking the Dark Art of Vectored Exception Handling: Bypassing XDR and EDR ...
Unmasking the Dark Art of Vectored Exception Handling: Bypassing XDR and EDR ...Donato Onofri
795 views34 Folien
Dapr Unleashed: Accelerating Microservice Development von
Dapr Unleashed: Accelerating Microservice DevelopmentDapr Unleashed: Accelerating Microservice Development
Dapr Unleashed: Accelerating Microservice DevelopmentMiroslav Janeski
10 views29 Folien
BushraDBR: An Automatic Approach to Retrieving Duplicate Bug Reports von
BushraDBR: An Automatic Approach to Retrieving Duplicate Bug ReportsBushraDBR: An Automatic Approach to Retrieving Duplicate Bug Reports
BushraDBR: An Automatic Approach to Retrieving Duplicate Bug ReportsRa'Fat Al-Msie'deen
5 views49 Folien
Gen Apps on Google Cloud PaLM2 and Codey APIs in Action von
Gen Apps on Google Cloud PaLM2 and Codey APIs in ActionGen Apps on Google Cloud PaLM2 and Codey APIs in Action
Gen Apps on Google Cloud PaLM2 and Codey APIs in ActionMárton Kodok
5 views55 Folien
Agile 101 von
Agile 101Agile 101
Agile 101John Valentino
7 views20 Folien

Último(20)

360 graden fabriek von info33492
360 graden fabriek360 graden fabriek
360 graden fabriek
info3349237 views
Unmasking the Dark Art of Vectored Exception Handling: Bypassing XDR and EDR ... von Donato Onofri
Unmasking the Dark Art of Vectored Exception Handling: Bypassing XDR and EDR ...Unmasking the Dark Art of Vectored Exception Handling: Bypassing XDR and EDR ...
Unmasking the Dark Art of Vectored Exception Handling: Bypassing XDR and EDR ...
Donato Onofri795 views
Dapr Unleashed: Accelerating Microservice Development von Miroslav Janeski
Dapr Unleashed: Accelerating Microservice DevelopmentDapr Unleashed: Accelerating Microservice Development
Dapr Unleashed: Accelerating Microservice Development
Miroslav Janeski10 views
BushraDBR: An Automatic Approach to Retrieving Duplicate Bug Reports von Ra'Fat Al-Msie'deen
BushraDBR: An Automatic Approach to Retrieving Duplicate Bug ReportsBushraDBR: An Automatic Approach to Retrieving Duplicate Bug Reports
BushraDBR: An Automatic Approach to Retrieving Duplicate Bug Reports
Gen Apps on Google Cloud PaLM2 and Codey APIs in Action von Márton Kodok
Gen Apps on Google Cloud PaLM2 and Codey APIs in ActionGen Apps on Google Cloud PaLM2 and Codey APIs in Action
Gen Apps on Google Cloud PaLM2 and Codey APIs in Action
Márton Kodok5 views
2023-November-Schneider Electric-Meetup-BCN Admin Group.pptx von animuscrm
2023-November-Schneider Electric-Meetup-BCN Admin Group.pptx2023-November-Schneider Electric-Meetup-BCN Admin Group.pptx
2023-November-Schneider Electric-Meetup-BCN Admin Group.pptx
animuscrm14 views
DSD-INT 2023 Exploring flash flood hazard reduction in arid regions using a h... von Deltares
DSD-INT 2023 Exploring flash flood hazard reduction in arid regions using a h...DSD-INT 2023 Exploring flash flood hazard reduction in arid regions using a h...
DSD-INT 2023 Exploring flash flood hazard reduction in arid regions using a h...
Deltares5 views
DSD-INT 2023 Process-based modelling of salt marsh development coupling Delft... von Deltares
DSD-INT 2023 Process-based modelling of salt marsh development coupling Delft...DSD-INT 2023 Process-based modelling of salt marsh development coupling Delft...
DSD-INT 2023 Process-based modelling of salt marsh development coupling Delft...
Deltares7 views
DSD-INT 2023 Thermobaricity in 3D DCSM-FM - taking pressure into account in t... von Deltares
DSD-INT 2023 Thermobaricity in 3D DCSM-FM - taking pressure into account in t...DSD-INT 2023 Thermobaricity in 3D DCSM-FM - taking pressure into account in t...
DSD-INT 2023 Thermobaricity in 3D DCSM-FM - taking pressure into account in t...
Deltares9 views
Airline Booking Software von SharmiMehta
Airline Booking SoftwareAirline Booking Software
Airline Booking Software
SharmiMehta5 views
.NET Developer Conference 2023 - .NET Microservices mit Dapr – zu viel Abstra... von Marc Müller
.NET Developer Conference 2023 - .NET Microservices mit Dapr – zu viel Abstra....NET Developer Conference 2023 - .NET Microservices mit Dapr – zu viel Abstra...
.NET Developer Conference 2023 - .NET Microservices mit Dapr – zu viel Abstra...
Marc Müller38 views
Team Transformation Tactics for Holistic Testing and Quality (Japan Symposium... von Lisi Hocke
Team Transformation Tactics for Holistic Testing and Quality (Japan Symposium...Team Transformation Tactics for Holistic Testing and Quality (Japan Symposium...
Team Transformation Tactics for Holistic Testing and Quality (Japan Symposium...
Lisi Hocke28 views
DSD-INT 2023 Delft3D FM Suite 2024.01 2D3D - New features + Improvements - Ge... von Deltares
DSD-INT 2023 Delft3D FM Suite 2024.01 2D3D - New features + Improvements - Ge...DSD-INT 2023 Delft3D FM Suite 2024.01 2D3D - New features + Improvements - Ge...
DSD-INT 2023 Delft3D FM Suite 2024.01 2D3D - New features + Improvements - Ge...
Deltares17 views
AI and Ml presentation .pptx von FayazAli87
AI and Ml presentation .pptxAI and Ml presentation .pptx
AI and Ml presentation .pptx
FayazAli8711 views
Dev-Cloud Conference 2023 - Continuous Deployment Showdown: Traditionelles CI... von Marc Müller
Dev-Cloud Conference 2023 - Continuous Deployment Showdown: Traditionelles CI...Dev-Cloud Conference 2023 - Continuous Deployment Showdown: Traditionelles CI...
Dev-Cloud Conference 2023 - Continuous Deployment Showdown: Traditionelles CI...
Marc Müller37 views
DSD-INT 2023 Simulating a falling apron in Delft3D 4 - Engineering Practice -... von Deltares
DSD-INT 2023 Simulating a falling apron in Delft3D 4 - Engineering Practice -...DSD-INT 2023 Simulating a falling apron in Delft3D 4 - Engineering Practice -...
DSD-INT 2023 Simulating a falling apron in Delft3D 4 - Engineering Practice -...
Deltares6 views
DSD-INT 2023 Wave-Current Interaction at Montrose Tidal Inlet System and Its ... von Deltares
DSD-INT 2023 Wave-Current Interaction at Montrose Tidal Inlet System and Its ...DSD-INT 2023 Wave-Current Interaction at Montrose Tidal Inlet System and Its ...
DSD-INT 2023 Wave-Current Interaction at Montrose Tidal Inlet System and Its ...
Deltares10 views

Enhancing Quality and Test in Medical Device Design - Part 2.pdf

  • 2. About ICS Established in 1987, Integrated Computer Solutions, Inc. (ICS) delivers innovative software solutions with a full suite of services to accelerate development of successful next-gen products. ICS is headquartered outside Boston in Waltham, Mass. with offices in California, Canada and Europe. Currently 160+ people.
  • 3. www.ics.com Delivering a Full Suite of Medtech Services ● IEC 62366-UX/UI Design ● Custom Frontend & Backend Software Development ● Development with IEC 62304-Compliant Platform ● Low-code Tools that Convert UX Prototype to Product ● Medical Device Cybersecurity ● AWS and Azure Cloud Services and Analytics ● ISO 14971-Compliant Hazard Analysis ● Software Verification Testing ● Digital Twins for Training and Simulation ● Complimentary Software Technology Assessments
  • 4. Quality and Test in Medical Devices 1. Part 1 - Recap 2. Part 2 - Test Methods, Pros, Cons 3. The complete picture Quality and Test Page #
  • 5. Part 1 Recap 1. Usability to systematically reduce Use Errors through product design - impacts quality 2. Architecture for quality - maintainable, testable, extensible, reliable, available a. Tiered layers - visibility / access b. Error injection - difficult to test sub-systems c. Dependency inversion - simulators and visibility 3. Code analyzers a. A quality tool, with tradeoffs b. Necessary but not sufficient (for complex projects) Usability and Architecture for Quality 5
  • 6. Part 2 ➢ Test Canon ● Automated GUI testing ● System testing ● Integration testing ● Unit tests ➢ High-Value testing ○ Key goals ○ Example ➢ Verification vs. test canon ➢ Software “Reliability" Pros and Cons of Testing 6
  • 8. Using a 3rd party application to automate mouse clicks on a GUI (Graphical User Interface) Test tools manage scripts and collections and support automation Good for: - Stable User Interfaces (not undergoing changes) - Enduring value - runs ‘for free’ - Functional/system/black-box testing Automated Graphical User Interface Testing 8 Lambda Test Selenium AutoHotKey Squish Test Complete Cypress
  • 9. Challenges - Brittle - Superficial changes to UI can cause tests to fail - Test strategy - create modular/reusable tests that can be daisy-chained - No variability - tests the same thing over and over - Mostly tells you something changed - Changes system - additional process running on system with threading considerations - i.e. a graphic bug example (triangles) Automated User Interface Testing 9 Lambda Test Selenium AutoHotKey Squish
  • 11. UI vs. System testing → same? ● Depends on architecture and functionality of the UI ● Are all system behaviors available from the UI? System Testing ● May require additional test software/framework (i.e. LIS, Cloud services) ● Focuses on positive and negative test cases ● Can be harder to automate Both Are tested vs. product requirements System Testing 11
  • 13. Why integration testing is important - Behavior obscured by system complexity - FDA language indicating that functional testing (Black box), is not sufficient as it does not exercise hidden dependencies - Rigorously test behavior for each block and each interface - Essential for large or complex products Integration Testing 13 Pro - Essential, irreplaceable form of test for a complex system Con - Labor intensive - Time-consuming
  • 15. Unit Tests Background - The smallest unit of test - Software functions that call product functions - They usually are numerous, multiple test functions for a single product function. Executed by a framework in an automated build/test sequence. - Necessary, but far from adequate As valuable as we thought? 15
  • 16. Unit Tests Pros - Finds bugs early, at check-in - Easily automated - Part of Continuous Integration - Automated coverage metrics - Enduring value - Mature tool set (Google Test, xUnit, Mocha) - Gold standard Cons - Increases initial development effort - Finds few bugs - Static - Obvious/trivial - Low value/effort ratio - Small code changes can take much longer - False confidence in code quality Pros / Cons? 16 Commonly seen: - Low value unit tests that rarely find a bug - Unit test code > product source code - making changes difficult - High effort to get the last 10% coverage - with little apparent return - But,... still essential
  • 17. Unit Tests Keep it light Don’t try for 100% everywhere Differentiate highly critical vs. non-critical Pin down the corners vs. exhaustive testing Don’t: Add high levels of test if product in flux Add trivial testing to improve code coverage metrics Best applied to Stable products When losing experienced staff Sophisticated/complex designs Automation: Continuous Integration, automated emails Best practices Page # Best practice Non-trivial tests written for stable products with low staffing levels in an automated environment Worst practice Simple tests written for 100% code coverage on products undergoing change TL;DR
  • 19. ➢ Analyze software sub-components for criticality ○ Comes from IEC 62304: risk based analysis for each software sub-component ○ Adjust your process according to risk ➢ Allows you to discriminate between critical sub-systems and non-critical sub-systems ➢ Overall safety class = MAX(each functional aspect) High Value Testing 19 C B C C B C C A B A C A
  • 20. Key goals 1) Balance test resources around criticality of component to Intended Use, Safety, Efficacy 2) Minimize development overhead 3) Minimize regulatory burden Example - “Offline Data Access” omits unit, integration, system testing Pro - Less budget overall - More budget on critical areas Con - Expertise: More complicated to plan and apply - Hard to keep track of →Test Plan High Value Testing 20 A C B C C B C C A B C A
  • 21. ➢ Test vs. Verification ➢ Reliability Page #
  • 22. Quality team V&V team Engineering Quality Assurance - Confirm process - Checking that SDP steps were followed - Issuing/processing CAPAs Engineering Test Engineer - Test automation (scripts, CI integration) - Ad-hoc testing - Smoke testing - Build management Verification Test Engineer - Formal test protocol writing - Formal test protocol execution - Test coverage - Requirement focus Validation Test - Formal test protocol writing - Formal test protocol execution - Clinical focus - Statistical test treatment HF/UE Test Engineer - Summative test HF/UE Test Engineer - Formative test Engineering Vs Quality Developer - Unit tests - Ad-hoc testing Quality driven Plan → Review → Report Plan Accounts for engineering tests Analyze/Review Determines outcome Report Formally documents Engineering driven - Development process - Includes ad-hoc Engineering Test vs. Verification & Validation
  • 23. ● Software is logical not physical so traditional concepts of failure don’t apply ○ Mechanical or electrical systems have Bathtub failure curves ● Software Reliability is a nuanced concept different from Software Quality ○ Reliability is Software Quality over time ○ i.e. How long has the software been meeting it’s requirements ● Reliability ○ Considers Total Inputs vs Total Outputs ○ Tests a sample of Total Inputs ○ Probability = Number failing cases / Total cases ○ Testing types: Feature/Load/Regression test ○ ● Takeaway: ○ Reliability is a sample based, predictive metric different from QA/QC/Test ○ A complete, quantitative, system for assessing software Software Reliability 23
  • 24. Tying it together: Part 1 & 2 Quality vs. Test Page #
  • 25. Quality → Test What’s the relationship between quality and test? Quality as an outcome, Test as a method? Can you test quality into a product? Usability Use Errors Prevent unintended behaviors Architecture Separation Clear responsibilities Access / Visibility Prevent unintended functionality Test canon (unit, integration, system, UI) Quality/Test relationship 25 Quality Assurance Quality Control Testing Prevent Defects Correct Defects Detect Defects