Learn what Agile is, as well as common uses of the Agile Methodology such as Agile marketing and Agile design.
The Agile methodology is behind much of the software and products we use in our day-to-day lives, yet its obscure language can be frustrating to the uninitiated. In this post, we’ll demystify key Agile principles, answer key questions such as what is an ‘Agile scrum’, what is a ‘sprint’ in Agile, and what is Kanban in Agile – and explain how an agile mindset makes it easier for teams to adapt to the fast-paced worlds of technology, product design and marketing.
Table of Contents
What is Agile?
Agile is a project management methodology (as in, a collection of management methods that have an overarching philosophy). It’s an ‘iterative’ approach, which means that teams work in small increments rather than in one long sequence leading up to an eventual launch. Agile teams are small – Amazon founder Jeff Bezos famously referred to “two-pizza teams,” which require only two large pizzas to feed them (around 8-12 people). Plans, results and goals are continuously evaluated, so teams can quickly adapt to changes and unforeseen problems. It’s called ‘agile’ for a reason – the idea is that companies can quickly react to the unexpected without throwing the entire project off course.
Agile is often presented in opposition to the ‘Waterfall’ methodology, which is seen as a more traditional approach to project management. In the Waterfall methodology, one team will finish a phase of the project before passing it on to the next team. With Agile, however, teams work simultaneously and remain in constant contact. This encourages better communication between individuals and teams – one of the core tenets of the Agile ideology.
Agile encourages independent thinking. While the project lead may decide which work takes priority from one day to the next, it’s up to the team to take the initiative on how the work will be done. It’s a more hands-off approach than traditional methodologies, where micromanagement can be an issue. Agile requires managers to trust their teams.
Regular feedback – and the resulting continual improvement – is another central part of Agile’s appeal. Without this constant input, a product may be obsolete by the time it reaches the market.
Agile officially came into existence in 2001, with the publication of the Agile Manifesto (although some of its individual methods had been used piecemeal before then). Since that time, it has spawned a number of spin-off methodologies, such as Kanban and Scrum.
What is the Agile Manifesto?
The Agile Manifesto is a short document that lists the agile values and principles of software development and has remained virtually unchanged since its creation in 2001.
It was created by 17 software development practitioners during a gathering at a ski resort in Utah. Despite having many different approaches to management, they agreed that existing management methodologies were not suited to the fast-changing world of software development. The group called themselves “The Agile Alliance” – the Agile Manifesto is the result of their gathering in Utah.
What are the 4 Agile Values?
The four Agile values emphasise both what Agile is (fast-thinking, people-centric) and what it is not (bureaucratic). They are:
- Individuals and interactions over processes and tools.
- Working software over comprehensive documentation.
- Customer collaboration over contract negotiation.
- Responding to change over following a plan.
What are the 12 Agile Principles?
The Agile Manifesto also outlines 12 principles for Agile software development, which build on the four values. They are:
- Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.
- Welcome changing requirements, even late in development. Agile processes harness change for the customer’s competitive advantage.
- Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.
- Businesspeople and 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 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 maximising the amount of work not done – is essential.
- The best architectures, requirements, and designs emerge from self-organising teams.
- At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behaviour accordingly.
Agile vs Waterfall
It is perhaps easiest to understand Agile by comparing it with another popular management methodology – Waterfall. Neither is inherently better than the other, but one may be better suited to a certain project than the other.
The main difference between Waterfall and Agile is that Waterfall uses a linear style of working, whereas Agile uses a simultaneous style of working. With Waterfall, one phase of the project is completed before moving onto the next; with Agile, a team works on different phases concurrently.
Agile constantly incorporates stakeholder feedback into product development. Project phases have short-term deadlines, and the team takes charge of a project’s direction – this speeds up the workflow, as the team don’t need to constantly refer to their manager for input and feedback.
With Waterfall, the outcome and goals of a project are established at the beginning and remain virtually unchanged throughout the project’s lifespan. Each phase must complete certain goals before the team can move onto the next phase.
Agile’s flexibility makes it suitable for smaller projects where the requirements are vague and the end product is something that can be changed on-the-fly (again, the clue’s in the name). Waterfall comes into its own when used in large-scale projects, where the project requirements must be agreed and defined well in advance of the project’s commencement. Often, companies will combine both approaches – Waterfall for creating the product, and Agile for making changes to it.
Common Agile terms – and what they mean
With its talk of sprints, mobs and iterations, Agile-speak can sometimes seem like a different language. Here’s a glossary of the most common terms used in the Agile workplace, and what they mean:
- Acceptance testing is a formal description of how the product works, usually presented as an example of how it would be used.
- Continuous deployment reduces the time between writing code and making it available to the user, by relying on infrastructure that automates the process. Similarly, continuous integration merges code into the shared repository several times per day, so that the team can release a new product version at any moment.
- Daily meetings are a key Agile technique, which ensure that the team stays in constant contact. They’re structured around three questions: “What have you completed?” “What will you do next?” “What is getting in your way?” Within the Scrum framework (see below), daily meetings are called “daily scrums” or “stand ups.”
- Extreme programming (XP) is a specific Agile framework, like Scrum or Kanban (see below). It aims to produce software of a high quality while maintaining quality of life for the development team.
- An iteration is a period of time (usually fixed) over which development takes place.
- Lead time is the time between a customer order and delivery, or between a project’s inception and completion.
- Mob programming is a novel software development approach – the whole team works on the same project at the same time, at the same computer.
- A Niko-Niko Calendar is updated daily with each team member’s mood, which will show more general patterns in team mood over time.
- Pair programming is when two programmers share a single workstation.
- The Product Backlog is a list of the fixes, features and changes that the team may deliver in order to achieve their goal.
- The role of the Product Owner is to make sure the team delivers the product as needed.
- A sprint is a short, time-boxed period where the team will complete a set amount of work. It begins with sprint planning, which establishes the sprint goal and the sprint backlog (a full list of what the team intends to deliver).
- In its most basic form, the task board has three columns: “To Do,” “In Progress,” and “Done.” Cards are placed in the columns to mark task status.
- User stories are increments describing the work to be done – they’re developed in consultation with the product owner or customer.
Scrum and Kanban – two of the most popular Agile frameworks
You’ll often hear Agile devotees say that Agile isn’t a system, it’s a mindset. Agile defines the values and principles, but a company also needs a organisational system that dictates how work is done on a day-to-day basis, and the tools used to accomplish it. This is where frameworks – such as Scrum and Kanban – come in.
What is Scrum?
Scrum is a project management framework based on the values and principles of Agile. Like rugby – from which Scrum takes its name – Scrum teams self-organise, learn by experience and reflect on wins and losses. It’s most frequently used by software development teams, but its principles can be applied in almost any industry. It’s not easy to get an entire company to change its culture overnight and adopt an “Agile mindset” – using a framework like Scrum can be a good place to start.
Scrum acknowledges that teams won’t know everything at the start of a project but will learn through experience. This assumption means that team members are more likely to own up to mistakes or knowledge gaps, meaning that communication is clear and the team can quickly adapt to changing situations.
Scrum is tightly organised around sprints and daily scrums (daily meetings) to keep everyone in sync. These regular meetups are sometimes called ‘ceremonies’. It’s important to keep these meetings short to avoid fatigue.
Alex Cowan, lead educator on Getting Started with Agile and Design Thinking from University of Virginia and Darden School for Business, says, “The daily stand up is one of the most widely used artefacts of Agile. The idea is that the team gets together and it’s a small team – five to ten people. And everybody, including the managers, answer three questions about where they’re at and what they’re doing. The individuals support each other, help remove barriers, [and] decide who should be working on what amongst each other, rather than from a strict command-and-control approach with a singular project manager.”
What is Kanban?
Kanban is another popular management framework rooted in an Agile mindset. The word ‘kanban’ means ‘visual board’ in Japanese and was first used by Toyota in the 1950s as a manufacturing scheduling system. The Kanban Method as we know it today, however, was formalised in 2007 by leading members of the Agile community.
Modern-day Kanban uses the same principles applied by Toyota in that it minimises waste and increases efficiency, generating value for the customer without adding cost.
Just like with Toyota, a visual board is still central to the Kanban system. In its most basic form, a Kanban board has three basic columns: Requested, In Progress and Done. It’s an effective way for everyone in the team to identify bottlenecks and anything else that might be holding up production.
What is Agile used for?
Primarily, you’ll see Agile methodologies in software development, but agile principles – people over process, customers over contracts – can benefit almost any enterprise, from the multinational conglomerate to the self-employed freelancer. However, Agile frameworks such as Scrum and Kanban are particularly well-suited for certain fields.
Agile was designed by software developers and is still primarily used in software development and other computing-based fields. An agile workplace is adaptable, efficient and quick to react – perfect for the fast-paced world of computing.
Agile design enables teams to quickly create products that are well-suited to customer needs. Not only that, but the short timeframes of agile design mean that teams can constantly update their product to bring it in line with changing market forces and requirements.
Digital technology has revolutionised marketing. It’s no longer enough for a marketing team to develop a campaign over several weeks – by then, the market has moved on. This is where agile marketing comes in – with effective organisation and constant contact between marketing, legal, IT and finance teams, it’s possible to bring campaigns online in a matter of days.
Hopefully, you’re now well-versed in Agile values and principles. However, we’ve just scratched the surface here – for more on the practical applications of the Agile methodology, take a look at our full range of Agile courses.