ユーザー ストーリー (アジャイル)

このトピックでは、ユーザー ストーリーの作業項目の詳細を設定する方法を学習できます。 ユーザー ストーリーについて、およびアジャイル プロセスでのユーザー ストーリーの使用方法については、「効果的な製品バックログの作成」を参照してください。 ユーザー ストーリーの作業項目を作成する方法の詳細については、「作業項目とワークフロー (アジャイル)」を参照してください。

このトピックの内容

関連トピック

  • ユーザー ストーリーの定義

  • ユーザー ストーリーへのタスクの追加とリンク

  • ユーザー ストーリーへのテスト ケースの追加とリンク

  • ユーザー ストーリーへの懸案事項の追加

  • ユーザー ストーリーへの詳細、添付ファイル、またはハイパーリンクの追加

  • ユーザー ストーリーの解決と終了

アジャイル プロセス

アジャイル ブック

アジャイル レポート (Reporting Services)

フィールド参照

必要なアクセス許可

ユーザー ストーリーを表示するには、読み取りユーザー グループのメンバーであるか、または [このノードの作業項目を表示します][許可] に設定されている必要があります。 ユーザー ストーリーを作成または変更するには、貢献者グループのメンバーであるか、または [このノードの作業項目を編集します] のアクセス許可が [許可] に設定されている必要があります。 詳細については、「アクセス許可の管理」を参照してください。

ユーザー ストーリーの定義

ユーザー ストーリーは、その製品またはシステムのエンド ユーザーにとって価値のある機能を伝えるものです。 各ユーザー ストーリーは、ユーザーが求めるソフトウェアの機能を、ユーザーの視点に立って簡潔に説明する必要があります。 ユーザー ストーリーを記述する際、だれにとっての機能か、その機能で何を達成したいのか、およびその理由に焦点を当てる必要があります。 機能の開発方法を示すような記述は行わないでください。

ユーザー ストーリーの作業項目フォームは、次の図に示すフィールドとタブにデータを保存します。

ユーザー ストーリーの作業項目フォーム

ユーザー ストーリーを定義する場合は、作業項目フォームの最上部のセクションにタイトルを定義する必要があります。 他のフィールドは、空白または既定値のままでかまいません。

ユーザー ストーリーを定義するには

  1. ユーザー ストーリーの作業項目フォームの最上部のセクションで、次の種類の情報を 1 つ以上指定します。

    • [タイトル] (必須) に、簡単な説明を入力します。

      顧客にとって価値のある、または実装する必要がある機能を反映したタイトルにします。

    • [担当者] ボックスで、ユーザー ストーリーを担当するチーム メンバーの名前をクリックします。

      注意

      作業項目は、貢献者グループのメンバーにのみ割り当てることができます。

      ストーリーの担当者を割り当てない場合、自動的に自分が担当者に割り当てられます。

    • [順位] ボックスに、製品バックログ内の他のストーリーとの重要度を比較した相対値で、ストーリーの重要度を入力します。

    • [ストーリー ポイント] ボックスに、ユーザー ストーリーを完了させるのに必要な作業量について、主観的な評価で数値を入力します。

      ポイントが大きいほど、必要な作業量が多いということです。

    • [優先順位] ボックスで、ユーザー ストーリーの重要度を 1 (最も重要) ~ 4 (最も重要ではない) の範囲で指定します。

    • [区分] および [イテレーション] ボックスで、適切な区分とイテレーションをクリックするか、これらのフィールドを空白のままにして計画会議の際に割り当てます。

      注意

      各チーム プロジェクトのプロジェクト管理者は、プロジェクトの区分とイテレーション パスを定義することで、チームがその指定によって進行状況を追跡できるようにします。 詳細については、「区分およびイテレーションの作成および修正」を参照してください。

  2. [詳細] タブで、次の種類の情報を 1 つ以上指定します。

    • [承認基準を含む説明] ボックスで、ユーザー ストーリーの詳細だけでなく、ユーザー ストーリーが満たされているかどうかを検証する際に使用する基準についても、詳細な情報を指定します。

      チームはこの情報を使用して、タスクとテスト ケースの作業項目を作成します。 詳細については、「タスク (アジャイル)」および「テスト ケース (アジャイル)」を参照してください。

    • [履歴] ボックスに、履歴レコードの一部として取り込むコメントを追加します。

      チーム メンバーが作業項目を更新するたびに、変更日、変更を行ったチーム メンバー、および変更されたフィールドが履歴に表示されます。

  3. ユーザー ストーリーを、タスク、テスト ケース、バグ、懸案事項など、他の作業項目にリンクします。

    詳細については、このトピックの次のセクションを参照してください。

    • ユーザー ストーリーへのタスクの追加とリンク

    • ユーザー ストーリーへのテスト ケースの追加とリンク

    • ユーザー ストーリーへのバグの追加

    • ユーザー ストーリーへの懸案事項の追加

    • ユーザー ストーリーへの詳細、添付ファイル、またはハイパーリンクの追加

  4. 保存 [作業項目の保存] をクリックします。

