The Unique Enterprise Change Management Demands of Agile Software Development
Ironically, the more successful an Agile project is in rapidly developing new capabilities, the greater the ECM challenge may be. Although Agile’s customer-led iterative approach significantly reduces the magnitude of changes related to each software release, it greatly increases their frequency. Instead of being asked to adapt to a single release that institutes a significant number of changes created within “waterfall’s” typical multi-year release cycles, stakeholders must accustom themselves to an ongoing series of small, incremental releases every month or two.
Having an ECM program is especially important for enterprises transitioning to Agile from a phase-based development methodology. Corporate cultures that are accustomed to traditional development release cycles can be strained by a shift to more frequent releases and the ongoing interaction required by participation in the iterative process. There is a higher level of stakeholder involvement required throughout the development process. The impact of a new Agile implementation cuts across technology and functional groups, from top management down to the frontline worker. An ECM effort can help break down the organizational sensation of feeling burdened caused by the insistence of Agile teams for day-to-day customer involvement.
Introducing ECM to the Agile Team
Simply introducing basic ECM concepts to an Agile team can actualize the potential of existing Agile practices to foster positive change. For instance, customer-focused user stories and acceptance tests can be informed by ECM considerations. This new perspective can tangibly improve the way IT and business sides of an organization work together. The resulting synergies build a heightened level of trust and provide a means to measure and track success of not only the technical quality of software, but its acceptance by end-users .
If the customer already has an institutionalized change management practice, bringing ECM personnel into the Agile team’s release planning process is a good first step. They will be able to anticipate potential change management issues related to a release and work with the team to synchronize their efforts. For customers who are transitioning to Agile from a traditional waterfall methodology, ECM involvement is a good tool to foster participation by business stakeholders.
When an organization is ready to integrate ECM tasks into an Agile software development project, securing an ECM subject matter expert for the team is the first challenge usually faced. If the organization has existing ECM expertise, personnel can be shifted onto an Agile team. If there are no available resources, it may be necessary to hire an ECM subject matter expert or send an existing team member through an ECM training program.
Once staffed, a basic approach is to integrate ECM into the Agile development process by simply having ECM requirements progress through the same processes as technical requirements, including user stories, acceptance tests and the iterative development of deliverables. ECM team member and developers participate in the same customer planning meetings and stand-ups.