Deploying a new software engineering process or tool to a large user community is often both a significant technological challenge and an organizational change that requires an appropriate level of planning, resourcing, coordination, collaboration, and governance to be successful. This paper describes a few of the key factors that influence the rate of adoption and measures that can be taken to accelerate the rate of change.
Figure One below shows a typical change curve for the adoption of new technology as the organization moves from its current productivity level towards the desired target (shown as a blue line). Initially, there is a dip in productivity as resources divert effort to implementing and adapting to the new tools and working practices (point A). Then gradually, as the new practices are more widely adopted and people become more proficient in the new tools, productivity begins to trend towards the desired target levels (point B).
Figure One: Adoption change curve
The level and duration of the initial productivity dip, the rate of adoption, and the extent to which productivity increases towards the desired level are influenced by a number of factors. These are shown in Figure Two below. These factors can have a significant positive impact on the rate of adoption, helping you to realize the expected benefits from the new solution earlier. Equally they can have a negative impact. Therefore, in planning any technology adoption they require careful consideration.
Figure Two: Factors influencing the rate of adoption
These factors relate directly to the technical solution being adopted.
The complexity of the solution to be adopted has a significant influence on the rate at which it can be embedded into the organization. Complexity has a number of dimensions. For example:
Solution variability means how uniformly the solution can be applied throughout the target organization. There will generally be a number of variants of the solution, tailored to meet the particular needs of a particular stakeholder group. However, the higher the variability, the longer it will take to a) understand the variability, b) adapt the solution to take account of the variability, and c) deploy and enable people on each variant.
A key factor influencing the rate of adoption is correctly resourcing the change initiative. Understanding the requirements and developing an optimal solution needs time and effort from domain, process, and tool subject matter experts (SMEs). Supporting the rollout of the solution is critical. You will likely need a number of trainers and mentors who really understand the solution well, and are available to work directly with practitioners to mentor them and assist them to adopt the solution. It takes time and effort for these people to develop the new skills and capabilities required to be effective.
It does not matter how much more efficient and productive the new solution is – on paper, if the practitioners are not trained in the correct use of the solution, it will be a long time before those benefits are realized. Worse still, some practitioners might choose not use it at all and keep doing things the old way. It is important to build effective training, develop knowledgeable trainers, and ensure that the practitioners receive the training and support that they need to be successful.
It is very difficult to define a solution that will be 100% effective from day one, or which will not require improvement while the solution is being deployed. Therefore, it is vital that the deployment team can continuously gather feedback on the adopted solution and make changes as the solution is deployed further. Failure to do this will build up "‘technical debt" that must be addressed later (perhaps when no more budget is available), and will also impact the adoption as practitioners might feel that the solution is not "fit-for-purpose."
The target community is the end-users of the solution that must learn to use the new tools and practices effectively in order for any benefits to be achieved.
Obviously, the more practitioners the solution needs to be deployed to, the longer the adoption will take. Teams of practitioners can absorb only a certain amount of change.
Geographically dispersed teams will likely have a negative impact on the rate of adoption, because the adoption team has additional logistical and resource constraints. For example, your team might have to work across multiple locations and time zones or need to be supplemented with local resources.
If you have teams from multiple organizations that all need to adopt the solution, this can place a number of constraints on the adoption rate.
Clearly, teams that are eager to adopt the new solution will do so more willingly than teams that are more reserved or reticent. Effective communication of the rationale and benefits is vital, as is listening to--and responding to--concerns and insecurities presented by the practitioners. There are a number of steps that you can take ensure a positive outcome. For example:
The following factors relate to the effectiveness of the change management approach used to embed the new solution.
Leadership is "organizing a group of people to achieve a common goal" (Locke et al, 1991). Change happens more smoothly with effective leadership. When the vision, goals, and benefits are effectively communicated and understood and the adoption is correctly planned and managed, people naturally align the work that they do toward achieving those goals. Achieving executive-level support for the change initiative within the target organization is therefore critical.
Resistance to change often arises from uncertainly about the future. People will ask: how will the change affect me? Will I still have a job? How will my job change? When will the change happen? Why are we doing this? It is important that these questions are answered in order to achieve buy-in from the practitioners.
Obviously, there is an imperative to adopt the new solution as quickly as possible in order to realize the benefits. However, there are often practical reasons that will dictate when (or even whether) it makes sense for the team to move to the new solution:
If the impact of the change and the risk of failure are small, then a team will probably be able to absorb the change without impacting their plans significantly. However, if the risk or impact is large, then the change must be assessed, planned in, budgeted for, and appropriately resourced. This will take more time to achieve.
When undertaking any large-scale adoption of new technology, be it new processes or working practices, new tools, or both, there are several best practices that are essential to the success of the adoption:
An organization can effectively support only a given size of change effort. Also, practitioners can cope with only a certain level of change; beyond this level, the productivity dip that was discussed earlier becomes unacceptably large. To respond to this, introduce the new capability incrementally in a number of phases. When doing this, it is important to consider a number of factors:
The most important factor in ensuring the success of the adoption is to establish a high-performing core team. The core team needs these attributes:
For more information about the organization and establishment of a center of excellence, see Establishing a systems and software engineering ecosystem center of excellence.
Frequent, good quality communication to all the practitioners and stakeholders is essential. It is important to communicate the following points:
Providing a knowledge base helps practitioners to help themselves, and to learn from the experiences of others, speeding up the adoption rate, and reducing the support burden on the adoption teams.
Introducing a major technological change will always encounter problems and issues. It is important to ensure that a mechanism exists to address these issues quickly and that practitioners know this information:
The new solution must continually evolve as it matures and as the needs of the business change. A robust and effective change management process is needed to facilitate this change. Consider the following questions:
This paper examined a few of the factors that can influence initial deployment and ongoing adoption of new software tooling and working practices, and suggested six best practices to ensure the success of adoption.
Status icon key: