Organizational Obstacles to Adopting Agile
From our practice, we have seen many organizations that encounter a number of common obstacles when trying to adopt Agile for project management.
The company culture or structure doesn’t adequately support the Agile philosophy:
This is a common scenario. For example, a new project manager with Agile vision joins a team, and he outlines the benefits of Agile project management and development. Although the project team adopts the idea and might be ready for the change, the rest of the company may not be. Executives and leaders must also accept the idea and support the Agile philosophy for it to be truly effective.
The company lacks an understanding of the impact on its business goals and overall vision:
Managing projects by following the Agile mindset won’t be enough to reap the desired benefits from the Agile implementation. If a strategic alignment is not present on all levels within your organization, projects can still be managed in ways that don’t provide your entire business with the desired results to help you achieve sustainable growth.
Lack of/or limited Agile skills:
Believe it or not, no matter of its popularity, it can be hard to find and attract top Agile talent. And this obstacle limits the benefits for organizations wanting to manage projects using Agile.
There are some key skills that top Agile talent should possess:
- An ability to focus on essential work while eliminating the unnecessary work
- Ability to remain calm under stress and make a sound judgment
- Strong motivation and leadership skills to support and if needed, to guide the team throughout the project
- Exceptional skills to prioritize and organize work;
- Ability to think fast and make decisions quickly as circumstances may change rapidly
- A high level of adaptability, especially in a rapidly changing environment or conditions
- Ability to accept changes and promptly adapt to the new environment
7 Aspects of Agile Project Management to Analyze, Reflect, and Improve
Taking an Economic View
The first aspect, which is the building block of all others, lies within economics. To be truly Agile, you need to have a very clear economic view of your work processes so you can take economically-based decisions that provide value to your clients.
Let’s take an example with the conventional way of managing projects. Traditionally, late changes in the development life cycle of a product or service are approached very cautiously because of their accumulation of high costs. However, it’s not taken into account that those changes can have a big economic impact on a given product or service and thus bring more value to the end customer.
In contrast, Agile projects are defined by producing small, but actionable “deliverables” that are being released early and often in the process. Combined with the idea of constant customer collaboration during the entire development life cycle, the implementation of late changes becomes more cost-efficient.
That’s why, as Reinersten says in his book “Principles of Product Development Flow” we need to quantify economics correctly. The proposed currency in the book for doing that is life-cycle profits.
If you can quantify one thing that directly affects your profits, then this should be the cost of delay. Doing this will shine a light on how you need to prioritize the different deliverables of a project so you can put first those that yield the highest economic benefit. As a result of that and the Agile principle of continuous delivery, you will be able to provide your clients with added value early in the process, which can respectively increase your profits.
Optimizing Flow Efficiency
Flow efficiency is the ratio between value-adding time and the lead time required to complete a process. By optimizing your process for flow efficiency, you can organize your overall capacity to deliver maximum value to your customers in the shortest amount of time.
In order to achieve maximum flow efficiency, you need to have available capacity all the time. So, when one part of the project is completed, and it moves through the workflow to the next stage, someone from the team is ready to start working on it. To do that, you need to make sure that there is no accumulation of lengthy queues (a holding place for work items) inside your process.
Managing Queue Lengths
In traditional project management, companies emphasize on managing timelines instead of process queues. Project managers are trained to create detailed plans, however, this contributes to longer cycle time.
Instead, when managing queue size, your focus is on ensuring the smooth flow of work at all work stages which speeds up the delivery process. As a result, you will be able to reduce the cycle time of your work items and respectively take back control of the timelines.
The occurrence of queues happens right before a step with limited capacity or high utilization. This is only natural because if your team’s capacity utilization is 100%, a given work item that is ready to move to another stage will sit in a queue until somebody becomes available to “release” it from there.
One very important aspect of the queue lengths we need to understand is their economic cost. First, you need to determine what’s the cost of delay associated with queue lengths. Once you quantify it, you become aware of the cost of queues. When you recognize that there is a cost of queues, you would be much more inclined to measure and manage queue lengths.
To make sure that you don’t generate lengthy queues, you need to visualize them. This can happen on a Kanban board, for example, which brings transparency to your entire work process as well as the flow of the different tasks that are a part of it. In addition, you need to reduce the batch size of your work items so they can move faster through your system as well as implement Work In Progress (WIP) Limits.
Reducing Batch Size of Work Items
The importance of reducing batch sizes is a significant aspect of the successful execution of any projects. Small batches of work can go smoother through your project’s workflow, with less variability, which results in the generation of faster feedback loops.
To find out if (and by how much) you can minimize your batches, you need to have an understanding of the economically optimal size of your work items. This depends on the holding cost (for example, the cost of delayed value delivery) and the transaction cost (what you pay for creating and implementing the batch). Then, to improve the economics, you need to increase throughput by reducing the transactional cost of any batch. This may involve investment in additional infrastructure, automation, integration, etc.
Reducing the batch size of your work items also allows you to decrease your project’s overall risk. Once you find the optimal size of your deliverables, you will be able to deal with emerging issues and changes in a timely fashion as you will be making only small modifications where necessary as opposed to huge reworks. This has the potential to save you project resources while improving your chances of satisfying the end customer.
Implementing Work In Progress (WIP) Constraints
As we already stressed out above, to successfully implement Agile in project management, you need to manage queues efficiently. One of the best ways to do so is by using WIP constraints. WIP stands for “work in progress” and shows the number of work items that a team is currently working on.
Having too much WIP causes frequent context switching, confuses priorities, and increases overhead. It also overloads people, reduces productivity and throughput, and scatters your team’s focus. There is simply no advantages to having more work in a system than the system can actually handle.
To deal with this problem, you need to start applying and then keep readjusting WIP limits for your various work stages. This means that when a specific phase of the workflow reaches its limit, no new item should enter it. Limiting WIP can help you align your team’s capacity with the actual number of work items that need to be completed at a given moment. This contributes to improvement in flow, reduction in multitasking and therefore an increase in your team’s productivity levels.
Integrating Fast Feedback Loops
Creating fast feedback loops is a central principle, and the entire Agile philosophy tends to spin around arranging work to get quick feedback. Short feedback loops are mandatory for the success of Agile project management as they enable teams to learn fast and make the right project adjustments accordingly. Implementing them increases the chances of teams to deliver products or services with greater value and higher quality to their clients.
Using Decentralized Decision-Making
Another aspect of the Agile philosophy is using decentralized control to deliver value in the shortest and sustainable lead time. In the traditional, centralized control, very often a decision must go through a number of “high authority” approval stages, which brings delay within the project.
Whereas, decentralizing decision-making (control) reduces delays, improves project development flow and throughput, promotes faster feedback loops, and brings agility in solutions. Decentralized decisions should be made by the teams who have context and in-depth knowledge of the complexity of the projects.
Here it is essential to mention how decisions are made. It is leadership’s responsibility to establish the rules for decision-making in order for the team to be able to understand the decentralized decision-making process with a much clearer vision. While still having an understanding on which decisions the leadership needs to make, they must be able to empower their teams to make decisions too.
7 Tips for a Smooth Agile Project Management Implementation
1) Identify your business goals
Before jumping to a new project management methodology, it is crucial to identify and frame your business goals and describe how exactly the switch to a new PM methodology will better help you to meet your goals. There must be a clear vision of how the new methodology is expected to aid project teams to achieve the company’s goals.
2) Analyze your company culture if it is “fit for purpose”
One of the key elements for the Agile transformation is to have the right soil, the right cultural organization which is not afraid of changes. This includes having leadership and top talent, which meet the 7 essential requirements for the possession of important Agile skills. They must be willing to adapt and support the Agile principles. This is where transparency and frequent communication can smooth this process.
3) Analyze the potential impact on your customers
It is crucial to identify how the implementation of Agile will benefit your clients, how this change will help your team to meet your client’s requirements and needs better. Here are three questions to help you determine the possible impact on your customers:
- How will the implementation of Agile potentially improve customer experience?
- Will this change going to produce better deliverables and higher quality?
- Will Agile help your organization to build better collaboration between your customers and team?
4) Analyze all available resources your company possesses
Try to identify all the project resources available in your company. Does your company have the talent and skill-sets to make Agile work? Do you have the right infrastructure to support new technology and vendors which can support the smooth switch to Agile? To yield the benefits of Agile, it is imperative to have the right people and technology in place.
5) Engage the help of your company leaders from the start
The switch to a new project management approach is an important step which will impact processes, people, and how technology will be utilized. Engage your company leaders and experts right from the start to help you determine the best possible way to deal with the upcoming changes without significant cracks in the process of implementation.
6) Launch a few small projects before the big roll-out
First, consider launching a few small projects. When making major changes, it is best to work in small batches. This way, you will see the degree to which your teams are prepared to execute projects using the newly implemented Agile mindset. The biggest advantage is that you can make proper adjustments on a smaller scale, rather than rolling out changes on all levels and teams.
7) The assessment went well? Good, it’s time to make the switch to Agile project management
Once you have assessed that the switch to Agile project management will be beneficial for your organization, it’s time to start the implementation on all levels, team by team.
To maintain buy-in during the implementation phase, transparency and frequent communication are vital in making sure the transition goes well.