次のアジャイル四半期計画のミーティングに向かいながら、私も長期プロジェクトに取り組んでいることを思い出しました。私はいま家を建てているのです。ソフトウェアの構築と家を建てることは非常によく似ています。どちらも複数のチームが連携しなければならない長期プロジェクトであり、家の所有者なら誰もが認めることですが、そのプロジェクトが完了することはありません。常に改善がなされ、何かが常に壊れ、市場のトレンドは常に変化します。計画がなければ、障害が発生するか、入居日がいつまでも先送りにされるリスクにさらされてしまいます。
ソフトウェア開発が住宅建設と違うところといえば、アジャイル手法の使用です(住宅建設に活用しても大いにメリットが見込めると思われます)。アジャイルを使用すれば、複数のチームが変更にすばやく対応できます。それでは、アジャイル、つまり頻繁な継続的デリバリーに基づいた手法を、どのようにすれば全体を見据えた長期的な計画に活用できるのでしょうか? 計画は常に変化し続けると知りながら、長期間にわたる現実的な予測を作成することは可能でしょうか?
長期計画とアジャイルを連携させる方法
アジャイル導入の段階や、カンバンやスクラムを活用している、または大規模アジャイルを開始したばかりであるかに関係なく、長期的戦略ビジョンを計画する際には、依然として人材、業務、時間を管理する必要があります。ソフトウェアでは、ガント チャート、スプレッドシート、プロジェクト ポートフォリオ管理 (PPM) ツールの組み合わせなど、連携のないツールでビジョンを描くことは困難です。私自身の建設業者のケースを考えても、スプレッドシート、メール、テキストメッセージを組み合わせたやり方は、すぐに非実用的になってしまいます。
動的な予測ソリューションについて説明する前に、家を建てるという例を使用して、長期的なアジャイル計画を作成する手順について説明します。
ステップ 1. 全体像をつかむことから始める。
家であれ製品であれ、ビジョンを定義し、戦略的なテーマを大まかに設定することが重要です。テーマとは、組織全体が注力すべき分野だと考えてください。次の四半期、半年、1 年において何に重点を置くのか、時間やリソースはどこに割くべきかを検討します。パフォーマンス、ユーザーエクスペリエンス、セキュリティ、競争力を持つ新たな機能 (ホットタブなど)、またはこれらすべてです。
すべてを手に入れられれば問題ないのですが、時間とお金という厄介な現実を避けては通れません。優先度の高いテーマを設定すれば、時間とエネルギーを集中させて、効率的に物事を進められます。
ステップ 2. コストのかかる項目を特定する。
たとえば、セキュリティを考慮するのであれば、新しい基礎を構築して、骨組みにぴったりと収まる壁、ソリッドコアのドア、複層ガラスの窓を備える必要があります。
ステップ 3. 細分化する。
では、実際に新しい安全な窓を効率的に設置するには、どのような作業が必要なのでしょうか? 大まかな作業計画を、エピックのような扱いやすい大きさに細分化すると、アジャイルな四半期計画を立てる際に役立ちます。そうすることで、計画達成のために必要なすべての手順を詳細に把握できます。
たとえば、古い窓の取り外し、新しい窓の購入、窓の設置、カーテンやブラインドによる窓の機能性の向上といった作業が必要になります。これらの作業はバックログに取り込まれます。
これは、次に行う、この計画プロセスで最も重要な手順である見積もりの際に役立ちます。
ステップ 4. 見積もりを作成する。
作業を細分化したら、ロードマップを作成するために大まかな時間を見積もる必要があります。ロードマップは、製品またはソリューションの進捗を経時的に表した行動計画です。重要な工程の発生タイミングとその順番を把握する際に必要になります。
これは、建設業者 (または製品マネージャーや開発マネージャー) が実際に作業を行うタイミングにもなります。過去の同様の取り組みを見れば、それぞれの作業を行うのに何が必要になるのかを確認できます。
見積もりには同様のエピックに行った過去の作業に関する知識が必要になるため、情報を 1 か所に保管しておくことがより重要になります。そうすることにより、ふりかえりが非常に簡単になり、見積もりも正確になります。建設業者は自らの経験に基づいて作業を行いますが、失念してしまった場合や、異なる経験を持つ別の業者に作業を依頼する場合などにも備えておく必要があります。
後日、最終的なロードマップをチーム (開発者、窓の設置業者など) に渡して、ロードマップを精査してもらいます。
ステップ 5. 適切なリリースを作成する。
アジャイル開発の手法を使用する場合、チームは通常、各スプリントの終わりにリリース (またはバージョン) としてソフトウェアを提供します。ただし、長期的な計画やロードマップを作成する場合には、次のアジャイルな四半期計画の四半期のリリース日を見積もれるよう、ロードマップにいくつかの大まかなリリース ポイントを定義する必要があります。たとえば「住宅の外側が完成」のように、安全な窓のイニシアチブと骨組み、塗装、断熱材などを組み合わせたものになります。
バックログ内の作業項目を、類似するもの、まとめることによって効率化するもの、全体として顧客に価値を提供できるものでまとめます。また、リリースは厳密な期日ではなく、作業全体のスコープを考慮して進める必要があります。
ステップ 6. ロードマップを作成する。
これで、バックログの見積もり、リリース、ベロシティを備えたチームが揃いました。従来用いられる計画の三角形では、計画には 3 つの変数があります。つまり、スコープ (目的)、時間 (実施にかかる時間)、リソース (実施担当者) です。現実的なロードマップを作成するために必要なものは、すべて揃っています。ようやく、建築業者に実際の入居日を提示してもらえます。
ヒント: Jira のタイムラインなどのツールを使用すると、チームの現実的なロードマップを作成し、データに基づいた意思決定を行い、チームの進捗状況に関する最新情報を関係者に伝えられます。
ステップ 7. チームと共有して検証する。
最新のロードマップができたら、チームで検証します。エピックをストーリーに細分化してもらい、作業に最小限必要となる時間を見積もってもらいます。屋根工事業者のスケジュールの都合がつかなかったり、基礎工事業者のコンクリートが足りなくなったりした場合は、注文に 6 週間かかることになります。このような外的要因を使用し、仮定を検証して見積もりを作成し、作業を完了するために必要な手順を明確化させます。特に特定の手順を進めるために承認が必要な場合は、主要な関係者ごとのロードマップが必要になります。
ステップ 8. 改善を続ける。
アジャイルな手法や住宅の所有に関していえば、どんなプロジェクトも完成するということはありません。イノベーションや素晴らしい住宅は、少しずつ改善して価値を提供し続けることで実現されます。ロードマップを情報源として、今後のロードマップを最適化していきましょう。顧客や家族からフィードバックを得て、頻繁かつ定期的にテストを実施して改善していきましょう。
ロードマップを構築して長期ビジョンを示してみましょう。Jira の計画機能と Jira Align では、どちらもロードマップ構築機能によるサポートを提供しています。違いを理解し、どちらがビジネスに適しているかを判断してください。