So, we’ve talked about Agile Development, particularly Scrum and last month we dissected the role of the Scrum Master. Now you know the duty of Scrum Master. The Product Owner then, plays a different role.
The Scrum Product Owner is basically the lynchpin of a given project. This individual needs to have a clear understanding of what he or she needs or wants to build as well as the ability to accurately convey this end goal to the other members of the project. They do this by using a product backlog (a list of necessary features and priorities for the final product), which we will discuss in more detail below.
Of course, so far this sounds like it could be the owner of pretty much any software project. Ideally, the Scrum Product Owner needs to have a good understanding of the target users, the competition, the market, and the general dictions of the industry for which the product will be developed. These requirements vary slightly, depending on whether the product will be used commercially or for internal objectives, whether it will be software or hardware, and so on. The important take away here is that the person who takes the role of the Product Owner needs to have a vision for what is to be built and who are going to be the end users.
So, to make sure that all members of the Scrum project understand and share the Product Owner's vision, s/he typically creates a backlog: a list of important features of the product, generally prioritized. In the agile development process, the product backlog is written during the sprint planning meeting - a meeting consisting of Product Owner, Scrum Master, and the entire Agile Team. Although all members of the meeting can contribute to the backlog, it is the Product Owner job to clarify the details of the backlog items and to establish their acceptance criteria. In addition, it is their job to estimate how many sprints will be required to complete each of the backlog items.
It is important to keep in mind that the Product Owner does not specifically define when each of the backlog features will be implemented. Rather, the owner's job is to motivate the team with well-defined and achievable goals. Team members know best their abilities and can, themselves, decide during which sprints – or releasable increments - they will be able to focus on in the particular parts of the backlog.
Yet another requirement for a successful Product Owner is flexibility or adaptability. During a development process, several project aspects can change due to unexpected complexities, such as a team member’s illness, insufficient funding, or any number of external problems. For this reason, one should not treat a backlog as a fixed document and must be willing to be dynamic as the project evolves.
The only thing one should keep in mind is that any changes should preferably be implemented outside of sprints. After the team starts a sprint, the backlog really needs to stay fixed so that the team can be allowed to be focused only on the sprint goals. If the project circumstances change dramatically during the sprint, the Project Owner can end a sprint prematurely and take a different course of action.
Finally, the Product Owner has to act as an interface between the client and the Scrum Team. This means he is responsible for both communications between the client with the product developers, similar to a Project Manager, as well as having the ability to relay any Team message to the client. To achieve this successfully, the Product Owner needs to make sure he spends an appropriate amount of time with both sides of the project.
We're going to post one more blog about Scrum next month when we go into more detail about the Development Team. Join us, won't you?