メインコンテンツへ
開発技術CI/CD

CI/CD(継続的インテグレーション/継続的デリバリー)に関する説明として適切なものはどれか。

ア.CIはコードの変更をリポジトリにマージする際に顧客の最終承認を自動的に取得し、CDはその承認後に手動でデプロイする仕組みである。
イ.CI/CDはウォーターフォール開発モデルの最終工程(リリース)のみに適用される概念であり、開発中は使用できない。
ウ.CIはコードのマージ時に自動的にビルド・テストを実行し問題を早期発見し、CDはその後の検証済みコードを自動的にデプロイ可能な状態にする仕組みである。正解
エ.CI/CDはセキュリティ担当者による手動のコードレビューを自動化するためのツールであり、品質管理をAIが行う仕組みである。

解説

CI/CDは「自動車の組立ラインと品質検査」のようなもの。ベルトコンベアでパーツを組み立てながら自動検査(CI)し、合格品だけを出荷ライン(CD)に乗せます。人間が毎回手動で確認する工程を自動化して、高速・高品質な製品出荷を実現します。

なぜ ウ が正解か

CI(継続的インテグレーション)はコードをリポジトリへコミット/マージするたびに自動でビルド→ユニットテスト→コード解析を実行し、問題を即座に検知します。CD(継続的デリバリー/デプロイ)はCIで検証済みのコードをステージングや本番環境へ自動的にデプロイします。これによりリリースサイクルを短縮し、バグの早期発見が可能になります。ウが正解です。

なぜ ア は間違いか

CIは顧客承認を取得する仕組みではありません。自動テストによる技術的品質チェックです。CDも「手動デプロイ」ではなく「自動デプロイ」が特徴です。

なぜ イ は間違いか

CI/CDはウォーターフォールの最終工程限定ではなく、アジャイル・スクラム等の継続的開発プロセス全体に適用されます。むしろCI/CDはアジャイル開発の重要な技術的基盤です。

なぜ エ は間違いか

CI/CDは手動コードレビューの自動化でも「AIによる品質管理」でもありません。コンパイル・テスト・デプロイの自動化パイプラインです。

出典: AI生成問題(学習用)