Introduction to DevOps

Chapter 1
DevOps Foundations and Evolution

Bachelors Program in Full Stack Development
Introduction to DevOps   •   Bachelor

DevOps Foundations and Evolution

Introduction

DevOps is a set of cultural practices, organizational principles, technical methods, and automation approaches that enables software-development and IT-operations professionals to deliver and operate digital services collaboratively. It is not a single product, job title, or universally prescribed methodology. Rather, DevOps addresses a persistent organizational problem: software is designed by one group, released through another process, and operated in an environment whose constraints may be poorly understood by the original developers.

In traditional arrangements, development teams are often evaluated by the amount and speed of new functionality they produce, whereas operations teams are evaluated by stability, security, and availability. These objectives are individually reasonable but can conflict. A development team may seek frequent changes; an operations team may seek fewer changes because every change can introduce risk. DevOps attempts to align these objectives through shared responsibility, rapid feedback, automation, incremental change, and continuous learning.

DevOps is especially important in full-stack development because a full-stack practitioner works across application code, databases, APIs, infrastructure, security controls, deployment processes, and user-facing services. Understanding DevOps helps developers design software that can be tested, deployed, monitored, secured, and maintained—not merely compiled and demonstrated.

Learning Objectives

By the end of this chapter, you should be able to:

  1. Explain the origins and evolution of DevOps.
  2. Describe the purpose, principles, benefits, and limitations of DevOps.
  3. Distinguish DevOps from Agile, Lean, IT service management, and traditional development–operations models.
  4. Use essential lifecycle and delivery terminology accurately.
  5. Analyse how organizational structure, automation, feedback, and governance affect DevOps adoption.
  6. Apply DevOps principles to a realistic software-delivery scenario.

1. The Origins of DevOps

1.1 The separation of development and operations

For much of the history of commercial software, development and operations were separate functions. Developers created applications and handed them to operations specialists, who installed, configured, and ran them. This separation reflected real specialization: developers understood programming languages and application logic, while operations staff understood servers, networks, storage, backups, and production support.

However, the handoff model produced recurring difficulties. Developers might test on a workstation that differed substantially from production. Operations teams might receive incomplete deployment instructions. Configuration changes could be undocumented. When a failure occurred, each group could attribute responsibility to the other. The result was delay, defensive behaviour, and an incentive to avoid change rather than improve the service.

The problem became more severe as software systems grew more distributed. Web applications began to depend on databases, message queues, external APIs, identity services, caches, and multiple infrastructure environments. A release was no longer simply the copying of an executable to one server. It was a coordinated change across a system of interdependent components.

1.2 Agile software development

The Agile movement emerged partly in response to the limitations of highly sequential development approaches. Agile methods emphasize short iterations, customer collaboration, working software, adaptation to changing requirements, and frequent feedback. Frameworks such as Scrum and practices such as extreme programming influenced how teams planned and built software.

Agile improved the development process but did not automatically solve the operational problem. A team could produce tested increments rapidly while still releasing them infrequently through a separate and bureaucratic operations process. DevOps developed as a broader response: it extended collaboration and feedback beyond software construction into release, deployment, operation, security, and service improvement.

1.3 Infrastructure automation and cloud computing

Virtualization, configuration management, cloud platforms, containers, and infrastructure-as-code made infrastructure more programmable. Instead of manually configuring individual machines, teams could describe environments using repeatable definitions and create them through automated processes. This reduced some forms of configuration drift and made frequent, consistent deployment more practical.

These technologies did not create DevOps by themselves. Automation can accelerate a dysfunctional process just as effectively as a good one. DevOps requires changes in responsibility, communication, measurement, and decision-making as well as tools.

1.4 The emergence of the DevOps movement

The term DevOps became widely associated with a series of practitioner discussions and events around 2009, including the early DevOpsDays gatherings. The movement drew from Agile, Lean production, systems administration, web operations, continuous integration, and organizational learning. Books and practitioner communities then popularized concepts such as continuous delivery, infrastructure as code, and the “Three Ways”: flow, feedback, and continuous learning.

