Predictablity Requires Responsiveness
Why you need a responsive process?
If you are involved in a repetitive activity, like producing paperclips or serving cheeseburgers, predictability comes from establishing a standardized, fixed process. But if you are dealing with complex tasks (like developing new software features or creating a new marketing campaign or developing a new corporate training) then in order to achieve a fair degree of predictability, you need a different approach. You need to create a responsive process.
In complex work there are always unknows that only transpire when you are executing the plan. New facts emerge and teams and stakeholders must learn to effectively use the new information.
So, for example, if you want to deliver main features in the release more or less predictably, work on that release iteratively. At every iteration, a new increment of value will be added. But most importantly, at every iteration boundary, you have a decision point where you will make all necessary adjustments according to what you’ve learned from the previous iterations. It’s a responsive process.
More is required
But just having iterations, of course, is not enough. The fact that you have decision points doesn’t mean that you will be able to acquire the information needed to make those decisions. You will need to tease it out. And that requires purposeful action and a process around that. Some things that might help are:
- Experimentation (such as a quick prototype or a mockup that is easy to do)
- Splitting work into slices of customer value (not just any chunks of work)
- Customer feedback (that can be achieved through live demonstration, surveys, and so on)
- Usage analytics (through capturing data on what the user does and whether they are achieving their objectives with the help of the solution)
- Effective development practices (such as frequent integration and testing to ensure that technical problems are identified early and are quickly addressed).
So, now that we have discussed these items that are important to establishing a solid responsive process and achieving predictability, ask yourself whether you have a good iterative approach. And in addition to that, do you use experimentation, do you split work so that each chunk represents customer value, do you gather proper customer feedback and usage analytics to inform your decisions, and finally, do you have good development practices that will help you reveal implementation challenges early enough? Try answering these questions and build your action items respectively.