本文へスキップ

プロダクトマネジメント・組織

ユーザーストーリーとは

ゆーざーすとーりー / User Story

システムにしてほしいことを、利用者の目的とともに短く整理した計画の単位です。詳細は開発開始が接近するにつれて会話で具体化するため、全体の範囲は別に決定し、遵守すべき条件も別に用意する必要があります。

公開
2026.10.29
更新
2026.10.29
ユーザーストーリー

ユーザーストーリーとは

ユーザーストーリーはシステムにしてほしいことを、利用者の視点で短く整理した記述です。誰として、何をしたいか、何のためかの3点を示す形式が一般的で、付箋やカード、開発管理ツールの作業1件として管理されます。たとえば次のとおりです。

地域担当の営業マネージャーとして、地域ごとの月次売上を比較したい。支援が必要な地域を特定するためです。

最初の記述では画面構成や表示項目を必要以上に固定しません。重要な制約は早めに確認し、詳細は開発開始が接近するにつれて、開発チームとの会話や例で具体化します。

要件定義書が要件の全体を文書化するのに対し、ユーザーストーリーは要件を計画しやすい規模に分割した単位です。1件は通常は1人で数日かかり、1回の開発期間に複数件含まれる程度が目安とされています。

建築なら間取り図の代わりに、朝の混雑を避けるため洗面台を2か所にしたいと要望し、配置は設計者と相談する進め方に近いです。

ユーザーストーリーの記述を誰として・何をしたい・何のための3段で構成した表。誰としては地域担当の営業マネージャー、何をしたいは地域ごとの月次売上を比較、何のためは支援が必要な地域を特定で、何のための段を強調している。

なぜ必要か

要件を最初に長い文書で網羅すると、確実になったという錯覚が生じやすいうえ、詳細を書き足しても、開発を開始してから認識の違いが明らかになる場合があります。詳細の一部は開発前に変化するか、開発されないこともあります。

ユーザーストーリーは長い仕様書の代わりに会話を中心にした要件の伝え方として考案され、短い期間の反復で開発するアジャイル開発で広範に使用されています。詳細を先送りするため、ストーリーには次の3つの要素がすべて必要とされています。

  • カード: 何の話かを示す短い記述
  • 会話: 利用者の目的、例外、業務の規則を、意思決定できる人と開発チームが対話して具体化すること
  • 確認: 完成と判定する条件。完成条件、受入条件とも呼び、完成したものを確認する受入テストの項目になる

1件のストーリーに必要な3つを示した図。カードは何の話かを示す短い記述、会話は目的・例外・規則を対話して具体化すること、確認は完成と判定する条件。

効果

議論の対象の違いを左右で示した対比。左は画面の案を議論する場合を示し、画面の構成と表示項目が対象になる。右はストーリーを議論する場合を示し、目的、完成条件、件ごとの優先順位が対象になる。

コストとリスク

2つのレーンで示した役割分担。一覧の順序の責任者はプロダクトオーナーで、開発期間の対象とする件は開発者がプロダクトオーナーと相談して選択する。

要件定義書がなくてもユーザーストーリーで開発してよいか

機能の単位としてはユーザーストーリーで開発できます。ただし事業の目的、対象範囲の大枠、遵守すべき条件は、ストーリーとは別に用意する必要があります。ストーリーは要件を計画のために分割する単位で、全体を示す役目がないためです。スクラムでは目標とするプロダクトの将来の状態をプロダクトゴールとしてバックログに含め、バックログの各項目はそれを実現する内容として列挙します。

次の場合は開発前に別の記録や調査を用意します。

該当せず、使い方を確認しながら開発したい業務の機能なら、範囲と費用を最初から固定せず開発する選択もできます。

文書の提出・保管、現行踏襲、複数部署、判断者未定のいずれかに該当するかの分岐。どれかに該当するなら記録・調査後にストーリーで開発し、なしなら使い方を確認しストーリーで開発する。

どこまで記述すれば開発を開始してよいか

開始直前のストーリーは1回の開発期間で完成でき、完成条件を具体的に説明できる状態を目安とします。先の予定のストーリーは優先順位が低いほど粗いままでも問題ありません。

