SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

【デブサミ2017】セッションレポート(AD)

「誰もが幸せになる」プロダクト開発を、リリースプランニングの見える化で可能に【デブサミ2017】

【17-C-4】 正しくプロダクトを作り、リリースプランニングするためのプロダクトオーナーの役割とは

  • X ポスト
  • このエントリーをはてなブックマークに追加

 ビジネスにおけるITソリューションの役割と影響は年々大きくなっており、そこに求められるソフトウェアも複雑で高度になってきている。開発プロジェクトの不確実性はますます高まり、変化の激しい市場のニーズに応える製品やサービスを、いかに的確に提供するかは開発者にとって最重要課題の一つだ。株式会社エウレカ 経営管理本部 情報システム部 梶原成親氏は、これまで数多くのプロジェクトを通じて、アトラシアンの開発管理ツールを活用してきた。そして、より良い開発プランニングの方法を探ってきた。Atlassian User Group Tokyoでも活躍する同氏が、「ユーザー、デベロッパー、そして誰もが幸せになる」プロダクトオーナーの役割について語る。

  • X ポスト
  • このエントリーをはてなブックマークに追加
株式会社エウレカ / eureka, Inc. 経営管理本部 情報システム部 梶原成親氏
株式会社エウレカ / eureka, Inc. 経営管理本部 情報システム部 梶原成親氏

見積もりはプロジェクトの進捗によって変わる

 梶原氏はプロダクトオーナーを「プロダクトバックログの管理に責任を持つ一人の人間」と定義する。プロダクトバックログとは、その製品がユーザーに提供する価値と、その実現のために必要なタスクをリスト化したものだ。これをもとに開発チームが行うべき作業の価値を最適化し、プロダクトのROIを最大化する上で必要なタスクの優先順位を考えながら、リリースのための計画策定を行うのがプロダクトオーナーの責務である。

 開発プロジェクトの基本となるのが、見積もりだ。一般的に見積もりは、プロジェクトの完了までを正確に見通すものでなくてはならないと考えられている。しかし梶原氏は「見積もりとは、現時点での情報に基づく予測にすぎない。それを確定のものとして扱えば、無理なスケジュールや余計な作業が発生するなど、むしろ弊害が大きい」と警告する。

 プロジェクトが大規模なものであればあるほど、たとえ大きく全体を見積もったとしても、作業の進捗にしたがって、当初の見通しと実績との差は確実に大きくなっていく。下図は各フェイズ時点での見積もりと実績の差を示しているが、左端のプロジェクト開始時から、作業の進捗に比例して、ブレ幅が小さくなっていくのがわかる。最初は「ここまでやりたい」という要件がいくつもあるが、具体的な作業が進むにつれて要件が絞られてくるため、見積もりの精度もどんどん向上していくのだ。

プロジェクトの進捗にしたがって見積もりの精度は上がっていく
プロジェクトの進捗にしたがって見積もりの精度は上がっていく

「まず納期ありき」は、かえって品質に悪影響も

 梶原氏は「大事なのは、見積もりはコミットメントではないということだ。ビジネスサイドの人と話していると、スケジュールと予算を見積もって、あとはその通りに進めることだけを求めがちだが、そんなコミュニケーションをしている限り、誰も幸せになれない」と語る。

 見積もりを「コミットメント=確約」と、とらえてしまう弊害は大きく2つある。1つは「納期最優先」になってしまうことだ。とにかく予定に間に合わせようといろいろな小細工をして、かえって進捗を遅らせてしまう。よくある失敗が追加人員の投入だ。人月数が減ることで数字上は間に合うように見えるが、中途で加わった開発者がプロジェクトの目的や自分の役割を理解するには一定の時間が必要で、スピードアップするよりもむしろチーム内のコミュニケーションコストを増大させるリスクのほうが大きい。

 2つ目は、逆に過剰なバッファを取り、余裕のあり過ぎるスケジュールを引くケースだ。こちらもユーザー上の価値提供よりも納期に目が行ってしまうため、結局締め切りいっぱいまで時間を使ってしまい、開発スケジュールやコストが余計にかかるだけで終わってしまう。

 「いたずらに納期に間に合わせようとすればデスマーチ化は必至で、開発者はつらく、肝心の顧客も品質の良いプロダクトが期待できない。反対に余裕がありすぎても、余裕はあればあるだけ使ってしまうので、時間をかける割にプロダクト品質は向上しない。いずれにしても『まず納期ありき』は、良いプロダクト開発の上でむしろ障害だと言える」

