Value Based Prioritisation - The Building Blocks of Agile
Value based prioritisation should be at the centre of any organisation and form the building blocks of any agile methodology.
Companies that prioritise their strategy by value adapt quicker and work iteratively to continuously deliver a more valuable product to their customer, and at a much faster rate than their competitors. Working this way ensures that every team member is directing their energies for the same goal to unlock the full potential of the business.
On the surface, you may think this already happening. Some boards are setting objectives related to the customer or efficiency, but too often this message gets diluted due to an inconsistent approach to determining value and prioritisation. Often decisions are not based around customer value because customer thinking isn't extended throughout the value chain. Frequently, when decisions are taken in isolation, work that could offer true customer value is missed altogether. For example, fixing certain tech debt is often prioritised without the consideration of customer value, which in turn creates waste. Value may be lost due to legacy processes, such as planning, budgeting and forecasting, which can slow organisations down.
There are, however, different types of value to consider but, whatever your organisation chooses as part of their prioritisation, they all come back to the customer. Other types of value include:
Commercial - How much revenue or profit does this work create?
- A new version of a software package that customers will pay for to acquire.
- Being able to send a bill to a customer for the work that was done.
- Improve the subjective value of the application so people are willing to pay more for it, something Apple is quite good at.
Market - How many new customers will we be able to serve?
- Functionality that draws in a new group of customers.
- Adding features that competitors don’t have, or implement them with a better customer experience.
Efficiency - How much time or money will this save us?
- Reduce the amount of errors in a task or increase speed (by automating it or parts of it)
- Increasing the usability or quality of an application to reduce load on support desks
- Reducing the amount of time needed to set up new customer environments or deploy them
- Decreasing the time to market
Customer - to what extent will this decrease customer churn?
- Improving application usability or UX to reduce frustration
- Adding a new feature that is commonly requested by users
Future - How much time or money will be saved in the future?
- Investing in a new framework which can be used for future development
- Reducing technical debt in code to make future changes easier or less error-prone, led by customer demand and experience
Whatever type of value is used to form company strategy, it's wise to try and determine what objectives will create the most value. In other words, what is the cost of delaying one feature over another (Cost of Delay)? So, as an example, you have three new features for an application, all of which offer value to your customer and increased revenue, but the order of delivery you choose will have an impact on both. That one feature that impacts customer value and revenue the least is then your number one priority. Thinking in this way will help you and your organisation identify the best opportunities, helping in turn to create better prioritisation.
To improve prioritisation further constant communication, feedback and reprioritisation are needed to ensure value is being delivered. A lack of feedback loops and continuous planning can also impact business velocity, with the board needing to listen to product teams as they are closest to the customer. This ensures that any reprioritisation by the board is based on value, which is then fed back again, giving the product teams confidence to take decisions that will positively impact the customer. Traceability is also improved by implementing a story hierarchy, which allows everything from initial concepts, features to detailed user stories with acceptance criteria in a structured, easy-to-follow way.
Taking a snapshot of the above, companies that want to embrace agile through value based prioritisation should:
Do
- Ask what the customer value of any initiative is, even at the feature level, making sure it aligns to the organisation's objectives.
- Create true transparency of organisational alignment via a consistent hierarchy of work.
- Understand and organise around your value, helping teams relate to the customer and your goals. Too often teams are functional or system based and don’t appreciate the end user experience, making systems thinking harder to achieve.
Don't
- Prioritise based on effort, which is a typical waterfall anti-pattern. Small, easy, quick wins will only reduce the capability to deliver true value.
- Set up projects to deal with regulatory change. Consider these as any other non-functional requirements and add to the product teams backlog.
- Organise in functional silos with work having to be passed between them to be completed.
Ultimately, when companies use value based prioritisation new features are delivered that fulfil what the customer wants, helping to deliver value to them and the business, in the fastest possible time.