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

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

