モブプログラミングは、なぜ5人が1台のPCで仕事をしているのに生産的になれるのか(後編)。モブプログラミングの生みの親が解説するその理由と効果とは?
2人のプログラマが協力して同じコードに対してプログラミングを行う「ペアプログラミング」に対して、モブプログラミングは3人以上のチームメンバーが協力してプログラミングを行う方法です。
このモブプログラミングの生みの親であるWoody Zuill氏が、今年(2024年)1月に東京都内で行われたイベント「Regional Scrum Gathering Tokyo 2024」の招待講演「Software Teaming (Mob Programming) and the Power of Flow.」(ソフトウェアチーミングと「フロー」のチカラ)を行いました。
本記事ではその内容をダイジェストで紹介します。本記事ではその内容をダイジェストで紹介します。本記事は前編、中編、後編の3つに分かれています。いまお読みの記事は後編です。
モブプログラミングは生産性が高いのか? の答えと理由
もう私たちは、「1台のコンピュータの周りに5人もいて、本当に生産性を高くできるのですか?」という最初の質問に答えることができるでしょう。それは「フロー」を作り出すからです。
フローには3種類あります。個人の心理的なフロー、チームの心理的なフロー、そしてリーンフローです。
だから、モブプログラミングとかソフトウェアチーミングそのものが重要なのではないと私は考えています。
より重要なのは、こうした状態を生み出せること、それを進化させることができる、ということなのです。
ありがとうございました。
質疑応答:変化を起こすための方法とは
会場から質問: 私は大きな会社のパートナーとしてスクラムマスターをしています。その会社はリソースの効率化が進められていて、フローの効率化にはなっていません。フローの効率化を目指すとしたら現場には多少の遊びがないと行けないと思うのですが、上長はチームメンバーを遊ばせるわけには行かないと考えています。これをどうすれば説得できるでしょうか?
答え: これは複雑な質問ですね。
1999年から2009年までの10年間、私は自分が責任者ではないところで、変化を起こすにはどうしたらいいかについて、長い時間をかけて考えを巡らせていました。
そこで見つけた方法の1つは、社外での周囲の幅広いソフトウェア開発者の方々に私を信頼してもらい、能力を認めてもらうことでした。
もう1つはもうひとつは社内で、新しいアイデアについて考えてくれる仲間を見つけることだった。
そして私が学んだことは、リスクを取ることを恐れなければ自分の望む変化を得ることができる、ということです。もちろん、いつもうまくいくとは限りません。つまり、失敗したら仕事を失うリスクがあるということなのですから。
私がよくやっていたことの1つは、例えばペアプログラミングについての記事をプリントアウトした紙を持っていて、社内で新しい人と出会ったら「これ読んでもらえる?」とお願いしてみることでした。
するとその後、その人と顔を合わせることがなくなるか、あるいはその人が「読みましたよ」といって会いに来てくれるか、いずれかの結果になる。そして後者のような人を探していたのです。
もう1つよくやっていたことは、社内で助けを必要としている人がいたらその人のところへ行って「私は少し余裕があるから手伝いますよ」と言って手伝うことでした。
そうすることで私の助けを喜んで受け入れてくれる人たちを作るのです。いざ私がその人たちに助けを求めようとしたときに、彼らは私を助けてくれなければ罪悪感を感じるはずですから。
おそらくご存じだと思いますが、リンダ・ライジングの 「Fearless Change」という素晴らしい本があります。この本には、変化に影響を与えるための多くのパターンが概説されています。
そこで重要なことは3つ。多くの知識と経験を持っていること、人間関係を築くことを厭わないこと、そして必要な信用と影響力を築くことができるか、あるいはそれを厭わないことです。
これは一朝一夕にできることではありません。私もあなたと同じように試行錯誤してきましたし、もっといい方法が見つかるかもしれませんね。
そろそろ時間が来たようです。皆さん、ありがとうございました。
関連記事
Regional Scrum Gathering Tokyo 2024では、下記の講演も行われています。
あわせて読みたい
[速報]オラクルとAWSが戦略的提携で「Oracle Database@AWS」の提供を発表
≪前の記事
モブプログラミングは、なぜ5人が1台のPCで仕事をしているのに生産的になれるのか(中編)。モブプログラミングの生みの親が解説するその理由と効果とは?