What is Agile meaning in IT?

The year 2022 marks the 21st anniversary of the Agile Manifesto. The approach was born as a rebellion of developers against sluggish IT-corporations. Here is a look at what is happening to Agile today and how it is being implemented in Russian companies

What is Agile

Agile, or Agile software development, is a flexible approach to software development, often used in small teams.

The whole process of working on a project is divided into iterations - short cycles of two or three weeks. Each iteration covers a series of tasks: requirements analysis, design, programming, testing and documentation. At the end of each iteration, the team analyses the results and changes priorities for the next cycle. As a result, each cycle creates a mini-product or a separate part that is ready to launch on its own.

The term Agile is used in two main meanings:

  • A value system or philosophy followed by many developers and start-ups.
  • A collective name for agile approaches and methodologies that, in one way or another, overlap with Agile core values.

Typically, agile teams include developers, testers, project managers, interface designers, technical (UX) writers. They are all equal in the hierarchy and work in the same office or co-working room. They save time discussing ongoing processes by communicating face-to-face. The customer side is represented by the manager or product owner, from whom the team receives regular feedback.

Agile emerged as a counterbalance to outdated approaches and excessive bureaucracy in IT. Residents of Silicon Valley (and not only) realized that it is impossible to create innovative products in a conservative environment. Therefore, in February 2001, in Utah (USA), 17 developers from different countries created their manifesto, in which they combined the most advanced approaches and principles.

The Agile Manifesto and Core Principles

The Agile Manifesto is based on four core values:

1. People and their interactions are more important than processes and tools.

We need to create conditions such that tools and processes do not limit a team, but enable them to work as effectively as possible. Everyone is free to decide which tools and processes are appropriate.

Everyone communicates with each other and the customer personally and directly, bypassing bureaucratic procedures and regulations. If online communication is essential, video chats and interactive whiteboards are preferred to work email and messengers.

2. A working product is more important than documentation and reporting.

The client, first and foremost, needs a working product, not beautiful presentations. Therefore, Agile focuses on getting the product ready for use as quickly as possible, neglecting technical documentation and reporting.

3. Cooperation with the customer is more important than compliance with formal conditions.

Even if a contract is signed before the project with rigid terms and specifications, they may change in the course of the work. For example, if some details turn out to be not so important, and the task can be solved much easier and more efficiently. This is in the interest of the client, who cares about the work product, not the formal requirements. It is important to be in constant communication and to discuss every change, making a decision together.

4. Willingness to change is more important than following a plan.

Changes can and should be made at every stage - or iteration - so that they are not delayed until the end, when deadlines and resources are already tight. It is fine to sacrifice something planned for the sake of it, as long as the main tasks are accomplished.

Agile is not limited to the four values. There are also 12 principles in the manifesto that clarify and complement them. They can be summarised as follows:

  • The primary goal is customer satisfaction. All processes and tasks are changed and adapted to them.
  • Developers and customer representatives should work together daily, exchanging ideas and useful information.
  • Each team member must be well motivated: comfortable conditions, positive feedback, financial rewards.
  • Changes are allowed at any stage, even just before release. At the same time, for each iteration (from two weeks to two months) you should release a working product.
  • Everyone should strive for maximum simplicity and self-organisation.

Agile, therefore, is a value system or even a business philosophy. It helps to focus on the essentials, get rid of unnecessary formalities and create a working product faster and more efficiently. To put these values into practice, specific methods are used.

What is Scrum and Kanban

Scrum, or 'structure approach', is an Agile-based method in which work on projects is broken up into sprints - short, equally timed iterations. The team is also small - up to ten people. It consists of developers, product owner and scrum-master. Product owner is a curator of the group, who ensures that the final product meets their goals and objectives. The scrum master is responsible for ensuring that the scrum method is applied correctly: he/she organizes meetings and communication between all participants. In the process, all participants discuss each decision, plans and priorities, and distribute tasks on a daily basis.

