8-4 ソフトウェア開発手法
令和2年度公開問題 問37
開発対象のソフトウェアを,比較的短い期間で開発できる小さな機能の単位に分割しておき,各機能の開発が終了するたびにそれをリリースすることを繰り返すことで,ソフトウェアを完成させる。一つの機能の開発終了時に,次の開発対象とする機能の優先順位や内容を見直すことで,ビジネス環境の変化や利用者からの要望に対して,迅速に対応できることに主眼を置く開発手法はどれか。
- ア アジャイル
- イ ウォータフォール
- ウ 構造化
- エ リバースエンジニアリング
解答 ア
【頭の準備体操】
アジャイル開発は,短い開発工程を繰り返し,迅速かつ段階的に完成度を高める開発手法。
- ア 正解
- イ 開発工程を上流工程から下流工程へと順番に進める開発手法。
- ウ システムを機能ごとに階層的に分割して,各機能やデータの流れを明確にする開発手法。
- エ 既存のプログラムを解析して,そのプログラムの仕様書を導き出す開発手法。
令和6年度公開問題 問40
アジャイル開発に関する記述として,最も適切なものはどれか。
- ア 開発する機能を小さい単位に分割して,優先度の高いものから短期間で開発とリリースを繰り返す。
- イ 共通フレームを適用して要件定義,設計などの工程名及び作成する文書を定義する。
- ウ システム開発を上流工程から下流工程まで順番に進めて,全ての開発工程が終了してからリリースする。
- エ プロトタイプを作成して利用者に確認を求め,利用者の評価とフィードバックを行いながら開発を進めていく。
解答 ア
【頭の準備体操】
アジャイル開発は,短い開発工程を繰り返し,迅速かつ段階的に完成度を高める開発手法。
- ア 正解
- イ アジャイル開発は,ドキュメントの作成よりもソフトウェアの作成を優先することで,変化する要望を素早く取り入れる。。
- ウ ウォータフォールモデル
- エ プロトタイピングモデル
令和3年度公開問題 問51
アジャイル開発を実施している事例として,最も適切なものはどれか。
- ア AIシステムの予測精度を検証するために,開発に着手する前にトライアルを行い,有効なアルゴリズムを選択する。
- イ IoTの様々な技術を幅広く採用したいので,技術を保有するベンダに開発を委託する。
- ウ IoTを採用した大規模システムの開発を,上流から下流までの各工程における完了の承認を行いながら順番に進める。
- エ 分析システムの開発において,分析の精度の向上を図るために,固定された短期間のサイクルを繰り返しながら分析プログラムの機能を順次追加する。
解答 エ
【頭の準備体操】
アジャイル開発は,短い開発工程を繰り返し,迅速かつ段階的に完成度を高める開発手法。
- ア PoC(Proof of concept:概念実証)
- イ アウトソーシング
- ウ ウォータフォールモデル
- エ 正解
令和4年度公開問題 問38
XP(エクストリームプログラミング)の説明として,最も適切なものはどれか。
- ア テストプログラムを先に作成し,そのテストに合格するようにコードを記述する開発手法のことである。
- イ 一つのプログラムを2人のプログラマが,1台のコンピュータに向かって共同で開発する方法のことである。
- ウ プログラムの振る舞いを変えずに,プログラムの内部構造を改善することである。
- エ 要求の変化に対応した高品質のソフトウェアを短いサイクルでリリースする,アジャイル開発のアプローチの一つである。
解答 エ
【頭の準備体操】
XP(エクストリームプログラミング)は,アジャイル開発の一つ。4つのカテゴリと19のプラクティス(最善事例)を定義している。
- ア テスト駆動開発(テストファースト)。XPのプラクティスの一つ。
- イ ペアプログラミング。XPのプラクティスの一つ。
- ウ リファクタリング。XPのプラクティスの一つ。
- エ 正解
令和5年度公開問題 問49
リファクタリングの説明として,適切なものはどれか。
- ア ソフトウェアが提供する機能仕様を変えずに,内部構造を改善すること
- イ ソフトウェアの動作などを解析して,その仕様を明らかにすること
- ウ ソフトウェアの不具合を修正し,仕様どおりに動くようにすること
- エ 利用者の要望などを基に,ソフトウェアに新しい機能を加える修正をすること
解答 ア
【頭の準備体操】
リファクタリングは,外部から見たプログラムの動作を変更せずに,内部構造を改善すること。
- ア 正解
- イ リバースエンジニアリング
- ウ デバッグ
- エ ソフトウェア保守
令和3年度公開問題 問48
既存のプログラムを,外側から見たソフトウェアの動きを変えずに内部構造を改善する活動として,最も適切なものはどれか。
- ア テスト駆動開発
- イ ペアプログラミング
- ウ リバースエンジニアリング
- エ リファクタリング
解答 エ
【頭の準備体操】
リファクタリングは,外部から見たプログラムの動作を変更せずに,内部構造を改善すること。
- ア プログラムを書く前にテストケースを作成すること。
- イ 2人1組となってプログラミングすること。
- ウ 既存のプログラムを解析して,そのプログラムの仕様書を導き出すこと。
- エ 正解