Over the past few years, Agile development has evolved from a niche concept (niche is a niche that represents an advantage to the enterprise, a market that is small and underserved. The product drives this market on a profitable basis. Into standard practice adopted by many of the world’s largest companies. Accelerating software development through small, self-managed teams is now an accepted strategy and is increasingly seen as key to enterprise innovation and competitiveness. Statistics from the CMMI Institute show that in 2018, more than 80 percent of enterprises participating in the CMMI evaluation adopted Agile. Today, agile techniques are not just used in software development, as companies seek to inject agility more into their entire organization and culture. Despite the growing popularity of Agile, organizations continue to encounter problems when trying to promote the use of agile software development across the enterprise. While agile can be very effective for small, independent, self-managed projects, it is difficult to coordinate the multiple projects and teams needed to build large, complex products and systems. As a result, the company encountered many of the same thorny problems that plagued earlier software development approaches, such as integration and interface issues, failure to fully meet all requirements, late delivery, and quality defects.
Thus, as agile grows in popularity, so does the need for best practices to overcome these problems. CMMI V2.0 provides these best practices to help organizations establish mature processes to control the complexities and risks that scale agile can face.
How does CMMI V2.0 help achieve scale Agility
CMMI is a set of best practices for improving business performance. For years, many companies have used BOTH CMMI and Agile development. A 2017 survey found that 80% of companies using CMMI also use Agile. But the latest version of CMMI V2.0 enhances the synergy between the two and provides direct guidance for building scale and resilience in agile development.
CMMI V2.0 specifically addresses the challenges that enterprises face when attempting scale agility, such as accurately estimating development time metrics and resources, integrating system components, and maintaining quality. CMMI V2.0 also supports a variety of other processes that are critical to successful implementation, such as managing and delivering services and selecting and managing vendor processes. In addition, CMMI V2.0 has expanded to cover more areas, including security. CMMI V2.0 focuses not only on improving performance, but also on maintaining habits and persistence to ensure that the enterprise maintains that performance over time. CMMI V2.0 provides these key advantages while minimizing the investment, because CMMI V2.0 allows the selection of practice domains that meet the unique needs of the business.
The full use of CMMI is key to successful large-scale agile development, in contrast to other approaches that attempt to support Agile on a large scale. Often, these approaches solve some challenges and completely fail to solve others. One example is SAFe (scale Agile Framework), which is missing key elements in key areas such as software quality, design and integration, managing services and suppliers, planning and managing efforts, managing business resilience, and maintaining performance.
Solving integration problems
Take a look at how CMMI can help organizations successfully apply scale Agile development. Two areas where organizations often run into trouble are project estimation and product integration. CMMI provides reliable estimation methods that support an agile approach to building large complex systems with many small parts. It can also help ensure that each system component designed can be integrated with other components.
In most organizations, multiple teams develop components of the system in sprints. Large systems may involve many separate sprints, each producing components that must be integrated. Agile projects often fail to adequately address this problem during the design and requirements phases, with the result that many software development organizations encounter significant problems related to integration between interfaces and components. If you have two development teams doing agile sprints, producing different components, how do you know if those components will be integrated after the sprint is complete? If you haven’t pre-defined how the components will be assembled, each component will be built independently in a vacuum.
CMMI provides a powerful framework to help companies define interface and integration requirements during the initial requirements and design phases, and then track and test them through sprints throughout the development process. Without CMMI, the ability to ensure trouble-free integration is entirely dependent on the experience of the team. An expert developer may have the vision and expertise to ensure that components can be integrated. But inexperienced people may lack critical knowledge, even if they can write good code quickly. CMMI best practices radically improve team expertise, enabling teams to uncover potential problems that might otherwise have been missed.
By supporting important but routine project tasks such as estimation and integration, CMMI solves the difficult and interesting challenges of developing new functionality by enabling developers to focus on what they really need to be doing. Moreover, because CMMI provides a common framework for all development projects, it also makes it easier to move people between projects and improves organizational agility. As one project ends, CMMI makes it easier for these developers to move on to another project and get to work.
Use CMMI to avoid Agile clutter
Without a mature process to coordinate multiple teams and individuals sprinting, attempts to scale agile development can easily lead to chaos. CMMI provides a comprehensive and unique business performance framework that can be used throughout the organization, so companies can better coordinate projects, integrate complex systems, and deliver higher-quality software faster.
References: How to Truly Scale Agile Development in the Enterprise — with CMMI, Submitted by: CMMI Institute, October 15, 2019 cmmiinstitute.com/resource-fi…