プロダクトバックログの優先付けの為に、難易度とビジネス価値で評価するのが一般的だと思います。この評価の結果どれを一番最初グループへ配置するでしょうか?
- 難易度高&ビジネス価値高をA
- 難易度低&ビジネス価値高をB
- 難易度高&ビジネス価値低をC
- 難易度低&ビジネス価値低をD
とするとA>B>D>Cの順番で組むようにと現場へはアドバイスしています。
昨年、ある現場支援した時にBを一番先に開発した方が良いという方がいました。意見を伺うと、Aを一番最初に選んだ場合、開発チームが実装できなくて自信を無くすから、という理由でした。さらに、何故そのように考えたのかと質問すると、開発チームが宣言したバックログ常に構築できていないと自信だけでなくチーム崩壊の危機が訪れると説明しました。
はたして、この姿勢は良いのでしょうか?
何事も失敗してはダメだという心理が働いていると思います。
失敗は真摯に受け止め、改善策を考え・実行して良くなることで、チームは自信を持って成長していきます。
アジャイル開発の初段では様々なリスクを顕在化させることがとても大切です。これがリスクマネジメントの基本だからです。
一番最初に難易度の高いプロダクトバックログを実装することで、現時点での開発チームの力量が判ります。
上手くできなかった場合には、その理由を明確にして、関係者全員でそれを共有して、対応策を考え・実施するように誘導することが成功への第一歩となります。
もう一つ、私の体験をお話しします。
あるアジャイル開発プロジェクトでプロダクト・オーナー(PO)と開発チームの距離(心理的も含めて)が近い現場を支援したことがありました。
このチームは従来のW/Fでの開発経験は十分に持っていました。ただ、POも含めてアジャイル開発は初挑戦でした。
まず初めに、POはシステムの全体像を開発チームと一緒に描き、さらに、その全体像上にプロダクトバックログに相当する業務シナリオの流れを太線で書いていき、それぞれにルート〇〇とIDをつけていきました。
その後、POはこのルートをユーザー部門が一番誘いに乗りやすい(興味を持ち易い)グループに分類していきました。
この時点で、プロダクトバックログはユーザーの興味順に尚且つ、それぞれが一つの業務シナリオとして完結し独立するように整理できたのです。
『ここまで整ってきたので、ユーザーレビューへ向けた各イテレーションでの開発順位は開発チームにアイデアを出してもらいましょう。』とPOに話して、実装するための優先順位を開発チームに立ててもらうようにしました。
この時、開発チームは自分たちの技術的リスクも考慮して、自分達の自信が持てるプランを提示してきました。
これを基にPOはユーザーとの折衝も重ね、開発チームの提案通りの優先順位で、このプロジェクトをスタートさせました。
このプロジェクトは一回目のリリースで一部の積み残しはあったものの絶大な信頼を得て、その後のイテレーションもステークホルダーがONE Teamとなり成功を収めました。
アジャイル開発ではPOがプロダクトバックログについて責任を持ち、優先順位や見積もりを行うと一般には定義されていますが、実際に成功させる為には開発チームと常に会話できる状態を保ち、開発チームの意見を尊重することが大切なのです。
プロダクトバックログの優先順位付けの正解な決め方は無いという事です。ステークホルダーを含めONE Teamになっていないとダメなのです。発注者側のマネジメントが従来型で、単なるアジャイル開発のプラクティスだけを導入しても成功しないのは、この例から推測できると思います。