Agile Adoption - Easier said than done
- IT claims to have achieved higher productivity and reduced cycle time with agile. However, Business still talks about a huge time lag; from the time it started funding to the time the end-user is able to use the feature. It questions if there are holdups in one or more processes? These stick-ups could be in any of the processes like funding or initial scoping or development or deployment or some other process.
- IT asserts faster delivery of higher priority requirements. Business contends that those are not really deployable. In large organizations, you will rarely find applications which are absolutely independent. In such an integrated scenario, one application delivering early is not benefitting the end user since dependent applications are not ready for the change. This can happen as either the dependent applications have not adopted agile or their goals and release plans are not aligned. It strongly suggests the need for aligning goals across projects, programs and portfolios to provide benefits which business needs.
Thus, even if projects have been using agile, it looks like there is still a lot of work to be done before moving from projects to portfolios so as to ensure large scale agile adoption can really fulfill business needs. What needs to be done differently to help scale up agile adoption? Let us discuss some key areas
- Excitement of success of small independent projects leads to replicating their execution model across more projects. But it is not enough for scaling up agile execution in a large organization. Programs and portfolios need different focus areas than projects like dependency management, release alignment, goal percolation, KPI distribution etc. Doing more and more agile projects is not a way of achieving enterprise IT agility.
- Just defining agile methodology for an organization is not sufficient. IT organization has many units and functions such as governance, infrastructure management, funding etc. which support IT projects. If these functions and their processes are not optimized for agile execution, it is difficult to realize the perceived benefits.
- Rapidly developing code in agile projects does not help realize business value as much as expected. It is important to have engineering ecosystems built in organizations which will help this 'rapidly developed code' to be 'deployed rapidly' to production systems for the benefit of end users.
- Most importantly, multiple stakeholders with different views on agile adoption is a hurdle for its large scale agile adoption. Organizations must foster agile in terms of culture and capability rather than just a methodology. This will aid in swift agile adoption.
To summarize, organizations need to undergo complete change management to achieve enterprise IT agility. They can start off with a focus on defining the uniform processes and process aids to be adopted across the organization. This will be help the cause of compliance and standardization. Further emphasis on culture and mindset changes, capability building, tools and technology, career streams, governance models etc. is required so as to enable rapid agile adoption. Organizations need to encourage support functions and their processes to become 'agile friendly' for example budgeting and contracts, vendor governance, shared services functions etc. They need to further focus on business stakeholders' agile enablement and building automation focused engineering ecosystems. Finally and most importantly organizations need a reference scalability framework which can help scaling up from projects to portfolios to be able to achieve a common goal. For a more details, please refer to our point of view on "A holistic approach to Enterprise IT Agility"