Table of Contents
Agile in Project Management
Developing a new product or service and bringing it successfully to the market is not an easy job. Traditionally, you need to prepare a concept for it, do the planning, go through execution and monitoring, and then reach the closure phase.
At first, you have everything mapped out and expect your project to run smoothly. However, in today's fast-paced business world, things don't happen that easily, do they? Especially in a knowledge work environment, emerging changes can occur at every stage of the process.
Unless your team or even the entire organization is flexible and has a way to respond to them, you risk continuously delaying the delivery of your projects and eventually becoming uncompetitive on the market.
To prevent that, here comes the concept of Agile project management, an iterative approach to managing projects. It focuses on:
- working on small batches;
- visualizing processes to create transparency;
- collaborative working with the customer, and
- getting feedback as fast as possible.
This allows you to promptly adapt to changing requirements and produce higher-quality products or services to better satisfy your customer's needs.
Here, we should also mention that a common misconception about Agile is that it is a methodology. Instead, Agile is a way of thinking for collaborative problem-solving and an approach that people apply to modern-day project management.
A Brief History of Agile
Initially rooted in the software development industry, let's quickly explore how the idea of Agile project management emerged in the first place.
It all started with the so-called "application development crisis" in the early 1990s. Back then, there was a significant lag time of about three years between a business need for an application and the actual software delivery. Often, by the time of the final product release, the technology was already different, or customer requirements had drastically changed. This resulted in many failed projects and sunk costs.
Those extremely long project lead times led to the frustration of thought leaders in the software development industry. They started organizing informal meetings between themselves, determined to find a way to develop software solutions more easily and effectively.
This is how it came about the now-famous gathering of 17 software development leaders at the Snowbird ski resort in the Wasatch mountains of Utah between 11-13 February 2001. The group met to talk about skiing, have some drinks, eat and relax. However, what eventually emerged was the "Agile Manifesto" that changed how we manage projects today.
What is Agile Project Management?
In the core of Agile project management lies the word "agility", which means "mobility, nimbleness", as well as from the Latin "agere": "to do, to act". This signifies the ability to move something forward in a quick way that allows easy changes of direction.
So, in terms of project management, "agility" has five essential attributes that form the building blocks of the Agile process:
- Customer focus
- Sense of Ownership (Effective Leadership)
- Continuous Improvement
Combined, they are what make a project Agile. To discuss them in more detail, let’s break down each one of them below:
One of Agile project management's central themes is the shared understanding of the process (including the definition of done) among all concerned parties. This calls for increased transparency in the way teams work and communicate.
In an Agile environment, people openly share their work progress by integrating information radiators such as Kanban boards. This allows everybody to understand what their peers are doing and how they are doing it, which, in turn, enables conversations on how to do it better.
Furthermore, team members are encouraged to freely share their ideas and challenges without feeling concerned that this might compromise their status in the project. As a result, the Agile approach to project management aims to create an environment of unity where teams own their mistakes and collectively work toward their resolution.
10 Years Kanban Experience In 1 Free Book:
Project Manager's Guide to Kanban
A famous quote by the serial entrepreneur Dave Mcclure states that "Customers don't care about your solution. They care about their problems". In other words, even if you have the best solution in the world, in case your customers don't see how in reality it will help them solve their problem, they are not going to want to use it.
That's why the Agile approach to project management places a heavy focus on ensuring customer requirements are well understood through constant collaboration. The goal is to provide customers with not just what they asked for but what they need. This is a common challenge in a knowledge work environment as when work is practically invisible; its specifications could be easily misunderstood.
So, frequent feedback loops in the Agile project delivery lifecycle serve as checkpoints where customers can see how "what they thought they wanted" actually looks in practice. This contributes to the development of new knowledge and the exploration of possible innovative solutions.
Also, through frequent customer collaboration, Agile aims to bring increased efficiency to projects. One way to achieve this is by reducing extensive project rework that creates massive wastage of both time and resources. As a result, Agile projects enjoy lower production levels and delay costs, making the final product or service cheaper for the end customer.
The other main idea in Agile project management is to enable teams to better respond to changes due to the checkpoints mentioned above. This also calls for more frequent value delivery to the end customer so teams can gather fast feedback directly from the market.
That's why, instead of producing one big batch of work, Agile focuses on an iterative approach where teams break down their projects and continuously deliver small chunks of them while retaining flexibility for the remaining work.
The goal is to ensure that what is being worked on is synchronized with the end-user alongside the Agile project lifecycle. As a result, you will capture any changing customer requirements early in the process, quickly adapt to the new situation, and avoid any significant delays in the final project delivery.
To better illustrate this cycle of continuous adaptation, let's take a quick look at the Agile phases.
What are the Agile Project Management Phases?
In general, the Agile project delivery process can be summarized in the following phases:
- Envision – create the high-level product/service vision for the customers as well as determine who will be involved in the project
- Speculate – this is an extension of the “Envision” phase, where teams gather the initial broad requirements for a product/service and develop an iteration plan based on the vision.
- Explore – work on the project deliverables with a focus on flow, aiming to get feedback from the customer as fast as possible
- Adapt – review delivered results and adapt as necessary to current conditions
- Close – conclude the project, pass along key findings
Traditional vs. Agile Project Management
In Agile management, unlike in the traditional project management stages, there is one key difference inside the "Adapt" phase, which defines Agile project management's iterative nature.
After you have created the vision for the product and prepared an iteration plan, you proceed to the "Explore" phase. There, the aim is to continuously release small deliverables to the market instead of waiting for all of them to be completed.
Then, in the "Adapt" phase, teams engage in short project reviews with the customers who give their respective feedback. The idea is to adapt your future actions based on that feedback and, if necessary, apply small modifications to what has been delivered instead of doing an extensive rework.
Sense of Ownership
Another attribute that "agility" brings to project management is the instilment of a sense of ownership within teams, contributing to more effective leadership.
For example, in traditional project management, all information pieces go through a dedicated project manager who allocates tasks to different team members. This can be ineffective due to the increased likelihood of some of the information getting lost.
In contrast, Agile projects give a large fragment of the decision-making process to the team members.
In reality, they are the ones closest to the work's technical details, making perfect sense to include them in the planning processes actively and decide how to execute their tasks best. Eventually, team members are encouraged to collaborate and find solutions to problems based on their understanding instead of waiting for the "boss" to say what needs to be done.
This creates an environment of shared ownership that motivates and empowers teams to be more efficient in their work. As a result, they will contribute in the best possible way toward completing the project.
In turn, the leadership becomes more effective because their focus diverts toward managing the work (not the workers), which generates the business's profits. Therefore, successful Agile leaders set shared goals with their team members, help remove impediments by optimizing the flow of work, provide the necessary resources, and encourage collaborative learning.
One of Agile project management's most important attributes is that it creates an environment for continuous improvement. Teams regularly engage in frequent learning cycles alongside the project’s development instead of one big "lessons learned" session at the end of it.
This ensures that essential process improvements occur while the Agile project is still in motion, which can positively contribute to the successful delivery of the final solution to the end customers. Of course, there is nothing wrong with the other approach, which is still present in the Agile project management process. However, in an environment where the work is invisible and changes often occur, relying only on that turns out to be ineffective for successful Agile project delivery.
Furthermore, work is broken down into small deliverables and continuously handed over to the customers for their examination and feedback. This also contributes to the continuous refinement of a product or service with the goal in mind to make it perfectly fit for the target customer.
Agile Values and Principles
Becoming agile is all about shifting your mindset and following specific values and principles in the way you work.
What are the four key values of Agile?
- Individuals and interactions over processes and tools.
- Working software over comprehensive documentation.
- Customer collaboration over contract negotiation.
- Responding to change over following a plan.
It's important to mention that these values were defined in the following format: "While we value the things on the right, we value the things on the left more". This means that processes and tools, documentation, contracts, and planning are still fundamental. We just have to use them wisely.
What are the 12 principles of Agile?
- The highest priority is to satisfy the customer through early and continuous delivery of valuable software.
- Changing requirements must be welcomed, even late in the development process. Agile processes harness change for the customer's competitive advantage.
- Working software must be delivered frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.
- Business people and software developers must work together daily throughout the project.
- Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done.
- The most efficient and effective method of conveying information to and within a development team is a face-to-face conversation.
- Working software is the primary measure of progress.
- Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely.
- Continuous attention to technical excellence and good design enhances agility.
- Simplicity – the art of maximizing the amount of work not done — is essential.
- The best architectures, requirements, and designs emerge from self-organizing teams.
- At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.
Even though Agile project management stems from the software development industry, it is successfully applied to many other areas such as product development, architecture, marketing, financial services, etc.
Agile Project Management Methods
So far, we have mainly explored what Agile project management is, including its main characteristics. Now, let's take a more detailed view of the process and concern some of the most popular Agile management styles and methods.
As Agile became a hot topic at the beginning of the 21st century, many frameworks took advantage of the rising hype and rapidly became famous (Scrum, SAFe, etc.). However, many companies seeking true business agility realized that highly prescriptive frameworks and agility are quite the opposite. This is why many organizations today are looking into Agile methodologies that create and support a stable workflow and tailor the processes to their own needs instead of adopting highly prescriptive frameworks.
Today, the most popular Agile project management frameworks or methods are Kanban, Scrum, and Scrumban.
So, let’s start with Kanban.
Kanban is a method formulated a decade ago. It focuses on evolutionary change and continuous process improvements.
The method has six core practices:
- visualize work
- limit work-in-progress
- manage flow
- make process policies explicit
- implement feedback loops
- improve collaboratively
Teams visualize their work on a Kanban board that serves as a central information hub where all tasks should be placed. This will allow people to exchange information much faster and collaborate more effectively while working on different projects.
A Kanban board is divided into columns that represent different stages of the workflow. This helps project managers and teams organize and manage work much better, keep track of various projects, and acquire a better overview of the process.
One of the most critical Kanban practices is limiting work-in-progress. The WIP limit is the amount of work allowed to be in each of the board columns. It is one of the most effective tools you can use to increase your team's focus and prioritize finishing work to improve overall efficiency.
On the other hand, we all know that projects, teams, and individuals are unique. Different teams have a different set of skills, levels of experience, expertise. Various projects may have different scopes, budgets, and so on.
This is why Kanban suggests you should start with what you do now and evolve gradually. No drastic changes, no revolutions, making Kanban one of the most adaptive Agile project management methods.
Kanban can be applied by any team in your organization, from IT to marketing. The main reason is that Kanban:
- respects the current processes and roles;
- doesn’t require revolutionary, but evolutionary changes;
- suggests you should pursue incremental, evolutionary change and try to improve continuously;
- encourages managing the work and letting people to self-organize around it.
If you want to use Kanban, just put it on top of your current processes and start improving step by step.
Many believe that Scrum is an Agile method, but actually, it is a prescriptive framework. By nature, it is an iterative approach that uses time-boxed intervals and split projects into fixed periods called sprints. The primary purpose is to support teams to productively and creatively deliver products of the highest possible value.
There are three immutable roles:
- the Product Owner
- The Scrum Master
- the Team
The product owner represents customers and other stakeholders. He/she organizes and manages the product backlog, a prioritized task list of all the work items needed for the product. On the other hand, the Scrum Master is a servant-leader of the team with an emphasis on leadership and helps everyone understand and apply the rules correctly.
From the product backlog, work items are selected and moved to the Sprint backlog until the capacity for the Sprint is reached. A self-organized or self-managed team does the work itself during the Sprint, which may be considered as projects with a fixed length of no more than one month.
There are four major Scrum events:
- Sprint Planning
- Daily Scrum
- Sprint Review
- Sprint Retrospective
Interestingly, in the original paper that formulates the framework and later the Scrum guide, the authors never mention the usage of a task board.
However, nowadays, you can observe that all teams or organizations use a task board while practicing Agile project management with Scrum, a borrowed practice from Kanban.
After all, the board increases transparency and supports the Agile project management values.
As Kanban was becoming more and more popular, some people of the Agile community saw an opportunity to develop a method that makes it easy for Scrum teams to move forward and focus on continuous improvement and evolutionary change. And this is how Scrumban was born.
An interesting fact is that 81% of the Scrum masters use Kanban along with Scrum.
Scrumban takes the Kanban philosophy and practices, lays them on top of Scrum, and eliminates some rules.
Let's see what Scrumban takes from Kanban.
Visualize work. This is the first thing that Scrumban prescribes as mandatory. It is essential because Scrum doesn’t mandate a board, while in Kanban, the board is a must.
Limit Work in Progress (WIP). If you know anything about Kanban, you understand that limiting WIP is a game-changer. Scrumban takes this practice and applies it successfully as it makes it possible for teams to focus on finishing work. Limiting WIP is a good prerequisite for creating a pull system, where the tasks enter naturally into the workflow instead of being pushed.
Extend the board. In other words, add more columns to the board. This is typical for Kanban, and it is a great way to visualize the different workflow steps on the board. This way, your team can have a better overview of the process, and it will help you discover where exactly in the process bottlenecks appear.
Prioritizing. Scrumban applies another technique from Kanban – prioritizing. It is pretty simple. You order the cards in the Requested (To Do) column, and there is a straightforward rule: the top one is the most important. Keeping in mind this rule, the team starts pulling the cards one by one.
(Stop) Estimating. This is probably where Scrumban cheats on Scrum. Why is that? Scrumban states that you don't need to estimate work. Here is the thing. According to Lean, every activity which doesn't add value to the result is considered waste. In this sense, estimating is a wasteful activity. Here is why in Scrumban, the planning sessions are relatively short, and they are focused on prioritizing instead of estimating.
Planning on demand. This is one of the main differences between Scrum and Scrumban. Scrumban eliminates Sprint planning in its initial form. Instead, the team plans if there is a need for this. In other words, the team pulls work items from the backlog until it gets empty, which is a trigger that the team should plan more tasks.As you can see, Scrumban takes Scrum to the next level by applying the Kanban principles and practices. This allows teams to increase output and decrease waste while providing visibility and higher productivity. It also lets teams apply Agile planning to its full potential.
Other Honorable Mentions
There are other Agile project management methods that had a positive impact on developing the Agile community, but during the years, they were slowly pushed aside. This is why we won't dedicate separate paragraphs to them. However, we have to mention that some of them are:
- XP (Extreme Programming)
- Crystal methods
- FDD (Feature-driven Development)
- DAD (Disciplined Agile Delivery)
In the beginning, Scrum was accepted pretty well (and still is), and it became mainstream in the software development industry. However, through the years, Kanban, Scrumban, and hybrid models' usage grew in popularity and helped Agile spread across various industries. After all, Kanban, Scrum, and Scrumban are the top 3 that successfully crossed the chasm and spread across other sectors such as product development, architecture, marketing, financial services, healthcare, insurance, education, and others.
Agile project management is an iterative approach that focuses on frequent value delivery and getting fast feedback from the market to better adapt to changes. A project is considered to be Agile when the following attributes are in place:
- Customer Focus
- Sense of Ownership (Shared Leadership)
- Continuous Improvement