この試験の対策ガイド

基本情報技術者試験 対策ガイド

合格率・勉強法・参考書の選び方をまとめています

見る →
答えと解説を見る(先に解くのがおすすめ)

正解は ウ

解説

アジャイル開発手法の一つである XP(eXtreme Programming: エクストリームプログラミング)のプラクティスに関する問題です。XP は、変化する要求に柔軟に対応することを重視した開発手法で、具体的な実践項目(プラクティス)を定めていることが特徴です。代表的なプラクティスには、ペアプログラミング(2人が1台のコンピュータに向かい、1人がコードを書き、もう1人がリアルタイムでレビューしながら共同でプログラミングする)、テスト駆動開発(テストを先に書いてから実装する)、リファクタリング(外部の振る舞いを変えずに内部構造を改善する)、継続的インテグレーション(頻繁にビルドとテストを繰り返す)、小さなリリース、オンサイト顧客などがあります。選択肢の中で XP のプラクティスとして提唱されているのはペアプログラミングであり、ウが正解です。インスペクション・構造化設計・ユースケースはいずれも XP 以外の文脈の用語であり、アジャイル系の用語と従来型開発・他手法の用語を区別できるかが問われています。

なぜ他の選択肢は違うのか

選択肢 ア
インスペクションは、成果物(設計書やソースコードなど)を第三者のモデレータが主導する公式なレビュー会議で検証する品質保証の技法です。レビュー技法としては重要ですが、XP のプラクティスとして提唱されているものではありません。XP でコードの品質を保つ役割を担うのは、ペアプログラミングによる常時レビューやテスト駆動開発です。
選択肢 イ
構造化設計は、機能を段階的に分割してモジュール構造を設計していく従来型(ウォーターフォール時代)の設計技法です。DFD や構造化チャートなどを用いる体系であり、変化への適応を重視する XP のプラクティスとは開発思想の系譜が異なります。アジャイル系の用語と構造化手法の用語を混ぜた選択肢に注意しましょう。
選択肢 エ
ユースケースの活用は、UML を用いるオブジェクト指向分析や統一プロセス(UP)などで要求を記述する技法です。XP では要求を「ユーザーストーリー」と呼ばれる簡潔なカードで表現するのが特徴であり、ユースケースは XP のプラクティスには含まれません。手法ごとの要求表現(XP=ユーザーストーリー、UP=ユースケース)の違いを押さえておきましょう。

解くときのポイント

XP のプラクティスは「ペアプログラミング・テスト駆動開発・リファクタリング・継続的インテグレーション・小さなリリース」をセットで暗記。要求表現は XP=ユーザーストーリー(ユースケースではない)。