The history is not a single invention story. DevOps is better understood as a convergence of practices that had developed in different communities. Its evolution continues as organizations incorporate security, compliance, reliability engineering, platform engineering, cloud-native architectures, and artificial-intelligence-assisted tools.

2. What DevOps Means

2.1 A socio-technical system

DevOps is socio-technical. “Socio” refers to people, communication, incentives, organizational structures, and culture. “Technical” refers to source control, testing, build systems, deployment mechanisms, infrastructure, monitoring, and security. Neither side is sufficient alone.

A technically sophisticated deployment pipeline will not produce reliable results if teams do not trust one another, if production incidents are punished rather than investigated, or if managers reward local optimization at the expense of service outcomes. Conversely, a collaborative culture will struggle to deliver consistently if deployments depend on undocumented manual steps.

2.2 Core principles

Several principles recur across DevOps implementations:

  • Shared ownership: Teams accept responsibility for the service across its lifecycle, including production behaviour.
  • Small and frequent changes: Smaller changes are easier to test, review, deploy, understand, and reverse.
  • Automation: Repetitive, deterministic tasks should be automated where the benefits exceed the cost and risk.
  • Fast feedback: Teams use tests, monitoring, user observations, security checks, and operational data to guide decisions.
  • Cross-functional collaboration: Development, operations, security, quality assurance, product, and business stakeholders cooperate rather than working only through handoffs.
  • Continuous improvement: Processes are treated as hypotheses that can be evaluated and improved.
  • Resilience and learning: Failures are analysed to improve systems and practices, while accountability for reckless behaviour is maintained.

DevOps is therefore a way of organizing work and learning, not merely a pipeline displayed on a screen.

2.3 The DevOps lifecycle

A common lifecycle model includes planning, coding, building, testing, releasing, deploying, operating, and monitoring. These activities form a feedback loop rather than a one-way sequence. Operational observations may change the next planning decision; test results may require a coding change; security findings may prevent a release; user feedback may alter the product backlog.

The lifecycle is sometimes represented as a loop, but the loop should not be interpreted as an instruction that every activity must occur at identical speed. A high-risk database migration may require more analysis than a text change. DevOps encourages flow and automation while preserving proportionate controls.

3. Essential Lifecycle Terminology

TermMeaning
Application lifecycleThe stages through which software passes from idea and design to retirement.
RepositoryA managed location for source code, configuration, documentation, or other versioned artifacts.
Version controlA system for recording, comparing, branching, and restoring changes to files.
CommitA recorded set of changes in a version-control system.
BuildThe process of transforming source materials into executable or deployable artifacts.
ArtifactA produced package, binary, container image, library, or document used in later stages.
EnvironmentA context in which software runs, such as development, test, staging, or production.
Continuous integration (CI)Frequent integration of changes into a shared codebase, supported by automated verification.
Continuous deliveryKeeping software in a deployable state through automated build, test, and release preparation.
Continuous deploymentAutomatically deploying qualifying changes to production without a separate manual release decision for each change.
ReleaseA version of software authorized or prepared for distribution to users or another environment.
DeploymentThe technical act of placing a software version into a target environment.
RollbackReturning to a previous software or configuration version after a problematic change.
Deployment pipelineAn automated or partly automated path through build, test, approval, and deployment stages.
Configuration driftThe gradual divergence of an environment from its intended configuration.
Infrastructure as codeManaging infrastructure definitions using versioned, reviewable, machine-readable files.
ObservabilityThe ability to infer internal system conditions from outputs such as logs, metrics, and traces.
IncidentAn event that causes, or may cause, interruption or degradation of a service.
Mean time to restore (MTTR)The average time taken to restore service after a failure, under a stated measurement definition.
Error budgetA risk-management concept that expresses an acceptable amount of unreliability relative to a service objective.

These terms are related but not interchangeable. For example, continuous delivery does not necessarily mean continuous deployment. A team may automatically prepare every change for production while retaining a human approval step before deployment.