定期的な計画見直しが開発関係者の団結を促す

 では、良いプロダクト開発計画とは何か。梶原氏は、ステークホルダーが信頼できる計画だと示唆する。

 「大事なのは、常に正しい見通しを共有し、定期的に計画を更新し続けることができる体制だ。そう言うと『いったん決めたスケジュールを守らないのか』といった声も聞こえてくるだろうが、先ほど述べた通り、そこだけに固執するとかえってマイナスになる」

 むしろ重要なのは、この先の見通しに対して常にトレードオフを提示し続けることだ。「この先を順調に進めるには、当初の見積もりに対してこの変更案が有効だ」といった指針を全員に示し、より的確な意思決定を支援できる力量が、プロダクトオーナーには求められている。

 ここで有効なのは、定期的な計画の見直しである。絶えず「計画=見通し」は変化していくので、最新の状況に応じたアップデートを、プロジェクト途中に定期的に行うのが良い。そうすることで、見積もりとのブレが広がらない早い段階でトレードオフの話をできるからだ。ウォーターフォール開発だとリリース直前に間に合わなくなってしまい、土壇場で調整するはめになるケースが少なくない。見積もりの変更を恐れずに、早い時点で手を打つからこそ調整の余地も多くあるのだ。

 また、ここでのプロダクトオーナーの役割は、スタッフが「スケジュールを守らない開発チーム」という視線にさらされないように、周囲の理解を得るよう配慮することにある。

 「見直しを定期的なイベントに組み込むことで、『問題vs私たち』という立ち位置が実現する。スケジュールの見直しが悪いことのように思っていると、ユーザーや営業担当者が開発チームを一方的に非難する図式に陥りがちだ。そうではなく、プロダクトオーナーが率先して関係者全員に問題解決を呼びかけ、話し合うことで、前向きにプロジェクトを進められるようになる」

「この仕事量なら何週間で消化できるか」を見る

 次に梶原氏は、良いプロダクト開発計画を実際に行う際の手順について「規模の見積もり」と「ベロシティの計測」という、大きな2つのポイントを紹介した。

規模を見積もる=「時間ではなく規模が大事」

 見積もりでは時間よりも規模を重視するべきだ。先に述べたように、時間重視では「まず納期ありき」に陥る危険が高い。そうではなく、こなすべき仕事量や解決する課題の数がどれだけあるかを把握することが必要だ。

時間よりも規模に注目してプロジェクトを見積もる
時間よりも規模に注目してプロジェクトを見積もる

チームのベロシティ(実行能力)を計測する

 ベロシティとは、開発チームが実際にタスクに取り組んだ実績値であり、開発チームが今後、唯一信頼できる指標となる。具体的には、単位時間(1週間または2週間)あたりに消化できるタスク量であり、最新の4スプリント程度の平均値が、その開発チームの実力と見てよい。

チームの実力を「生産量」の総和で算出する
チームの実力を「生産量」の総和で算出する

 この2つが完了したら、実際のプランニングに入る。「リリース日固定」と「スコープ固定」の2つの方法がある。

リリース日固定

  • 開発できる総量は、スプリント数×平均ベロシティ
  • リリース目標値は、開発総量の7割以内に収めておく
  • リリースラインが「できる範囲」に収まらない場合は破綻しているので再調整

スコープ固定

  • リリース日の予測は、総見積もり÷平均ベロシティ
  • 全てのバックログがいつまでに完了するか予測を行う
  • リリース日はあくまでも予測

見える化ツールでプロジェクトを一気に効率化

 梶原氏は、開発プロジェクトを効率的かつ高品質に進める上で、アトラシアンの開発管理ツールを活用した「リリースプランニングの見える化」が有効だと、自己の経験に基づいて示唆する。

 「アトラシアンのソフトウェア開発ツールであるJIRA Softwareでは、非常に多くのレポート機能が提供されている。これらはリリースプランニングに関するさまざまな情報を視覚化して、プロダクトオーナーの判断やチームへの情報共有、顧客に対する説明など、プロジェクトのあらゆる局面で、情報の可視化を支援してくれる」

タスクの予定値と実績値の対比もグラフなら一目でわかる
タスクの予定値と実績値の対比もグラフなら一目でわかる
多彩なレポートが状況判断や意思決定、情報共有を支援
多彩なレポートが状況判断や意思決定、情報共有を支援

 JIRA Softwareを活用した、リリースプランニングの見える化は「実績値をもとに、ステークホルダーとより具体的な会話ができる」「プロジェクト開始時に予想していなかった変更があれば、即時にレポートに反映してくれる」という2つの大きなメリットをもたらし、フレキシブルで効率の良いプロジェクト進捗を可能にしてくれるという。

 最後に梶原氏は、「私たちエウレカでは、『世界中の人々の人生を豊かにするものを自分たちの手でつくり出す』をビジョンに掲げています。私たちといっしょに何かをしてみたいという方は、ぜひ声をかけてください」と呼びかけて、セッションを締めくくった。

お問い合わせ

 アトラシアン株式会社

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加

【AD】本記事の内容は記事掲載開始時点のものです 企画・制作 株式会社翔泳社

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/10049 2017/04/14 21:34

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング