IBM DevOps and Software Engineering study materials
IBM DevOps and Software Engineering study resources

IBM DevOps and Software Engineering key terms

IBM DevOps and Software Engineering · Get comfortable with the vocabulary.

DevOps

A working culture and set of practices that merges software development and IT operations so teams build, test, release, and run software collaboratively with fast feedback and shared ownership of production outcomes.

Related: CI/CD, Site Reliability Engineering, Value Stream Mapping
CI/CD

Continuous integration merges code frequently and verifies each change with automated builds and tests; continuous delivery keeps every build releasable, while continuous deployment automatically ships passing builds to production.

Related: Pipeline, DevOps, Trunk-Based Development
Value Stream Mapping

A lean technique that diagrams each step from idea to customer delivery, measuring wait and work time so teams can find bottlenecks and reduce lead time.

Related: Lead Time, DevOps
Lead Time

The elapsed time from a work item being requested or committed to it reaching the customer, including queue and wait time. It measures responsiveness rather than effort spent.

Related: Value Stream Mapping, Cycle Time
Cycle Time

The time from when work actively starts on an item until it is finished. Teams track it to forecast throughput and spot process friction, and it excludes time spent waiting before work began.

Related: Lead Time, Kanban
Agile Manifesto

A 2001 statement of four values and twelve principles favoring individuals, working software, customer collaboration, and response to change over rigid process, documentation, contracts, and fixed plans.

Related: Scrum, Sprint Retrospective
Scrum

A lightweight agile framework using fixed-length sprints, three accountabilities (Product Owner, Scrum Master, Developers), five events, and three artifacts to deliver increments of value iteratively.

Related: Sprint, Product Backlog, Definition of Done
Sprint

A timeboxed iteration, typically one to four weeks, during which a Scrum team turns selected backlog items into a potentially releasable product increment. Its length stays fixed for predictability.

Related: Sprint Planning, Increment, Scrum
Product Backlog

An ordered, evolving list of everything that could improve the product, owned and prioritized by the Product Owner. It is the single source of work for the Scrum team.

Related: User Story, Sprint Planning, Scrum
Sprint Planning

The Scrum event that opens a sprint. The team agrees on a sprint goal, selects backlog items it can finish, and plans how the work will be done within the timebox.

Related: Sprint, Product Backlog, Sprint Backlog
Sprint Retrospective

A closing Scrum event where the team inspects how it collaborated and picks concrete improvements to apply in the next sprint, focusing on people, process, and tools.

Related: Sprint, Agile Manifesto
Definition of Done

A shared checklist describing what completed means for a backlog item, such as code reviewed, tests passing, and documentation updated. It prevents partial work being counted as finished.

Related: Increment, Scrum, Test Automation
User Story

A short, user-centered description of desired functionality, often phrased as a role wanting a capability so that a benefit is gained, with acceptance criteria attached for verification.

Related: Product Backlog, Acceptance Criteria
Acceptance Criteria

The specific, testable conditions a story must satisfy to be accepted by the Product Owner. They guide development and become the basis for automated and manual tests.

Related: User Story, Definition of Done
Kanban

A flow-based method using a visualized board, explicit work-in-progress limits, and continuous delivery rather than fixed iterations. It exposes bottlenecks and smooths throughput.

Related: Cycle Time, Work in Progress Limit
Work in Progress Limit

A cap on how many items may occupy a workflow stage at once. Limiting concurrent work shortens queues, reveals constraints, and improves the rate at which items finish.

Related: Kanban, Cycle Time
Microservices

An architectural style splitting an application into small, independently deployable services that communicate over networks and are organized around business capabilities, each owning its data.

Related: Container, API Gateway, Twelve-Factor App
Monolith

An application packaged and deployed as a single unit, often with one shared database. It is simple to start with but couples release cycles and scaling across all its features.

Related: Microservices, Strangler Fig Pattern
Strangler Fig Pattern

An incremental modernization approach that routes selected functionality to new services while the legacy system keeps running, gradually replacing it until the old system can be retired.

