Management support is a key element for successful transformational changes in the organization. Most agile practices will challenge established process and controls that tend to have layers and layers of reviews and approvals. You have to understand that these layers of checks and balances are formed and added from the long period of operational experience of its managers. Changing the familiar and ‘proven’ set of procedures that is ingrained in the corporate culture will not be successful without the senior leaders heralding the change.
Barriers to Agile Buy-in
Senior Managers may not easily buy-in on agile transformation. Below are some perceived barriers to Agile acceptance:
Agile seen as cutting corners
Unfortunately, the term “Agile” has been abused by development teams who are ignorant to Agile mindset and values. These development teams “promote” agile as some style of development with no established processes and quality guidelines. They use it as an excuse to cut corners to deliver software as quickly as possible. If your senior managers have negative stigma on Agile, avoid using the term “Agile”. Use Scrum, Lean Development or Incremental/Iterative development when introducing/selling agile to them.
Make it a point that Agile is not the only way. Senior Managers have been around for so long that they have seen and have implemented several approaches to software development. Emphasize that the mindset and framework you are proposing focuses on the basic aspects of development; increasing and delivering value at the shortest possible time and flexibility to harness change for the advantage of the stakeholders.
Agile seen as Relinquishing Management authority and identity
Agile seen as short-term, not for long-term planning
Agile seen as disruptive to the current way of doing business
Assuming the company is meeting their financial targets; there is a tendency for Senior Managers to repeatedly use the same methods. The current way of doing things are deeply embedded in the company’s culture that the very thought of Agile transformation (and the work associated with organizational change) makes the task too scary to begin. Without proven tangible benefits, Senior Managers may not blindly accept to change the status quo. Agile transformation does not have to be drastic. Teams can start with regular retrospective and gradually implement changes to improve agility.
Drivers to Agile Acceptance
Understanding and sharing in their concerns and demonstrating how Agile can help in these areas of concerns will facilitate acceptance to Agile.
Below are some ways to demonstrate that Agile works to improve the bottom line:
1. Show published case studies and statistics on Agile adoption
- According to PMI.org in their recent Pulse of the Profession Survey, 71% of successful organizations are adapting agile.
- VersionOne, annually releases State of Agile Survey. In 2016 report, 94% are practicing Agile in at least 50% of their teams in their company.
- An article from Speed&Function compares state of Software Projects after 25 years with Agile increasing the success rate.
- The Standish Group publishes the CHAOS report, indicates that adopting Agile practices increases project success. (The top being Executive Sponsorship)
2. Show how Agile can reduce Cost
- With Agile, focus is on delivering working and valuable software at the shortest possible time. The focus is on the Software Product, non-value adding tasks and work products can be subject for removal. This may include big upfront requirements definition and analysis that tend to change causing rework. Comparing with Waterfall, Agile makes it easier to accommodate changes without the typical snowball effect.
3. Show how Agile can increase Revenue
- Agile methodologies ensure that development of functionality is prioritized based on value. Software can be released with minimum set of functionality (MVP – Minimum Viable Product) without waiting for the full software package. The target customer can already benefit from the early release of working software thus reducing the time to get the return on their investment.
4. Show how Agile accelerate Product Delivery
- Aside from value prioritization and reduction of non-value-adding activities, Agile incorporates the culture of continuous improvement through regular retrospective. The team analyzes its previous performance and introduce ways on how to increase its velocity (increase value produced in each Sprint). Team velocity improves predictability and estimation confidence on when certain functionality can be delivered. A Sprint/Iteration is a time-boxed event limited to 1 month. The development team should work on delivering value in each iteration.
5. Show how Agile can reduce Risk
- By releasing software earlier, the risk of building the wrong product is eliminated. The customers’ feedback can be acquired timely every iteration and changes can be incorporated as early as the next iteration. Depending on volatility of requirements and uncertainty of technology surrounding the product, the length of iteration can be reduced. Risks are exposed and validated earlier, thus risk response plans can be implemented earlier to ensure project success.
6. Show how Agile can increase Visibility
- Senior Managers are used to viewing Gantt charts and S-Curve of an EVM chart. Schedule slippage and cost overruns can be detected. However, these planning and monitoring techniques assume a baselined plan is always available and up-to-date. It lacks flexibility to accommodate changes and its impact. For Agile, information radiators and kanban boards are updated at least daily and are visible to the whole team. New tasks are added and progress of each task from not done to DONE can be seen. Impediments are highlighted for immediate action. The Sprint burndown chart show how much effort is required to complete a functionality/Sprint. The release burndown/product burndown shows where the product is and when it will likely be completed. The Product backlog shows how much functionality is left and has been implemented in the increment. Aside from Cost and Schedule aspects, value produced is consistently measured and shown.
7. Show how Agile can increase Quality
- Agile practices, such as test-driven-development, continuous integration, behavior-driven Development, and the increased opportunities for inspection continuously instill engineering discipline to the team to produce professional quality products. The team shall continuously upgrade their skills and engineering practices to improve quality of software. Technical Debts (defects) are always consciously avoided. Each functionality should pass acceptance criteria and defined Definition of Done for it to be considered as part of the product increment.
8. Show how Agile can improve Team Morale
- An Agile team is both cross-functional and self-organizing. Cross-functional means all the skills needed to produce working software are available within the team. The members of this cross-functional teams cross-train each other, increasing the skills of each other and increasing the capability of the organization over time. Self-organizing means that the team can decide the best approach on how to meet its own objective. Empowered teams and members lead to more engaged employees. The more control the members have in the outcome of their tasks, the less stress they would feel.
Showing these benefits by letting your senior managers read articles/blogs may not work. It is best shown by actual performance of an Agile Team within your own organization. Setup and Agile team in your organization and let team exhibit the benefits enumerated in this article. It may take 3 to 4 iterations before your Agile team can produce valuable (demonstrable) results. Make sure you have a performance baseline to compare it with.