Software Quality & Risk Management

Chapter 11
DevOps, Automation and Digital Quality

Certificate in Software Project Management
Software Quality & Risk Management   •   Certificate

DevOps, Automation and Digital Quality

Introduction

Software delivery has changed from periodic, manually coordinated releases to continuous, digitally integrated delivery. Cloud platforms, application programming interfaces (APIs), mobile applications, distributed systems and data-driven services can be changed many times each day. This speed creates an important quality-management challenge: testing and quality assurance cannot remain activities performed only near the end of a project.

DevOps is a set of cultural, organisational and technical practices that integrates software development, operations and related functions. Its purpose is not simply to deploy faster. Effective DevOps seeks to deliver reliable customer value quickly by improving collaboration, automating repeatable work, obtaining rapid feedback and managing operational risk throughout the product life cycle.

Digital quality extends traditional software quality assurance. It includes functional correctness, security, performance, resilience, accessibility, privacy, operability, maintainability and user experience. Quality is therefore a shared responsibility of developers, testers, operations personnel, product owners, security specialists and project managers.

This chapter explains continuous integration and delivery, automated testing, static analysis, quality gates, observability, infrastructure as code, and shift-left and shift-right practices. It also considers governance, metrics, artificial intelligence and the limitations of automation.

Learning Objectives

After studying this chapter, the learner should be able to:

  1. Explain the relationship between DevOps, continuous integration, continuous delivery and continuous deployment.
  2. Distinguish major forms of automated testing and select suitable tests for a delivery pipeline.
  3. Describe the role of static analysis, security scanning and quality gates.
  4. Explain observability and its relationship to monitoring, logging, tracing and incident response.
  5. Describe infrastructure as code and its quality and governance benefits.
  6. Apply shift-left and shift-right practices to a software delivery scenario.
  7. Evaluate the risks, limitations and managerial implications of digitally automated quality management.

1. DevOps and the Digital Quality Model

Traditional software projects often separate development, testing and operations into sequential departments. Developers may be measured by features completed, testers by defects discovered and operations teams by system availability. These local objectives can conflict. For example, development may seek a rapid release while operations seeks to minimise change risk.

DevOps addresses this separation through shared responsibility, cross-functional teams, automation and feedback. A DevOps team is not necessarily a new department; it is a way of organising work so that people who build a service understand how it behaves in production and people who operate it can influence its design.

Digital quality has several dimensions:

Quality dimensionTypical concernExample evidence
FunctionalDoes the system perform required functions?Automated acceptance tests
ReliabilityDoes it work consistently over time?Failure-rate and incident data
PerformanceDoes it respond within required limits?Load-test results and latency percentiles
SecurityIs it resistant to unauthorised access or misuse?Vulnerability scans and penetration tests
Usability and accessibilityCan intended users use it effectively?Usability tests and accessibility audits
MaintainabilityCan it be changed safely and economically?Code quality and deployment data
OperabilityCan teams monitor, support and recover it?Runbooks, alerts and recovery tests
PrivacyIs personal information handled lawfully and appropriately?Data-flow reviews and audit records

Quality is not equivalent to the absence of defects. A product can contain few known defects but still be insecure, inaccessible or difficult to operate. Quality must therefore be defined in relation to stakeholder needs, business risk, legal obligations and service-level objectives.

2. Continuous Integration and Continuous Delivery

2.1 Continuous integration

Continuous integration (CI) is the practice of frequently merging small changes into a shared codebase and automatically validating those changes. A CI process commonly performs the following activities:

  1. A developer commits a change to version control.
  2. The system retrieves the code in a clean build environment.
  3. Dependencies are restored and the software is compiled or packaged.
  4. Automated unit, integration and quality checks are executed.
  5. Results are reported to the team.
  6. A successful build produces a versioned artefact.

The central principle is rapid feedback. If a change breaks the build, the team should know quickly and should treat repairing the build as a priority. CI is weakened when branches live for long periods, merges are infrequent or failing checks are routinely ignored.

2.2 Continuous delivery and continuous deployment

Continuous delivery (CD) extends CI by keeping software in a releasable condition. The delivery pipeline builds, tests and prepares a deployment, but a person or governance rule may approve its release to users.

Continuous deployment goes further: every change that passes the required controls is automatically released to the relevant production environment. Continuous deployment is appropriate only when automated controls, observability, rollback or recovery mechanisms and organisational confidence are sufficiently mature.

