3.4 Generating Acceptance Criteria

Acceptance criteria define the specific conditions that must be met for a user story to be considered complete. They provide clear, testable requirements that help developers understand exactly what to build and help QA teams know what to test. In VibeMap, acceptance criteria are automatically generated for each user story.

What Are Acceptance Criteria?

Acceptance criteria are detailed, testable conditions that specify:

  • Functional requirements - What the feature should do

  • User experience - How users should interact with the feature

  • Edge cases - Unusual but possible scenarios

  • Error handling - What happens when things go wrong

  • Success conditions - How you know the feature works correctly

Prerequisites

Before generating acceptance criteria, you need:

  • User stories - Criteria are created for each story

  • Clear feature understanding - Helps generate comprehensive criteria

  • Project context - Ensures criteria align with overall goals

Note: Acceptance criteria are automatically generated when you create a project, but you can regenerate or add more from the Acceptance Criteria section.

How to Generate Acceptance Criteria

Acceptance criteria are created automatically during project creation. VibeMap analyzes each user story and generates 3-8 criteria covering different scenarios.

Manual Generation

To generate additional acceptance criteria or regenerate existing ones:

  1. Navigate to Acceptance Criteria: Click the "Acceptance Criteria" tab in your project sidebar

  2. Click "Generate Acceptance Criteria": Creates comprehensive criteria for all user stories

  3. Wait for Processing: Takes 2-4 minutes for complex projects with many stories

  4. Review Results: Criteria appear organized by user story with clear testable conditions

Generating Additional Acceptance Criteria

If you need more criteria or want to cover additional scenarios:

  1. Click "Generate Additional Acceptance Criteria": Creates new criteria without duplicates

  2. AI analyzes existing criteria: Avoids repetition and identifies gaps

  3. Focuses on edge cases: Creates scenarios you might have missed

  4. Adds error conditions: Covers what happens when things go wrong

What You'll Get

Criteria Organization

Acceptance criteria are organized by user story and include:

  • 📋 Scenario Type: Happy path, edge case, or error condition

  • 🎯 Testable Condition: Clear, specific requirement

  • ✅ Success Criteria: How you know it's working

  • 🏷️ Implementation Tags: Frontend, Backend, Database indicators

  • 📊 Priority: Critical, Important, or Nice-to-have

Criteria Structure

Each acceptance criterion follows this format:

Given [initial context],
When [user action],
Then [expected outcome].

Implementation: Frontend, Backend
Priority: Critical

Example Acceptance Criteria

User Login - Happy Path
Given I am on the login page,
When I enter valid email and password,
Then I should be redirected to the dashboard.

User Login - Invalid Credentials
Given I am on the login page,
When I enter invalid email or password,
Then I should see an error message "Invalid credentials".

User Login - Empty Fields
Given I am on the login page,
When I click login without entering credentials,
Then I should see validation errors for required fields.

Managing Your Acceptance Criteria

Viewing Criteria Details

Click on any user story to see:

  • Complete criteria list for that story

  • Implementation tags showing what needs to be built

  • Priority levels for development planning

  • Related scenarios and edge cases

Editing Acceptance Criteria

  • Click "Edit" on any criterion

  • Modify description or implementation tags

  • Update priority if needed

  • Save changes to update the criterion

Adding New Criteria

  1. Click "Add Acceptance Criteria" button

  2. Choose user story to add criteria to

  3. Write criterion following the Given-When-Then format

  4. Set implementation tags and priority

  5. Save to add to your project

Deleting Criteria

  • Click "Delete" on any criterion

  • Confirm deletion to remove permanently

  • Consider impact on testing and development

Reordering Criteria

  • Drag and drop to reorder by priority

  • Filter by implementation to see Frontend/Backend/Database criteria

  • Group by scenario type for better organization

Expected Outcomes

Typical Generation Results

  • 3-8 acceptance criteria per user story (varies by complexity)

  • Coverage across scenario types: Happy path (60%), Edge cases (25%), Error conditions (15%)

  • Implementation tags: Frontend (40%), Backend (35%), Database (25%)

  • Clear priority distribution for development planning

Quality Indicators

Good acceptance criteria will have:

  • ✅ Clear, testable conditions

  • ✅ Specific success criteria

  • ✅ Appropriate implementation tags

  • ✅ Coverage of edge cases and errors

  • ✅ Realistic and achievable requirements

Best Practices

Writing Effective Acceptance Criteria

To get better acceptance criteria, ensure your user stories include:

  • Specific user actions rather than vague descriptions

  • Clear business context that explains the "why"

  • Detailed functionality that covers the complete user flow

  • Technical considerations that affect implementation

Example Good User Story for Acceptance Criteria:

As a user,
I want to create a new account with email and password,
So that I can access the application securely.

This generates criteria like:
- Given I am on the registration page, When I enter valid email and password, Then my account should be created
- Given I enter an invalid email format, When I submit the form, Then I should see a validation error
- Given I enter a weak password, When I submit the form, Then I should see password strength requirements

Troubleshooting

Common Issues

Too Few Acceptance Criteria Generated:

  • Add more detail to your user stories

  • Include specific user workflows and scenarios

  • Try the "Generate Additional Acceptance Criteria" button

Criteria Too Generic:

  • Ensure your user stories are specific and detailed

  • Include more context about user interactions

  • Edit generated criteria to add domain expertise

Missing Edge Cases:

  • Use the "Generate Additional Acceptance Criteria" feature

  • Manually add criteria for specific edge cases you know about

  • Review criteria with your development team

Implementation Tags Seem Wrong:

  • Edit tags to match your technical architecture

  • Consider how the feature will actually be built

  • Update tags based on your team's development approach

Next Steps

After generating acceptance criteria:

  1. Review each criterion to ensure it's testable and clear

  2. Edit implementation tags to match your technical approach

  3. Validate with your development team for feasibility

  4. Use for sprint planning and development estimates

  5. Create test cases based on the criteria

Acceptance criteria are the foundation of successful development and testing. Well-defined criteria lead to clearer development requirements, more accurate estimates, and higher quality deliverables.

Last updated

Was this helpful?