Agile is a family of flexible project management methodologies that are now wildly popular globally. Is this just a big buzz, or does Agile project management methodology really help you achieve better results?
This question can be answered unequivocally: Agile methodology really allows the teams to better adapt to change. Often, the very use of Agile methods becomes an excellent non-material motivation for employees: they see that the company is responsive to the changing global conditions and is flexible enough to successfully face the challenges that come with them. However, Agile implementation can be fraught with additional difficulties. Therefore, before starting to apply agile in practice, it is worthwhile to understand in detail what Agile really is and if you need it at all.
The Agile Approach and Principles
Translated from English, the word "agile" means something that is mobile, nimble footed. Agile project management in simple words, is executing a project, in a way that rules out rigid, classical long-term planning. The team approaches the goal in small steps, also called "iterations".
Agile emerged as we know it today only in 2001, when a group of programmers published the Agile Manifesto. The principles they encapsulated were first applied to software development, but later Agile tools migrated to other industries as well.
Agile Values. Key insights:
- People and relationships are more important than processes and tools.
- A work product is more important than comprehensive documentation.
- Cooperation with the customer is more important than reaching agreement on the terms of the contract.
- Being ready for change is more important than following the original plan.
The Agile Manifesto contains key insights from the creators and 12 Agile principles for software development. There are no clear instructions in the manifesto about how to organize work according to the Agile method. For example, there is no reference to employee motivation. However, the fundamentals of Agile Manifesto have become key to this family of flexible methodologies that make it easy to manage various projects. The most famous of them are SCRUM and Kanban.
SCRUM framework. The difference between Agile and SCRUM
People often find it difficult to answer what is the difference between Agile and SCRUM. In fact, everything is simple. SCRUM is a concrete method for implementing the Agile approach, a framework that aligns with the values of Agile and uses the Agile method in its work. The Agile team plays a key role in SCRUM: it is a team of "universal soldiers" which can work on different projects. In addition to specialists, the team has a product manager, a product owner, and a scrum master. The product manager makes sure that the project meets the needs of the customer and solves his problems. The Scrum master, on the other hand, coordinates the work of the team, including being responsible for motivating the team, and solving routine tasks.
The flexible development cycle for the SCRUM framework is divided into equal periods of time, which are commonly called "sprints". It can be either a week or a month. Before breaking up into a sprint, the team and the scrum master define the tasks that need to be accomplished in order to implement the project, and at the end of the sprint, they analyze and sum up the results. Sprints make it easy for a scrum master to monitor team performance, identify areas that need improvement, and set out ways to motivate the team.
Kanban. Differences between Kanban and SCRUM
Kanban also implements the principles of the Agile Manifesto, but in this case the main objective of the Leader is to deliver the product to the consumer "just in time" in the required volume or quantity. To achieve this, work is organized in such a way as to evenly distribute the workload among employees. For example, he ensures that situations wherein programmers are sitting idle while designers are overloaded to the extent of not meeting the workload are avoided.
Kanban management is about monitoring the implementation of each task so as to reach total execution "just in time". At the same time, it is important to get away from such practices as producing "stocks of products" just so as not to disrupt the supply in case of an unforeseen situation. According to the Kanban philosophy, the workflow should be organized in such a way that such situation does not arise a priori.
Unlike SCRUM management, in the Kanban model, the main performance metric is the average time taken to solve a problem. In this flexible methodology, it is very important to monitor the implementation of each task. As a rule, the main stages of the task are recorded on a kanban board so that it is equally convenient for the manager and employees to monitor progress.
Task |
Step 1 |
Step 2 |
Step 3 |
Step 4 |
Status |
Max 2 |
Max 3 |
Max 3 |
Max 2 |
||
K |
|||||
L |
I |
F |
C |
A |
|
M |
J |
G |
D |
B |
|
N |
H |
E |
|||
O |
|||||
P |
Agile or Waterfall. What to choose?
Agile and Waterfall are the most popular approaches to management in software development. Agile is the more modern method of organizing work on a project, but it is not advisable to use it across the board as some times Waterfall is the better option. It's important to consider the pros and cons of Agile versus Waterfall, and then make a weighted choice.
Agile
Pros |
Cons |
The work is structured so that the client quickly receives the finished product |
The final cost of a project when working with the Agile methodology is often difficult to calculate |
Not just the project executives, but also the organizers, customers are all engaged in the project execution work. |
Requires specialists with high qualifications for working on the project, and often them to get further training. As a result, costs of project execution go up. |
The ability to respond flexibly to changes |
The inability to "mechanically" apply the Agile methodology: you always need to adapt it to the specifics of a particular team |
Priority - creating a working model of the product |
In the absence of the required experience, the team may spend too much time working on minor improvements and fail to meet the main project timelines. |
Taking into account the pros and cons of Agile, it's safe to say that Agile's flexible development cycle is definitely suitable for an experienced team of professionals, but not for young teams and startups.
Waterfall project management model, on the other hand allows you to plan in detail the project work execution, think through all stages of work, and estimate their costs and the timeline.
Waterfall
Pros |
Cons |
Easily estimate the final cost of the project |
The total cost of work on the project is more likely to increase than to decrease |
A familiar and understandable model of work |
The work cannot be customized to account for unforeseen circumstances. As a last resort, you can shorten the delivery time by sacrificing the product testing stage. |
Common project reporting forms |
It is not possible to test the product on the fly. Testing can only be undertaken when the project is actually completed. |
Tasks are defined right from the launch of the project |
It is impossible to make changes during the development stage, even if the developer understands how the product can be improved. |
The Waterfall model should be used if the main constraint for the project is the delivery period, or if your team has not yet bonded together cohesively to participate in the management. For a flexible product development cycle, team participation in project management is a prerequisite.
Agile Application in Business Management and Marketing
Agile methodologies are not a set of rules and regulations, but a radically different way of looking at workflow organization. Agile Project Management can be very beneficial for a company, first of all, because it helps to quickly adapt to changes in the market, as well as find bottlenecks and eliminate them. What are bottlenecks? In simple words, these are work tasks that get solved very slowly, and cause a strain on the work of the company.
Example: A company produces ceramic vases. Before a product goes on sale, it must go through final procedure of glaze firing. The technology is such that the process inside the furnace takes at least three hours. At the same time, no more than one hundred products can be fired in the furnace at a time. During the time while some vases are being fired in the furnace, the workers manage to produce 200 new vases. This mismatch of 2 production processes creates a bottleneck at the furnace entrance, leading to shortfall in output of new, ready for the market vases. At the same time, after the vases exit the furnace after firing, it turns out that a third of the products that entered the furnace were defective and cannot be sold at all. The company has no money to buy additional equipment.
A possible solution for Agile Project Management: organize stricter quality control of products before they enter the furnace for glazing, and transfer some of the workers who produce new vases to quality control department. This will improve the quality of the products that enter the furnace, and reduce the stress on the bottleneck area.
Most often, Agile tools are used for software development, but recently flexible methodologies are being actively used in other areas as well. In some industries, the use of Agile can be severely restricted or even impossible. For example, in pharmaceutical industry, it is virtually impossible to organize a flexible production cycle.
Agile is most effective in areas where you need to react very quickly to market changes, such as marketing. This is why Agile marketing is gaining in popularity. In 2012, an updated Agile Marketing Manifesto was published, which largely carried forward the principles of the classic Agile Manifesto.
New Agile Marketing Manifesto: Fundamental postulates
- Accurate research, not opinions and biases.
- Cooperation aimed at respecting the interests of the client, not rigid hierarchy.
- Iteration and adaptation, not complicated planning in advertising campaigns.
- Customer research, not statistical forecasting.
- Flexible, not rigid planning.
- Adapting to change, not blindly sticking to a plan.
- Lots of small experiments, not one big one.
Agile implementation
Many companies find it difficult to implement Agile, because this methodology is a special work culture that employees and the company itself will have to get used to over a period of time. In order to establish an effective Agile product development cycle, first of all, you need a specially trained Agile team, which the team leader can trust. There are several ways to effectively organize Agile training for your team:
- Agile coach. Finding the right Agile coach for your company can be a daunting task. Firstly, without Agile knowledge, it is difficult to assess the qualifications of a coach and the quality of his work. Oftentimes, someone who is hired as an Agile coach begins to act as a scrum master. Without prior training of the team, this method can only harm the company and bring confusion to work processes.
- Agile trainings for the leader. First, the leader is trained in Agile, and then he trains the team. The main disadvantage of this method is that the main burden of Agile implementation falls on the shoulders of the manager, while he continues to be shoulder his daily workload.
- Agile courses. Training in Agile courses provides an opportunity to introduce the entire team to the culture and methodology of Agile. The main thing is to choose quality courses that are well known for positive reviews from other students. For example, with the Lectera course "Managing Business Effectively on Agile Methodology", the leader will quickly master the principles of working in Agile, and by signing up for Lectera's Corporate tariff, he will immediately be able to organize training for his employees. The advantage of Lectera courses is that the main emphasis is on practical aspect: students can put to use the knowledge gained with the help of accompanying cases and exercises.
Reading specialized literature will also be useful for learning Agile, as long as you do not forget that books are only an auxiliary tool, and by itself, knowledge gained from book is not enough to instantly switch to Agile. To implement Agile, you first need to try it out in practice, because it is the same skill as any other, what is needed is experience and proficiency.
Books on Agile, its technology and philosophy:
- Agile Software Development Manifesto.
- Eliyahu Goldratt, Jeff Cox. "Goal: a process of continuous improvement."
- Jeff Sutherland. SCRUM. A revolutionary method of project management ".
- Henrik Kniberg. "SCRUM and XP: From the Trenches."
- David Anderson. "Kanban. An alternative path to Agile ".
- Andrew Stellman, Jennifer Green. "Comprehending Agile. Values, principles, methodologies"
The main thing in the article
- Agile is a family of methodologies which mandate a flexible project plan that can easily respond to changes.
- SCRUM is an Agile framework. In SCRUM, work on a task is divided into equal intervals called "Sprints". Analysis of sprints allows you to track your performance.
- Kanban is an Agile methodology. The main indicator of efficiency for Kanban is the speed of problem solving. To track progress, the stages of work on each task are visualized on a Kanban board.
- SCRUM and Waterfall are two of the most popular methodologies for software development. SCRUM is better suited for mature teams.
- Flexible methodologies are ideal for areas where there is need to respond quickly to market changes, such as programming and marketing.
- To work effectively with Agile, it is necessary to train the team well. The most convenient way to do this is to take Agile courses.