Kanban, or 'balance approach', is a method that aims at improving service quality: when all efforts are focused on making the product better and more user-friendly by distributing tasks evenly among all participants. Here, the team is a single unit, with no supervisors or informal leaders. The process is not divided into sprints, but into project phases: planning, development, testing, launch. The main indicator of effectiveness is to complete each stage as quickly as possible, without downtime and rework. If they do occur, the team decides together how to optimise the process.

Unlike scrum, kanban:

  • does not assume adherence to 100% agile values and a focus on self-organization, but adheres to the principles of customer focus, collaboration and transparency;
  • applies not only to development, but also to upgrades, support and operations;
  • is implemented in stages and without major changes to current processes and infrastructure;
  • implies uniform improvement, not only acceleration of processes;
  • uses metrics that do not involve estimating the labour intensity of tasks.

In kanban, it is common to visualise all the details of a process. Usually it is a board with stickers, labels or a task manager like Trello that lists all tasks, milestones and their status. Often tasks are colour-coded to indicate which stage they are in or where they are at. This helps all project participants see the big picture and know when something is lagging or when someone needs help.

If you're just getting into the Agile philosophy and want to try individual elements, it's easier to start with kanban. Small startups and teams that are just planning a project launch will do well with scrum.

Which companies use Agile?

When Agile first appeared, it was mostly used by software, games, and UI developers. These include Google, Netflix, Microsoft, Spotify, Ericsson, Dell, Adobe, Accenture, WordPress, Riot Games, CH Robinson, Magna International, Scrum Alliance, Intronis.

Now the scope has expanded: Agile is used, for example, by Saab to produce new fighter jets, General Electric and John Deere, a leading US manufacturer of agricultural machinery.

Does your team need Agile

Today, Agile principles are spreading in many areas, although IT development is still in the first place. However, agile approaches are not applicable everywhere. They work most effectively where:

there are small teams creating or improving a particular product (service) under uncertainty;
need to release the first version of a product as quickly as possible to stay ahead of the competition;
are developing an innovative product that is unparalleled, with unpredictable properties.

In other words, Agile is ideal for innovative start-ups, but is of little use for corporations with well-established processes and a complex structure. For such companies, methods with single Agile elements that are easier to scale - SAFe (Scaled Agile Framework) and LeSS (Large-Scale Scrum) - work better.

But in IT, too, Agile is not the only way to make the process more efficient. Engineering practices such as DevOps - a way of working where all participants actively interact with each other and workflows are mutually integrated - work well here.

To test a new idea without going through all the stages of development, Customer Development, Design Thinking and other product methodologies work well.

Finally, there is a broader approach that includes agile methodologies - Business Agility. It spread later - two or three years ago - and includes not only the acceleration of product development and release, but also rapid response to external changes, flexible goal setting, and resource allocation.

Books about Agile

"Brilliant Agile. Agile project management with Agile, Scrum and Kanban". Authors: Rob Cole, Edward Scotcher. For those just planning to move from classic project management to agile.

"The Age of Agile. How smart companies change and achieve results". Author: Stephen Denning. Describes how agile management practices work at different levels, how to set goals and how to achieve them.

"Scrum. A revolutionary method of project management". Author: Jeff Sutherland, founder of the scrum framework. Essential for scrum masters and those who want to apply the method and understand its benefits and advantages.

"Scrum and Kanban: squeezing the most out". Authors: Henrik Kniberg, Matthias Skarin. Comparison of the two methods with practical examples, pros and cons.

"Kanban and 'just-in-time' at Toyota. Management starts in the workplace". A collection of articles from Toyota experts on the implementation of kanban in the company, the synthesis of the American and Japanese approaches and how this has affected internal processes.

"Agile: Project evaluation and planning". Written by Mike Kohn. Evaluation and planning are critical to the success of any project. However, the planning process is complex, and our plans are often far from reality. Mike Kohn, an Agile guru, gives the tools you need to evaluate, plan and manage agile projects of all sizes.