注意

ユーザー ストーリーを保存すると、作業項目ツール バーの下のタイトルに識別子が表示されます。

ユーザー ストーリーへのタスクの追加とリンク

タスクをユーザー ストーリーに追加すると、ユーザー ストーリーを完了するために発生した作業の進行状況を追跡できます。

注意

ストーリー概要レポートおよびストーリーの進行状況レポートについては、ユーザー ストーリーとタスク間、およびユーザー ストーリーとテスト ケース間にリンクが作成されている必要があります。 詳細については、「ストーリーの概要レポート (アジャイル)」および「ストーリーの進行状況レポート (アジャイル)」を参照してください。

ユーザー ストーリーにリンクするタスクを作成するには

  1. [実装] タブで、リンクされた新しい作業項目の追加 [新規] をクリックします。

    [リンクされた新しい作業項目の追加] ダイアログ ボックスが開きます。

    ユーザー ストーリーへのリンクされた新しい作業項目の追加

  2. [リンクの種類] ボックスでは、既定のオプションの [子] のままにします。

  3. [作業項目の種類] ボックスで、[タスク] をクリックします。

  4. [タイトル] に、実行する作業区分を識別する名前をできるだけ具体的に入力します。

  5. (省略可能) [コメント] に、追加情報を入力します。

  6. [OK] をクリックします。

    タスクの作業項目フォームが開き、指定した情報が表示されます。

  7. タスク (アジャイル)」で説明されているとおり、残りのフィールドを指定して、保存 [作業項目の保存] をクリックします。

複数の既存タスクをユーザー ストーリーにリンクするには

  1. [実装] タブで、リンクの追加 [リンク先] をクリックします。

    [ユーザー ストーリーへのリンクの追加] ダイアログ ボックスが表示されます。

  2. [リンクの種類] ボックスでは、既定のオプションの [子] のままにします。

  3. [参照] をクリックします。

    [リンクされた作業項目の選択] ダイアログ ボックスが表示されます。

    ユーザー ストーリーへのタスクのリンク ダイアログ ボックス

  4. [作業項目 ID] に作業項目の ID を入力するか、リンクする作業項目を参照します。 担当タスク チーム クエリを実行して、リンクするタスクを検索することもできます。 ユーザー ストーリーにリンクする各タスクの横にあるチェック ボックスをオンにします。 詳細については、「リンクまたはインポートする作業項目の検索」を参照してください。

  5. (省略可能) リンクするタスクの説明を入力します。

  6. [OK] をクリックし、保存 [作業項目の保存] をクリックします。

    注意

    リンクしたユーザー ストーリーとタスクの両方が更新されます。 追加した各タスクに対して、ユーザー ストーリーへの親リンクが作成されます。

ユーザー ストーリーへのテスト ケースの追加とリンク

計画の一部として、テスト ケースを作成し、ユーザー ストーリーにリンクします。 テスト スイートとテスト ケースを作成する際の推奨クライアントは Microsoft テスト マネージャー です。 このクライアントから、「方法: Microsoft テスト マネージャーを使用して要件またはユーザー ストーリーを表示する」で説明されているように、ユーザー ストーリーにリンクすることもできます。

