ITパスポート過去問 令和1年度(2019年)問55
ソフトウェア開発におけるDevOpsに関する記述として,最も適切なものはどれか。
選択肢
- ア:開発側が重要な機能のプロトタイプを作成し,顧客とともにその性能を実測して妥当性を評価する。
- イ:開発側と運用側が密接に連携し,自動化ツールなどを活用して機能などの導入や更新を迅速に進める。
- ウ:開発側のプロジェクトマネージャが,開発の各工程でその工程の完了を判断した上で次工程に進む方式で,ソフトウェアの開発を行う。
- エ:利用者のニーズの変化に柔軟に対応するために,開発側がソフトウェアを小さな単位に分割し,固定した期間で繰り返しながら開発する。
- ア
- イ
- ウ
- エ
正解と解き方・学習ポイント(AI解説)
DevOpsとは、開発(Development)と運用(Operations)が密接に連携し、テストや配備などを自動化して、機能の導入や更新を短いサイクルで継続的に行いやすくする考え方です。したがって、開発側と運用側の連携と自動化による迅速な導入・更新を述べた「イ」が適切です。
Point
DevOpsが、開発側と運用側の連携と自動化により、導入や更新を速く継続的に行う取組であることを理解しているかを確認する問題です。併せて、プロトタイピング、ウォーターフォールモデル、アジャイル開発といった別の開発手法の説明と区別できるかを確認します。
解くために必要な知識
この問題を解くには、DevOpsの目的と特徴、および他の開発手法の代表的な特徴を押さえておく必要があります。
用語の整理
| 用語 | 意味 |
|---|---|
| DevOps | 開発(Development)と運用(Operations)が連携し、リリースや更新を継続的に速く行うための考え方や取組です。ビルド、テスト、配置などの自動化を活用することが多いです。 |
| 自動化(CI/CDなど) | CIは、変更したプログラムを自動でビルドやテストにかけ、統合しやすくする仕組みです。CDは、テスト済みの成果物を本番環境へ届ける、または配置するまでを自動化する仕組みです。DevOpsで利用されることがあります。 |
他の選択肢に出てくる用語
| 用語 | 意味 |
|---|---|
| プロトタイピング | 試作品を早い段階で作り、利用者の確認や評価を通して要件を明確にしていく開発手法です。 |
| ウォーターフォールモデル | 要件定義、設計、実装、テストなどを順番に進め、前工程の完了を確認してから次工程に進む開発手法です。 |
| アジャイル開発 | 機能を小さな単位に分け、短い期間(イテレーション)で設計、実装、テストを繰り返しながら開発する手法です。 |
問題の解法手順
各選択肢の整理
| 選択肢 | 該当する考え方・手法 | 根拠(本文のどこが特徴か) |
|---|---|---|
| ア | プロトタイプモデル | 重要機能の試作品を作り、顧客と性能を実測して妥当性を評価しているためです。 |
| イ | DevOps | 開発側と運用側が連携し、自動化ツールを活用し、導入や更新を迅速に進めるためです。 |
| ウ | ウォーターフォールモデル | 各工程の完了を判断してから次工程に進むとあるためです。 |
| エ | アジャイル開発 | 小さな単位に分割し、固定した期間で繰り返し開発するとあるためです。 |
結論
DevOpsの特徴(開発と運用の連携、自動化、迅速な導入・更新)を満たすのは「イ」です。
選択肢ごとの解説
- ア:不正解
重要機能の試作品(プロトタイプ)を作って性能を測り、妥当性を評価する説明であり、プロトタイピングの内容です。DevOpsの中心となる開発と運用の連携や、自動化による導入・更新の迅速化が述べられていません。
- イ:正解
開発側(Dev)と運用側(Ops)が密接に連携し、自動化ツールを使って導入・更新を迅速に進める説明です。DevOpsの考え方に合致します。
- ウ:不正解
プロジェクトマネージャが各工程の完了を判断して次工程へ進むのは、工程を順に進めるウォーターフォールの説明です。DevOpsは開発と運用を連携させ、導入・更新を継続的に回しやすくする点が異なります。
- エ:不正解
アジャイル開発の説明です。小さな単位に分割し、固定した期間で繰り返しながら開発します。
まとめ
DevOpsとは、開発(Development)と運用(Operations)が密接に連携し、テストや配備などを自動化して、機能の導入や更新を短いサイクルで継続的に行いやすくする考え方です。したがって、開発側と運用側の連携と自動化による迅速な導入・更新を述べた「イ」が適切です。
マネジメント系 > 開発技術 > ソフトウェア開発管理技術
重要機能の試作品(プロトタイプ)を作って性能を測り、妥当性を評価する説明であり、プロトタイピングの内容です。DevOpsの中心となる開発と運用の連携や、自動化による導入・更新の迅速化が述べられていません。
開発側(Dev)と運用側(Ops)が密接に連携し、自動化ツールを使って導入・更新を迅速に進める説明です。DevOpsの考え方に合致します。
プロジェクトマネージャが各工程の完了を判断して次工程へ進むのは、工程を順に進めるウォーターフォールの説明です。DevOpsは開発と運用を連携させ、導入・更新を継続的に回しやすくする点が異なります。
アジャイル開発の説明です。小さな単位に分割し、固定した期間で繰り返しながら開発します。