These terms should not be confused with one another:

PracticeMain condition
Continuous integrationChanges are integrated and validated frequently
Continuous deliveryA validated release can be deployed on demand
Continuous deploymentA validated change is released automatically

A pipeline is not merely a sequence of tools. It is a socio-technical control system. Its design should reflect risk, regulatory obligations, architecture, team capability and the consequences of failure.

2.3 Pipeline stages

A representative pipeline may include source control, build, unit testing, static analysis, dependency scanning, integration testing, packaging, deployment to a test environment, acceptance testing, security testing, approval and production deployment. Some stages run in parallel to reduce waiting time, while others require an earlier successful result.

Pipeline design should include:

  • reproducible builds;
  • versioned source, dependencies and configuration;
  • secure management of credentials;
  • isolated and representative test environments;
  • traceability from requirement to code, test and deployment;
  • clear failure messages;
  • controlled promotion of the same artefact between environments; and
  • a safe rollback or forward-fix strategy.

The principle of promoting the same immutable artefact is important. Rebuilding separately for each environment can introduce differences that were not tested. Environment-specific values should normally be supplied through controlled configuration rather than by modifying the software package.

3. Automated Testing as a Quality Strategy

Automation means that a tool performs a test or checking activity with limited human intervention. It does not mean that all quality work can or should be automated. Automation is most valuable for activities that are repeatable, objective, frequent and costly to perform manually.

3.1 The test pyramid

The test pyramid is a practical model for balancing different test levels. It generally places many fast unit tests at the base, fewer integration or service tests in the middle, and a smaller number of broad end-to-end tests at the top.

  • Unit tests examine a small component in isolation. They are fast and help localise failures.
  • Integration tests examine interactions between components, databases, services or external interfaces.
  • System or end-to-end tests evaluate a complete business journey across multiple components.
  • Acceptance tests assess whether the product satisfies agreed business or user criteria.
  • Non-functional tests examine characteristics such as performance, security, accessibility and resilience.

The pyramid is a heuristic, not a universal law. A distributed system may require substantial contract testing between services. A user-interface-heavy product may need more visual and accessibility testing. The appropriate balance depends on architecture and risk.

3.2 Test automation quality

Automated tests are software and require design, maintenance and review. A useful automated test should be reliable, understandable, independent where possible, and capable of producing a meaningful failure message. Flaky tests, which pass and fail without a relevant product change, damage trust in the pipeline and encourage teams to ignore failures.

Important practices include:

  • using controlled test data;
  • avoiding unnecessary dependence on execution order;
  • isolating external services with suitable test doubles where appropriate;
  • retaining useful evidence such as logs, screenshots or request traces;
  • reviewing tests when requirements change; and
  • measuring test execution time and maintenance cost.

Test coverage can be useful, but it is not a direct measure of quality. Statement coverage, for example, indicates the proportion of executed code statements, not whether requirements, failure conditions or security threats have been adequately tested. High coverage with weak assertions may provide false confidence.

3.3 Security, performance and resilience automation

Security automation can include secret detection, software composition analysis, static application security testing, dynamic application security testing and infrastructure scanning. Performance automation may include load, stress, endurance and spike tests. Resilience automation may deliberately introduce failures to examine recovery, provided that such experiments are controlled and authorised.

These tests need appropriate environments and realistic assumptions. A small test environment may not predict production performance. Similarly, a vulnerability scanner can identify indicators of risk but may produce false positives and cannot replace threat modelling or expert review.

4. Static Analysis and Quality Gates

4.1 Static analysis

Static analysis examines source code, bytecode, configuration or infrastructure definitions without executing the application in its normal operational mode. It may identify syntax errors, insecure patterns, duplicated code, unreachable code, type inconsistencies, licence concerns or violations of coding standards.

Static analysis is valuable because it provides early, repeatable feedback. However, a finding is not automatically a confirmed defect. Tools can produce false positives, and rules may fail to understand business context. Teams should classify findings, suppress only justified exceptions and periodically review the rules.

4.2 Quality gates

A quality gate is a defined decision point that determines whether a product, change or release may proceed. Examples include:

  • all mandatory tests pass;
  • no critical security vulnerability is unresolved;
  • code review is complete;
  • required accessibility checks pass;
  • performance remains within an agreed threshold;
  • deployment evidence is available; and
  • an authorised risk acceptance exists for an exception.

