Agile glossary

Learn more about the key terms and terminology related to agile practices and methodology. 

Explore agile traniing

What is agile?

Agile is an approach to software development and project management that focuses on delivering products and services iteratively, providing value to end users on a continuous, rolling basis throughout product development.

Unlike traditional methods such as Waterfall, which focus on launching a completed product after a lengthy development period, Agile focuses on reacting to market trends and customer feedback, and incorporating these into the development process. 

What is the agile methodology?

The Agile Manifesto, published in 2001, was written by a group of 17 thought leaders, called the Agile Alliance. The Agile Manifesto consists of 4 values and 12 principles.

The four values of the Agile Manifesto:

  • Individuals and interactions over processes and tools
  • Working software over comprehensive documentation
  • Customer collaboration over contract negotiation
  • Responding to change over following a plan

The 12 principles of The Agile Manifesto:

1. Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.

2. Welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage.

3. Deliver working software frequently, from a couple of weeks to a couple of months, with preference to the shorter timescale.

4. Business people and developers must work together daily throughout the project.

5. Build projects around motivated individuals. Give them the environment and support they need and trust them to get the job done.

6. The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.

7. Working software is the primary measure of progress.

8. Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely.

9. Continuous attention to technical excellence and good design enhances agility.

10. Simplicity –  the art of maximizing the amount of work not done – is essential.

11. The best architectures, requirements, and designs emerge from self-organizing teams.

12. At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.

What are the benefits of agile working?

Companies and teams that adopt Agile frameworks often experience many improvements. If you’re wondering whether Agile is worth learning and adopting in your own environment, consider the list of benefits Agile can bring below: 

1. Customer satisfaction 

Agile places users at the heart of the development process. Agile teams are encouraged to be empathetic towards their users, to create detailed user personas, and to focus on delivering the most valuable functionality to users first. As a result, Agile teams often see increased customer satisfaction and retention, particularly as users recognize that their input and concerns are a priority. 

2. Higher quality products

The iterative approach of Agile teams, in continually delivering improved functionality with each iteration, results in the development of far superior products. Agile encourages a shift of mindset, whereby teams understand that products can always be improved based on feedback.  

3. Adaptable

Agile teams thrive in the VUCA environment. Agile teams react well to change, even under time constraints, as the possibility of shifting requirements is always a considered a possibility. Agile teams are able to alter their workflow efficiently in line with clients’ changing requirements. 

4. Predictable & estimable 

Given that Agile teams work in short, time-boxed periods, e.g., sprints, it’s often easier for project managers to estimate the resources required, as resource assignment is generally simpler over a shorter timeframe. The time-boxed workflow, with a set number of tasks to complete in a given iteration, also makes measuring team pace and performance far easier compared to projects that span many months. 

5. Risk reduction

Progress is evaluated on a regular basis throughout sprints. As a result, blockers and obstacles are picked up quickly by development teams, preventing smaller issues from ballooning into larger problems. Agile teams focus on mitigating risk through regular reflection, resulting in a higher probability of overall project success. 

6. Effective communication

Consistent, effective communication is a key priority of the Agile approach, particularly as teams are self-organizing. Teams are encouraged to share their progress on a daily basis, e.g., in 10-15-minute Stand Ups, ensuring the whole team agrees on processes and goals. This regular communication helps to iron out any potential miscommunication before it snowballs into larger problems, making the development process a far smoother one.

7. Consistent pace

Agile teams focus on finite, manageable tasks within iterations of their workflow. This allows teams to gain a sense of achievement with each task completed, and helps teams avoid burnout. As a result, Agile teams are often highly motivated and energized, which in turn makes them all the more dynamic. 

What's the best way to adopt an agile approach?

If you’re thinking about implementing Agile in your workplace, you’ll first need to consider which Agile framework will be the best fit for your team.

Below is a brief exploration of the 4 key Agile frameworks. Perhaps you might find the perfect fit for your team…

  1. Scrum:

Scrum is an agile framework intended to deliver high-quality products to users quickly and continuously.

Each project with the Scrum framework is broken down into manageable tasks, which are organized into Sprints. These have a duration of 1 to 4 weeks.

  1. Kanban:

Kanban is a workflow management system focused on the visualization of the team workflow. As with Scrum, Kanban seeks to pursue evolutionary, continuous improvement, whereby the requirements and wishes of the users are prioritized.

With this framework, teams establish Kanban boards, which are populated with Kanban cards (containing user stories from the Product Backlog), which are then progressed through the workflow.

  1. Scaled Agile Framework (SAFe):

The Scaled Agile Framework (SAFe) offers a structured approach to scaling Agile to a wider, organizational level.

SAFe is applicable to enterprises of a range of sizes. There are 4 configurations available: Essential SAFe, Large Solution SAFe, Portfolio SAFe, and Full SAFe.

The Core Values of SAFe indicate the kind of environment and behaviors that will reap the greatest benefit from the framework:

  • Alignment: Teams are synchronized, with everyone on the same page regarding business goals and the plan of action.
  • Built-in quality: Teams must establish a clear, specific definition of ‘done’ for all tasks.
  • Transparency: SAFe fosters behaviors that establish trust within the team, such as planning smaller batches of work so potential problems become visible at an earlier stage.
  • Program execution: Teams are expected to deliver quality products on a regular, consistent basis.
  • Leadership: Effective Agile leadership is required to ensure that a suitable environment is created. 4.

Lean Software Development (LSD)

Lean Software Development (LSD) is an Agile framework based streamlining development resources, eliminating waste, and delivering only what the end user requires.

LSD is also referred to as the Minimum Viable Product (MVP) strategy. Using this approach, a product or functionality is launched by the development team, user feedback is swiftly acquired, then the functionality undergoes further development based upon this feedback.

LSD is a particularly efficient way to streamline the development process. It also forces teams to make swift, and potentially impactful, decisions about which features to cut and which to develop. This can be an overwhelming prospect for some teams, so this is approach is not for everyone.