4. DevOps and Related Approaches

4.1 DevOps and Agile

Agile primarily addresses adaptive software development: how teams plan, prioritize, design, and implement valuable increments under changing conditions. DevOps includes Agile ideas but extends them to delivery and operation.

DimensionAgileDevOps
Main concernDeveloping valuable software adaptivelyDelivering and operating services reliably and quickly
Typical boundaryProduct and development workDevelopment, operations, security, and service lifecycle
FeedbackCustomer and product feedbackCustomer, code, operational, security, and infrastructure feedback
Common practicesIterations, backlog refinement, Scrum, test-driven developmentCI/CD, monitoring, infrastructure as code, automated operations

Agile can exist without DevOps, and DevOps can be adopted by teams that do not use a particular Agile framework. They are complementary rather than synonymous.

4.2 DevOps and Lean

Lean thinking focuses on delivering value while reducing waste and improving flow. Examples of waste include waiting, rework, unnecessary handoffs, excess work in progress, and defects. DevOps applies Lean reasoning to software delivery by reducing queues between coding, testing, approval, deployment, and operation.

Lean does not mean “do everything faster” or “remove every control.” A control that prevents a severe security failure may create a small amount of time cost but substantial value. The appropriate question is whether a process step contributes value or reduces meaningful risk, and whether it can be made more efficient.

4.3 DevOps and IT service management

IT service management (ITSM) provides structured practices for designing, delivering, supporting, and improving IT services. Frameworks such as ITIL discuss concepts including incidents, problems, changes, service levels, configuration information, and continual improvement.

DevOps and ITSM have sometimes been presented as opposites: DevOps as speed and ITSM as control. This is a misleading simplification. Mature organizations combine automation and rapid feedback with appropriate change risk assessment, access control, auditability, incident management, and service continuity. DevOps may automate or simplify ITSM activities, while ITSM can provide governance for DevOps delivery.

4.4 DevOps and the traditional model

In a traditional development–operations model, work often moves through sequential functional silos. Requirements, development, testing, release management, and operations may each have separate queues and performance measures. A DevOps model seeks shorter feedback loops and shared outcome measures.

However, DevOps does not require eliminating all specialization. Databases, security, networking, accessibility, reliability, and compliance remain areas of expertise. The important distinction is whether specialists collaborate as part of a service-oriented team or act only as distant approval gates.

5. Delivery Models and Engineering Practices

5.1 Continuous integration

Continuous integration involves integrating changes frequently into a shared mainline and validating them with automated checks. A useful CI process commonly includes compilation or packaging, unit tests, static analysis, dependency checks, and reporting of results.

CI is weakened when developers work in long-lived branches, merge rarely, or ignore failing builds. It is also weakened when the test suite is slow, unreliable, or irrelevant to the risks of the system. CI is not simply “having a build server”; it is a development discipline supported by automation.

5.2 Continuous delivery and continuous deployment

Continuous delivery means that the software is kept in a condition in which it can be released reliably, often through a controlled decision. Continuous deployment goes further by automatically deploying changes that satisfy the defined controls.

A deployment pipeline may contain:

  1. Source validation and dependency resolution.
  2. Build and artifact creation.
  3. Unit, integration, contract, performance, accessibility, and security tests as appropriate.
  4. Packaging and artifact storage.
  5. Deployment to a non-production environment.
  6. Acceptance checks and observation.
  7. Production deployment using a suitable strategy.
  8. Monitoring and, if necessary, rollback or forward correction.

The pipeline should provide evidence, not merely movement. A green pipeline is useful only if the checks meaningfully address likely failure modes.

5.3 Deployment strategies

A recreate deployment stops the old version before starting the new one. It is simple but may cause downtime. A rolling deployment replaces instances gradually and can limit impact, although incompatible versions may coexist temporarily. A blue-green deployment maintains two environments and switches traffic between them, enabling rapid reversal at the cost of additional infrastructure. A canary deployment exposes a new version to a small proportion of users or traffic before broader rollout.