A gate should be explicit, measurable and connected to risk. A gate that blocks every minor issue can encourage bypass behaviour. A gate that permits severe unresolved risks provides only an appearance of control.

Quality gates should distinguish between a defect, a warning and an accepted exception. Exceptions should have an owner, rationale, expiry or review date and compensating control where appropriate. This creates an auditable decision rather than an informal bypass.

4.3 Metrics and interpretation

Delivery and quality metrics can support learning, but they can also create harmful incentives. Common measures include deployment frequency, lead time for changes, change failure rate and time to restore service. These indicators are useful when interpreted together and in context.

For example, change failure rate may be expressed as:

Change failure rate = (Number of deployments causing a failure or rollback ÷ Total number of deployments) × 100%

The numerator should be defined consistently, such as deployments requiring rollback, hotfix or incident response. The denominator is the total number of deployments in the selected period. The measure is a percentage and is meaningful only when the period, deployment scope and failure definition are stated. A team should not reduce the rate by hiding incidents or avoiding small, valuable releases.

Another operational measure is mean time to restore service (MTTR):

MTTR = Total elapsed restoration time ÷ Number of restoration events

The unit is a unit of time, such as minutes or hours. Organisations must define when the restoration clock starts and ends. Averages can conceal severe outliers, so medians and percentiles may also be useful.

5. Observability and Production Quality

5.1 Monitoring and observability

Monitoring asks whether known conditions are within expected limits. Observability is the broader capability to infer the internal state of a system from its externally available outputs. Monitoring is therefore part of observability, but observability also supports investigation of unfamiliar failure modes.

The principal telemetry types are:

  • Logs: timestamped records of events or messages. They should be structured where possible and should avoid exposing secrets or unnecessary personal data.
  • Metrics: numerical measurements collected over time, such as request count, error rate, CPU utilisation or latency.
  • Traces: records of a request’s path across services, usually represented as related spans.
  • Profiles and events: information about resource consumption or significant system activities.

The “three pillars” model is useful but incomplete. Context, dependency maps, deployment information, user-impact data and reliable correlation identifiers are also important.

5.2 Service-level indicators and objectives

A service-level indicator (SLI) is a measured aspect of service performance. An availability SLI might be the proportion of valid requests that receive an acceptable response during a period. A service-level objective (SLO) is the target for that indicator. A service-level agreement (SLA) is a formal commitment, often including consequences, between parties.

If 9,950 of 10,000 valid requests meet the defined availability condition, then:

Availability SLI = (9,950 ÷ 10,000) × 100% = 99.5%

This calculation assumes that the numerator and denominator are measured consistently and that excluded maintenance or test traffic is defined in advance. An availability percentage alone does not show whether failures affected one customer severely or many customers slightly.

Teams may use an error budget to connect reliability and delivery decisions. If the target availability is 99.5% over a 30-day period, the permitted unavailability is 0.5% of the period. Since 30 days contain 43,200 minutes:

Error-budget time = 43,200 × 0.005 = 216 minutes

This is a planning calculation, not a guarantee. The target, measurement method and treatment of planned maintenance must be agreed. When the budget is being consumed rapidly, the team may prioritise reliability work over higher-risk releases.

5.3 Alerting and incident response

An alert should indicate that a person or automated response needs to act. Excessive alerts create alert fatigue, while insufficient alerts delay recovery. Effective alerts are actionable, prioritised and linked to runbooks. Observability also supports post-incident learning through timelines, deployment correlation, technical evidence and customer-impact analysis.

A blame-oriented response discourages reporting and hides weak systems. A learning-oriented response examines contributing conditions, including architecture, process, workload, communication and incentives. This approach is often called a blameless post-incident review; it does not remove accountability, but it avoids treating individual blame as the primary control mechanism.

6. Infrastructure as Code

Infrastructure as code (IaC) represents infrastructure configuration in machine-readable, version-controlled definitions. Infrastructure may include networks, virtual machines, containers, identity permissions, databases, monitoring rules and cloud resources.

IaC can provide:

  • repeatable environment creation;
  • peer review of infrastructure changes;
  • audit history;
  • automated validation;
  • reduced configuration drift; and
  • faster recovery through reconstruction.

A typical IaC workflow is to edit a definition, validate syntax and policy, review the proposed change, apply it through an authorised pipeline and record the resulting state. IaC does not automatically make infrastructure safe. Incorrect definitions can reproduce an insecure design rapidly.

