マナビング基本情報技術者

XPのプラクティスは役割交替でどう見分けるか

基本情報技術者試験 平成30年度春期 午前 問50 / ソフトウェア開発管理技術 › 開発プロセス・手法

過去問にチャレンジ

平成30年度春期 午前 問50

エクストリームプログラミング(XP:eXtreme Programming)のプラクティスのうち,プログラム開発において,相互に役割を交替し,チェックし合うことによって,コミュニケーションを円滑にし,プログラムの品質向上を図るものはどれか。

  1. ア

    計画ゲーム

  2. イ

    コーディング標準

  3. ウ

    テスト駆動開発

  4. エ

    ペアプログラミング

会話形式の解説

講師講師
この問題では、何をする方法かに加えて、作業中に誰が何を担当するかに注目します。
受験者受験者
「チェックし合う」とあるので、テスト駆動開発が気になりました。
講師講師
テスト駆動開発を見分ける手掛かりは何でしょうか。
受験者受験者
実装に先立ってテストを作ることです。二人で担当を交替することまでは示していません。
講師講師
そのとおりです。では、コードの書き方をそろえる規則は、役割交替を指しますか。
受験者受験者
いいえ。それはコーディング標準です。書き方の規則と、二人で確認し合う方法は違います。
講師講師
計画ゲームはどうでしょうか。
受験者受験者
開発する範囲や計画を決めるものなので、実装中の確認には当たりません。
講師講師
残るペアプログラミングでは、二人で一つの実装を担当します。一方がコードを書き、他方が内容を確認して、担当を交替します。
受験者受験者
つまり正解はペアプログラミングですね。決める、そろえる、先に作る、作業中に確認する、という違いで整理できます。
講師講師
はい。特に「テストで確認すること」と「二人が作業中にコードを確認すること」を混同しないのがポイントです。

まとめ

正解はペアプログラミングです。二人で一つの実装を担当し、コードを書く役割と内容を確認する役割を交替します。計画ゲームは開発範囲や計画、コーディング標準は記述規則、テスト駆動開発は実装前にテストを作る進め方を指します。

解答・解説

正解はエです

この問題のテーマ

XPのプラクティスのうち、実装と確認の役割を交替しながら進める方法を問う問題です。

解き方の考え方

「相互に役割を交替し、チェックし合う」という条件に注目します。開発計画、コードの記述規則、テストの作成時期ではなく、作業中に二人でコードを扱う方法を選びます。

選択肢ごとの解説

  1. ×ア  計画ゲーム
    計画ゲームは、開発する範囲や計画を決めるプラクティスです。問題文が求める、実装中に二人が役割を交替して確認する方法には当たりません。
  2. ×イ  コーディング標準
    コーディング標準は、コードをどう記述するかについての規則です。記述の仕方をそろえることと、二人で実装・確認を交替することは別です。
  3. ×ウ  テスト駆動開発
    テスト駆動開発では、実装に先立ってテストを作ります。これは作業の進め方を示しますが、問題文にある二人の役割交替を指す名称ではありません。
  4. ○エ  ペアプログラミング
    ペアプログラミングでは、二人で一つの実装を担当し、一方がコードを書いている間に他方が内容を確認します。その担当を交替しながら進めるため、問題文の条件に一致します。

POINT

  • 方法を見分けるときは、何を決める・そろえる・作る・確認するのかを区別します。
  • 「実装前にテストを作る」は、テスト駆動開発を識別する手掛かりです。
  • 二人が作業中にコードを確認し、担当を交替するならペアプログラミングです。

※出典:平成30年度春期 基本情報技術者試験 午前 問50