The appropriate strategy depends on compatibility, cost, state management, observability, regulatory requirements, and the consequences of failure. No strategy removes the need for database migration planning and reliable monitoring.

5.4 Infrastructure as code and configuration management

Infrastructure as code makes infrastructure definitions versioned and reviewable. Configuration management seeks to apply desired settings consistently across environments. Together they can reduce undocumented manual variation, support repeatability, and provide an audit trail.

They also create risks. A mistaken infrastructure definition can affect many systems rapidly. Secrets should not be embedded in ordinary source files. Access rights, review, testing, state management, and recovery procedures are essential.

5.5 Observability and reliability

Monitoring traditionally asks whether known indicators are within expected limits. Observability emphasizes using outputs to understand unfamiliar internal states. Logs record events, metrics represent measured values, and traces follow requests across distributed components. These signals should be connected to meaningful service objectives.

Reliability engineering asks how systems behave under failure and demand. Useful practices include capacity planning, redundancy, graceful degradation, fault injection where justified, incident response, post-incident learning, and service-level objectives (SLOs). DevOps makes reliability a shared development and operations concern rather than an afterthought.

6. Benefits and Limitations

6.1 Potential benefits

DevOps can produce several benefits:

  • Shorter lead time: Changes may move from commitment to production more quickly.
  • More reliable releases: Automated, repeatable processes reduce certain manual errors.
  • Earlier defect detection: Frequent integration and testing reveal problems sooner.
  • Improved collaboration: Shared ownership reduces adversarial handoffs.
  • Operational learning: Production data informs product and engineering decisions.
  • Greater resilience: Automation, observability, and rehearsed recovery improve response to failure.
  • Better employability: Practitioners gain experience in source control, testing, deployment, cloud environments, security, and service operation.

These are potential benefits, not guarantees. They depend on system architecture, skills, investment, leadership, and appropriate measurement.

6.2 Limitations and risks

DevOps can fail or cause harm when it is treated as a tool-acquisition programme. Common limitations include:

  • Automation without understanding: Teams may automate unsafe or unnecessary processes.
  • Tool sprawl: Many disconnected tools increase cost, cognitive load, and failure points.
  • False speed: High deployment frequency may conceal poor quality, rework, or user dissatisfaction.
  • Burnout: On-call responsibilities and constant delivery can become unreasonable without workload controls.
  • Security gaps: Fast delivery can magnify vulnerabilities if security is delayed or poorly automated.
  • Organizational resistance: Existing incentives, reporting lines, and status differences may preserve silos.
  • Legacy constraints: Old architectures, manual dependencies, and fragile integrations may limit deployment frequency.
  • Compliance misunderstanding: Teams may interpret governance as an obstacle or remove controls without replacing their purpose.
  • Concentration of knowledge: A small platform team can become a bottleneck or single point of failure.

DevOps should therefore be adopted incrementally, with explicit risk management and evidence of improved outcomes.

7. Measurement and Evidence

Measurement helps determine whether a DevOps change improves the service. Four widely used delivery-performance indicators are deployment frequency, lead time for changes, change failure rate, and time to restore service. Definitions must be agreed before comparisons are made.

For example, a change failure rate may be defined as:

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

Here, the numerator and denominator must use the same time period and the organization’s documented definition of “deployment” and “failure.” A team should not compare its percentage with another team’s percentage if one counts emergency configuration changes and the other does not.

A useful measurement system balances delivery, reliability, security, user value, and team health. Metrics can be damaged by incentives. If deployment frequency is used as a target without quality safeguards, teams may split trivial changes merely to improve the number. Metrics should support learning rather than become instruments for blame.

8. A Detailed Illustrative Case: The Campus Registration Service

Background

Consider a fictional university service, CampusReg, that allows students to register for courses, view timetables, and receive enrollment confirmations. The service has a web front end, an API, a relational database, and integrations with identity and payment systems.

Problem

