教科書一覧へ

継続的な改善と開発・運用の自動化

頻出約 18 分開発プロセス・手法

概要

このユニットでは、アジャイル/スクラムを前提に、反復のたびに行う改善活動「ふりかえり(レトロスペクティブ)」、変更を頻繁に統合して自動でビルド・テストする「CI(継続的インテグレーション)」、開発と運用を一体化する「DevOps」、そして機械学習に応用した「MLOps」という発展的な実践を学ぶ。継続的な改善と自動化を支える現代的な考え方として、ITパスポートでも頻出する重要分野である。

用語6

ふりかえり

活動を定期的に振り返り、改善点を話し合って次に生かす改善活動。

ふりかえりは、一定期間(イテレーションやスプリント)の活動を終えたあとに、チームで「うまくいった点・問題点・次に試すこと」を話し合い、継続的に進め方を改善していく活動です。 試験では、成果物そのものを評価するのではなく、チームの仕事の進め方(プロセス)を見直して改善する点がポイントです。アジャイルやスクラムでは反復のたびに必ず行い、改善文化を回す起点となります。失敗を責めるのではなく、次への学びに変える前向きな場である点も押さえましょう。

たとえスポーツの試合後にチームで反省会を開くようなもの。勝敗そのものより「次はどう動けばもっと良くなるか」を全員で確認し、次の試合に生かします。

記憶フックふりかえりといえば反復ごとに進め方を見直す改善活動

レトロスペクティブ

ふりかえりの英語呼称で、スクラムの公式イベント(スプリントレトロスペクティブ)として行う改善活動。

レトロスペクティブ(retrospective)は「ふりかえり」の英語呼称で、同じ概念を指します。特にスクラムでは、スプリント(反復)の最後に行う「スプリントレトロスペクティブ」として定義された公式のイベントです。 試験では、ふりかえりとレトロスペクティブが同一の改善活動を指す点が問われます。スクラムの5つのイベント(スプリント・スプリントプランニング・デイリースクラム・スプリントレビュー・レトロスペクティブ)の一つとして位置づけられ、進め方の改善を目的とする点を、成果物を確認するスプリントレビューと混同しないよう注意しましょう。

たとえ「ふりかえり」というニックネームの正式な英語名が「レトロスペクティブ」。同じ反省会の呼び方違いで、別物ではありません。

記憶フックレトロスペクティブといえばふりかえりの英語呼称(スクラムの改善イベント)

CI

変更を頻繁に統合し、自動でビルド・テストする実践の略称。

CIは継続的インテグレーション(Continuous Integration)の略で、各開発者が書いたコードの変更を一日に何度も中央の共有リポジトリへ統合し、そのたびに自動でビルドとテストを実行する実践です。 試験では、変更を小まめに統合して自動テストにかけることで、不具合を早期に発見し、統合時の手戻りを減らせる点が問われます。最後にまとめて統合して大量のエラーに苦しむ従来のやり方との対比がポイントです。CDやDevOpsを支える自動化の基盤となる点も押さえましょう。

たとえ夏休みの宿題を最終日にまとめてやるのではなく、毎日少しずつ提出して先生に毎回チェックしてもらうようなもの。問題があってもすぐ気づけます。

記憶フックCIといえば変更を頻繁に統合して自動ビルド・テストする実践

コードを変更

共有リポジトリへ統合

自動でビルド

自動でテスト

問題を早期に発見

継続的インテグレーション

CIの正式名称。変更を頻繁に統合し自動ビルド・テストする実践。

継続的インテグレーション(Continuous Integration)は略称CIの正式名称で、同一の概念を指します。コードの変更を継続的(continuous)に統合(integration)していくことからこの名が付きました。 試験では、CIと継続的インテグレーションが同じものを指す点、そして頻繁な統合と自動ビルド・テストにより品質を保ちながら開発を進める実践である点が問われます。略称と正式名称を結び付けて覚え、後工程まで自動化を広げる継続的デリバリー(CD)へ発展する基盤である点も意識しておきましょう。

たとえ「CI」というニックネームの正式なフルネームが「継続的インテグレーション」。同じ実践の呼び方違いで、別物ではありません。

記憶フック継続的インテグレーションといえばCIの正式名称(同じ実践)

DevOps

開発と運用が連携・協力し、自動化で迅速に価値を届ける考え方。

DevOpsは、開発(Development)と運用(Operations)を組み合わせた言葉で、両者が密に連携・協力し、ツールによる自動化を活用して、ソフトウェアの開発から運用までを迅速かつ継続的に行う考え方や文化を指します。 試験では、従来は対立しがちだった開発チームと運用チームの壁を取り払い、組織として協調する点が問われます。CIなどの自動化を取り込み、リリースを速く・安定して回すのが狙いです。特定のツールではなく、文化やチームのあり方を指す概念である点に注意しましょう。このトピックで最も出題頻度が高い用語です。

たとえ料理を作る厨房(開発)と客に運ぶホール(運用)が、別々に動くのではなく一つのチームとして連携するイメージ。注文から提供までスムーズに早く回せます。

記憶フックDevOpsといえば開発と運用が連携・自動化して迅速に届ける考え方

開発(Dev)

ビルド・テストの自動化

リリース

運用(Ops)

監視・フィードバック

MLOps

DevOpsの考え方を機械学習システムの開発・運用に応用した実践。

MLOpsは、機械学習(Machine Learning)とDevOpsを組み合わせた言葉で、DevOpsの考え方を機械学習システムに適用し、モデルの開発・学習・運用・改善を継続的かつ効率的に回す実践です。 試験では、MLOpsがDevOpsの機械学習版である点が問われます。通常のソフトウェアに加え、データやモデルの管理・再学習が必要になるのが特徴で、運用後もデータの変化に合わせてモデルを更新し続ける点が狙われます。AIの普及に伴って登場した、最も新しく応用的な概念として押さえましょう。

たとえDevOpsという仕事のやり方を、AI(機械学習モデル)の世話に応用したもの。育てたモデルを世に出すだけでなく、データの変化に合わせて継続的に学び直させ続けます。

記憶フックMLOpsといえばDevOpsを機械学習に応用した実践

まとめ

要点

  • ふりかえり(レトロスペクティブ)は反復のたびにチームの進め方を見直す改善活動で、成果物ではなくプロセスの改善が目的。両者は同一概念。
  • CI(継続的インテグレーション)は変更を頻繁に統合し自動でビルド・テストする実践で、不具合の早期発見と手戻り削減が狙い。両者は同一概念。
  • DevOpsは開発と運用が連携・協力し自動化で迅速に価値を届ける文化・考え方で、このトピック最頻出の用語。特定ツールではない点に注意。
  • MLOpsはDevOpsを機械学習システムに応用した実践で、データやモデルの管理・継続的な再学習が加わるのが特徴。
  • ふりかえり→CIによる自動化→DevOps→MLOpsへと、継続的な改善と開発・運用の統合が発展していく流れを押さえる。

記憶フック一覧

  • ふりかえり: ふりかえりといえば反復ごとに進め方を見直す改善活動
  • レトロスペクティブ: レトロスペクティブといえばふりかえりの英語呼称(スクラムの改善イベント)
  • CI: CIといえば変更を頻繁に統合して自動ビルド・テストする実践
  • 継続的インテグレーション: 継続的インテグレーションといえばCIの正式名称(同じ実践)
  • DevOps: DevOpsといえば開発と運用が連携・自動化して迅速に届ける考え方
  • MLOps: MLOpsといえばDevOpsを機械学習に応用した実践

関連の過去問演習は今後のアップデートで追加予定です。