This blog post was submitted by Dr. Blaize Horner Reich, ICD.D | RBC Professor of Technology and Innovation | Beedie School of Business, Simon Fraser University | Academic Fellow | International Council of Management Consulting Institutes. Blaize will be a speaker at the CIO Peer Forum in April, 2018 on the topic Combining Agile and Waterfall Approaches to Govern Risky Projects and Lead the Organization
While there is a lot of buzz about ‘agile’ as an approach to managing projects, the tried and true ‘waterfall’ method has a solid track record and is a familiar process for many. Our research finds that project managers are mixing and matching agile and waterfall practices to get the best results for their projects. More broadly, agile is more than a software development process and there are many practices within waterfall that are used at the board table. Understanding the strengths of both methods can help the CIO lead the organization to best practices in leading projects, governing change, and implementing innovation within the enterprise.
With a history in manufacturing and construction, waterfall project methodologies expect one to plan the project carefully and completely, get approval and sign off, and then execute the plan. Any adjustments are done from the perspective of getting back to The Plan.
The agile movement emerged from the software industry where projects were notoriously over budget and late. This approach expects change and welcomes it, with the mindset that change shows more clearly where value lies. The focus in agile is in delivering value incrementally, getting feedback from the sponsor, and correcting course before starting off again.
There are 3 ways to adopt an agile approach:
- Adopt Agile Principles Asking “How can we use principles such as time-boxing, autonomous teams, incremental value creation, and regular feedback to accelerate innovation.”
- Adopt an Agile Method. Choose to fully implement a method such as Scrum or Kanban. These incorporate an integrated, self-reinforcing set of practices. Ensure teams are trained and supported by management.
- Adopt one or more Agile Practices. Choose agile practices such as daily stand-ups or Kanban boards which give a visual representation of progress and incorporate them where they are useful.
One of the challenges software developers face is uncertainty about exactly which features are going to be most useful and/or desired by the client. The agile response is to regularly check back with the product owner to show what has been achieved and use feedback to validate direction. This continuous updating about where values lies ensures that those implementing the project are learning and delivering simultaneously.
In today’s world, we are quite accustomed to uploading upgraded software every week or two. When we turn on our phones we see 5 or 6 applications updated that day: that’s the result of an agile process. However, in an organization, it’s almost impossible to do that. How can you update your human resources system or your finance system every week or every two weeks? This could impact thousands of users who base their corporate processes on that software.
For a long time, the expectation was that agile would not migrate to corporate or in-house projects; but that’s what’s happening. We’re finding that agile practices and some agile methods (like SCRUM) are being widely adopted, sometimes in industries where one would least expect it. Governance of these projects borrows from both agile and waterfall methods since they need both stability and speed. For instance, construction was thought to be completely impossible for agile because it is so predictable. The sequence of events needed to build is clearly established: excavate before you build a foundation, then build the walls etc. However, we have seen agile methods used in the engineering part of complex construction projects to produce more value for much less money.
Implementing ideas such as regular incremental value delivery and having the project sponsor as part of the team can produce breakthroughs in project performance. As the project unfolds, the owner might stop the project, having achieved the desired features. It might be that ninety percent of the value has been realized when only sixty percent of the budget has been used.
CIOs are under a lot of pressure to deliver value and the concept of CIOs providing leadership to the company with respect to agile is an emerging idea. Adopting at least an agile mindset allows an organization to systematically examine how to produce the most value in the least amount of time. This can be difficult for technology leaders who have been trained to do everything perfectly lest something break and put the organization at risk. Agile methods do not promise 100% of the solution right out of the gate. Agile looks for the minimum viable product with “minimum” and ‘viable’ defined by the sponsor. For example, an agile approach to a need for increased cyber security would do an thorough initial scan and then address the biggest threat to the organization as the first delivered project. The larger framework along with its set of products, documentation and process changes would be delivered incrementally, allowing the organization time to incorporate new approaches and to determine what the next most important issue is.
CIOs have always been in the enviable, but risky, position of bringing innovation into their organizations. CIOs brought in strategic planning, they brought in process improvement, they championed e-commerce. Now I believe they can bring in an agile mindset and agile approaches that will again help their organizations adapt to disruptive change.