Delaying a decision as long as possible is often a good idea! Sounds counterintuitive doesn’t it, particularly for those of us with a well developed “sense of urgency”, like me!
Real Options is about knowing when you have to make a decision. They are a great way to avoid making early decisions that could be irreversible. An Agile mindset requires you to always be ready to change what you’re doing, or how you’re doing it. We don’t have a plan, we have plans, plural, for getting where we want to be.
There are three rules of Real Options:
- Options have value
- Options expire
- Never commit early, unless you know why
By way of example, I’ll attempt to demonstrate how this works.
We used Real Options on a project to help choose between different potential solutions for a problem. To do this we first defined the problem: what were we trying to accomplish? It was important to convey the business problem/opportunity instead of a specific solution. We used the user story format to capture this.
We then considered whether there was an external deadline for solving the problem. In our case there was only an internal deadline, set by senior stakeholders.
Once we had done this, we came up with some initial options as to how we could possibly solve the problem, as below:
- Option A: Manual solution where users can trigger a process on the website but the processing itself is handled by human workflow
- Option B: Semi-automated option where some activities in the process are automated but others are manual
- Option C: Fully automated solution with no manual processing behind the scenes.
Options have value
To inform the decision, we estimated the business value of each of the solutions and asked the developers to estimate how long each might take. By dividing the business value by the effort we could then assess the likely return on investment for each option.
We then worked out when each of the options would expire. Sometimes the option expires when a condition is met, but often it’s a date that we refer to as the Last Responsible Moment (LRM), which can be computed like this:
LRM = External deadline for implementing a solution – Duration of implementation
In our case, we needed to consider the risk and dependencies of each option. Option C had a number of dependencies that meant delivering a fully automated solution was going to take a long time, and had many risks. There was significant pressure to deliver a version of the solution within 3 months – so in effect the LRM for Option C had already passed; the option had expired some time ago. The LRM for Option A was further in the future, and Option B was about to expire.
Never commit early, unless you know why
Because of the additional business value generated by Option B that was identified as our current preffered option, so we decided to start working on it straight away. We knew why we were committing (the LRM for the higher ROI option was about to pass). If we struck problems during development, or if risks appeared that blocked our way, we could then have reverted to Option A – and we knew exactly when we would need to make that decision.
At any point, we were always ready to change path, choosing from the various options that we identified along the way. There was always a plan B (and C, and D…).
Benefits of Applying Real Options
- Real Options encourage creative thinking and enable us to focus on the business problem rather than jumping into one solution. There is almost always more than one option to solve a problem (and quite often it doesn’t always require an IT solution!).
- Real Options give you the opportunity to initiate development of a product without making all the investment upfront. For instance, you can release a small increment or iteration of the product, test with limited number of end users and use their feedback to decide whether to continue development. In this way, Real Options gives you the opportunity to abandon an idea if it looks like it won’t succeed.
- Real Options enables you to consider different alternative designs. We want to avoid making irreversible decisions too early during development. For instance, we can use set-based concurrent engineering to explore multiple options and gradually narrow those options to choose the optimal one.
- Real Options can help to resolve uncertainty before investing in an option. In product development, we use a Spike to test risky decisions. Whilst the option to test an architecture or technical option before going too far with functionality might slow you down initially, if the solution doesn’t perform as you hoped, you have saved a lot of wasted effort careering down a dead end. So Real Options can help you buy time to gather more information about both the problem and the option itself.
Real Options in everyday life
You can apply real options in many aspects of life. It can work not only for product development but also your personal projects e.g. planning a summer vacation or your birthday party. I have also come across different businesses that offer real options. Pegasus Airlines is one of them. It gives customers the option to buy a ticket at certain price, in advance. So let’s say you pay $5 to buy the option of buying a flight at the price of $100. The option expires 5 days from the day you have bought the option which is your last responsible moment. Within 5 days, you need to make a decision whether you will exercise the option or not.
The point of Real Options is to always consider what alternative solutions might exist to a problem and not get stuck with a commitment to only one solution too early. There are 3 things we know about software development:
- Customers don’t know what they want
- Developers don’t know how to build the solution
- Things change
Because of this, software development requires a discovery mindset where you continuously explore and learn. The longer we defer decisions the more we can learn. By understanding the options available, their value, and when they expire we can adjust our approach as new information became available and make just-in-time decisions.
Try these articles for more information and background on Real Options:
For community discussion feel free to join in with your opinion on this forum: