ペアプログラミングとは?ぺあぷろぐらみんぐ
ペアプログラミングとは、2人が1台の環境を共有し、書き手(ドライバ)と考え手(ナビゲータ)を交代しながら同じコードへ同時に向かう開発手法。事後のレビュー工程で拾っていた欠陥を、書いている最中に潰す形へ前倒しする。設計判断の理由がその場で言葉になるため、暗黙知の移転がレビューの副産物として起きる。
最終更新:2026-10-06
この語が出る過去問を解く →背景
欠陥は見つかるのが遅いほど修正費用が上がる。レビューが有効なら常時行えばよい、という発想からXP(エクストリームプログラミング)のプラクティスとして置かれた。人件費が単純計算で2倍に見えるため、システムアーキテクトの読者には、欠陥の流出と引継ぎのコスト削減で釣り合うかという要員計画上の説明が求められる。
具体例
ケント・ベックがクライスラーのC3プロジェクトで実践したXPの中核手法で、Pivotal Labsのように常時ペアで開発する体制を公表している組織もある。実務では経験の浅い開発者をドライバ、熟練者をナビゲータに置き、その現場固有の作法を実作業の中で渡す使い方をする。
試験での引っ掛け
2人で作業を分担するのではなく、同じ作業を2人で同時に見ることが目的である。3人以上で1台に向かうモブプログラミングとは別の呼び名で、また非同期・事後に行うコードレビューとも、指摘が入る時点が違う。
関連用語
出た過去問
出典:平成29年度 秋期 システムアーキテクト試験 午前Ⅱ 問10(IPA)
ハードウェアの経験が豊富なプログラマAと、経験の少ないプログラマBがペアプログラミングの手法を利用して組込みシステムの開発を進める。ペアプログラミングによる開発…
正解:AとBがエディタの画面を共有し、Bが記述したコードに対してAが助言する。
要点:ペアプロは画面を共有し書き手に相方が助言する
ペアプログラミングは、2人が1台の環境を共有し、実際に書き手(ドライバ)となる者と、それを観察し助言する者(ナビゲータ)が協働する手法である。経験の浅いBが記述し、熟練のAが助言する形は、コードの品質向上と技術移転を同時に達成でき、この手法の狙いに合致する。
出典:令和5年度 春期 システムアーキテクト試験 午前Ⅱ 問10(IPA)
タイピングを行う人をドライバと呼び、その様子を見ながら指摘や助言をする人をナビゲータと呼んで、2人が1台のPCを共有して共同でプログラムを作成する技法はどれか。
正解:ペアプログラミング
要点:ドライバとナビゲータが1台で組むのがペアプログラミング
ペアプログラミングは、実際に入力するドライバと、その内容を見て助言・指摘を行うナビゲータの2人が1台のPCで組んで開発する、XP(エクストリームプログラミング)由来の技法である。書きながら常時レビューされる状態になるため、欠陥の早期発見と知識の共有が同時に進む。
出典・参考
高度試験 午前I(高度午前I 相当)のシラバスの4 開発技術 > 1. 開発プロセス・手法 > (1) ソフトウェア開発手法に掲載されている用語です。
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。