Good practice includes least-privilege access, separation of duties for high-risk changes, secret management outside source files, state protection, drift detection, policy-as-code and testing of disaster-recovery procedures. Teams should understand whether an IaC tool is declarative or imperative. Declarative definitions state the desired end state; the tool determines necessary actions. Imperative scripts specify procedures. Both can be useful, but they present different maintenance and failure modes.

7. Shift-Left and Shift-Right Quality

7.1 Shift-left

Shift-left means moving quality and risk activities earlier in the life cycle. Examples include acceptance criteria, threat modelling, architecture review, accessibility consideration, static analysis and automated tests before code is merged.

Shift-left reduces the delay between introducing and discovering a problem. Earlier correction is often less disruptive because fewer dependent components, releases and users are affected. However, shift-left must not be interpreted as transferring all quality responsibility to developers. Test specialists, operations personnel, security experts and users continue to provide necessary perspectives.

7.2 Shift-right

Shift-right means performing quality activities in or near production and using real operational evidence. Examples include feature flags, canary releases, blue-green deployment, synthetic monitoring, real-user monitoring, controlled experiments, resilience testing and rapid rollback.

Shift-right recognises that some behaviour cannot be predicted fully in a test environment. Production traffic, data, dependencies and user behaviour reveal risks that pre-release testing may miss. These techniques require safeguards: limited exposure, clear abort criteria, privacy protection, monitoring and an authorised response plan.

The strongest quality strategy combines both directions. Shift-left prevents and detects problems early; shift-right limits exposure and detects unknown problems after release.

8. Applied Case: A Digital Payment Service

The following is an illustrative case, not a report of a specific company.

Background

A financial-services organisation operates a digital payment API used by mobile applications and retail partners. Releases occur monthly. The organisation has separate development, testing and operations teams. Production incidents have increased, and emergency fixes are common.

Problem

Testing is concentrated during a late release phase. Integration environments differ from production, test data is manually prepared and deployment instructions are partly undocumented. The service has logs, but requests cannot be traced consistently across the payment API, fraud service and bank connector. A recent release passed functional testing but produced duplicate payment attempts under a rare timeout condition.

Analysis

The project manager and technical leads identify several systemic causes:

  • long-lived branches delay integration;
  • regression testing is slow and partly manual;
  • a critical external dependency is not represented by contract tests;
  • infrastructure changes are performed manually;
  • quality criteria are not explicit at release approval;
  • monitoring reports server health but not payment success or duplication;
  • incident learning is not systematically fed back into development.

The issue is not simply that testers “missed a bug”. The delivery system lacks timely feedback and production-oriented quality controls.

Approach and solution

The organisation introduces a staged improvement plan:

  1. Developers merge smaller changes frequently into a shared repository.
  2. CI builds the service and runs unit, integration and contract tests for every change.
  3. Static analysis, dependency scanning and secret detection run automatically.
  4. Infrastructure definitions are versioned and reviewed through the same change process.
  5. The pipeline creates one versioned artefact and promotes it through controlled environments.
  6. A quality gate blocks release for unresolved critical vulnerabilities, failed mandatory tests or missing review evidence.
  7. Correlation identifiers are added so a payment request can be followed across services.
  8. Dashboards report payment success rate, latency, duplicate-payment indicators and dependency failures.
  9. Releases use a canary exposure, beginning with a small proportion of traffic.
  10. A tested rollback and customer-support communication procedure is established.

The team also changes its incident process. Each significant incident produces a blameless review with actions assigned to named owners. Acceptance criteria for payment idempotency and timeout handling are added to the product backlog.

Outcome

After several delivery cycles, integration defects are discovered earlier, deployment preparation requires less manual work and operational investigations have better evidence. The organisation still experiences failures, but their impact is reduced because exposure is limited and recovery is faster. The team learns that automation is most valuable when combined with sound architecture, explicit risk decisions and operational feedback.

Learning points

The case illustrates five principles. First, CI is a risk-control mechanism, not only a developer convenience. Second, quality gates must address security and operational concerns as well as functional tests. Third, observability should measure business outcomes, not merely infrastructure status. Fourth, IaC improves repeatability but can reproduce errors unless reviewed. Fifth, shift-left and shift-right practices are complementary.

9. Governance, Ethics and Contemporary Developments

Automated delivery operates within legal, contractual and ethical constraints. Organisations should maintain evidence of approvals, test results, deployments, access decisions and exceptions where regulation requires traceability. Privacy-by-design principles should guide telemetry collection: teams should collect only necessary data, protect it, limit retention and control access.

