What is CI/CD (continuous integration and continuous delivery)?

A combined name for continuous integration (CI), in which developers merge their changes into a shared branch frequently and each merge triggers a build and automated tests, and continuous delivery (CD), which keeps tested changes ready to be released to production at any time. When the release itself is also automated, it is called continuous deployment.

Japanese name: CI/CD(継続的インテグレーション・継続的デリバリー)

CI/CD (continuous integration and continuous delivery) appears in 3 practice questions across 2 topics, including Software Development and Project Management, Cloud and Container Basics.

Field: Software Development and Project Management

Try it: questions about CI/CD (continuous integration and continuous delivery)

Which describes continuous integration (CI)?

  1. AAt the end of development, the changes that each developer made over a long period are merged all at once and integration-tested in one go
  2. BDevelopers merge their changes into a shared branch frequently (several times a day), and each time a build and automated tests are run to find problems early
  3. CChanges that pass the tests are released to production automatically, without any human decision
Show answer and explanation

Answer: B. Developers merge their changes into a shared branch frequently (several times a day), and each time a build and automated tests are run to find problems early

In continuous integration, changes are merged in small, frequent steps, and each merge automatically triggers a build and tests such as unit tests on a server. Because the interval between merges is short, conflicts between changes and defects can be found and fixed while their cause is still easy to see. Another benefit is that regression tests, which re-run all existing tests, can be run automatically for every change. Automatically releasing changes that pass the tests to production is continuous deployment, a stage beyond CI.

Which correctly describes the difference between continuous delivery and continuous deployment?

  1. AContinuous delivery refers only to merging source code changes into a shared branch and does not include building or testing
  2. BIn continuous deployment, a person must always approve a release before it goes to production
  3. CContinuous delivery keeps the software in a state that can be released to production at any time, and a person decides when to release; continuous deployment releases changes that pass the tests to production automatically
Show answer and explanation

Answer: C. Continuous delivery keeps the software in a state that can be released to production at any time, and a person decides when to release; continuous deployment releases changes that pass the tests to production automatically

Both send changes that have been integrated and tested by CI through an automated pipeline that includes checks such as a staging environment. Continuous delivery automatically prepares a releasable state, and a person decides whether to release it to production. Continuous deployment also automates that final release. The idea and culture in which development and operations cooperate to release quickly and safely and repeatedly, through such automation and feedback from operations, is called DevOps.

CI/CD (continuous integration and continuous delivery) in the explanations

Questions that mention CI/CD (continuous integration and continuous delivery) (3)

  1. Which describes continuous integration (CI)?
  2. Which correctly describes the difference between continuous delivery and continuous deployment?
  3. A container image built by a CI/CD pipeline was tested in the staging environment and passed. Which of the following is the most appropriate way to release this image to production?

Books on Software Development and Project Management Ad

As an Amazon Associate I earn from qualifying purchases.

Related terms

Container image Environment variable Agile development Black-box testing Boundary value analysis Branch coverage Critical path method (CPM) Earned value management (EVM) Equivalence partitioning Scrum

Back to the glossary