問題
問55
ソフトウェア開発における DevOps に関する記述として、最も適切なものはどれか。
- 開発側が重要な機能のプロトタイプを作成し、顧客とともにその性能を実測して妥当性を評価する。
- 開発側と運用側が密接に連携し、自動化ツールなどを活用して機能などの導入や更新を迅速に進める。
- 開発側のプロジェクトマネージャが、開発の各工程でその工程の完了を判断した上で次工程に進む方式で、ソフトウェアの開発を行う。
- 利用者のニーズの変化に柔軟に対応するために、開発側がソフトウェアを小さな単位に分割し、固定した期間で繰り返しながら開発する。
[出典:ITパスポート試験 令和元年度 問55]
スポンサーリンク
正解
正解は「イ」です。
解説
DevOpsは「Development(開発)」と「Operations(運用)」を組み合わせた造語であり、ソフトウェアの開発と運用の連携を強化することで、より迅速かつ高品質なサービス提供を実現する考え方です。
正解の「イ」は、開発と運用が密接に連携し、自動化ツールの活用によってリリースや更新を迅速に進めるという、まさにDevOpsの中核を表しています。 DevOpsでは、従来分離されがちだった開発と運用の部門が協働し、CI/CD(継続的インテグレーション/継続的デリバリー)やテストの自動化、インフラのコード化(IaC)などを取り入れ、リリースの頻度と安定性を高めることが重視されます。
例えるなら、従来は開発が完成した品物を運用に「渡す」関係でしたが、DevOpsでは同じチームで設計から配達・運用まで「共に運ぶ」ような関係になります。したがって、選択肢「イ」が最も適切です。
ア(プロトタイプを作成し…):
これはプロトタイピングの説明であり、DevOpsではなく、ユーザーの要望確認やUI評価などに使われます。
ウ(各工程の完了を判断し…):
これはウォーターフォールモデルの特徴であり、DevOpsのような連携や継続的な改善を前提としていません。
エ(小さな単位に分割し…):
これはアジャイル開発(特にイテレーションやスプリント)に関する説明であり、DevOpsとは異なります。
難易度
この問題はDevOpsの本質的な目的である「開発と運用の連携」と「自動化による効率化」を理解していれば容易に解答可能です。DevOpsやCI/CDの基礎用語を学習している初学者であれば比較的正答しやすく、応用よりも基礎確認に適した難易度です。
スポンサーリンク
用語補足
DevOps:
開発(Development)と運用(Operations)を連携させ、システムのリリース・運用の迅速化と品質向上を図る考え方です。
CI/CD:
継続的インテグレーション(CI)と継続的デリバリー(CD)は、開発からテスト・デプロイまでを自動化するプロセスです。
自動化ツール:
インフラ構築やテスト、デプロイ作業などをプログラムにより自動で行うツールで、DevOpsの推進に不可欠です。
対策
DevOpsはIT現場でも注目度が高いため、開発と運用の役割や連携方法、CI/CDなどの技術と併せて学ぶことが重要です。自動化や連携をキーワードに、アジャイルとの違いも区別しながら理解すると、応用問題にも対応できます。