プロダクトゴールを決めてしまうと変化に対応出来なくなりませんか?
先日チームからこういう素晴らしい質問を受けたので、ここに回答を共有していきたいと思います。
「プロダクトゴール」は、2020版のスクラムガイドから導入された、比較的新しい概念です。それ以外にも2020版の目玉として、プロダクトバックログ、スプリントバックログ、およびプロダクトインクリメントに対してそれぞれ「コミットメント」として、「プロダクトゴール」「スプリントゴール」「完成の定義」が設定されました。
このうちスプリントゴールと完成の定義は以前からあったのですが、いまひとつその位置づけが明確で無かったものを、2020年版の改版で明確化した形になります。
一方で「プロダクトゴール」は2020版で新たに登場した概念ですが、例によってスクラムガイドにはそれがどういうものなのか具体的な説明はなく、どう扱ったものか途方に暮れる難民を大量に生み出したとか生み出さないとか。
というわけで今回は上述の質問への回答として、まずスプリントゴールについて考えていきましょう。
私が考えるに、「プロダクトゴール」はプロダクトのビジョンに近いものなのであろうと思います。「スプリントゴール」は「スプリント」という1~2週間程度の短い期間で目指すべきゴールですが、それを積み上げていくことで徐々に「プロダクトゴール」に近づいていくというもので、短期のゴールが「スプリントゴール」、より中長期的なゴールが「プロダクトゴール」というわけです。
スプリントゴールでもプロダクトゴールでも同じなのですが、これらには顧客に届けるべき「価値」を記述します。「価値」というのは、その成果物(ソフトウェアプロダクトやWebサービス)によって顧客やユーザーが得られる金銭的な利益だったり、何らかの問題の解決だったり、生活の変化だったりします。よくスプリントゴールに「A機能とB機能とC機能を作る」というような記述をしているのを見かけるのですが、これはスコープを記述しただけで価値を記述したとは言えませんし、「作る」という言い方が完全に開発者目線なのが気になります。価値の記述とはたとえば下記のような感じです。
とかそんな感じです。これはECサイトなどにおける検索機能の例ですが、上記のような書き方だと、別にWebサイト上に検索機能を実装しなくても良いかも知れません。たとえば実際の店舗のリアルタイムな映像を常時動画で流して、欲しいものを見つけたら注文する、とかも、ひょっとしたらアリかも知れません。
さらにプロダクトゴールというのがどのようなものかというと、
とかが良さそうです。ちょっとざっくり過ぎかもですが。これも別にWebサービスじゃなくても、実店舗でも良いわけです。サイトという言葉は本来「敷地」とか「場所」の意味なので、そう考えれば違和感は無いですよね。
プロダクトゴールだって時とともに変化します。amazonなんて最初のころはちょっと便利なネットの本屋さんぐらいな感じだったんですよ?知ってます?それが今や世界最大のECサイトですもんね。これは彼らが自分たちのプロダクトゴールを変化させながら進んできた証拠なのです。知らんけど。
さてここらで冒頭の質問に戻る訳ですが、この質問者さんは、おそらく「プロダクトゴール」を「プロジェクトのスコープ」と捉えたのではないでしょうか。つまり、「プロダクトゴールを決める」=「スコープを固定する」と捉えたのではないかと思います。アジャイル開発は変化に対応するためにスコープは可変だと教わった直後にこういうことを言われて混乱してしまったのでしょうね。
従来型の、納期と予算とスコープを固定した開発に鼻までどっぷり浸かっているとそんな風に感じるのも無理はないかなあとは思いますが、逆に言えばその考え方から脱却することこそが、アジャイル開発を理解するための大きな一歩なのだと思っています。