「仕事が早く終わったら飲みに行きたい」という人はスクラムに向いてないよ
前書き
「仕事が早く終わったら飲みに行きたい」という人がいたらスクラムは回らないよ、という話をnawotoさん(*1)から聞いたことがあります。
最近その問題について整理ができてきたので実体験をもとに書いていきます
*1 西村直人。アジャイルサムライの監訳者、SCRUM BOOT CAMP THE BOOKの共著者
前提として
スクラムにおいては計画に対する正しさの検証や精度向上のために「実行の誠実さ」が必要となります。
相対見積というある程度のいい加減さを許容した見積手法を使うのも計画に対する正しさの検証や精度向上のためだと私は思っています。
パーキンソンの法則を防ぐために
スクラムでは見積について3ポイントとか5ポイントとか、そういう相対見積を使います。
またタスクごとに締切を設けて、と言うやり方はあまりしません。
理由として人日換算したり締切を設けたりすると、タスクにアサインされた人は締切に間に合うようにタスク見積にバッファを積むようになります。
バッファを積むとパーキンソンの法則が発動します。
つまり2日で終わるなと思ったタスクをバッファを積んで「3日で終わります」と報告すると、2日で終わるはずのタスクが本当に3日かかる、と言う現象が毎回起きるようになります。
つまり開発スピードが落ち、生産性が低下します。
スクラムでタスクに締切を設けず、相対見積を使う理由はパーキンソンの法則による生産性低下を防ぐためです。
正直ベースの報告について
スクラムでは2日で終わるよ、と見積もったタスクが1日半で終わるなら1日半で終わったと報告してほしい。
また3日かかったなら素直に3日かかったと報告してほしいわけです。
すると「2日で終わる」と言う見積からなぜずれたのか?という検証ができます。
次スプリント以降で見積精度が上がり、チームはより正しい計画を作れるようになります。
チームが正しい計画を作れるようになるとどうなるのか
より経営陣やステークホルダーがチームを信頼できるようになります。
より大きな裁量を任せられるようになり、より大きな計画について細かく管理する必要がなくなり、またチームの進言が容れられやすくなります。
「仕事が早く終わったら飲みに行きたい」人はなぜスクラムに向いていないのか
「仕事が早く終わったら飲みに行きたい」の定義を先にしましょう。
定時が18時だとして18時までかかるとしていた作業が15時半に終わったとしましょう。
その人は本当に15時半に退社して飲みにいくのでしょうか?
オフライン出社している職場ならしないと思います。
(制度上はできても用事もないけど早上がりして飲みに行きます、という人は経験上見たことないです)
リモート勤務ならできるかもしれませんが、私は17時半に上司に話しかけられた時に出来上がっていて呂律が回っていない時のリスクを考えるとやりたくないです。
話がそれました。つまり「仕事が早く終わったら飲みに行きたい」人は実際に早上がりして飲みに行く人ではありません。
じゃあどう言う人が問題視されているかというと
- 2日で終わるよ、と見積もったタスクが3日かかったときは3日かかったと正直に言う
- 2日で終わるよ、と見積もったタスクが1日半で終わりそうな時は半日遊んで2日で終わったと嘘を言う
こう言うタイプの人です。
こう言った行動をされると見積が過大だったケースは発覚せず、過小だったケースのみが報告されるため「実態が見えない」ために2つの問題が起きてきます。
1つはチームの見積が膨張が生産性の低下と判断される点です。
「見積が膨らみ続ける(そしてこの人の場合は見積が増えると遊ぶ時間が増える)」という問題があります。
同じ作業に対する所要時間が増えるわけですから、外部から見るとだんだん生産性が落ちているように見えます。
こういった行動をチームが取ると経営陣やステークホルダーからチームが信頼を失います。
もう1つは見積や計画の精度向上ができません。
スクラムにおいて重要な要素の一つは計画の精度です。
チームのスプリントキャパシティが40ポイントだとしたとき、32ポイントしか出せない時もあれば50ポイント出せる時もあるでしょう。
この揺れ幅を見ながらスプリントはもちろん中長期の計画を立てていきます。
しかし上記のタイプの人がいるとこの精度が上がりません。
精度が上がらないと中長期の計画をチームが立てることができなくなります。
しかし経営陣は出資者や株主に報告するために中長期の計画を立てる必要があります。
開発計画について中長期の予定をチームが立てられないなら、専門知識を欠く経営陣が勘と経験と度胸で作ったガントチャートを開発チームに押し付けるしかなくなります。
押し付けられたガントチャートは開発チームのいくつかの働きを機能不全に陥れます。
しかしチームが中長期の計画も立てられない半人前のチームであるためそれは仕方のないことです。「子供」は行動に制約が課せられます。自由が欲しいのであれば早く一人前になってください。
「仕事が早く終わったら飲みに行きたい」人を排除するにはどうすればいいのか
面接でそもそも雇わないか、チームから外してしまうのが一番簡単です。
逆に言えば全社スクラムの一斉立ち上げは「仕事が早く終わったら飲みに行きたい」人をチームで雇い続けるしかなくなるので、スクラムを機能不全に陥れるベストプラクティスです。
しかし読者の方が知りたいのは上記のようなドラスティックな策ではないでしょう。
基本的には動機の内部化が必要になります。
2日で終わらせてと言われた作業が1日半で終わったら「次の作業を半日も早く始められるぞ」「俺の大好きなプロダクトにさらに価値を付加する作業ができるぞ」と言うマインドを作業者に持ってもらうわけです。
え? なんかその発想が気持ち悪い?
いやいや仕事をやっているような人間が自律的に働いてくれる、スクラムを機能させられると思う方が私にとってはよほど気持ち悪いですね。
しかたないスクラムではない、ちゃんと機能するスクラムをつくりたいならメンバーに対する内発的動機の醸成は必須要素の1つです。
しかし全メンバーにそんなマインドを持たせられるのか?
いい質問です。
スクラムガイドを見てみましょう。
スクラムを構成するのは、作業に必要なすべてのスキルや専⾨知識をグループ全体として備える⼈たちである。
つまり2日で終わる作業が1日半で終わったら「半日遊べるぞ!」ではなく「半日分さらに作業ができるぞ!」と思えるマインドを チームとして 持っていればいいわけです。全ての個人には必要ありません。
チームの中に「仕事が早く終わったら飲みに行きたい」人が混じっていてもいいわけですね。
2日で終わると見積もったタスクが1日半で終わりそうなら半日遊んでしまう人はタスクを細分化して締切でケツをぶっ叩く。タスク細分化とケツぶっ叩きはチームリーダーに相当する人を置いてその人にさせればよいですね。
ちゃんと2日で終わると見積もったタスクが1日半で終わったら正直に言う人はタスクをそのまま渡せばいいわけです。
もちろん欠点はあります。
マネージメントコストが高止まりするのでチームリーダーに相当する役職者をチーム内におかねばならず、フラットな組織とは言い難いでしょう。
ですが「仕事が早く終わったら飲みに行きたい」人を開発組織から完全排除するよりはずっと楽です。
なによりチーム単位では自律性が要求できるため経営陣にとって難関である「四半期の最初に精度の高い中長期計画を作成する」ことの難易度が大きく下がります。
そう考えると某メガベンチャー社のScrum@Scaleのようなチーム単位では自律性を要求するがメンバーには自律性は「Nice to Have」にとどめリーダーへの昇格要件にする運用はひとつの解に見えます。
あとがき
全社スクラムを行うことが決定された状況で、私はメンバーに自律的に動くマインドを持ってもらおうとしていたのですが「仕事が早く終わったら飲みに行きたい」マンの存在にいつも苦労していました。
しかし他社事例を見ると「自律性はチーム単位であればいい」と考えるとある程度現実的な運用ができそうな気がしてきます。
もし同様のことでお悩みの方がいれば参考になれば幸いです。
Discussion