新製品の開発中にペアプログラミングにてコーディングを行ったので、やり方や効果や感想を書きます。
ミッション:
・開発中プログラムのメモリ使用率の削減と処理速度向上を行う。
やり方:
・1名がタイピング(いわゆるドライバー)、1名が確認(いわゆるナビゲーター)を担当。役割変更はなし。
・あらかじめ単体テストツールの整備や性能評価の方法を決めておく。
・流れは以下の通り
1.修正方針検討
↓
2.修正
↓
3.単体テスト・性能評価(Devel::NYTProf等を使用)
↓
4.考えられる限り2と3を繰り返し、最も良さそうな性能をだしたコードを採用
続いて効果と感想を書きます。
効果:
◎2人で一緒に作業をするので、さぼらず、集中して作業に取り組める。
○あらかじめやることを話し合うので、目標が明確化される。
○思い込みが排除できる。その結果スピーディーに進められる。
○スペリングミスなど些細なミスが少なくなる。
○コーディング方法についての知識が共有される。
×1人で作業しなければいけない場合に、モチベーションがかなり下がる。
エピソード:
Aはドライバーで、Bがナビゲーターです。
Aが1人だけで作業をしていた時、2時間かけてもあるバグが解決できなかったため、帰宅しました。
次の日の朝、Aから話を聞いたBがコードを見ると、
if ( $value eq '' ){
$value = '';
}
といった何をしたいのか謎なコードが並んでいました。
ちなみに、バグは30分程度で解決しました。
やってみた感想:
集中できることが1番の利点です。
1人だとさぼりってしまったり、思考停止してしまったりする時間が結構あったのですが、2人だとコミュニケーションをとりながらのため、テンションが上がってすごく集中できます。
また、他の人の考え方を知ることもできるので、とても勉強になります。
総合的に見て、かなりいい進め方だと感じました。
Leave a comment