Motivation to be ahead of the competition is achieved through
- Being ahead of the curve
- Reducing time to market
This has been the favorite or the constant of any business, a go to state. Achieved by improving the agility of the teams be it culture or software development or managing the operations and services around the product. As far as I remember this has been the goal of every business or every team ever since I remember – only articulated in differently by different teams. Agile, devops is recommended at high level.
What we need to achieve this?
- Shorten the path to delivery : look for ways
- Satisfying the needs of their customers faster
Means to achieve has been changing with time based on technological advances with newer techniques, methods and practices. We can try to achive if we know what are limiting factors and what are contributing / accelerating factors
How Fast Is Fast Enough for delivery?
Do all applications need to ultimately be released within hours? Answer to this question helps us delve more and baselining the options that needs tweaking to achieve the goal. Next question is what should be my Optimal Speed ? There is no “one fit for all” when it comes to speed
Optimal Speed Definition
- Get this right: What is fast enough to delight the customer and beat the competition for you. ( of course to determine at what point you are able to achieve this goal is a bit more complicated )
- Optimal speed is directly depended on the additional benefits the business will enjoy (additional revenue, higher customer acquisition, better customer retention etc.) as a result of greater velocity ( Source: http://devops.com/2015/10/14/fast-fast-enough/ )
Once decision is done what could be the optimal speed, it can be achieved through fine tuning the some or all the following processes.
Value based prioritization
Quality of the stories/ Quality of Story Readiness criteria
Goodness and clarity of DoD
Quality of ATCs
Cross Team / Functional Culture
Risks – Mitigation and Risk proximity
Quality of Feedback Loops
Based on context speed is used as an input to measure “Cycle time”, “Lead time”, “Service Time” , “Flow time” or any metric that involves in measuring time to market. Over all intent of these metrics is to reduce the time it takes to deliver value to customer through either software development or the service. This further can be accelerated by focus on domains on unknown, surely will help in changing the gears to get to the speed of expectation.
Domains of unknown:
- Product Unknowns- Examples – Is this user problem a real issue or is it something I see as an issue? Will it work as expected once in the user’s hands? How much should we invest in this feature compared to that one?
- Software Development Unknowns – Examples : Should we use that framework or that one? How long does it take to develop that kind of feature? Is it possible to have automated tests with this new technology? Where will the next bottleneck appear when we get 10x more users?
- Operations Unknowns – Examples :How long and how much effort will it take to deploy a new release after QA? What will be the main weaknesses of this new system once in production? What are most vital dashboards and alerts for this new system? How many more servers do we need to support the expected load?
If we want to build it fast, we need to solve a lot of unknowns.
Please share your thoughts, feedback factors influencing the time to market metrics and how this has been implemented in your projects – email@example.com