ビジネス価値という視点でモブプログラミングについて調べてみました。
どうも、フリーランスのtaiyopです。
最近ちょっと時間ができて考えごとする余裕ができています。
最近、モブプログラミングが巷で流行っていますが、生産性を高めてくれるものかもしれないと気になったので調べてみました。
モブプログラミングとは?
モブプログラミングとコードレビュー – Nilquebe Insider – Medium
モブプログラミングの「モブ」とは群衆のことです。モブプログラミングでは、ペア(2人)ではなく、モブ(チーム全体)でプログラミングを行います。モブの人数は3人から5人くらいを想定しています。ペアプログラミングと同様に、コードを書くだけでなく、すべてをモブで行います。
とのこと。
生産性ではなく、有効性(品質)を高める
not productive but effective
↑ ここ大事!
生産性は数人で一つのことを行うので下がる可能性は十分にある。
ただ、「生産性下がらない?」と言われたら、「生産性じゃなくて有効性だよ」と言いましょう。
難題の方が相性が良い
生産性は下がるが、有効性(品質)は上がる。
つまり、重要度の高い部分や難易度の高い部分では品質が非常に大事なので相性が良い。
モブプログラミングとコードレビュー – Nilquebe Insider – Medium
そのボトルネックを解消する手段のひとつとしてモブプログラミングが提示されている
とのこと。↑ ここ大事!
「いつやるの?今でしょっ!(古い)」と社内で言いましょう。
UI、UX実装と相性が良い
ユーザー視点になるためには、多様な意見が必要である。一人のプログラマ視点で実装するよりも、協力して実装する方が良い実装ができる。 (利用ライブラリの選定しかり)
2~3人がベター?
これは要件次第。ただ、4人以上は生産性の低下度が高まるので、それだけ有効性が重要な部分である必要がある。
ちなみに2人だとペアプロ。
その他
コーチングのときにも価値がある。複数人に同時に教えられる。
モブプログラミングを試してみました|MMJエンジニア Tech Blog
また、下記もみておくと歴史的な流れも見れるのでオススメ。
モブプログラミング - Woody Zuill氏とのインタビュー
参考にした記事まとめ
モブプログラミングとコードレビュー – Nilquebe Insider – Medium
モブプログラミングを試してみました|MMJエンジニア Tech Blog
社内でモブプログラミングやってみた #mobprogramming - クリエーションライン株式会社
一ヶ月間チームでモブプロを続けてみて起きた変化 - Qiita
モブプログラミング - Woody Zuill氏とのインタビュー
読んでくれてありがとう
ボトルネックや文殊の知恵がほしい事態が発生したらやってみます。
productiveじゃなくeffectiveっていうの大事ってわかってよかった。
追記
「effectiveよりもefficientでは?」という意見もあり、詳細を聞いて確認していったところ、
ペアプロもモブプロもEffectiveですが、モブプロのほうがEfficientなのかな、という印象です。
とのこと。ごもっともです。ご指摘ありがとうございます。
ペアプロとモブプロの比較ではefficient、一人開発とペアプロ/モブプロの比較ならばeffectiveといったところでしょうか。 今回の記事はeffectiveを伝えたかったので、effectiveのままにしました。