Security controls must protect the pipeline itself. Source repositories, build agents, package registries, signing keys and deployment credentials are valuable targets. Software supply-chain risks include compromised dependencies, malicious packages, unauthorised pipeline changes and poisoned build artefacts. Useful controls include dependency pinning or controlled updating, provenance records, signed artefacts, protected branches and least-privilege service accounts.

Artificial intelligence is increasingly used to generate code, classify defects, predict incidents and assist with test creation. These uses can improve productivity but introduce risks. Generated code may contain vulnerabilities, infringe licence conditions or reflect biased assumptions. AI-generated tests may repeat existing examples while missing important boundary conditions. Human review, secure development controls, data governance and accountability remain necessary.

Contemporary delivery also includes platform engineering, internal developer platforms, ephemeral test environments, software bills of materials, policy-as-code and progressive delivery. These practices can reduce cognitive load and improve consistency, but standardisation should not eliminate appropriate professional judgement.

10. Challenges and Limitations

Automation has costs. Pipelines require infrastructure, tool maintenance, test maintenance and specialist skills. Poorly designed automation can create long queues, false failures and a culture of mechanical compliance. Teams may optimise a metric rather than improve customer outcomes.

Important limitations include:

  • automated tests cannot fully assess empathy, suitability or many aspects of user experience;
  • static tools cannot understand every business rule or threat;
  • production experiments can harm users if safeguards fail;
  • observability data can be expensive and may create privacy concerns;
  • IaC can propagate insecure configurations at scale;
  • high deployment frequency is not inherently valuable; and
  • a quality gate cannot compensate for unclear requirements or weak system design.

Managers should therefore evaluate automation by the risk it reduces and the learning it enables, not by the number of tools or pipeline stages. A small, reliable pipeline is preferable to a complex pipeline that teams routinely bypass.

11. Best-Practice Guidance

A practical quality-oriented DevOps approach should:

  1. Define quality in terms of user, business, technical, security and regulatory outcomes.
  2. Integrate small changes frequently and repair broken builds promptly.
  3. Use a balanced test portfolio rather than relying only on end-to-end tests.
  4. Treat test code, pipeline code and IaC as maintainable products.
  5. Make quality gates explicit, risk-based and reviewable.
  6. Promote the same versioned artefact through environments.
  7. Protect secrets, build systems and software dependencies.
  8. Instrument services with meaningful logs, metrics and traces.
  9. Link alerts to user impact and actionable response procedures.
  10. Use progressive delivery and tested recovery mechanisms for high-risk changes.
  11. Record exceptions with owners, rationale and review dates.
  12. Use metrics for learning rather than punishment.
  13. Review automated decisions for bias, privacy and unintended consequences.
  14. Combine early prevention with production feedback.

Chapter Summary

DevOps integrates development, operations and quality responsibilities through collaboration, automation and rapid feedback. Continuous integration frequently merges and validates changes; continuous delivery keeps software deployable; continuous deployment releases validated changes automatically when organisational conditions permit. Automated tests should be balanced across unit, integration, system, acceptance and non-functional levels. Static analysis and security scanning provide early evidence, while risk-based quality gates control progression.

Observability extends monitoring by helping teams infer system behaviour from logs, metrics, traces and related context. Service-level indicators and objectives connect technical performance with user expectations. Infrastructure as code makes environments reproducible and reviewable, but it must be secured and tested. Shift-left practices address quality early, while shift-right practices use controlled production exposure and operational learning. Effective digital quality is not created by tools alone: it depends on clear requirements, sound governance, professional judgement, ethical data handling and a learning-oriented culture.

Key Terms

DevOps: A socio-technical approach that integrates development, operations and quality responsibilities.

Continuous integration: Frequent integration of code changes with automated validation.

Continuous delivery: Keeping software in a releasable state through automated build and validation processes.

Continuous deployment: Automatically releasing every change that passes defined controls.

Delivery pipeline: An automated workflow that builds, tests, evaluates and deploys software.

Automated testing: Use of tools and scripts to execute tests with limited manual intervention.

Unit test: A test of a small software component in isolation.

Integration test: A test of interactions between components or external systems.

Static analysis: Examination of code, configuration or artefacts without normal execution.

Quality gate: A defined decision criterion controlling whether work may proceed.

Observability: The ability to infer internal system state from external outputs.

