過去問解説(経営情報システム)_2021年(R3年) 第18問

難易度・正答率・重要度

  • 難易度:★★★☆☆(XPプラクティス)
  • 正答率:★★★☆☆(用語・定義)
  • 重要度:★★★☆☆(アジャイルの基礎)

問題文

アジャイル開発の手法の1つにエクストリーム・プログラミング(XP)がある。XPではいくつかのプラクティスが定義されている。

XPのプラクティスに関する記述として、最も適切なものはどれか。

1週間の作業時間は、チームのメンバー全員で相談して自由に決める。
2人のプログラマがペアになって、同じPCを使用して交代しながらプログラミングを行う。
ソースコードの修正や再利用は、責任を明確にするために、作成者だけが行うようにする。
プログラムを書く前にテストケースを作成しておき、動作を確認した上でプログラムを洗練させていく。
リファクタリングの際には、開発効率を高めるために内部構造には変更を加えず、外部から見た振る舞いを変更する。

出典: 中小企業診断協会|2021年度 第1次試験問題|経営情報システム(PDF)

解答

  • 正解:エ(テスト駆動・テストファーストに相当)

解説

  • ア:×
    XPでは「週40時間労働」など持続可能なペースを重視。恣意的に自由決定するのではなく、過労を避ける原則がある。
  • イ:×
    ペアプログラミングはXPのプラクティスだが、「同じPCで交代しながら」に限定されない。役割(ドライバー/ナビゲーター)や環境は状況により柔軟で、表現が限定的。
  • ウ:×
    XPは「共同所有(Collective Code Ownership)」を推奨。作成者のみが修正する方針はXPと逆。
  • エ:〇
    テストを先に作成し、テストを通す最小実装からリファクタリングで洗練するのがXPの中核(テストファースト/TDD)。
  • オ:×
    リファクタリングは外部から見た振る舞い(外部仕様)を変えずに内部構造を改善する。記述は逆。

学習のポイント

  • テストファースト/TDD: 失敗するテスト→最小実装→リファクタリングの反復で品質と設計を高める。
  • ペアプログラミング: 役割分担による継続的レビューが本質で、手段や交代頻度は状況に応じて柔軟。
  • 共同所有: チーム全員がコード改善に責任を持ち、知識の属人化を防ぐ。
  • 持続可能なペース: 過度な長時間労働を避け、安定したベロシティを維持する。