3.8 KiB
Executable File
3.8 KiB
Executable File
Requirements, features, user stories, tasks, walking skeletons
- Requirements
- Epic
- Features
- User Stories
- Tasks
- Walking Skeleton
- Hierarchy Overview
- Example from work:
Requirements
- Definition: High-level descriptions of what the system must do or how it should behave.
-
Types:
- Functional: Specific behaviors (e.g., “The system must allow users to reset passwords”).
- Non-functional: Quality attributes (e.g., performance, security, usability).
- Agile Context: Requirements are often evolving and are captured incrementally through user stories and feedback loops.
Epic
An epic is a high-level objective or initiative that’s too big to complete in a single sprint. It represents a major business goal or capability and is broken down into smaller deliverables:
- Purpose: Organise related work under a common theme.
- Scope: Broad and strategic; spans multiple sprints.
- Example: “Enable secure user access” could be an epic that includes login, signup, password reset, and multi-factor authentication. “An epic serves to manage tasks. It's a defined body of work that is segmented into specific tasks (called ‘stories’) based on the needs/requests of customers or end-users"
Features
- Definition: Distinct pieces of functionality that deliver value to users.
- Scope: Larger than user stories but smaller than epics.
- Example: “User profile management” could be a feature encompassing login, profile editing, and avatar upload.
User Stories
- Definition: Short, simple descriptions of a feature told from the perspective of the user.
- Format: “As a [user], I want [goal] so that [reason].”
- Purpose: Helps teams focus on user needs and prioritize work.
- Agile Role: Central to backlog grooming, sprint planning, and iterative delivery.
Tasks
- Definition: Technical or operational steps needed to implement a user story.
- Granularity: Smallest unit of work, often assigned to individual team members.
-
Example: For a story like “User can upload avatar,” tasks might include:
- Create upload UI
- Validate image format
- Store image in database
Walking Skeleton
- Definition: A minimal, end-to-end version of the system that includes the core architecture and basic functionality.
- Purpose: Validates the system’s structure early and allows incremental development.
- Agile Benefit: Enables early integration, testing, and feedback while avoiding big-bang delivery.
Hierarchy Overview
| Level | Description | Agile Artifact |
|---|---|---|
| Vision | Broad business goals | Epics |
| Feature | Functional chunks of value | Features |
| User Need | Specific user goals | User Stories |
| Implementation | Technical execution steps | Tasks |
| Skeleton | Minimal working system | Walking Skeleton |
Here is a summary of the agile hierarchy:
| Level | Example | Description |
|---|---|---|
| Epic | Enable secure user access | Broad goal spanning multiple features |
| Feature | User Login | Functional unit delivering user value |
| User Story | “Log in with email/password” | Specific user goal within the feature |
| Task | Build login form, connect to backend | Technical steps to implement the story |