CampusReg releases twice a year through a lengthy manual procedure. Developers test features in a local environment, while operations staff configure production servers using a checklist. During registration periods, the service experiences slowdowns and occasional failures. The university cannot easily determine which change caused an incident. Developers and operations staff attend separate meetings and have different priorities.

Analysis

The problem is not simply an absence of a deployment tool. It includes:

  1. Environment inconsistency: Test and production configurations differ.
  2. Large batches: Many changes are released together, increasing diagnostic difficulty.
  3. Insufficient observability: Logs are incomplete and database performance is not correlated with user requests.
  4. Weak rollback capability: Database changes cannot be reversed safely using the existing procedure.
  5. Conflicting incentives: Developers are rewarded for feature completion; operations is rewarded for avoiding incidents.
  6. Seasonal demand: Registration creates predictable but concentrated load.

Approach

The team forms a cross-functional service group containing developers, operations specialists, a database specialist, security representation, and a product owner. It first establishes version control for application and infrastructure definitions. It then creates a CI pipeline that runs unit tests, API tests, schema compatibility checks, dependency scanning, and packaging.

The team does not immediately automate production deployment. Instead, it implements continuous delivery: every accepted change produces a versioned artifact that can be deployed consistently to a staging environment. Environment configuration is externalized, and sensitive values are stored in a controlled secret-management system rather than in source code.

Next, the team introduces structured logs, request correlation identifiers, service dashboards, and alerts tied to user-impacting conditions. It conducts load tests using realistic registration patterns. For a low-risk feature, it uses a canary deployment. Database changes are designed to support temporary compatibility between old and new application versions, allowing a gradual rollout.

Incident reviews are conducted without blame. They ask what conditions made the failure possible, which signals were missed, and what changes will reduce recurrence. Access permissions and deployment approvals remain auditable, preserving governance while removing unnecessary manual repetition.

Outcome

In this illustrative scenario, the team reduces the size of releases, identifies defects before registration periods, and gains a faster route to restoring service. The most important improvement is not a particular tool. It is the combination of shared ownership, repeatable delivery, meaningful testing, observability, and realistic operational rehearsal.

The team also discovers limits. Legacy database procedures prevent fully automatic deployment for some changes, and peak-season load requires capacity planning beyond the pipeline itself. These constraints are managed explicitly rather than hidden behind a claim that DevOps has “solved” delivery.

Learning points

  • DevOps begins with a service and its outcomes, not with a tool catalogue.
  • Continuous delivery can be valuable even when continuous deployment is inappropriate.
  • Database compatibility, security, and governance must be designed into delivery.
  • Operational data is relevant to development decisions.
  • A cross-functional team does not eliminate specialist expertise; it makes that expertise available earlier.

9. Governance, Security, Ethics, and AI

DevOps systems can change production infrastructure rapidly, so governance is essential. Important controls include least-privilege access, separation of sensitive duties where appropriate, traceable approvals, dependency management, secure secrets handling, vulnerability remediation, backup testing, and evidence retention. Controls should be risk-based and, where possible, automated in the delivery workflow.

Security should be integrated throughout the lifecycle. Threat modelling can occur during design; secure coding and peer review during development; automated scanning during CI; configuration validation before deployment; and runtime detection during operation. This is often called DevSecOps, although security should be considered part of responsible DevOps rather than an optional add-on.

Ethical concerns include privacy, accessibility, surveillance of workers, unequal impacts of automated decisions, and the environmental cost of computing infrastructure. Monitoring should collect information necessary for reliability and security without creating unjustified employee surveillance. Systems handling student, health, financial, or identity data require appropriate legal and institutional safeguards.

AI-assisted coding and operations tools can suggest code, tests, configurations, incident explanations, or remediation steps. They may improve productivity, but generated content can contain vulnerabilities, licensing problems, incorrect assumptions, or fabricated explanations. Human review, secure testing, data-protection controls, and clear accountability remain necessary. AI should assist professional judgment, not replace it in high-impact operational decisions.

