「プログラマが知るべき97のこと/1人より2人」の版間の差分

削除された内容 追加された内容
編集の要約なし
編集の要約なし
 
23行目:
ペアプログラミングの支持者は、全員がそうではありませんが、多くがアジャイルソフトウェア開発の支持者です。ペアプログラミングに否定的な人がよく言うのは「仕事は1つなのに、どうして2人のプログラマに給料を払わなくてはならないのか」ということです。そう言う人には、私は「嫌ならやめればいい」と答えるしかありません。私が言いたいのは、1人よりもペアのときの方が、1つの仕事のために使える技術やテクニック(IDEを使いこなすコツなども含む)が増え、問題領域についての知識も増えるため、ソフトウェアの品質が向上する可能性が高いということです。また「宝くじのリスク(優れた知識、技術を持ったプログラマがある日、宝くじに当たって、急に会社を辞めてしまうリスク)」も緩和できます。
 
ペアプログラミングのパートナーから、今まで知らなかったキーボードショートカットを教わったとして、それによって得られる長期的な利益はどのくらいでしょうかペアを組むことによって、ソフトウェアの品質は全体としてどのくらい向上するでしょうか。それを評価する方法はあるでしょうか。難しい問題に直面した時も、2人であれば行き詰まらずに解決できることが多いですが、その効果が具体的にどのくらいか知ることはできるでしょうか。ある調査によれば、ペアプログラミングには、生産性、作業速度を40%向上させる効果があるという結果が得られています。ただし、効果を定量的に評価することは難しいようです。「宝くじのリスク」を緩和させる効果なども、具体的にどのくらいかを知るのは容易ではありません。
 
ペアプログラミングに向いているのはどういう人でしょうか。またペアの相手にはどういう人を選ぶべきでしょうか。もし開発チームに加わったばかりの新人なら、ペアの相手には、知識も経験も豊富な人を選ぶべきでしょう。またそれと同じくらい重要なのは、人間関係を円滑にできる人、また人にものを教えるのが得意な人を選ぶことです。問題領域についての経験が浅い人は、その領域についての経験が豊富な人を選ぶべきです。