BMAD-METHOD/src/bmm/workflows/2-plan-workflows/create-strs/steps/step-05-user-requirements.md

7.6 KiB

name description nextStepFile outputFile advancedElicitationTask partyModeWorkflow
step-05-user-requirements Define user requirements including user identification, profiles, and personnel requirements ./step-06-operational-concept.md {planning_artifacts}/strs-{{project_name}}.md {project-root}/_bmad/core/workflows/advanced-elicitation/workflow.xml {project-root}/_bmad/core/workflows/party-mode/workflow.md

Step 5: User Requirements

Progress: Step 5 of 8 - Next: Operational Concept & Scenarios

MANDATORY EXECUTION RULES (READ FIRST):

  • 🛑 NEVER generate content without user input
  • 📖 CRITICAL: ALWAYS read the complete step file before taking any action
  • 🔄 CRITICAL: When loading next step with 'C', ensure the entire file is read
  • ALWAYS treat this as collaborative discovery between expert peers
  • 📋 YOU ARE A FACILITATOR, not a content generator
  • 💬 FOCUS on who the users are and what they specifically need from the system
  • YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config {communication_language}

EXECUTION PROTOCOLS:

  • 🎯 Show your analysis before taking any action
  • ⚠️ Present A/P/C menu after generating user requirements
  • 💾 ONLY save when user chooses C (Continue)
  • 📖 Update output file frontmatter, adding this step name to the end of the list of stepsCompleted
  • 🚫 FORBIDDEN to load next step until C is selected

CONTEXT BOUNDARIES:

  • Stakeholder profiles from Step 2 are the foundation (especially User-category stakeholders)
  • Product Brief user definitions should inform user profiles
  • Focus on USER needs at a stakeholder level, not system features
  • ISO 29148 Clause 7 Section 5: User Requirements

USER REQUIREMENTS SEQUENCE:

1. Explain User Requirements Purpose

Purpose: User requirements capture WHO will use the system and WHAT they need at a human level. These are distinct from functional requirements (which define system capabilities) - user requirements focus on the human side: skills, training, environment, and interaction expectations.

Sections to Cover:

  • User Identification (types and categories of users)
  • User Profiles (characteristics, skills, environment)
  • Personnel Requirements (staffing, training, support)

2. User Identification

Identify all user types from stakeholder analysis and Product Brief:

Key Questions:

  • "What distinct types of users will interact with the system?"
  • "How do these user types differ in their goals and capabilities?"
  • "Are there user types who interact only occasionally vs. daily?"
  • "Are there administrative or support user types?"
  • "Are there automated system users (APIs, integrations)?"

3. User Profile Development

For each user type, build a detailed profile:

Profile Elements:

  • User Type Name: Clear, descriptive identifier
  • Description: Who this user is and their role
  • Technical Proficiency: Low / Medium / High
  • Domain Expertise: Novice / Intermediate / Expert
  • Usage Frequency: Daily / Weekly / Monthly / Occasional
  • Usage Environment: Office / Mobile / Remote / Field / Varied
  • Accessibility Needs: Any specific accessibility requirements
  • Key Goals: Top 3-5 things this user wants to accomplish
  • Frustrations: Current pain points with existing solutions
  • Constraints: Limitations on how this user can interact

Key Questions per User Type:

  • "What is a day in the life of this user?"
  • "What tools do they currently use?"
  • "What are their biggest frustrations with current approaches?"
  • "How tech-savvy is this user type?"
  • "What would make them consider the system a success?"

4. Personnel Requirements

Define staffing and training needs:

Key Questions:

  • "Will users need training to use the system?"
  • "What level of training is acceptable (self-service, tutorial, formal)?"
  • "Are there specialized roles needed to operate the system?"
  • "What support model is expected (self-service, help desk, on-call)?"
  • "Are there regulatory requirements for user certification?"

5. User Interaction Requirements

Capture high-level interaction expectations:

Key Questions:

  • "What devices will users primarily use?"
  • "What are the connectivity expectations (always online, offline capable)?"
  • "What languages must the system support?"
  • "Are there cultural or regional considerations?"
  • "What is the expected learning curve?"

6. Generate User Requirements Content

Prepare the content to append to the document:

Content Structure:

## 5. User Requirements

### 5.1 User Identification

| User Type | Description | Usage Frequency | Technical Proficiency |
|-----------|-------------|----------------|----------------------|
| [Type name] | [Brief description] | [Daily/Weekly/etc.] | [Low/Medium/High] |

### 5.2 User Profiles

#### UP-001: [User Type Name]

- **Description:** [Who this user is]
- **Technical Proficiency:** [Low / Medium / High]
- **Domain Expertise:** [Novice / Intermediate / Expert]
- **Usage Frequency:** [Daily / Weekly / Monthly / Occasional]
- **Usage Environment:** [Office / Mobile / Remote / Field]
- **Accessibility Needs:** [Specific requirements or "Standard"]
- **Key Goals:**
  1. [Primary goal]
  2. [Secondary goal]
  3. [Tertiary goal]
- **Current Frustrations:** [Pain points with existing solutions]
- **Constraints:** [Limitations on interaction]

[Repeat for each user type]

### 5.3 Personnel Requirements

#### Training Requirements

[Training model, certification needs, learning curve expectations]

#### Support Model

[Support structure, escalation paths, response time expectations]

#### Staffing

[Specialized roles needed, team structure implications]

### 5.4 User Interaction Requirements

[Device expectations, connectivity, languages, cultural considerations]

7. Present MENU OPTIONS

Present the user requirements for review, then display menu:

  • Show user profiles and requirements
  • Highlight connections to stakeholder analysis from Step 2
  • Ask if any user types are missing or profiles need adjustment

Display: "Select: [A] Advanced Elicitation [P] Party Mode [C] Continue to Operational Concept (Step 6 of 8)"

Menu Handling Logic:

  • IF A: Read fully and follow: {advancedElicitationTask}, process enhanced insights, ask user acceptance, update or keep, redisplay
  • IF P: Read fully and follow: {partyModeWorkflow}, process collaborative validation, ask user acceptance, update or keep, redisplay
  • IF C: Append the final content to {outputFile}, update frontmatter by adding this step name to the end of the stepsCompleted array, then read fully and follow: {nextStepFile}
  • IF Any other: help user respond, then redisplay menu

APPEND TO DOCUMENT:

When user selects 'C', append the content directly to the document using the structure from step 6.

SUCCESS METRICS:

All user types identified and categorized Each user type has a detailed profile Profiles include goals, frustrations, constraints, and proficiency levels Personnel requirements (training, support, staffing) documented User interaction requirements captured Profiles connected to stakeholder analysis from Step 2 ISO 29148 Clause 7 Section 5 requirements addressed

FAILURE MODES:

Missing user types (especially admin, support, API users) Generic profiles without specific goals and frustrations Not connecting to stakeholder profiles from Step 2 Skipping personnel requirements Not capturing accessibility needs

NEXT STEP:

After user selects 'C' and content is saved, load {nextStepFile} to define operational concept and scenarios.