新しいテスト ケースをユーザー ストーリーに追加するには

  1. [テスト ケース] タブで、リンクされた新しい作業項目の追加 [新規] をクリックします。

    [リンクされた新しい作業項目の追加] ダイアログ ボックスが開きます。

  2. [リンクの種類] ボックスでは、既定のオプションの [テスト担当者] のままにします。

  3. [作業項目の種類] ボックスでは、既定オプションの [テスト ケース] のままにします。

  4. [タイトル] に、テスト対象の区分を定義するわかりやすい名前を入力します。

  5. (省略可能) [コメント] に、追加情報を入力します。

  6. [OK] をクリックします。

    テスト ケースの作業項目フォームが開き、指定した情報が表示されます。

  7. テスト ケース (アジャイル)」で説明されているとおり、残りのフィールドを指定して、保存 [作業項目の保存] をクリックします。

既存のテスト ケースをユーザー ストーリーに追加するには

  1. [テスト ケース] タブで、リンクの追加 [リンク先] をクリックします。

    [ユーザー ストーリーへのリンクの追加] ダイアログ ボックスが表示されます。

  2. [リンクの種類] ボックスを既定オプションの [テスト担当者] のままにします。

  3. [作業項目 ID] にリンクするテスト ケースの ID を入力するか、リンクするテスト ケースを参照します。

    担当テスト ケース チーム クエリを実行して、追加するテスト ケースを検索し、リンクする各テスト ケースの横のチェック ボックスをオンにします。 詳細については、「リンクまたはインポートする作業項目の検索」を参照してください。

  4. (省略可能) リンクするテスト ケースの説明を入力します。

  5. [OK] をクリックし、保存 [作業項目の保存] をクリックします。

    注意

    リンクしたユーザー ストーリーとテスト ケースの両方が更新されます。 追加した各テスト ケースに対して、ユーザー ストーリーへのテスト リンクが作成されます。

ユーザー ストーリーへの懸案事項の追加

[すべてのリンク] タブから、懸案事項用の作業項目を作成してユーザー ストーリーにリンクできます。 懸案事項を定義してユーザー ストーリーにリンクすると、ユーザー ストーリーの品質と完成度を的確に追跡できるようになります。

懸案事項を作成してユーザー ストーリーにリンクするには

  1. [すべてのリンク] タブで、リンクされた新しい作業項目の追加 [新規] をクリックします。

    [リンクされた新しい作業項目の追加] ダイアログ ボックスが開きます。

  2. [リンクの種類] ボックスで、[関連] をクリックします。

  3. [作業項目の種類] ボックスで、[懸案事項] をクリックします。

  4. [タイトル] に、ブロッキング懸案事項をできるだけ具体的に識別できる名前を入力します。

  5. (省略可能) [コメント] に、追加情報を入力します。

  6. [OK] をクリックします。

    懸案事項の作業項目フォームが開き、指定した情報が表示されます。

  7. 懸案事項 (アジャイル)」で説明されているとおり、残りのフィールドを指定して、保存 [作業項目の保存] をクリックします。

ユーザー ストーリーへの詳細、ファイル、およびハイパーリンクの追加

詳細は、次の方法でユーザー ストーリーに追加できます。

  • [説明] または [履歴] の各フィールドに情報を入力します。

  • ファイルを添付します。

    たとえば、電子メールのスレッド、文書、イメージ、ログ ファイルなどのさまざまな種類のファイルを添付できます。

  • サーバーまたは Web サイト上に保存されている Web サイトまたはファイルへのハイパーリンクを追加します。

ユーザー ストーリーに詳細を追加するには

  1. [詳細] タブの [説明] フィールドに情報を入力します。

  2. (省略可能) [履歴] フィールドに情報を入力します。

    情報の書式を設定すると、強調文字や箇条書きリストを使用できます。 詳細については、「タイトル、ID、説明、および履歴 (アジャイル)」を参照してください。

  3. 保存 [作業項目の保存] をクリックします。

添付ファイルをユーザー ストーリーに追加するには

  1. [添付ファイル] タブで、次のいずれかの操作を行います。

    • ファイルを添付ファイル領域にドラッグします。

    • 貼り付け をクリックするか、Ctrl キーを押しながら V キーを押して、コピーしたファイルを貼り付けます。

    • 添付ファイルの追加 [追加] をクリックし、[参照] をクリックします。 [添付ファイル] ダイアログ ボックスで、添付するファイルの名前を入力するか参照します。

      (省略可能) [コメント] ボックスに、添付ファイルに関する追加情報を入力します。 [添付ファイル] タブに戻るには、[OK] をクリックします。

  2. 保存 [作業項目の保存] をクリックします。

