User Stories Recap
In a previous Fishtank blog, User Stories For A Sitecore Implementation, user stories for Sitecore Implementation were discussed. In this blog, we will focus on the role within the user story, what it is and how it is used.
The standard format for writing a user story follows this structure:
"As a [user role] I want to [goal] so that [benefit]."
What Is A User Story Role?
The “who” of a user story is a user role or persona. The user role in the user story is the role that actually is getting the value described in the user story. The role matches the goal! The role is not simply the user.
There are different types of users so the role needs to be more specific. As you write user stories, stop to consider who the user role is for the specific feature you are describing.
It is vital the user is identified and explained to the team so that they can put themselves in the user’s shoes and mindset when considering the best way to deliver value for them.
Examples of user roles includes:
“As an iPhone user. . .” or “As a site visitor. . .” or “As a developer. . .”
Yes, sometimes even the development team is a user if there is some work they need to do on the project that is more on the technical side, but still, delivers value to the project.
Each of the roles interacts differently with the product. Some roles will have features that are solely built for them, other roles will share features.
This can be shown in a user role hierarchy that clarifies the hierarchical relationship between the users, starting with a very generic user at the top, diving deeper into details at lower levels.
This is an important diagram because it forces you to think about who you are implementing features for.
Sample Role Hierarchy
In this example, a Visitor is anyone that comes to the utility company’s website and is able to view any page within the public domain. An Authenticated Visitor, has set up an online account but has not linked their utility account number.
This Authenticated Visitor role gives the user more access to pages within the website that are only accessible to those that have an online account. For example, see their message history in the Message Center.
An Authenticated Customer, has not only set up an online account but also linked their utility account number to the online account.
An Authenticated Customer has access to all pages within the domain, including pages where the company can display back the user’s account information, graphs, account dashboard, etc. because their utility account number is known.
User Role Is One User
Stick to roles that represent a single user. The role reflects a very specific group of individuals who perform the same task.
Extreme Roles
At times it is beneficial to consider design for exaggerated or extreme roles, users or personalities. It is possible that considering extreme characters will lead to stories you would likely miss otherwise.
While extreme roles may lead to new stories, it is difficult to know whether these stories would be ones to include in the product. However, looking at extreme roles may lead to a few insights into the product development process.
Who Is Responsible For Role Determination?
This is likely a project team effort. When determining user roles, it is best to establish a commonly agreed-upon list of user roles for a product. Further responsibilities also are as follows:
Customers are responsible:
- Identifying appropriate user roles
- Participating in the process of identifying user roles and/or personas
- Ensuring that the product does not focus inappropriately on a subset of users
- Ensuring that each story can be associated with at least one user role or persona
- Thinking about how different user roles may prefer the product to behave
- Making sure the identification and description of user roles does not go beyond its role as a tool in the process
Developers are responsible:
- To participate in the process of identifying user roles and/or personas
- For understanding each of the user roles and/or personas and how they differ
- During development, thinking about how different user roles may prefer the product to behave
- Making sure the identification and description of user roles does not go beyond its role as a tool in the process
Check out my next blog, User Role Modeling For Sitecore, where we look at some of the methods to determine the user roles like user role modeling or creating personas.