Related: Monolith, Microservices
Twelve-Factor App

A methodology for building portable, cloud-ready services, covering configuration in the environment, stateless processes, disposability, logs as event streams, and strict separation of build, release, and run.

Related: Microservices, Container
Container

An isolated process packaged with its filesystem dependencies that shares the host operating system kernel. Containers start quickly and behave identically across environments.

Related: Dockerfile, Kubernetes, Container Image
Container Image

An immutable, layered artifact containing an application and its runtime dependencies, built from a recipe and stored in a registry so it can be pulled and run repeatedly.

Related: Dockerfile, Container Registry, Container
Dockerfile

A text file of ordered instructions that a builder executes to produce a container image, defining the base image, copied files, environment settings, and startup command.

Related: Container Image, Multi-Stage Build
Multi-Stage Build

A Dockerfile technique using several build stages in one file so compilers and build tools stay in early stages and only the final runtime artifacts reach the shipped image, reducing size and attack surface.

Related: Dockerfile, Container Image
Container Registry

A networked repository that stores and distributes versioned container images, supporting tagging, access control, and vulnerability scanning so clusters and pipelines can pull trusted artifacts.

Related: Container Image, Kubernetes
Kubernetes

An open-source orchestration platform that schedules containers across a cluster, restarts failed workloads, scales replicas, and exposes services through declarative configuration.

Related: Pod, Deployment, Container
Pod

The smallest deployable unit in Kubernetes: one or more tightly coupled containers sharing a network namespace and storage volumes, scheduled together onto a node.

Related: Kubernetes, Deployment
Deployment

A Kubernetes resource that declares the desired replica count and pod template for a stateless workload, managing rolling updates and rollbacks as the specification changes.

Related: Pod, Rolling Update, Kubernetes
Rolling Update

A release strategy that replaces instances of an application gradually, keeping some old versions serving traffic until new ones pass readiness checks, avoiding full downtime.

Related: Deployment, Blue-Green Deployment, Canary Release
Blue-Green Deployment

A release pattern running two identical environments where traffic switches from the live blue version to the prepared green version, allowing quick rollback by switching back.

Related: Canary Release, Rolling Update
Canary Release

A gradual rollout that sends a small share of live traffic to a new version while monitoring error rates and latency, expanding exposure only if metrics stay healthy.

Related: Blue-Green Deployment, Feature Flag
Feature Flag

A runtime toggle that enables or disables functionality without redeploying code, supporting gradual rollout, A/B testing, and rapid disabling of a faulty feature.

Related: Canary Release, CI/CD
Pipeline

An automated sequence of stages such as build, test, scan, and deploy that moves a code change from commit to release, failing fast when any stage breaks.

Related: CI/CD, Test Automation, Infrastructure as Code
Infrastructure as Code

Managing servers, networks, and cloud resources through versioned machine-readable definitions applied by tooling, giving repeatable, reviewable, and auditable environment provisioning.

Related: Pipeline, Immutable Infrastructure
Immutable Infrastructure

A practice where servers or containers are never patched in place; instead a new versioned artifact replaces the old one, eliminating configuration drift and making rollbacks predictable.

Related: Infrastructure as Code, Container Image
Test Automation

Using scripts and frameworks to execute tests such as unit, integration, and end-to-end checks without manual effort, enabling fast, repeatable verification inside pipelines.

Related: Pipeline, Definition of Done
Site Reliability Engineering

A discipline applying software engineering to operations, using service level objectives, error budgets, and automation to balance reliability against the pace of change.

Related: DevOps, Observability
Observability

The ability to understand a system's internal state from its outputs, chiefly metrics, logs, and traces, so teams can detect and diagnose failures in distributed environments.

Related: Site Reliability Engineering, Microservices
Trunk-Based Development

A branching practice where developers integrate small changes into a shared mainline at least daily, using short-lived branches or feature flags to keep integration pain low.

Related: CI/CD, Feature Flag