ユーザー ストーリーにハイパーリンクを追加するには

  1. [すべてのリンク] タブで、リンクの追加[リンク先] をクリックします。

    ユーザー ストーリーへのハイパーリンクの追加

  2. [リンクの種類] ボックスで、[ハイパーリンク] をクリックします。

  3. [アドレス] ボックスに、リンク先のアドレスを入力します。

  4. リンク先が Web サイトである場合は、[アドレス] ボックスに URL を入力するか、インターネット ブラウザーから URL をコピーして貼り付けます。 リンク先がサーバーである場合は、アドレスを UNC 名の形式で入力します。

  5. (省略可能) [コメント] ボックスに、ハイパーリンクに関する追加情報を入力します。

  6. [OK] をクリックし、保存 [作業項目の保存] をクリックします。

ユーザー ストーリーの解決と終了

アクティブ解決済み終了の各状態を使用して、ユーザー ストーリーの進行状況を追跡することができます。 ユーザー ストーリーを実装するコードを記述し、すべての単体テストに合格したら、ユーザー ストーリーの状態解決済みに変更します。 すべてのタスクが完了し、ユーザー ストーリーがすべての承認テストに合格したら、ユーザー ストーリーの状態終了に変更します。 ユーザー ストーリーの状態はどのチーム メンバーでも変更できます。

作業項目の状態を追跡するために使用できるデータ フィールドの詳細については、「割り当てとワークフロー (アジャイル)」を参照してください。

アクティブなユーザー ストーリーを解決または終了するには

  1. ユーザー ストーリーを開きます。

  2. [状態] ボックスで、[解決済み] または [終了] をクリックします。

    • 状態をアクティブから解決済みに変更すると、[理由] フィールドが自動的に [コード完成および単体テスト成功] に変わります。

    • 状態を解決済みから終了に変更すると、[理由] フィールドが自動的に [承認テスト合格済] に変わります。

    • 状態をアクティブから終了に変更する場合は、後の「アクティブから終了へ」で説明するように、適切な理由をクリックする必要があります。

  3. 保存 [作業項目の保存] をクリックします。

通常のワークフローの流れ:

  • 顧客担当者が、既定の理由が "新規作成" で、状態がアクティブなユーザー ストーリーを作成する。

  • コードが完成し単位テストに合格したところで、チーム メンバーがユーザー ストーリーの状態をアクティブから解決済みに変更する。

  • ユーザー ストーリー用に定義されたテスト ケースに合格したところで、チーム メンバーが状態を解決済みから終了に変更する。

例外的な遷移:

  • 顧客担当者が、ユーザー ストーリーが無関係またはスコープ外であると判断した場合、状態をアクティブから終了に変更する。

  • ユーザー ストーリーの承認テストに失敗した場合、 チーム メンバーが状態を解決済みからアクティブに変更する。

  • 顧客担当者が、ユーザー ストーリーがエラーによって終了した、またはユーザー ストーリーが現在スコープ内にあると判断した場合、状態を終了からアクティブに変更する。

ユーザー ストーリーの状態の図

ユーザー ストーリーの状態ダイアグラム

アクティブ (新規作成)

チーム メンバーがユーザー ストーリーを作成すると、次のデータ フィールドが自動的にキャプチャされます。

  • [作成者]: 作業項目を作成したチーム メンバーの名前。

  • [作成日]: 作業項目が作成された日時 (サーバー クロックで記録された日時)。

アクティブから解決済みへ

アクティブなユーザー ストーリーは次の理由で解決できます。

理由

使用する状況

追加で行う操作

コード完成および単体テスト成功

ユーザー ストーリーを実装するコードがチェックインされ、すべての単体テストに合格した場合。

テストするチーム メンバーにユーザー ストーリーを割り当てます。

チーム メンバーがアクティブなユーザー ストーリーを解決すると、次のデータ フィールドが自動的にキャプチャされます。

  • [解決者]: 作業項目を解決したチーム メンバーの名前。

  • [解決日]: 作業項目が解決された日時 (サーバー クロックで記録された日時)。

  • [状態の変更日]: 作業項目の状態が変更された日時。

アクティブから終了へ

アクティブなユーザー ストーリーは次のいずれかの理由で終了できます。

