DEV Community

Apiumhub
Apiumhub

Posted on • Originally published at apiumhub.com on

The product owner role in software development

For most companies switching to the Agile methodology, the Product owner is something new. However every month you see a significant growth in Product Owner demand. Why? We will discuss it in this article, focusing more on the product owner role in software development projects.

Who is Product owner?

A great Product Owner basically is an entrepreneur for his product. PO is a member of an agile teamresponsible for delivering high quality digital products. In basic words, PO defines user stories and prioritize backlog while maintaining the conceptual and technical integrity of the features for the team.

Agile Product Owner role in quality control is huge. PO is a critical member, who accepts stories as done. According to our experience, working with companies from different industries, if there is no PO in a company, then in most of the cases the development process becomes a chaos, when deadlines are not met and product is delivered with functionalities that are not really needed.

But, I have to say that to accomplish all that needs to be done during an agile software development project, in my opinion, a Product Owner should have some technical knowledge to be more effective. Why? Because product owner should be able to speak with the technical team and understand concepts vital to moving a project forward. Also, PO should be able to explain tech concepts to other stakeholders. PO is like a middle man between the development team and the stakeholders. But apart from having tech knowledge, PO should be knowledgeable on a product from the end user’s perspective. That means that PO should have business background as well.

Unfortunately, right now, there are very few people in the world who actually match this “ideal candidate” criteria, therefore a lot of universities and academies start opening courses to grow Product Owners. If you want to hear our opinion, then we think it is much easier to convert a tech person, a developer or a CTO to a PO than a business person. Actually, taking Barcelona as an example, most POs here are ex engineers.

Let’s look at the main areas of responsibility of a PO.

Product Owner role in software development projects

Create and maintain Product Backlog

Nothing is constant in the world of software and it’s important that the Product Owner adapts the Product Backlog according to the client and market needs. Also, good PO knows when and how to say NO. This is probably the most obvious but also the most difficult one to master. Saying yes to a new idea or feature is easy, it’s just another item for the product backlog. However, good backlog management encompasses creating a manageable product backlog with items that probably will get realized. Adding items to the backlog knowing nothing will happen with them only creates “waste” and false expectations. To avoid the situation when the whole development process takes too long, project loses focus, and the developed solution might not actually solve the business problem, PO should say NO to some features and changes. But in these cases, Product Owner should explain why a feedback item will or will not be developed and effectively move the team towards productive conversations and solutions.

Prioritize the Backlog according to business value or ROI

Each user story must be ordered by relative importance. There shouldn’t be 5 high priority. It’s important to know which User story is #1, which is #2 etc. And that’s not only from the business point of view, PO should take into account the development part as well as some features simply can’t be developed before doing X task. Therefore PO should analyze requirements from both sides and come up with the best solution, best prioritization to add more value to the product right from the beginning.

User Stories

PO should know how to write user stories. SImple example is: As a user, I want to <some goal or objective>, so that <benefit, value>. Here you have an article explaining that.

Convey the Vision and Goals at the beginning of every Sprint

This helps to keep the team on track. Product Owner represents the customers voice and creates a product vision together with the stakeholders. Every decision is taken with the product vision in mind. This ensures sustainable product development, provides clarity for the development team and increases the chances of product success.

Engage the customer and stakeholders to ensure the team is building the right product

Development team shouldn’t spend time on explaining tech issues to the client, this is a job of a PO. In other words, Product Owner is the voice of the Team to the outside world and should ensure that all channels of communications are open and that projects have the right amount of support required to succeed. PO is responsible for defining the boundaries and constraints to the achieve the goals. They can include deadline completion dates, cost limitations, memory limits, and speed minimums.

Participate in the daily Scrum meetings, Sprint Planning Meetings and Sprint Reviews and Retrospectives.

It is particularly critical for the Product Owner to possess good communication skills that can adapt to different teams and personality types. Product owner should update stakeholders with the current status, advancements, possible struggles and issues.

QA

Normally, PO is the only team member who can accept stories as done. This includes validation that the story meets acceptance criteria and has the appropriate, persistent acceptance tests, and that it otherwise complies its Definition of Done.

ROI

The product owner is responsible for providing the best return on investment. They are accountable for all economic decision-making during the sprint’s release and product level. Budget, time, and quality can be adjusted according to need, cost and benefit of each product backlog can also be used to prioritize user stories.

Resolve conflicts

Anyone who cannot handle conflict should not be a product owner. In digital product development, having strong conflict resolution skills is important to stop disputes from escalating and focus on what really matters. Sometimes, PO must go through some conflict to reach a solution.

On time delivery

Product owner is responsible for ensuring the team meets the deadlines and the goals. PO is in charge of delivering optimal working software according to milestones.

In conclusion I want to say that in Apiumhub we strongly believe that the Product owner role in software development projects is vital!

If you would like to add some points to the list, feel free to do so int he comments section below!

If you would like to work in Apiumhub as a PO, submit your CV here. If you would like to hire a PO, contact us!

And don’t forget to subscribe to our monthly newsletter to receive latest trends and information about the product owner role.

If you like this article about Product Owner role in software development, you may like:

Some Agile retrospective ideas

Agile testing for beginners

Top agile blogs you should know about

A list of tools for Agile project management

The post The product owner role in software development appeared first on Apiumhub.

Top comments (1)

Collapse
 
finnhvman profile image
Bence Szabo

Very well summarized!