ROUTE06

Product

Agile Development in Large Enterprises: Key Considerations for Implementation

2022-12-8

Yoshitaka Miyata

Share

As the software environment evolves, so do the needs it addresses. If development proceeds strictly according to an initial plan, without adapting to changes, the final product may be outdated by the time it is released.In recent years, maintaining high development agility has become a critical competitive advantage. Agile methodologies, including Squad, LeSS, and SAFe, are increasingly emphasizing scalability to meet this demand. Given these dynamics, the primary approach to software development is shifting from the traditional waterfall model to agile methodologies. This article focuses on agile development and its implementation in major companies, and explains the key points.

What is Agile Development?

To understand agile development better, it's helpful to compare it with the traditional waterfall model. The three key variables in the development process are time, resources, and development requirements. In waterfall development, the development requirements are fixed, and in order to realize those requirements, the necessary assignments are made and a schedule is drawn to proceed with development. In other words, the approach focuses on the completion of development and strictly follows project management. On the other hand, in agile development, a certain amount of time and resources are secured for function development and iterations, and the development is carried out while considering what should be developed within that range. Therefore, we do not draw up a medium- to long-term development plan, but rather decide what to develop and evolve the software in each development unit (mainly from one week to one month), which is called a sprint, in order to realize the product vision.

Waterfall development vs. agile development
Comparing Waterfall and Agile Development
.

Looking at the above comparison alone, it is easy to see agile development as more advantageous because it is more flexible, but this is not always the case. However, this is not always the case. Waterfall development is suitable if it is not affected by changes in the environment, and if it can be planned in advance and developed with a large amount of time and resources. On the other hand, if you have not yet found the right answer, and you are evolving your product as you search for it, agile development, which sets certain resource and time limits to get closer to the right answer, is more compatible.

Adoption of agile development in a major company

In general, large companies often have IR and budgeting constraints, so they need to create a detailed business plan and operate their business according to that plan. In Japan, product development is rarely done in-house with engineers, and there is a strong tendency for companies to define requirements in-house and then outsource development. Because of this background, waterfall development, in which plans are made in advance and then implemented, seems to be adopted in many cases.

So, should major companies also adopt agile development? Certainly, waterfall development is suitable for core businesses that major companies have been refining for several decades because of its high predictability. On the other hand, how about new businesses? Although new businesses are developed in peripheral areas where synergies with core businesses are likely to be generated, the resolution of these businesses is inferior to that of core businesses. In addition, compared to core businesses that are already profitable, most start-up businesses require minimal time and resources. Therefore, agile development is a more appropriate choice because it is more flexible to uncertainties and requires exploration and software development within a certain amount of time and resources.

Points to consider when introducing Agile development

Waterfall development, which is a strong point of major companies, and agile development clearly differ in their main concepts and goals to be realized. Therefore, simply introducing the framework of agile development will not penetrate the essence of agile development. Here, we summarize and explain five key points for introducing agile development in major companies.

1. management commitment

Transitioning from waterfall development to agile development is an effort that will drastically change the way you think about development. Therefore, the commitment of the management team is essential from the pilot stage. The first step toward success is to clarify what you want to achieve through agile development, and to ensure that not only the members of the team, but also the management team in charge of the project, understands and is committed to the project.

2. Minimize members and make them dedicated

As an organization grows, specialization increases and organizational silos develop. In such an organization, the number of people involved in any given project increases, forcing a huge amount of project management. On the other hand, in agile development, the principle is to minimize the number of members required for each development project and assign them to dedicated tasks. In other words, by assembling a small, dedicated team, information gaps can be eliminated and development efficiency can be improved. While this may be a contrary philosophy to the existing organizational design for large companies, it is a path that cannot be avoided by minimizing the number of members and making them dedicated to their work, by introducing it on a pilot basis.

3. Simplify decision-making flow

As an organization grows, not only does it become more siloed, but the hierarchy also becomes more heavy-handed, and the decision-making flow becomes more complex. If this flow remains complex, even if agile development is introduced, it will not be able to respond to changes in the environment, which is the original purpose of agile development. It is important to ensure that decision making is completed within the basic team and to guarantee the autonomy of the team. Even when dealing with issues that cross teams, the escalation flow from the product owner should be established in as simplified a form as possible.

4. Agile development is something you build up

Agile development is a framework for turning development around, but while adhering to the principles, one of the goals is for the team to gradually customize the planning, retroprospecting, and other processes to suit their own needs. Therefore, it is not the end of the story to introduce agile development according to the textbook. Success can only be achieved by evolving it into a form of agile development that suits each company or team, and by making the concept permeate the entire organization.

5. Agile development is not a panacea

As we saw in the comparison with waterfall development, waterfall development may be more suitable than agile development for some projects. At times, agile development is used as an excuse to shelve the unforeseeable and proceed with development without planning. Therefore, not all development should be agile. Rather, depending on the project, waterfall development (planning, securing a budget, making full use of outsourcing, and proceeding with development on time), which has been a strength of major companies, may live on.

Summary

The environment for promoting software development and DX is rapidly changing, so it is essential to utilize agile development. Large companies should consider introducing agile development on a pilot basis, starting with projects that have a high affinity with agile development, such as new businesses, rather than suddenly shifting to agile development for all projects. Since the transition from waterfall development to agile development involves a major change in thinking, it is important for top leadership to take the lead in firmly identifying the essence of agile and installing not only the framework but also its thinking in the organization. However, agile development is not a panacea, and waterfall development is not inferior to agile development.

References

EnterpriseAgile DevelopmentProduct ManagementNew BusinessWaterfall DevelopmentScrumProject ManagementDevOpsLean Startup

About the Author

Yoshitaka Miyata. After graduating from Kyoto University with a degree in law, he gained experience in a wide range of management consulting roles, including business strategy, marketing strategy, and new business development at Booz & Company (now PwC Strategy&) and Accenture Strategy. At DeNA and SmartNews, he was involved in various B2C content businesses, both through data analysis and as a product manager. Later, at freee, he launched new SaaS products and served as Executive Officer and VP of Product. Currently, he is the founder and CEO of Zen and Company, providing product advisory services from seed stage to enterprise-level. He also serves as a PM Advisor for ALL STAR SAAS FUND and as a Senior Advisor at Sony Corporation, primarily supporting diverse products in new business ventures. Additionally, he has been involved in the founding of the Japan CPO Association and now serves as its Executive Managing Director. He is a U.S. Certified Public Accountant and the author of "ALL for SaaS" (Shoei Publishing).


New Articles

Transformation

Priority Plan 2024 for the Realization of a Digital Society: The Future of Business Competitiveness and Digital Transformation

This article explains how the Priority Plan for the Realization of a Digital Society will impact Japan's business environment and how companies should leverage digital transformation.

Details