The template: As a [who/role], I want [what] so that [why]
The "why" is optional, but often useful.
As a Manager, I want to create employee schedules
As an Employee, I want to see everyone's schedules so I can arrange shift swaps
As an Analyst, I need to be able to view people's timesheet data in various ways so that I can better understand where work bottlenecks come from
Why They Work
- They're written by stakeholders, typically users.
- They quickly capture what users want, in their own words.
- They aren't a feature specification. They are the beginning of a discussion.
- If it's important enough for you (the user) to want, it's important enough for you to add a story
What If It's a Big Idea?
User stories often start as big ideas (epics). After discussion, they'll get split into smaller stories that can be better estimated and worked on.
Three Steps in a User Story
- Write the initial story (the value)
- Discuss the story and capture the discussion
- Determine acceptance criteria as needed
A user story is done when its acceptance criteria is met.
Value As a Manager, I want to create employee schedules
- What's involved in this?
- How would it be done on paper?
- How is it being done today?
A schedule includes employee name, id, date, from time, and to time.
[mm] I've found that the handwritten schedules end up being changed a lot due to employees swapping shifts, or being sick. All those changes make the schedule hard to read. So, it'd be great to easily reprint the schedule.
[hg] It sounds like how to print or display schedules should be a new story. What if we used kiosks instead of paper? Or maybe an app employees could view on their phones.
[ss] There needs to be control over who can change my schedules.
Initially, the scheduler system should:
- Show an entire week
- Add employee to a day and shift
- Show employee total hours
- Allow easy changing of who's working a shift
- Allow easy swapping of employee shifts
- Print a schedule