Agile software development is a world unto itself, with its own language, philosophy, and methods. From an outsider’s perspective, it can be a challenge to navigate the buzzwords and concepts like scrum, stories, or technical debt. But that’s a necessary thing to do, as agile methodologies are essential for today’s development.
So, you need to grasp all of its concepts, starting with the crucial notion of product owner. You might have heard that product owners are “accountable for maximizing the value of a product, primarily by incrementally managing and expressing business and functional expectations for a product to the Development Team(s).” (that’s a direct quote from the official Scrum Glossary of terms, by the way). It’s a good definition, but one that requires some unpackaging.
Ever since humans gathered in tribes we’ve had visionaries in one way or another, people who come up with big ideas and who know how to relay them to others. What Ken Schwaber and Jeff Sutherland realized when they came up with the Scrum framework was that the person with the ideas didn’t also have to be the manager.
In a cascade-like methodology, we usually have a manager who is tasked with handling the big picture while managing their development team. That makes sense – the person who understands how all the pieces go together should be the one calling the shots, right?
Not necessarily. That’s a lot of responsibility for a single person, especially if you assume that the project’s vision will change and evolve as you go into production. When the client starts using the product goals will get reshuffled as new ideas and necessities arise. So, instead of giving both tasks to a single person, we split them and the big picture gets assigned to the product owner.
Product owners define the vision
Think of the product owner as a bridge between the client and the development team. In fact, some software developers even assign the role of product owners to their clients. Their job is to understand what the client’s needs are and use them to define goals and create a cohesive vision for everyone involved in the project.
To steal another term from the agile methodology, when a client relays their needs they are creating an epic, a big narrative relayed in common terms that can’t be accomplished with a single sprint. The product owner then gives structure to that epic and divides it into easily attainable chunks called stories.
In what order should the stories be tackled? Which ones are being worked on? Which ones remain? That’s called the product backlog and it’s typically maintained by the product owner. Having a person with a higher perspective ensures that everyone is on the same page despite the flexibility of agile frameworks. In a way, the product owners align everyone behind a common goal.
Working hand in hand with the client
As we said before, one of the key responsibilities of a product owner is to be the main link between clients and teams. Product owners need to be great communicators and even better listeners.
To help a client and have a better understanding of their epic, a good project owner should be knowledgeable of the client’s market. This will often involve a bit of homework and research on the product owners side, but it’s usually well worth the effort.
With active listening and a grasp of the market, the product owner can anticipate potential problems and explore areas the client may overlook at first. This, in turn, will lead to a clearer image of what the end goal is.
Managing the backlog
One of the key values of agile methodologies is “Responding to change over following a plan”. The underlying assumption is that projects aren’t stable and whatever assumptions we make are not guaranteed to remain intact.
As such, the product backlog is a living entity that grows and adapts as the development process advances. Thus, it needs to be constantly maintained and updated with the feedback from the client. For example, a functionality that had a low priority may suddenly become necessary as the client realizes that not having it creates another problem down the line.
By updating I mean:
- Creating new user stories to add to the backlog
- Removing user stories that are no longer deemed necessary
- Reorganizing the backlog as the priorities change
- Rewriting or rewording user stories as new information arises
Of course, the product owner should ascertain that everyone involved has access to the backlog, from clients to development teams, and they should also gather feedback to make sure that priorities are in line with the business vision and the project’s resources.
Assess the outcome of each iteration
Iteration lies at the core of agile methodologies, it’s what underlies the “fail fast, fail hard” motto. Every time you iterate, you create a new product to be assessed: its strengths and weaknesses are data that informs you of what to do next.
Some people like to think of the product owner as the “in-company client”, a set of eyes that inspects and evaluates a product’s progress with the eyes of an end-user. And if the product owner has a very clear grasp of their client’s epic, that’s actually a very accurate assessment.
A product owner can make a judgment call on the project’s current functionalities, performance, or even aesthetics and decide if the end result aligns with the overall vision. Based on their opinion, the development team may go forward with the project or go back to the drawing board.
That’s precisely the reason why many agile teams think of their clients as product owners: there is no better person to assess if a product fits a vision than the person who first conceived it.
Working with your product owner
Understanding the process underlying the role of a project owner can go a long way in speeding up the early stages and getting into production quicker. When you hire a software development team that uses an agile framework try to frame your project in terms of goals that can be achieved in the short term.
Remember that your vision is like Odysseus’s journey back to Ithaca, it’s meant to be a swift and safe journey but will eventually turn into an amazing epic with plot twists and new challenges along the way. In the end, you will end up with a better product, thanks to that adventurous journey.