Telemetry: Data generated to describe system behaviour, including logs, metrics and traces.

Service-level indicator: A measured aspect of service performance.

Service-level objective: A target value or range for a service-level indicator.

Error budget: The tolerated amount of unreliability implied by a service-level objective.

Infrastructure as code: Machine-readable, version-controlled definitions of infrastructure.

Shift-left: Moving quality and risk activities earlier in the life cycle.

Shift-right: Using production or near-production evidence to manage quality after release.

Progressive delivery: Gradually exposing a change to users while monitoring results.

Software supply chain: The people, processes, tools and dependencies involved in producing software.

Review Questions

Short Answer Questions

  1. What is the main difference between continuous delivery and continuous deployment?
  2. Why are unit tests generally placed at the base of the test pyramid?
  3. What is a quality gate, and why should exceptions be governed?
  4. Name three principal forms of telemetry used in observability.
  5. State two benefits and one risk of infrastructure as code.

Long Answer Questions

  1. Explain how CI, automated testing, static analysis and quality gates work together in a delivery pipeline.
  2. Compare monitoring and observability, including the roles of logs, metrics and traces.
  3. Discuss why high test coverage does not necessarily demonstrate high software quality.
  4. Explain how shift-left and shift-right practices can be combined in a risk-based delivery strategy.
  5. Evaluate the organisational and governance changes required to adopt DevOps successfully.

Analytical / Application Questions

  1. A team deploys frequently but experiences repeated production incidents. Its pipeline runs only unit tests, and its dashboards show CPU utilisation but not customer outcomes. Analyse the weaknesses and propose a prioritised improvement plan.
  2. A service has an SLO of 99.9% availability over a 30-day month. Calculate the approximate error-budget time in minutes, assuming 30 days and no exclusions. Explain why the result should not be treated as a complete reliability assessment.
  3. Design a quality strategy for a payment service that uses an external banking API. Identify suitable automated tests, quality gates, observability signals, IaC controls and progressive-delivery practices.

Multiple Choice Questions with Answers

Question 1

Which practice most directly describes continuous integration?

A. Releasing every change automatically to all users

B. Frequently merging changes and automatically validating them

C. Testing only after production deployment

D. Manually configuring each production server

Correct Answer: B. Frequently merging changes and automatically validating them

Question 2

What is the main purpose of continuous delivery?

A. To keep software in a releasable condition

B. To eliminate the need for testing

C. To prevent all changes to production

D. To replace version control

Correct Answer: A. To keep software in a releasable condition

Question 3

Which test level usually examines a small component in isolation?

A. End-to-end testing

B. Acceptance testing

C. Unit testing

D. Disaster-recovery testing

Correct Answer: C. Unit testing

Question 4

What does static analysis generally do?

A. Examines code or configuration without normal execution

B. Measures customer satisfaction after release

C. Simulates physical hardware failure only

D. Approves every release without criteria

Correct Answer: A. Examines code or configuration without normal execution

Question 5

Which statement best describes a quality gate?

A. An informal opinion about whether a product looks attractive

B. A decision criterion controlling whether work may proceed

C. A production database backup

D. A replacement for requirements analysis

Correct Answer: B. A decision criterion controlling whether work may proceed

Question 6

Which telemetry type records a request’s path across distributed services?

A. Trace

B. Source comment

C. Deployment ticket

D. Licence file

Correct Answer: A. Trace

Question 7

What is a principal benefit of infrastructure as code?

A. It makes all infrastructure changes risk-free

B. It provides repeatable and reviewable infrastructure configuration

C. It removes the need for access control

D. It guarantees perfect application performance

Correct Answer: B. It provides repeatable and reviewable infrastructure configuration

Question 8

Which practice is an example of shift-right?

A. Threat modelling before architecture approval

B. Static analysis before code merge

C. Canary release with production monitoring

D. Writing acceptance criteria before development

Correct Answer: C. Canary release with production monitoring

Question 9

An organisation records 18 failed deployments out of 600 total deployments. What is its change failure rate?

A. 0.3%

B. 3%

C. 18%

D. 30%

Correct Answer: B. 3%

Question 10

A service has an availability target of 99.5% over 30 days, with 43,200 minutes in the period. What is the implied error budget?

A. 21.6 minutes

B. 43.2 minutes

C. 216 minutes

D. 2,160 minutes

Correct Answer: C. 216 minutes

Software Quality & Risk Management
Chapter 11 of 14