応用情報技術者 2018年 春期 午前2 問49
問題文
アジャイル開発などで導入されている“ペアプログラミング”の説明はどれか。
選択肢
ア:開発工程の初期段階に要求仕様を確認するために、プログラマと利用者がペアとなり、試作した画面や帳票を見て、相談しながらプログラムの開発を行う。
イ:効率よく開発するために、2人のプログラマがペアとなり、メインプログラムとサブプログラムを分担して開発を行う。
ウ:短期間で開発するために、2人のプログラマがペアとなり、交互に作業と休憩を繰り返しながら長時間にわたって連続でプログラムの開発を行う。
エ:品質の向上や知識の共有を図るために、2人のプログラマがペアとなり、その場で相談したりレビューしたりしながら、一つのプログラムの開発を行う。(正解)
ペアプログラミングの説明【午前2 解説】
要点まとめ
- 結論:ペアプログラミングは2人のプログラマが協力し、その場で相談やレビューを行いながら一つのプログラムを共同開発する手法です。
- 根拠:アジャイル開発の特徴である継続的なコミュニケーションと品質向上を目的としており、単独作業では得られない知識共有やバグの早期発見が可能です。
- 差がつくポイント:単に作業を分担するのではなく、2人が同時にコードを確認し合いながら進める点が重要で、効率だけでなく品質と学習効果も高める点を理解しましょう。
正解の理由
選択肢エは、ペアプログラミングの本質である「2人のプログラマがペアとなり、その場で相談やレビューをしながら一つのプログラムを共同で開発する」ことを正確に表現しています。これはアジャイル開発の実践手法の一つで、品質向上と知識共有を目的としています。
よくある誤解
ペアプログラミングは単に作業を分担することではなく、2人が同時にコードを見て議論しながら進める共同作業です。休憩を交互に取る手法や利用者との仕様確認とは異なります。
解法ステップ
- 問題文の「ペアプログラミング」の定義を確認する。
- 選択肢の内容が「2人のプログラマがペアとなり共同作業を行う」かを判断する。
- 相談やレビューをしながら進める点があるかをチェックする。
- 作業の分担や利用者との仕様確認など、ペアプログラミングの本質から外れた説明を除外する。
- 最も正確にペアプログラミングを説明している選択肢を選ぶ。
選択肢別の誤答解説
- ア:利用者とプログラマがペアになるのはペアプログラミングではなく、要求仕様の確認やプロトタイピングに近い。
- イ:メインプログラムとサブプログラムを分担するのは分業であり、ペアプログラミングの「共同作業」ではない。
- ウ:交互に作業と休憩を繰り返す説明はペアプログラミングの特徴ではなく、むしろ疲労管理の話である。
- エ:2人のプログラマが相談やレビューをしながら一つのプログラムを共同で開発する点が正しい。
補足コラム
ペアプログラミングはアジャイル開発の中でも特にXP(エクストリームプログラミング)で推奨される手法です。ペアの一方が「ドライバー」としてコードを書く役割を担い、もう一方が「ナビゲーター」としてコードのレビューや設計の助言を行います。これによりコードの品質が向上し、知識の共有も促進されます。
FAQ
Q: ペアプログラミングは必ず2人で行う必要がありますか?
A: はい、基本的には2人で行い、互いにコードを確認し合いながら進めることが特徴です。
A: はい、基本的には2人で行い、互いにコードを確認し合いながら進めることが特徴です。
Q: ペアプログラミングは作業効率が落ちるのでは?
A: 一見効率が落ちるように見えますが、バグの早期発見や知識共有により、結果的に開発全体の効率と品質が向上します。
A: 一見効率が落ちるように見えますが、バグの早期発見や知識共有により、結果的に開発全体の効率と品質が向上します。
関連キーワード: アジャイル開発、ペアプログラミング、XP, コードレビュー、知識共有

\ せっかくなら /
応用情報技術者を
クイズ形式で学習しませんか?
クイズ画面へ遷移する→
すぐに利用可能!

