モチベーション
我々のチームは、すべてスクラムに準拠した開発では有りませんでしたが、スクラムの要素を取り入れながら日々業務をしていました。自らも開発業務の中で、ゴールの達成のためには様々な障害が存在し、自身もチームでゴールを達成するために四苦八苦してきました。例えば、想定外のことが起き、リリースするアイテムのスケジュールに影響がありそうなときは、その時々に応じて様々な議論や意思決定を皆でしてきました。
一方で、そうした場面で自分の中で基礎となるような考え方や思想が存在していないことを課題に感じていました。
今回は、そうした課題感の一助になったSCRUM BOOT CAMP THE BOOKから、開発における「調整」について取り上げます。
どのようにゴールに近づくか
まずゴールに近づくための主だった手法について記載します。
スクラム開発のゴールに近づいていくための方法は以下の2つです。
1. スクラムチームの仕事の進め方を改善していく
2. 何かを調整して、ゴールに近づく
1.については、デイリースクラムやスプリントプロスペクティブを通して各スプリントやスクラムの進行方法を改善することが出来る方法論だと解釈しています。
今回は、2. の”調整”について取り上げてみました。
なぜ調整が必要なのか?
ここでは、かんたんな例で考えてみます。
例えば、4人の開発チームで、「〇〇が出来るようになる」というゴールを定めたとします。〇〇を達成するためにはAとBとCという機能を実装しなければなりません。しかしながら、みんなで見積もりをした結果、スケジュール的に厳しい状況が判明しました。
といったときに、「調整」の出番です。
ゴールに近づく上で、変更可能な要素に手を加えることでゴールに近づいていくのです。
実際の業務においても、日常的な改善業務はもちろん必須ですが、このような調整に迫られる場面は多いのではないでしょうか?
何を「調整」できるのか?
開発において調整できるものは以下の4つです。それぞれの定義を見ていきます。
1. 品質
リリース時に満たす様々なこと。
例:金額計算ロジック・セキュリティ機能等
2. 予算
お金の話。
例:スクラムチームの人件費・開発環境整備費用・人的リソース等
3. 期間
リリース予定日までの期間。
例:ステークホルダーと合意したリリース日までの日数、デモデーまでの日数等
4. スコープ
リリースに含めたいもの
例:機能等
どれを調整するべきか?
本書の結論から言うと、「スコープ」を調整するべき。
なぜなら、リリースしてほしいと言われているアイテムや機能の中には削れるものが存在していることが多いからです。
ゴールを達成するに値する要素のみを残し、無駄を削ぎ落とすということだと思います。
それ以外の3つに関しては、調整が難しいとのことです。
それぞれが難しい理由を記載していきます。
1. 品質:
実際に提供するものの品質は一定でなければなりません。例えば使う人や、場面に応じて品質の善し悪し、(例えば計算結果が違う等)が存在することは責任を持って提供する以上は妥協できない点です。
2. 予算:
お金に余裕があるプロジェクトであれば、予算を調整することは可能でしょう。追加の予算があれば即効性のある施策や手段が取れる可能性がありそうです。ただし、承認等のプロセスが複雑・長期化する場合は短期的な許可を得ることは難しいです。また、人を増やしたとしてもベロシティ(開発速度)が上がるとは限りません。スクラムの考え方や進め方等を理解して貰う必要があるからです。
3. 期間
リリース日をずらせば、それだけ開発に充てられる時間を増やすことができます。一方でリリース日が重要な場合はずらすことが難しいです。さほどリリース日が重要でない場合はずらすことができますが、再現性の高い手法ではないでしょう。
自分の考え
上述の理由に関しては、SCRUM BOOT CAMP THE BOOKの考えに基づくものです。(おそらく、スクラムはこの考えに則られているはず)
一方で自分は、「予算」「期間」についても「スコープ」と同様に、場面によっては調整できるものが変わるのではないかという仮説を持っています。
予算調整について
特に人的な投資を行う場合、経験豊富な人材やスキルフルな人材がいる場合については予算が調整可能ではないでしょうか。なぜなら、チームやプロセスに順応がはやく、ベロシティを下げることなく、むしろ純増できる可能性を有しているからです。
期間調整について
特に自社プロダクト・社内システム等においてですが、リリース期限がさほど重要でない場合というのが一定存在していると思います。例えば曖昧な見積から予測した、リリース日になっているケース等もあるのでそれ自体に意味がないケースです。もちろん、関係各所に確認は必要ではありますが、スコープを削らずにリリースにたどり着くという点においては期間調整は有効な一手になりうると思います。
まとめ
各項目についての特徴と、調整の可能性についてまとめました。
まず、このような調整項目について、ある程度自分の中で言語化されていること自体が、決断や議論を行う場面では非常に有益であると思います。
自分自身の経験からも”調整”を行う上では、「絶対的な正解はないが、各場面に応じてどういう判断をするべきかという判断力と説明を行う」が何よりも重要であると思います。