理由

使用する状況

追加で行う操作

却下 (既定)

ユーザー ストーリーが、ビジネス要件、シナリオ、または価値命題に対応しない機能または要件を表していると判断した場合。

なし。

破棄

ユーザー ストーリーにもはや実装する必要性がない場合。

なし。

スコープ外

現在のイテレーションに対してユーザー ストーリーを実装するには、チームのリソースが不十分な場合。

チームが時間不足である、またはブロッキング懸案事項が検出されたため、ユーザー ストーリーがスコープ外と判断される可能性がある場合。

[イテレーション] フィールドを更新して、シナリオを実装する予定のイテレーションを指定します。 シナリオが次回リリースのソフトウェアまで延期される場合、[イテレーション] フィールドは空白のままにし、延期された理由、および実装する必要がある時期について詳しく記述します。

チーム メンバーがアクティブなユーザー ストーリーを終了すると、次のデータ フィールドが自動的にキャプチャされます。

  • [終了者]: 作業項目を終了したチーム メンバーの名前。

  • [終了日]: 作業項目が終了した日時 (サーバー クロックで記録された日時)。

  • [状態の変更日]: 作業項目の状態が変更された日時。

解決済み

ユーザー ストーリーがコードに実装されると、リード開発者が状態を解決済みに設定し、テストを開始できるようにテスト担当者にユーザー ストーリーを割り当てます。

解決済みから終了へ

解決済みのユーザー ストーリーは次の理由で終了できます。

理由

使用する状況

追加で行う操作

受け入れテスト成功

ユーザー ストーリーに関連付けられているすべてのテスト ケースに合格した場合。

ユーザー ストーリーを製品所有者に割り当てます。

チーム メンバーが解決済みユーザー ストーリーを終了すると、次のデータ フィールドが自動的にキャプチャされます。

  • [終了者]: 作業項目を終了したチーム メンバーの名前。

  • [終了日]: 作業項目が終了した日時 (サーバー クロックで記録された日時)。

  • [状態の変更日]: 作業項目の状態が変更された日時。

解決済みからアクティブへ

解決済みのユーザー ストーリーは次の理由で再アクティブ化できます。

理由

使用する状況

追加で行う操作

受け入れテスト失敗

少なくとも 1 つのユーザー ストーリーのテストに失敗した場合。

ユーザー ストーリーをリード開発者に割り当てます。 また、テスト担当者がテストの失敗に対してバグを作成する必要があります。

解決済みユーザー ストーリーを再アクティブ化すると、次のデータ フィールドが自動的にキャプチャされます。

  • [アクティブ化した人]: 作業項目を再アクティブ化したチーム メンバーの名前。

  • [アクティブ化された日]: 作業項目が再アクティブ化された日時 (サーバー クロックで記録された日時)。

  • [状態の変更日]: 作業項目の状態が変更された日時。

終了

終了したユーザー ストーリーは、スコープ内に戻った場合、再アクティブ化できます。 通常は、ビジネス アナリストまたはプログラム マネージャーが、終了したユーザー ストーリーを再アクティブ化します。

終了からアクティブへ

終了したユーザー ストーリーは次の理由で再アクティブ化できます。

理由

使用する状況

追加で行う操作

スコープ内に再入

ユーザー ストーリーを実装できるリソースができた場合。

実装タスク、テスト ケース、およびユーザー ストーリーに対して定義する詳細が完成し、最新であることを確認します。

エラーによる終了

関連付けられているすべてのタスク、テスト ケースまたはバグが終了する前にユーザー ストーリーが終了した場合。

実装タスク、テスト ケース、およびユーザー ストーリーの詳細の定義が適切であり、開発をサポートするのに十分であることを確認します。

終了したユーザー ストーリーを再アクティブ化すると、次のデータ フィールドが自動的にキャプチャされます。

  • [アクティブ化した人]: 作業項目を再アクティブ化したチーム メンバーの名前。

  • [アクティブ化された日]: 作業項目が再アクティブ化された日時 (サーバー クロックで記録された日時)。

  • [状態の変更日]: 作業項目の状態が変更された日時。

参照

概念

製品計画ブック

その他の技術情報

MSF for Agile Software Development v5.0

スプリントを計画します。

作業項目とワークフロー (アジャイル)