The Role of Product Owners in Software Development

Agile software development is a world of its own, with its own language, philosophy, and methods. From an outside observer's perspective, it can be difficult to navigate such "buzzwords" and concepts as scrum, stories, or technical debt. But it's necessary to do so, as agile methodologies are an integral part of modern development. 

Therefore, it's essential to grasp all its concepts, starting with the most important one: the "product owner." You may have heard that product owners are "responsible for maximizing the value of the product, primarily by incrementally managing and expressing business and functional expectations for the product to the development team." (This is, by the way, a direct quote from the official Scrum Glossary.) It's a good definition, but it requires some unpacking.

Ever since people started forming tribes, we've had visionaries—people who come up with big ideas and know how to communicate them to others. Ken Schwaber and Jeff Sutherland, in developing the Scrum concept, understood that the person with ideas doesn't necessarily have to be a manager.

In the waterfall methodology, there is typically a manager tasked with solving the overall problem while simultaneously managing the development team. It makes sense—the person who understands how all the pieces fit together should be the one calling the shots, right?

Not necessarily. That's a lot of responsibility for one person, especially considering that the project vision will change and evolve as it goes into production. Once the client starts using the product, goals will shuffle as new ideas and needs emerge. So instead of assigning both tasks to one person, we split them, entrusting the big picture to the product owner.

Product Owners Define the Vision

Think of the product owner as the link between the client and the development team. In fact, some software developers even assign the product owner role to their clients. Their job is to understand the client's needs and use them to define goals and create a unified vision for all project participants.

Using another term from agile methodology, we can say that when a client communicates their needs, they create an epic—a large story conveyed in general terms that cannot be implemented in a single sprint. The product owner then gives structure to this epic and breaks it down into easily achievable pieces called stories.

In what order should the stories be worked on? Which ones have been addressed? Which remain? This is called the product backlog, and it is typically managed by the product owner. Having a person with a higher perspective ensures unity of vision despite the flexibility of agile systems. In a sense, product owners unite everyone around a common goal.   

Working Hand in Hand with the Client

As we've said, one of the key responsibilities of the product owner is to be the primary liaison between the client and the team. Product owners must be excellent communicators and even better listeners. 

To help the client and better understand their epic, a good product owner should know the client's market well. This often requires the product owner to do a bit of homework and conduct research, but the effort is usually worthwhile.

Through active listening and market knowledge, the product owner can anticipate potential issues and explore areas the client might initially overlook. This, in turn, leads to a clearer vision of the end goal.

Managing the Backlog

One of the key values of agile methodology is "responding to change over following a plan." This principle is based on the assumption that projects are not static, and whatever assumptions we make are not guaranteed to remain unchanged.

Thus, the product backlog is a living organism that grows and adapts as the development process evolves. It therefore needs to be constantly maintained and updated based on client feedback. For example, a feature with low priority may suddenly become necessary when the client realizes that its absence creates another problem down the line.

By updating, I mean:

  1. Creating new user stories to add to the backlog
  2. Removing user stories that are no longer needed
  3. Reorganizing the backlog as priorities change
  4. Rewriting or rephrasing user stories as new information emerges

Of course, the product owner must ensure that all project participants have access to the backlog, from clients to the development team, and also gather feedback to ensure that priorities align with the business vision and project resources.

Evaluating the Results of Each Iteration

Iterations are at the heart of agile methodologies; that's what underlies the motto "fail fast, fail often." Each iteration produces a new product that needs to be evaluated: its strengths and weaknesses provide data to determine what to do next.

Some consider the product owner to be the "internal client of the company"—a set of eyes that looks at and evaluates product progress from the end user's perspective. And if the product owner has a very clear picture of the client's epic, then this is indeed a very accurate assessment.    

The product owner can evaluate the current functionality, performance, and even aesthetics of the project and decide whether the end result matches the overall vision. Based on their opinion, the development team can proceed with the project or go back to the drawing board.

That is precisely why many agile teams consider their clients as product owners: there is no better person to evaluate the product's alignment with the vision than the one who first conceived it.

Working with a Product Owner

Understanding the process behind the product owner role can significantly speed up the early stages and accelerate time to market. When you hire a software development team that uses an agile framework, try to articulate your project in terms of goals that can be achieved in the short term. 

Remember that your vision is like Odysseus's journey to Ithaca: it should be swift and safe, but will ultimately become an amazing epic with plot twists and new challenges along the way. In the end, thanks to this adventurous journey, you'll get a better product.