ホーム > システムアーキテクト試験 > 2017年
システムアーキテクト試験 2017年 午前2 問10
ハードウェアの経験が豊富なプログラマAと、経験の少ないプログラマBがペアプログラミングの手法を利用して組込みシステムの開発を進める。ペアプログラミングによる開発の進め方として、適切なものはどれか。
ア:Aがデバイスドライバの開発を担当し、Bがアプリケーションの開発を担当する。
イ:Aがプロジェクトマネージャとして、プロジェクトの調整役になる。
ウ:AとBがエディタの画面を共有し、Bが記述したコードに対してAが助言する。(正解)
エ:ハードウェアとソフトウェアの切分けをシミユレーションで検証してから、AとBとで分担して開発する。
解説
ペアプログラミングによる組込みシステム開発の進め方【午前2 解説】
要点まとめ
- 結論:ペアプログラミングでは、二人が同じ画面を共有し、互いにコードを確認しながら進めることが効果的です。
- 根拠:経験豊富なプログラマが助言し、経験の浅いプログラマが実装を担当することで知識共有と品質向上が図れます。
- 差がつくポイント:単純な役割分担ではなく、リアルタイムのコミュニケーションと協働作業がペアプログラミングの本質です。
正解の理由
選択肢ウは、AとBがエディタの画面を共有し、Bがコードを記述する際にAが助言する形で協力しています。これはペアプログラミングの基本的な進め方であり、経験差を活かしながらコードの品質を高める効果的な方法です。単に役割を分けるのではなく、二人が密に連携しながら開発を進める点が正解の理由です。
よくある誤解
ペアプログラミングは単なる役割分担ではなく、二人が同時にコードを確認し合う協働作業であることを理解していない場合があります。
解法ステップ
- ペアプログラミングの定義を確認する(共同でコードを書く手法)。
- 経験豊富なプログラマが助言役、経験の浅いプログラマが実装役となることを理解する。
- 画面共有や同じエディタを使い、リアルタイムでコードを確認し合う形が理想的であると判断する。
- 選択肢の中でこの条件を満たすものを選ぶ。
選択肢別の誤答解説
- ア: 役割を完全に分けており、ペアプログラミングの協働作業の本質を欠いています。
- イ: プロジェクトマネージャとしての役割はペアプログラミングの進め方とは異なります。
- ウ: 画面共有し、助言しながらコードを書くペアプログラミングの正しい形です。
- エ: シミュレーションや分担は開発手法の一部ですが、ペアプログラミングの進め方としては不適切です。
補足コラム
ペアプログラミングはアジャイル開発の一手法で、コードの品質向上や知識共有、バグの早期発見に効果的です。特に組込みシステムのような専門知識が必要な分野では、経験豊富な技術者と若手が協力することで開発効率が上がります。
FAQ
Q: ペアプログラミングは必ず二人で同じコードを書く必要がありますか?
A: はい。二人が同じ画面を共有し、リアルタイムでコードを確認し合うことが基本です。
A: はい。二人が同じ画面を共有し、リアルタイムでコードを確認し合うことが基本です。
Q: 経験差が大きい場合でもペアプログラミングは有効ですか?
A: 有効です。経験豊富なプログラマが助言しながら若手を育成できるため、知識共有に役立ちます。
A: 有効です。経験豊富なプログラマが助言しながら若手を育成できるため、知識共有に役立ちます。
関連キーワード: ペアプログラミング, 組込みシステム開発, アジャイル開発, コードレビュー, 知識共有