合意と確認

冒頭の例では売上の計上日と契約日のどちらで月を決定するか、地域への帰属は営業所と顧客のどちらの所在地か、売上のない地域をどう表示するかを開発チームと事業側が開発前に合意します。合意した内容は次のような完成条件にします。説明用の例です。

  • 選択した月の地域別売上が合意した集計規則と一致する
  • 担当外の地域の売上は表示されない
  • 売上のない地域は0円と表示される

開始の可否は次の3点で確認します。

  • 誰のどの目的かを1文で説明できる
  • 完成条件を具体的に記述できる
  • 開発チームの見積もりで、1回の期間以内に終了できる。規模の判断は開発者の責任で、他システムの変更待ちやデータ準備の未完了がないことも条件になる

スプリントと分割

スクラムの固定の開発期間をスプリントと呼び、長さは1か月以内です。開発とテストに数週間を超えてかかる大きなストーリーは、一般にエピックと呼ばれ、可能なら分割します。分割は画面と集計処理のように技術の層だけで分割せず、利用者が結果を確認できる単位にします。冒頭の例が1回の開発期間で完成できないなら、1か月分の一覧、月ごとの推移、前年同月との比較の順に分割します。

地域別売上の比較が1回の開発期間で完成できない大きなストーリーだった場合の分割例。1か月分の売上一覧、売上の月ごとの推移、売上の前年同月比較に分割し、左から右の順に開発を開始することを示す木の図。

スクラムではスプリントの対象とする項目は開発者がプロダクトオーナーとの相談を通じて選択します。

性能や安全性のような条件はどこに記述するか

全体にかかる条件は個別のストーリーに分散させず、全ストーリーに共通する品質の基準である完成の定義に記載します。特定の機能にだけ関係する条件は、そのストーリーの完成条件に記述します。

性能、安全性、停止してよい時間のように、機能ではなく性質に関する条件を非機能要件と呼びます。設計の選択肢を限定する制約として、ストーリーの形で記述できます。求める人と目的を記載しないと、後から理由が分からなくなるおそれがあります。たとえば既存のデータベースを使用するとだけ記録すると、別のデータベースを作成するおそれがあります。

完成条件はそのストーリーの振る舞いを確認する基準です。スクラムでは完成の定義を満たさない項目は公開も、スプリントの成果を確認するスプリントレビューでの提示もできません。個別に記述すると条件を記述しなかったストーリーが条件を満たさないまま完成するおそれがあります。同時に利用する人数、個人情報の管理、停止してよい時間帯のような全体の条件は、機能ごとには確認できないため、システム全体での確認を別に計画します。

ストーリーごとの完成条件と、全ストーリーに共通する完成の定義を示した図。ストーリーの下部に斜線付きの基礎線があり、その下に共通の完成の定義を示している。

よくある誤解

1文記述すれば仕様になる

記述された1文は要件そのものでなく、会話の合図です。要件は会話や例、規則、テストを通じて明らかになります。合意した振る舞いは完成条件に記述し、判断の理由はストーリーから参照できる形で記録します。

左から順に、記述された1文、会話・例・規則・テスト、要件を示した流れ。中間の会話・例・規則・テストを強調している。

機能一覧をストーリーの型に変換すれば十分

要件文書の章立てから機械的にストーリーを作成するのは、典型的な失敗です。画面やボタンだけの項目はストーリーではなく、目的が記述されていなければ、形式だけの機能一覧です。調査や技術的な改善のように、ストーリーの形にしないほうが明確な項目は、ストーリーにしなくても問題ありません。

誰としての欄に利用者と記述すれば利用者の視点になる

誰としての欄に利用者とだけ記述した例は、利用者も目的も曖昧な不十分な例として示されています。冒頭の営業マネージャーのように、利用者を具体的に記述します。プロダクトオーナーは利用者ではないことが多いため、事業側の担当者の視点だけで記述すると、実際の利用者の目的が欠落することがあります。

お問合せ

事業の課題や技術的な悩みなどどんなことでもお聞かせください

お問合せ