I have been involved with bespoke programming projects for 25 years – I have seen projects be both spectacularly successful and dismal failures. The success of a product in the market is in the hands of the product owner – and I have never seen a weak product owner produce a great product. When the essential characteristics are mentioned in the literature today, they are often cached in so much Agile jargon it’s impossible to understand what is meant. In my experience there are 5 characteristics of product ownership that are essential:
- A product owner steps up for the job. I have attended many project kick-off meetings where when the customer is asked who the product owner is they look around and nominate some bewildered junior staff member. Great product owners are obvious – they are respected within the organisation as someone who cares about customers and respected to make the difficult decisions.
- A product owner has skin in the game. A junior staff member (point 1) does not want to fail spectacularly, but it’s not a make or break for their career if it’s a fizzer. Software is thus developed with good intentions and at the end there is an admirable list of the unavoidable things that led to the project’s failure. A great product owner sees no value in this list, their career and the success of the project are one and the same.
- A product owner lives and breathes the solution. Poor product owners seek to get consensus from the project team in the misplaced assumption that if everyone is happy and agreeable then they must be on the right track – this consensus is then developer-centric, it is not too challenging, can be achieved within their skills and avoids expensive technical research requiring much thinking. The customers are then presented with a product that really does little that is useful. A great product owner seeks to amaze the customer with how simply the solution achieves things that are hard to achieve – that is, indeed, the value of an IT solution.
- A product owner is always seeking validation of the value proposition. A lazy product owner works intensively with a small number of customers and finds in the end the solution is only useful to them. A great product owner must be brave. What they develop from speaking to one group of farmers is always presented to a different group – they see the most value coming from farmers who are naïve to the project and work progressively to get the views of a statistically meaningful number of customers.
- A product owner inspires the development team. Programming is both engineering and a creative art. Projects perform well when the development team feels safe to innovate with solutions that might make a project achieve greatness. As a team loses confidence perhaps from cynical feedback this innovation stops dead. The BA’s and developers will now need the smallest detail spelt out, and people triple-check details they should already know from previous projects. The result is an agile project feeling an awful lot like waterfall and being delivered worse than both.
There are other characteristics of great product owners but from my observation a successful project cannot be achieved if any one of the above characteristics are not met. A product owner is the most important role in developing new products and they should be chosen with care.