World Congress 2022 • Jun 15, 2022

Quality Strategy with a side of Swiss Cheese

Sarah Hutchins

Aerospace systems prevent disaster using the multi-layered Swiss Cheese model. Discover how applying this risk strategy to software engineering eliminates brittle tests and builds resilient ecosystems.

Pause
Mute Enter Fullscreen
#1 about 4 min

Defining software engineering quality using a cheese production analogy

Quality represents the informed confidence that teams are building the right thing at the right time.

#2 about 3 min

Using the Swiss Cheese model for multi-layered risk avoidance

Applying multiple imperfect defensive layers together significantly reduces systemic failures.

#3 about 3 min

Managing unplanned work and system failures using the bucket analogy

Identifying unaddressed technical debt and system defects prevents overwhelming operational incidents.

#4 about 2 min

Identifying system stakeholders and user expectations through personas

Mapping direct users, indirect dependencies, and malicious actors clarifies system requirements and vulnerabilities.

#5 about 2 min

Mapping architectural dependencies to characterize product integrations

Visualizing upstream and downstream connections highlights contract stability and testing constraints.

#6 about 4 min

Aligning technical concerns with protective quality testing layers

Brainstorming system risks enables teams to evaluate existing defenses and introduce missing quality gates.

#7 about 2 min

Evaluating the maintenance and execution costs of testing layers

Removing overly expensive or slow defenses like unstable end-to-end tests ensures sustainable testing models.

#8 about 3 min

Sizing operational buckets to realistically handle maintenance workloads

Appropriately staffing support and accurately tracking technical debt prevents hidden operational failures.

#9 about 2 min

Integrating the test pyramid with the Swiss Cheese risk model

While the test pyramid dictates test implementation efficiency, risk models highlight which behaviors require coverage.

#10 about 3 min

Discovering risk models and implementing contract testing tools

Using API consumer-driven contract tools manages integration stability across varied service architectures.

#11 about 4 min

Tracking technical debt metrics and cross-functional team engagement

Measuring bug-to-feature time reveals maintenance loads, while cross-functional involvement ensures comprehensive system analysis.

#12 about 2 min

Determining the optimal ratio of developers to quality professionals

Embedding quality engineers directly with small development teams fosters an early testing mindset over isolated gatekeeping.

Matching moments

2:18 min

Transforming software quality from assurance to enablement

Ondřej Gróf Ondřej Gróf · World Congress 2026 Europe

3:21 min

Shifting focus from defect elimination to effective risk management

Basia Karaagac Basia Karaagac · Europe 2026 Virtual

1:30 min

Introduction to software quality assurance in enterprise applications

Lilia Gargouri Lilia Gargouri · World Congress 2026 Europe

2:45 min

Approaching software quality as a subjective social science

Ingo Philipp · LIVE

2:02 min

Establishing a company-wide approach to software quality assurance

Daniel Strmečki +1 · World Congress 2022

2:04 min

Shifting software testing from adversarial gatekeeping to enablement

Steve Upton Steve Upton · World Congress 2024