Upgrade to Pro — share decks privately, control downloads, hide ads and more …

現場の失敗から学ぶ!プロダクトバックログアイテムの改善/Learn_from_On-Site_...

 現場の失敗から学ぶ!プロダクトバックログアイテムの改善/Learn_from_On-Site_Failures!_Improving_Product_Backlog_Items

2024年6月21, 22日に開催された『Scrum Fest Osaka 2024』 において登壇した際の資料です。

プロダクトバックログアイテム(PBI)はチームの認識の統一や実装・テストの効率化に直結する重要な要素です。
本セッションでは、過去に参加した現場での失敗事例とその原因・背景を分析し、どのようにPBIの書き方を改善することで問題を解決できるようにしたのかを紹介しました。
・ユーザーストーリーの書き方
・明確な受入基準の設定方法
・認識を合わせるためのコミュニケーション方法

これらの改善を通じて、PBIへのチーム全体の理解を深め、認識の齟齬やテストの漏れを防止する具体的な方法をお伝えします。

Muneyoshi Iyama

June 28, 2024
Tweet

More Decks by Muneyoshi Iyama

Other Decks in Technology

Transcript

  1. Copyright © NTT COMWARE CORPORATION 2024 NTTコムウェア株式会社 • 主な業務: 社内のアジャイル開発推進

    社内アジャイルコーチ エバンジェリスト活動(社内外情報発信など) 1 • 認定: いやま むねよし 伊山 宗吉
  2. Copyright © NTT COMWARE CORPORATION 2024 NTTコムウェアについて 2 NTTドコモ、NTTグループ、通信を始めとする様々な業界のお客様の ビジネス拡大と業務DX実現をミッションとしています

    事業 日本電信電話株式会社 総合ICT事業 地域通信事業 グローバル・ソリューション事業 その他(不動産、エネルギー等)
  3. Copyright © NTT COMWARE CORPORATION 2024 はじめに 3 • ターゲットはアジャイル開発の初心者

    • テーマは「プロダクトバックログアイテム(PBI)の改善」です。 • プロダクトバックログ(PBL)全体のビジョンやプロダクトゴールとの整合、優先順位付け、 などの話は扱いません。 プロダクト バックログ スプリント レビュー スプリント レトロスペクティブ デイリー スクラム インクリメント スプリント バックログ スプリント プロダクト バックログアイテム スプリント プランニング 開発者 プロダクト オーナー スクラム マスター とても重要なので、他のところでしっかり学びましょう。
  4. Copyright © NTT COMWARE CORPORATION 2024 目次 4 1. とある現場で起きた不具合

    2. 改善するために 1. どこに原因があったか? 2. どのように改善したか? 3. おわりに
  5. Copyright © NTT COMWARE CORPORATION 2024 とある現場で起きた不具合 ( 実際とはプロダクト、不具合内容ともに表現を変えています) ×

    3000 11連ガチャ 2,000 × 3000 11連ガチャ 購入 ガチャ クエスト ホーム メニュー × 300 1連ガチャ 3,000 × 3000 11連ガチャ ホーム メニュー × 300 1連ガチャ ×3,000 ×500 ¥500 ¥3,000 ×1,000 ¥1,000 ×100 ¥100 ホーム メニュー 2,000 2,000 購入 ガチャ クエスト 3,000 続けて購入 戻る ゲームアプリ 2,000 3,000 ホーム 購入 購入が完了 しました ホーム ガチャ ガチャ
  6. Copyright © NTT COMWARE CORPORATION 2024 とある現場で起きた不具合 ( 実際とはプロダクト、不具合内容ともに表現を変えています) ×

    3000 11連ガチャ ゲームアプリ 2,000 × 3000 11連ガチャ 購入 ガチャ クエスト ホーム メニュー × 300 1連ガチャ 3,000 × 3000 11連ガチャ ホーム メニュー × 300 1連ガチャ ×3,000 ×500 ¥500 ¥3,000 ×1,000 ¥1,000 ×100 ¥100 ホーム メニュー 2,000 2,000 購入 ガチャ クエスト 3,000 続けて購入 戻る 2,000 3,000 プロダクト オーナー もっとシンプルにしたい! ホーム 購入 購入が完了 しました ホーム ガチャ ガチャ
  7. Copyright © NTT COMWARE CORPORATION 2024 とある現場で起きた不具合 ( 実際とはプロダクト、不具合内容ともに表現を変えています) 2,000

    × 3000 11連ガチャ 購入 ガチャ クエスト ホーム メニュー × 300 1連ガチャ 3,000 × 3000 11連ガチャ ホーム メニュー × 300 1連ガチャ ×3,000 ×500 ¥500 ¥3,000 ×1,000 ¥1,000 ×100 ¥100 ホーム メニュー 2,000 2,000 購入 ガチャ クエスト 3,000 続けて購入 戻る 2,000 3,000 ホーム 購入 購入が完了 しました ホーム ガチャ ガチャ スクラムマスター プロダクト オーナー 開発者 「ガチャ画面」から石を購入できるようにして、 「購入後にはガチャ画面に戻る」ようにしたいんだ。 ユーザーの使用性が改善されて、今よりも購入して もらいやすくなるはずだよ。
  8. Copyright © NTT COMWARE CORPORATION 2024 とある現場で起きた不具合 ( 実際とはプロダクト、不具合内容ともに表現を変えています) 開発者

    PBI書いたからよろしく! 受入基準 • 「ガチャ画面」に「購入」ボタンが設置されている • 「購入」ボタン押下時、「購入画面」へ遷移する • 正常に購入後、「戻る」ボタン押下時は「ガチャ画面」に遷移する プロダクト オーナー おおまかな仕様はこんなところですかね 2,000 × 3000 11連ガチャ 購入 ガチャ クエスト ホーム ホーム メニュー × 300 1連ガチャ 3,000 × 3000 11連ガチャ ホーム メニュー × 300 1連ガチャ 購入 ×3,000 ×500 ¥500 ¥3,000 ×1,000 ¥1,000 ×100 ¥100 ホーム メニュー 2,000 2,000 購入が完了 しました 購入 ガチャ クエスト ホーム 3,000 続けて購入 戻る 2,000 3,000 スクラムマスター ガチャ画面に購入ボタン設置 誰が アプリユーザーが 何のために ガチャを引こうとしてに石が不足している際に、 直接「購入画面」に遷移できるように 何をしたいか ガチャ画面に「購入」ボタンを設置 ガチャ ガチャ
  9. Copyright © NTT COMWARE CORPORATION 2024 とある現場で起きた不具合 ( 実際とはプロダクト、不具合内容ともに表現を変えています) 2,000

    × 3000 11連ガチャ 購入 ガチャ クエスト ホーム メニュー × 300 1連ガチャ 3,000 × 3000 11連ガチャ ホーム メニュー × 300 1連ガチャ ×3,000 ×500 ¥500 ¥3,000 ×1,000 ¥1,000 ×100 ¥100 ホーム メニュー 2,000 2,000 購入 ガチャ クエスト 3,000 続けて購入 戻る 2,000 3,000 開発者 開発 ホーム 購入 購入が完了 しました ホーム ガチャ ガチャ
  10. Copyright © NTT COMWARE CORPORATION 2024 とある現場で起きた不具合 ( 実際とはプロダクト、不具合内容ともに表現を変えています) 2,000

    × 3000 11連ガチャ ホーム メニュー × 300 1連ガチャ 3,000 × 3000 11連ガチャ ホーム メニュー × 300 1連ガチャ ×3,000 ×500 ¥500 ¥3,000 ×1,000 ¥1,000 ×100 ¥100 ホーム メニュー 2,000 続けて購入 戻る 2,000 3,000 購入 購入が完了 しました ガチャ ガチャ インクリメント できた! 購入
  11. Copyright © NTT COMWARE CORPORATION 2024 とある現場で起きた不具合 ( 実際とはプロダクト、不具合内容ともに表現を変えています) 2,000

    × 3000 11連ガチャ ホーム メニュー × 300 1連ガチャ 3,000 × 3000 11連ガチャ ホーム メニュー × 300 1連ガチャ ×3,000 ×500 ¥500 ¥3,000 ×1,000 ¥1,000 ×100 ¥100 ホーム メニュー 2,000 続けて購入 戻る 2,000 3,000 購入 購入が完了 しました ガチャ ガチャ 購入 よぉしPBIの通り出来てるな、 じゃあリリースだ! インクリメント 受入基準 • 「ガチャ画面」に「購入」ボタンを設置 • 「購入」ボタン押下時、「購入画面」へ遷移する • 正常に購入後、「戻る」ボタン押下時は「ガチャ画面」に遷移する ガチャ画面に購入ボタン設置 誰が アプリユーザーが 何のために ガチャを引こうとしてに石が不足している際に、 直接「購入画面」に遷移できるように 何をしたいか ガチャ画面に「購入」ボタンを設置
  12. Copyright © NTT COMWARE CORPORATION 2024 とある現場で起きた不具合 ( 実際とはプロダクト、不具合内容ともに表現を変えています) 2,000

    × 3000 11連ガチャ ホーム メニュー × 300 1連ガチャ 3,000 × 3000 11連ガチャ ホーム メニュー × 300 1連ガチャ ×3,000 ×500 ¥500 ¥3,000 ×1,000 ¥1,000 ×100 ¥100 ホーム メニュー 2,000 続けて購入 戻る 2,000 3,000 購入 購入が完了 しました ガチャ ガチャ 購入 石が不足 しています 石買ったのに ガチャできないぞ! なんだこれ!
  13. Copyright © NTT COMWARE CORPORATION 2024 目次 13 1. とある現場での不具合事例

    2. 改善するために 1. どこに原因があったか? 2. どのように改善したか? 3. おわりに
  14. Copyright © NTT COMWARE CORPORATION 2024 14 どこに原因があったか?(発生原因) 2,000 ×

    3000 11連ガチャ 購入 ガチャ クエスト ホーム メニュー × 300 1連ガチャ 3,000 × 3000 11連ガチャ ホーム メニュー × 300 1連ガチャ ×3,000 ×500 ¥500 ¥3,000 ×1,000 ¥1,000 ×100 ¥100 ホーム メニュー 2,000 2,000 購入 ガチャ クエスト 3,000 続けて購入 戻る 2,000 3,000 ホーム 購入 購入が完了 しました ホーム ガチャ ガチャ ここで、ガチャに応じて石の不足を 判定するための変数に対して、 現在の所持数を設定していた 2,000 × 3000 11連ガチャ ホーム メニュー × 300 1連ガチャ 3,000 × 3000 11連ガチャ ホーム メニュー × 300 1連ガチャ ×3,000 ×500 ¥500 ¥3,000 ×1,000 ¥1,000 ×100 ¥100 ホーム メニュー 2,000 続けて購入 戻る 2,000 3,000 購入 購入が完了 しました ガチャ ガチャ 購入 石が不足 しています 判定用変数のデータ 更新が漏れ、 購入前の所持数で 不足と判定された ▪ 従来の動線 ▪ 新しい動線 ホーム メニュー 0 続けて11連ガチャ 戻る 発生原因 データの更新漏れ
  15. Copyright © NTT COMWARE CORPORATION 2024 15 どこに原因があったか?(混入・流出原因) 2,000 ×

    3000 11連ガチャ ホーム メニュー × 300 1連ガチャ 3,000 × 3000 11連ガチャ ホーム メニュー × 300 1連ガチャ ×3,000 ×500 ¥500 ¥3,000 ×1,000 ¥1,000 ×100 ¥100 ホーム メニュー 2,000 続けて購入 戻る 2,000 3,000 購入 購入が完了 しました ガチャ ガチャ 購入 石が不足 しています 流出原因 ホーム メニュー 0 続けて11連ガチャ 戻る 既存仕様を理解・確認 できていなかった 混入原因 • 既存機能・仕様の理解不足による実装誤り • ユースケース観点の試験(ガチャが実行できるまでの確認)漏れ → 本来のユーザーの目的や後続操作の考慮不足 従来の動線と同じはずなので 確認不要と判断してしまった
  16. Copyright © NTT COMWARE CORPORATION 2024 全体を俯瞰 16 PBI コード

    </> 既存コード ・処理 ・単体試験 ・ユーザーストーリー (目的・価値) ・具体的な実現内容 ・UIイメージ ・受入基準 (テスト設計可能な内容) ・見積り(Devが実施) 仕様書、 試験項目 仕様書 ・画面遷移 ・画面仕様 ・IF仕様 など 試験項目 設計 要求 既存インプット ・仕様設計&レビュー ・試験設計&レビュー ルール ・設計方針 ・開発ルール ・試験観点 経験、 スキル ・ドメイン知識 ・技術スキル ・開発経験 プロセス(開発、試験) レビュー (仕様設計、試験設計、 ソースコードについて、作 成者以外のメンバーによ るクロスチェック) 実装 ・コーディング (処理、単体テスト) &レビュー 仕様書 コード </> 試験 テスト プロセス(着手前) バックログ リファインメント (優先順位づけ、方向性 確認、PBIの目的確認、 内容の具体化、不明点 解消、見積り、等) ・不具合対応 ・品質分析 受入 ・POによる 動作確認&受入 デモ ・利害関係者から フィードバック獲得 インクリ メント テスト 結果 フィード バック ・動作するソフトウェア (試験) リリース準備 ・各種試験 ・品質評価 (テスト 結果) 品質管理・評価 (コード品質、テスト結果、 不具合の検出・対処など の状況からリリース可能 な品質か評価) プロダクト ゴール ・実現したいこと 共通認識・知識 ナレッジ ・プロダクト情報 (ビジョンやロードマップ、等) ・ドメイン知識 ・採用技術に関する情報 ・過去の不具合 目的や確認範囲の 認識ずれ 実装誤り 仕様の認識誤り、考慮漏れを防止する (リファクタリングによるOS差分解消、 可読性向上、仕様のドキュメント化) 試験観点追加 (ユースケース、更新処理など) 試験観点漏れ 仕様認識 誤り 実装、レビュールール追加 (既存動線の処理との比較) 影響を与えるもの ※アジャイル開発においては連続的に、あるいは行き来して行われるものもある 確認不足 確認不足 データ モニタリング ・成果評価 ・その他フィードバック獲得 紹介する 紹介割愛 凡例: 目的と完成の認識ずれ、考慮漏れを防止する (目的、受入基準、試験範囲など具体化 するよう記載・議論・確認のルール改善) アクション 適応・改善 ・今後の活動に活かす 評価
  17. Copyright © NTT COMWARE CORPORATION 2024 17 PBIの問題点 ( 実際とはプロダクト、不具合内容ともに表現を変えています)

    開発者 PBI書いたからよろしく! 受入基準 • 「ガチャ画面」に「購入」ボタンが設置されている • 「購入」ボタン押下時、「購入画面」へ遷移する • 正常に購入後、「戻る」ボタン押下時は「ガチャ画面」に遷移する プロダクト オーナー おおまかな仕様はこんなところですかね 2,000 × 3000 11連ガチャ 購入 ガチャ クエスト ホーム ホーム メニュー × 300 1連ガチャ 3,000 × 3000 11連ガチャ ホーム メニュー × 300 1連ガチャ 購入 ×3,000 ×500 ¥500 ¥3,000 ×1,000 ¥1,000 ×100 ¥100 ホーム メニュー 2,000 2,000 購入が完了 しました 購入 ガチャ クエスト ホーム 3,000 続けて購入 戻る 2,000 3,000 スクラムマスター ガチャ画面に購入ボタン設置 誰が アプリユーザーが 何のために ガチャを引こうとしてに石が不足している際に、 直接「購入画面」に遷移できるように 何をしたいか ガチャ画面に「購入」ボタンを設置 ガチャ ガチャ
  18. Copyright © NTT COMWARE CORPORATION 2024 18 PBIの問題点 ( 実際とはプロダクト、不具合内容ともに表現を変えています)

    開発者 PBI書いたからよろしく! 受入基準 • 「ガチャ画面」に「購入」ボタンが設置されている • 「購入」ボタン押下時、「購入画面」へ遷移する • 正常に購入後、「戻る」ボタン押下時は「ガチャ画面」に遷移する プロダクト オーナー おおまかな仕様はこんなところですかね 2,000 × 3000 11連ガチャ 購入 ガチャ クエスト ホーム ホーム メニュー × 300 1連ガチャ 3,000 × 3000 11連ガチャ ホーム メニュー × 300 1連ガチャ 購入 ×3,000 ×500 ¥500 ¥3,000 ×1,000 ¥1,000 ×100 ¥100 ホーム メニュー 2,000 2,000 購入が完了 しました 購入 ガチャ クエスト ホーム 3,000 続けて購入 戻る 2,000 3,000 スクラムマスター ガチャ画面に購入ボタン設置 誰が アプリユーザーが 何のために ガチャを引こうとしてに石が不足している際に、 直接「購入画面」に遷移できるように 何をしたいか ガチャ画面に「購入」ボタンを設置 ガチャ ガチャ • 「何のために(Why)」が、画面遷移が目的になってしまっている • 「何をしたいか(What)」が、開発する内容、開発目線になっている (いつの間にか主語が変わっている) この違和感にPOもDevも気付けていなかった
  19. Copyright © NTT COMWARE CORPORATION 2024 19 PBIの問題点 ( 実際とはプロダクト、不具合内容ともに表現を変えています)

    開発者 PBI書いたからよろしく! 受入基準 • 「ガチャ画面」に「購入」ボタンが設置されている • 「購入」ボタン押下時、「購入画面」へ遷移する • 正常に購入後、「戻る」ボタン押下時は「ガチャ画面」に遷移する プロダクト オーナー おおまかな仕様はこんなところですかね 2,000 × 3000 11連ガチャ 購入 ガチャ クエスト ホーム ホーム メニュー × 300 1連ガチャ 3,000 × 3000 11連ガチャ ホーム メニュー × 300 1連ガチャ 購入 ×3,000 ×500 ¥500 ¥3,000 ×1,000 ¥1,000 ×100 ¥100 ホーム メニュー 2,000 2,000 購入が完了 しました 購入 ガチャ クエスト ホーム 3,000 続けて購入 戻る 2,000 3,000 スクラムマスター ガチャ画面に購入ボタン設置 誰が アプリユーザーが 何のために ガチャを引こうとしてに石が不足している際に、 直接「購入画面」に遷移できるように 何をしたいか ガチャ画面に「購入」ボタンを設置 ガチャ ガチャ • 本来の目的を考えると目的達成の確認には不十分 • 試験範囲、デモ内容も不明確
  20. Copyright © NTT COMWARE CORPORATION 2024 目次 20 1. とある現場での不具合事例

    2. 改善するために 1. どこに原因があったか? 2. どのように改善したか? 3. おわりに
  21. Copyright © NTT COMWARE CORPORATION 2024 PBIを改善しよう ( 実際とはプロダクト、不具合内容ともに表現を変えています) 開発者

    PBI書いたからよろしく! 受入基準 • 「ガチャ画面」に「購入」ボタンが設置されている • 「購入」ボタン押下時、「購入画面」へ遷移する • 正常に購入後、「戻る」ボタン押下時は「ガチャ画面」に遷移する プロダクト オーナー おおまかな仕様はこんなところですかね 2,000 × 3000 11連ガチャ 購入 ガチャ クエスト ホーム ホーム メニュー × 300 1連ガチャ 3,000 × 3000 11連ガチャ ホーム メニュー × 300 1連ガチャ 購入 ×3,000 ×500 ¥500 ¥3,000 ×1,000 ¥1,000 ×100 ¥100 ホーム メニュー 2,000 2,000 購入が完了 しました 購入 ガチャ クエスト ホーム 3,000 続けて購入 戻る 2,000 3,000 スクラムマスター ガチャ画面に購入ボタン設置 誰が アプリユーザーが 何のために ガチャを引こうとしてに石が不足している際に、 直接「購入画面」に遷移できるように 何をしたいか ガチャ画面に「購入」ボタンを設置 ガチャ ガチャ
  22. Copyright © NTT COMWARE CORPORATION 2024 22 PBIを改善しよう(ユーザーストーリー) ( 実際とはプロダクト、不具合内容ともに表現を変えています)

    開発者 PBI書いたからよろしく! 受入基準 • 「ガチャ画面」に「購入」ボタンが設置されている • 「購入」ボタン押下時、「購入画面」へ遷移する • 正常に購入後、「戻る」ボタン押下時は「ガチャ画面」に遷移する プロダクト オーナー おおまかな仕様はこんなところですかね 2,000 × 3000 11連ガチャ 購入 ガチャ クエスト ホーム ホーム メニュー × 300 1連ガチャ 3,000 × 3000 11連ガチャ ホーム メニュー × 300 1連ガチャ 購入 ×3,000 ×500 ¥500 ¥3,000 ×1,000 ¥1,000 ×100 ¥100 ホーム メニュー 2,000 2,000 購入が完了 しました 購入 ガチャ クエスト ホーム 3,000 続けて購入 戻る 2,000 3,000 スクラムマスター ガチャ画面に購入ボタン設置 誰が アプリユーザーが 何のために ガチャを引こうとしてに石が不足している際に、 直接「購入画面」に遷移できるように 何をしたいか ガチャ画面に「購入」ボタンを設置 ガチャ ガチャ
  23. Copyright © NTT COMWARE CORPORATION 2024 23 (参考)ユーザーストーリー • プロダクトバックログアイテム(PBI)の書き方のひとつ

    • 以下のようなフォーマットで記載する <ユーザー> (Who) その機能を実際に使う人やその人の職業、役割などを具体的にイメージして記入する <結果>(What) システム要件(システムがどうやって要求を達成するか)を記述する 検証可能(テスト可能)な記述にする <理由>(Why) システム要件によって解決したい問題や、実現したいビジネス価値・効果などを記入する <ユーザー>として <結果>が欲しい なぜなら<理由>だからだ
  24. Copyright © NTT COMWARE CORPORATION 2024 24 PBIを改善しよう(ユーザーストーリー) ( 実際とはプロダクト、不具合内容ともに表現を変えています)

    PBI書いたからよろしく! 受入基準 • 「ガチャ画面」に「購入」ボタンが設置されている • 「購入」ボタン押下時、「購入画面」へ遷移する • 正常に購入後、「戻る」ボタン押下時は「ガチャ画面」に遷移する おおまかな仕様はこんなところですかね 2,000 × 3000 11連ガチャ 購入 ガチャ クエスト ホーム ホーム メニュー × 300 1連ガチャ 3,000 × 3000 11連ガチャ ホーム メニュー × 300 1連ガチャ 購入 ×3,000 ×500 ¥500 ¥3,000 ×1,000 ¥1,000 ×100 ¥100 ホーム メニュー 2,000 2,000 購入が完了 しました 購入 ガチャ クエスト ホーム 3,000 続けて購入 戻る 2,000 3,000 ガチャ画面に購入ボタン設置 誰が アプリユーザーが 何のために ガチャを引こうとしてに石が不足している際に、 直接「購入画面」に遷移できるように 何をしたいか ガチャ画面に「購入」ボタンを設置 ガチャ ガチャ 石の不足分を購入してガチャを継続できるようにする 誰が アプリユーザーが 何をしたいか ガチャを引こうとして石が不足している際に、 ガチャ画面からすぐに石を購入したい 何のために 不足分を補ってガチャを継続できるように 関係者がPBIの目的(「何のために」の内容)を正しく認識しやすくなる。 (目的が明確であれば、「購入ボタンの設置」 「購入画面へ遷移」以外の手段や、既存の実装を考慮した低コストでの実現方法も提案しやすくなる。 ) 開発者 プロダクト オーナー スクラムマスター ユーザーの本来の目的は何でしょうか? 購入画面に遷移したいわけじゃないですよね?
  25. Copyright © NTT COMWARE CORPORATION 2024 25 PBIを改善しよう(受入基準、ほか) ( 実際とはプロダクト、不具合内容ともに表現を変えています)

    開発者 PBI書いたからよろしく! 受入基準 • 「ガチャ画面」に「購入」ボタンが設置されている • 「購入」ボタン押下時、「購入画面」へ遷移する • 正常に購入後、「戻る」ボタン押下時は「ガチャ画面」に遷移する プロダクト オーナー おおまかな仕様はこんなところですかね 2,000 × 3000 11連ガチャ 購入 ガチャ クエスト ホーム ホーム メニュー × 300 1連ガチャ 3,000 × 3000 11連ガチャ ホーム メニュー × 300 1連ガチャ 購入 ×3,000 ×500 ¥500 ¥3,000 ×1,000 ¥1,000 ×100 ¥100 ホーム メニュー 2,000 2,000 購入が完了 しました 購入 ガチャ クエスト ホーム 3,000 続けて購入 戻る 2,000 3,000 スクラムマスター ガチャ画面に購入ボタン設置 誰が アプリユーザーが 何のために ガチャを引こうとしてに石が不足している際に、 直接「購入画面」に遷移できるように 何をしたいか ガチャ画面に「購入」ボタンを設置 ガチャ ガチャ
  26. Copyright © NTT COMWARE CORPORATION 2024 26 (参考)受入基準、機能の記述 • 各ストーリーで受入基準を明確にする

    • 何ができたらこのストーリーは完成か • エラー処理、例外処理がどこまで含まれるか • どこまでの機能があれば、プロダクトオーナーとして、このストーリーの 「受入テスト」 をOKとするか • 他のストーリーとの切り分けができているか(境界が明確か) • 機能を明確にする • 機能とは、入力されたものを変換して出力するもの • ある入力に対して、出力が一意に規定されないとテストができない • 書き方 • Given, When, Thenで書く • 例 (Given) 詳細検索画面で、 (When/INPUT) メーカー名を選択して検索ボタンを押すと、 (Then/OUTPUT) そのメーカーの車種リストが表示される。 機能 INPUT OUTPUT
  27. Copyright © NTT COMWARE CORPORATION 2024 27 PBIを改善しよう(受入基準、ほか) ( 実際とはプロダクト、不具合内容ともに表現を変えています)

    PBI書いたからよろしく! おおまかな仕様はこんなところですかね 2,000 × 3000 11連ガチャ 購入 ガチャ クエスト ホーム ホーム メニュー × 300 1連ガチャ 3,000 × 3000 11連ガチャ ホーム メニュー × 300 1連ガチャ 購入 ×3,000 ×500 ¥500 ¥3,000 ×1,000 ¥1,000 ×100 ¥100 ホーム メニュー 2,000 2,000 購入が完了 しました 購入 ガチャ クエスト ホーム 3,000 続けて購入 戻る 2,000 3,000 ガチャ ガチャ 受入基準 • 「ガチャ画面」に「購入」ボタンが設置されている • 「購入」ボタン押下時、「購入画面」へ遷移する • 正常に購入後、「戻る」ボタン押下時は「ガチャ画面」に 遷移する 受入基準に加え、必要に応じてデモ内容や試験範囲などを具体化する。 そのために、会話を通じて認識齟齬・考慮漏れを防ぐ。 (共通認識が全て。どこまで詳細な内容を記載する必要があるかはチームによって異なる) 受入基準 • 「ガチャ画面」に「購入」ボタンが配置されており、タップすると「購入画面」に 遷移すること。 • 「購入画面」で正常に購入成功(既存機能)後、「戻る」ボタンをタップすると 「ガチャ画面」に遷移すること。 • 「ガチャ画面」で現在の石の所持数の表示が購入後の所有数に正しく更新 されており、購入前の所持数では実施できなかったガチャが実行できること。 デモ内容 • 11連ガチャに対して石不足の状態から「購入」ボタンタップ~購入完了~ 「ガチャ画面」に戻り、「ガチャ実行」まで • データ例:所持 2,000 → 購入 1,000(所持 3,000) → 11連ガチャ (3,000使用)を実行 → 所持 0 試験範囲について • スプリント中はガチャ管理システムの検証環境が使えないため、スタブ・モック による試験を行う。 • 購入後の後続操作で、石不足の判定等に影響する「ガチャ実行」のAPIリ クエストが正常に送信されていることを確認する。 • 対向システムとの試験が遅れるリスク:低(APIの正常性が確認できれば、 以降は商用稼働中の機能であり、動線追加による影響懸念がないため) 目的を考えたら、購入後にガチャを実行 できるところまでは試験しないとね 開発者 プロダクト オーナー スクラムマスター スプリント中に対向システムの検証環境と 接続できないけど、試験はどうします? どこまで確認すれば問題 なさそうですかね?
  28. Copyright © NTT COMWARE CORPORATION 2024 PBIを具体化するアプローチ 28 • ユーザーストーリー:

    • 対話のきっかけとして、要件の意図や本質を簡潔に記す。 • 対話: • ユーザーストーリーを基に、メンバー間で内容を具体化し、共有する。 • 必要に応じて、その内容を書き留める(UIのスケッチ、ビジネスルール など) • 確認: • 期待される振る舞いを明示する(受入基準)
  29. Copyright © NTT COMWARE CORPORATION 2024 対話の重要性 29 • プロダクトオーナー、開発者、スクラムマスターの関係性が良くないと、

    対話に時間をかけなくなり、PBIの具体化や共通認識の形成が困難になる。 • 危険な兆候の例 • プロセス : 要求過多、スクラムイベントの省略 など • 態度 : 責任の回避、 当事者意識の欠如、意見衝突の回避 など • ユーザーへの価値提供、ビジネスやチームの成長には、適切な対話が必要である。 そのためには、全員がチームの雰囲気を大切にする必要がある。 • スクラムの5つの価値基準(確約・集中・公開・尊敬・勇気)を日々実践するよう心がける。
  30. Copyright © NTT COMWARE CORPORATION 2024 目次 30 1. とある現場での悩み

    2. 改善するために 1. どこに原因があったか? 2. どのように改善したか? 3. おわりに
  31. Copyright © NTT COMWARE CORPORATION 2024 おわりに 31 • 長く開発しているチームでもPBIの質が低い事例をよく見かけます。

    • 今一度、自分たちのチームでも振り返ってみてください。 • 対話を通じた内容の具体化と共通認識の形成ができるように、日頃から良好な関係性を 築きましょう。