Product development is a hectic and challenging process.
In agile development, teams work on an iterative and incremental approach. For such methodologies, rightly planning the tasks and executing them in an organized manner is very essential.
Moreover, having a system to monitor, record, plan and execute all the actions involved in product development only will enable the team to successfully finish the development process.
The product backlog can help the product managers with all the above-said responsibilities. It is an authoritative source that defines how the development team should work.
We will discuss the product backlog in its entirety — right from its components, creation, and maintenance. Let’s dive in.
What is a Product Backlog?
Product Backlog is a list of actionable items needed for developing a complete product. It is the source for the tasks and goals that product teams refer to. The product backlog is owned and maintained by the product managers.
The product development process is highly challenging and requires a lot of research and ideation. A good product can be built only by putting together a lot of information and insights. The foremost thing is to know the product vision and product strategy.
Product vision lets you know why the product is built and what value it desires to deliver to the user. Product strategy gives the direction for achieving the vision. Based on the product strategy, a product roadmap is built which defines the activities.
A product backlog is formed based on the product backlog, and it is dependent on the product vision, strategy, and roadmap. It derives reason from the vision statement, the course of action from the strategy, and the plan from the product roadmap.
An effective product backlog isn’t just a simple list. It consists of tasks broken down into items, organized, and executed based on priority.
Let us consider a product backlog for building an app for school. The users of this product can be classified into 3 categories– admin from the school, teachers, and parents. The product vision is to bring digital empowerment to school management.
Components of a Product Backlog
A product backlog generally tracks features, bugs and defects, technical debt, and knowledge base.
Features or User Stories
This is the most important item that drives the development in the form of small units.
User stories are the features your user wants to have in your product. A user story will be helpful in understanding the value a feature provides to the customer.
They are written in the form of informal statements from a user’s perspective. Here are some examples of the user story, based on the school management app
As an admin, I must be able to add new teacher and student data, so that I can manage their data effectively.
As a teacher, I must be able to assign homework to the students, so that I can assess their learning performance.
As a parent, I must be able to view my child’s performance, so that I can help him/her improve.
Along with new feature details, user stories include the changes that need to be done in the existing features.
Bugs are the errors or defects in the code that needs to be fixed. Bugs are usually associated with the functionality of the product. They are detected during the testing or review process.
Either reported by the users or team members, bugs are the items that require immediate attention.
In the school management app, a bug can be as follows,
“Parent is not receiving messages or notifications regarding the reports.”
The list of things that a team needs to do regarding the product to make it perfect with improved performance. For example, upgrading to the latest version. Upgrades make the product work better.
Technical work is usually called technical debt because unless the team performs these tasks, it remains pending and causes friction in the future.
There will be certain tasks that require knowing new information in the product development process. For example, when new features are being added to the product, the team will not have enough knowledge.
In that case, they cannot work on development directly. So the team collects relevant information, and they start the technical learning.
Considering the school management app, teachers need a new feature that helps them see the status of homework. To develop this feature, the team needs input from the teachers. This task comes under the knowledge acquisition in the product backlog.
Building the Product Backlog
A product is built based on the product backlog. This tells you how important the product backlog is and how carefully you should handle it. But you cannot build a complete product backlog in one go. It is dynamic in nature.
The tasks keep adding on as the development advances. And the backlog evolves as the stages advance. But the basic steps that are involved in creating a backlog are collection and recognition of ideas and organizing them.
In the development process, ideas are the base, above which the product is built. Collecting and curating various ideas are a great way to build or basically improve your product idea.
A variety of observations can give you different ideas. Ideas are collected from the following sources
- Customers (through surveys, Q/A, product testing, etc.) Let’s take the school management app. Here, ideas are collected from the customers which include school administration members, teachers, and parents of school students.
- Support and Sales team (based on user request)
- Research and Development team
- Product Vision
Putting them in one place, analyzing these ideas will help you create your product in the best way based on different insights and perspectives.
The backlog ultimately decides the day-to-day activities of the team. When it carries such a huge responsibility, items that are added without enough clarity will cause difficulties.
So, it’s highly important that you have a clear understanding of the tasks. When there are requests for new features or bug reports, gather enough details that will give clarity. Adding the items after having clarity will prevent the backlog from being clumsy.
When creating a product backlog, you must determine how the items should be arranged. Since backlog highly influences the development process, it should be created and made to stay in an organized manner.
If it’s used merely for putting ideas together, the product backlog becomes chaos, instead of driving the development process.
After building the backlog, the development team’s work relies on the backlog. The user stories and other tasks should be estimated and provided story points based on their difficulty and efforts needed. The most commonly used scale for the story points is the Fibonacci number sequence ( 1,2,3,5,8,13,21,34,….). In estimation, the range of this sequence used is 1-21.
Product Backlog Prioritization
Let us take the school management app. In the product, certain features are of higher priority than the others. For example, a dashboard is a feature that is of utmost need, while the chat feature for parents and teachers is of less priority.
Why Should You Prioritize?
In the product backlog, not all tasks have the same weightage or importance. It’s a mere waste of time if the team keeps concentrating on the least important ones.
Moreover, every product has one key feature for which it is developed, marketed, and sought by the customers.
This is the reason to have your product backlog organized based on priority. Having a prioritized list will also help them to identify which one to work on next.
Now that you have understood the reason behind prioritizing, the next step is to know-how. The backlog items are usually categorized into low and high-priority ones. There are many criteria using which the product backlog items are prioritized. Some criteria used are—
- Customer Value
- The tasks in the product backlog are built based on the customer’s needs. Analyze the tasks based on the customer requirements and prioritize them based on the value they provide to the customer. Higher the value, the higher the priority.
- Business value
- Certain tasks are helpful in getting you closer to the business goals and adding value to the business. They must be spotted and prioritized over others.
- For tasks that are complex, it’s better to begin early and finish them by giving them a high priority. This is because, complex tasks are challenging to work on, takes time, and might bring numerous issues in the process.
- Dependencies with other important items
- Often, tasks are interlinked and have dependencies on one another. Try to understand the relationship between them and then prioritize based on the dependency.
- See what tasks might cost more if not completed at the earliest. Those are likely to be of high priority to prevent unnecessary costs in the future.
Along with criteria, there are a number of techniques that you can resort to for prioritizing the product backlog items. Items are usually the tasks related to products. Initially, the features are prioritized based on which the tasks associated with them are prioritized. The most commonly used techniques are
MoSCoW can be abbreviated to
- Must have: The tasks for functionalities that are most important and without which your product cannot be released. They have the topmost priority.
- Should have: Tasks for functionalities that are important, but are not of the absolute need for creating the minimum viable product. These are not as vital as must-have ones.
- Could have: Functionalities that are desirable and valuable, but are less important than the should-have features.
- Won’t have: These functionalities that don’t require delivery in the current period and are kept for the future. The tasks associated are of the least priority.
Kano model prioritizes tasks for functionalities based on the following categories
- Must-be: The basic features without which the product is considered bad are under this category. These feature-related tasks are prioritized but aren’t invested more time on.
- Performance: Features that increase user satisfaction, more of such features, more the satisfaction. These are given high priority.
- Attractive: Features that add delight to the users come under this category. The tasks for building these features have high-priority.
- Indifferent: Features whose presence or absence doesn’t make any difference to the users. They might or might not be included, hence have the lower priority.
- Dissatisfaction: Features whose presence will annoy or upset the customers.
Features are ranked through a survey from customers through the following questions
- How important is this feature to you?
- How satisfied are you with the given solution?
Plotting them on the graph of importance vs satisfaction, the features, and the tasks are prioritized.
The features are ranked based on the four factors– Reach, Impact, Confidence, and effort. Then using the following formula, the RICE score is calculated and they are prioritized based on this.
RICE score= Reach*Impact*Confidence/Effort.
Maintaining the Product Backlog
A product backlog can affect the development process in either a positive or a negative way. It completely depends on how the backlog is maintained. To maintain a product backlog in a proper way, you must keep reviewing and updating it on a regular basis.
This process is called backlog grooming. It involves refinement activities on the backlog items. Team members gather together for discussions. The items are reprioritized; the irrelevant ones are eliminated.
Usually, the product managers conduct the grooming meetings, which are attended by all the cross-functional teams. Through this, the product backlog is made up to date.
Features of a Good Product Backlog:
DEEP Product Backlog is said to be a high-performing product backlog. DEEP is the abbreviation of four key attributes.
Detailed– Every task in the backlog should have enough details and information which makes it easy for developers to work on.
Estimated– Items in the backlog should be estimated based on their size and complexity. Estimated backlogs are easy to prioritize.
Emergent– As mentioned before, as a product is developed, new features and requirements are added. It evolves according to the time frame.
Prioritized– Based on the estimation and various other factors, items are prioritized and executed based on that.
The product backlog is what the development team completely depends on for its tasks.
As much effort as you put in building the backlog, equivalent work must be done on maintaining and managing it. An unmaintained backlog might turn out to be the worst nightmare.
A good backlog will help teams reach maximum productivity and deliver value.
Handling your backlog effectively will enable you to face the challenges in the developmental process and build products successfully.