10. Best Practices for Beginning DevOps

A practical adoption sequence is:

  1. Select a real service and define its users, risks, and desired outcomes.
  2. Establish version control for application code, configuration, and relevant infrastructure definitions.
  3. Create a reliable, fast feedback loop with automated tests and build results.
  4. Make deployments repeatable before attempting high deployment frequency.
  5. Improve observability using logs, metrics, traces, and user-centred service indicators.
  6. Introduce security and compliance checks early in the lifecycle.
  7. Reduce batch size and use deployment strategies appropriate to risk.
  8. Define incident response, recovery, and learning practices.
  9. Measure outcomes across speed, reliability, security, user value, and team health.
  10. Improve incrementally; do not copy another organization’s practices without understanding its context.

A beginning practitioner should learn Git or an equivalent version-control system, automated testing, build and packaging concepts, HTTP and APIs, databases, Linux or comparable operating environments, container fundamentals, cloud principles, observability, and secure software practices. The goal is not mastery of every tool but the ability to reason across the service lifecycle.

Chapter Summary

DevOps evolved from the interaction of Agile development, Lean ideas, systems administration, automation, cloud computing, and the need to operate complex digital services reliably. It addresses the limitations of isolated development and operations silos by promoting shared ownership, small changes, automation, rapid feedback, observability, and continuous learning.

DevOps is broader than Agile, complementary to Lean, compatible with IT service management, and different from simply installing a CI/CD tool. Continuous integration validates frequent code integration; continuous delivery keeps software ready for release; continuous deployment automates production release when defined conditions are satisfied. Infrastructure as code, deployment strategies, monitoring, observability, security, and incident learning support the lifecycle but do not replace sound judgment.

The benefits of DevOps include improved delivery flow, earlier defect detection, more repeatable releases, resilience, and stronger collaboration. Its limitations include tool sprawl, automation risk, burnout, security failures, legacy constraints, and misleading metrics. Effective adoption is socio-technical: it changes incentives, responsibilities, skills, processes, and technology together. Governance, privacy, accessibility, security, and human accountability remain necessary, including when AI-assisted tools are used.

Key Terms

DevOps: A socio-technical approach to collaboratively developing, delivering, securing, and operating software services.

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

Continuous delivery: Maintaining software in a reliably deployable state.

Continuous deployment: Automatically deploying qualifying changes to production.

Deployment pipeline: A sequence of automated or controlled delivery stages.

Artifact: A versioned output produced for later use or deployment.

Infrastructure as code: Defining and managing infrastructure with versioned machine-readable specifications.

Configuration drift: Unintended divergence between actual and intended system configuration.

Observability: The ability to understand internal system conditions from external outputs.

Incident: An event causing or threatening service degradation or interruption.

Rollback: Reverting to an earlier software or configuration version.

Agile: An adaptive approach to developing software through collaboration, iteration, and feedback.

Lean: An approach focused on value, flow, waste reduction, and continuous improvement.

IT service management: Structured practices for designing, delivering, supporting, and improving IT services.

Service-level objective: A defined target for a service characteristic such as availability or latency.

Error budget: An allowed level of unreliability associated with a service objective.

Canary deployment: Gradually exposing a new version to a limited audience or traffic share.

Configuration management: Controlling and maintaining system configuration consistently.

Shared ownership: Collective responsibility for outcomes across the service lifecycle.

DevSecOps: Integrating security practices throughout development, delivery, and operations.

Review Questions

Short Answer Questions

  1. Why did the separation of development and operations create recurring delivery problems?
  2. What is the difference between continuous delivery and continuous deployment?
  3. Define infrastructure as code and state one benefit of it.
  4. Name three signals commonly used for observability.
  5. Why are DevOps metrics vulnerable to misuse?

Long Answer Questions

  1. Explain the historical evolution of DevOps from Agile, Lean, systems administration, and cloud computing.
  2. Compare DevOps with Agile, Lean, and IT service management, identifying both differences and complementarities.
  3. Discuss the socio-technical nature of DevOps and explain why tools alone cannot transform an organization.
  4. Evaluate the principal benefits and limitations of continuous delivery in a regulated organization.
  5. Explain how security, governance, privacy, and ethics should be integrated into a DevOps lifecycle.

Analytical / Application Questions

  1. A team deploys frequently but experiences a rising number of production incidents. Analyse which DevOps principles or measurements may be missing, and recommend an improvement plan.
  2. Design a suitable deployment approach for a university payment service. Justify your choices concerning testing, observability, database changes, approvals, rollback, and security.
  3. An organization claims to have adopted DevOps because it purchased a pipeline platform. Critically assess this claim and propose evidence that would demonstrate genuine improvement.

Multiple Choice Questions with Answers

Question 1

Which problem is DevOps primarily intended to address?

A. The need to eliminate all specialist roles

B. The separation and misalignment of software development and operations

C. The replacement of source control with manual documentation

D. The removal of testing from software delivery

Correct Answer: B. The separation and misalignment of software development and operations

Question 2

Which statement best distinguishes continuous delivery from continuous deployment?

A. Continuous delivery keeps software releasable, while continuous deployment automatically releases qualifying changes to production

B. Continuous delivery applies only to hardware, while continuous deployment applies only to software

C. Continuous delivery excludes automated testing, while continuous deployment requires no testing

D. Continuous delivery is a planning method, while continuous deployment is a programming language

Correct Answer: A. Continuous delivery keeps software releasable, while continuous deployment automatically releases qualifying changes to production

Question 3

Which practice most directly helps reduce configuration drift?

A. Increasing the number of manual production changes

B. Using infrastructure as code and version-controlled configuration

C. Avoiding documentation of infrastructure

D. Testing only on individual developer workstations

Correct Answer: B. Using infrastructure as code and version-controlled configuration

Question 4

Which approach exposes a new software version to a small proportion of users before wider release?

A. Recreate deployment

B. Canary deployment

C. Big-bang deployment

D. Manual compilation

Correct Answer: B. Canary deployment

Question 5

What is a major focus of Lean thinking in DevOps?

A. Increasing handoffs between specialized departments

B. Reducing value-adding feedback

C. Reducing waste and improving flow

D. Preventing all process measurement

Correct Answer: C. Reducing waste and improving flow

Question 6

Which statement about Agile and DevOps is most accurate?

A. They are identical terms for the same framework

B. Agile focuses mainly on adaptive development, while DevOps extends collaboration into delivery and operation

C. DevOps prohibits iterative development

D. Agile applies only to infrastructure management

Correct Answer: B. Agile focuses mainly on adaptive development, while DevOps extends collaboration into delivery and operation

Question 7

Which set contains the three commonly discussed observability signals?

A. Logs, metrics, and traces

B. Budgets, invoices, and contracts

C. Branches, commits, and licenses only

D. Servers, keyboards, and monitors

Correct Answer: A. Logs, metrics, and traces

Question 8

A team has 40 deployments in a quarter, and 6 caused a production incident or rollback according to its documented definition. What is its change failure rate?

A. 6%

B. 15%

C. 34%

D. 46%

Correct Answer: B. 15%

Question 9

Which is a limitation or risk of DevOps adoption?

A. Automation can accelerate unsafe processes if controls and understanding are inadequate

B. DevOps makes monitoring unnecessary

C. DevOps guarantees zero production failures

D. DevOps removes the need for security expertise

Correct Answer: A. Automation can accelerate unsafe processes if controls and understanding are inadequate

Question 10

Why should AI-generated code or operational advice receive human review?

A. AI tools are unable to produce any text

B. Generated output may contain vulnerabilities, errors, licensing issues, or incorrect assumptions

C. Human review prevents all software automation

D. AI tools can only be used for printed documentation

Correct Answer: B. Generated output may contain vulnerabilities, errors, licensing issues, or incorrect assumptions

Introduction to DevOps
Chapter 1 of 15