The Complete Agile Dictionary: Every Term You Need to Know (Without the Confusion!)

The Complete Agile Dictionary: Every Term You Need to Know (Without the Confusion!)

Lost in Agile jargon? This fun guide explains every important Agile term in simple language that actually makes sense.

Starting your first tech company can feel like learning a new language. Between investors throwing around terms like "MVP" and developers mentioning "sprints" and "scrums," it's enough to make your head spin!

Don't worry – we've got you covered. This complete Agile dictionary breaks down every important term from the official Agile Alliance glossary, explained in plain English that won't make your brain hurt.

What Even IS Agile?

Before we dive into the alphabet soup of terms, let's start with the basics. Agile is a set of methods and practices where solutions evolve through collaboration between self-organizing, cross-functional teams. Think of it like building with Lego blocks instead of carving a statue from marble – you can adjust and improve as you go!

The Complete Agile Terms Dictionary (A-Z)

A is for...

Acceptance Test Driven Development (ATDD)

Team members with different perspectives (customer, development, testing) collaborating to write acceptance tests in advance of implementing the corresponding functionality. It's like writing the rules of the game before you start playing.

Acceptance Testing

A formal description of the behavior of a software product, generally expressed as an example or a usage scenario. Basically, it's testing to make sure your app does what you promised it would do.

AntiPattern

Common solutions to common problems where the solution is ineffective and may result in undesired consequences. These are the "seemed like a good idea at the time" decisions that come back to haunt you.

Automated Build

The process that converts files and other assets into a software product in its final form. The build is automated when these steps are repeatable, require no direct human intervention, and can be performed at any time. Like having a robot chef that can make the same perfect meal every time.

B is for...

Backlog Refinement

When the product owner and team refine the backlog on a regular basis to ensure it contains the appropriate items that are prioritized and ready for delivery. Think spring cleaning for your to-do list.

Behavior Driven Development (BDD)

A practice where members of the team discuss the expected behavior of a system in order to build a shared understanding of expected functionality. Everyone gets on the same page about what "done" looks like.

Burndown Chart

Charts that track the amount of output (in terms of hours, story points, or backlog items) a team has completed across an iteration or a project. Picture a mountain that gets smaller each day as you finish tasks.

Business Agility

The ability of an organization to sense changes internally or externally and respond accordingly in order to deliver value to its customers. Being quick on your feet when the market changes.

C is for...

Collective Ownership

The explicit convention that every team member can make changes to any code file as necessary. Everyone can touch any part of the code – no "that's mine, don't touch it" attitudes.

Continuous Deployment

Aims to reduce the time elapsed between writing a line of code and making that code available to users in production. Getting new features to users super fast.

Continuous Integration

The practice of merging code changes into a shared repository several times a day in order to release a product version at any moment. Like having multiple chefs work on the same recipe without ruining the soup.

CRC Cards

Class Responsibility Collaborator (CRC) Cards are an object oriented design technique teams can use to discuss what a class should know and do and what other classes it interacts with. Think relationship mapping for code.

Customer Development

A four-step framework to discover and validate that you have identified a need that customers have built the right product to satisfy. Making sure people actually want what you're building.

D is for...

Daily Meeting

One of the most commonly practiced Agile techniques that presents opportunity for a team to get together on a regular basis to coordinate their activities. A quick daily check-in where everyone shares what they're working on.

Definition of Done

An agreed upon list of the activities deemed necessary to get a product increment, usually represented by a user story, to a done state by the end of a sprint. The team's agreement on what "finished" actually means.

Definition of Ready

Creating clear criteria that a user story must meet before being accepted into an upcoming iteration. Making sure a task is ready to be worked on before anyone starts.

E is for...

Epic

A large user story that cannot be delivered as defined within a single iteration or is large enough that it can be split into smaller user stories. A big feature that needs to be broken into smaller pieces.

Estimation

The evaluation of the effort necessary to carry out a given development task; this is most often expressed in terms of duration. Your best guess at how long something will take (spoiler: it usually takes longer).

Exploratory Testing

A style or approach to testing software which is often contrasted to "scripted testing." Testing by actually using the software and exploring what might break.

Extreme Programming

An agile software development framework that aims to produce higher quality software, and higher quality of life for the development team. The most specific of the agile frameworks regarding appropriate engineering practices.

F is for...

Facilitation

A person who chooses or is given the explicit role of conducting a meeting. The person who keeps everyone focused and productive.

Frequent Releases

An Agile team frequently releases its product into the hands of end users, listening to feedback, whether critical or appreciative. Getting your app in front of real people regularly.

G is for...

Given – When – Then

A template intended to guide the writing of acceptance tests for a User Story: (Given) some context, (When) some action is carried out, (Then) a particular set of observable consequences should obtain. A way to write test scenarios that makes sense.

H is for...

Heartbeat Retrospective

The team meets regularly to reflect on the most significant events that occurred since the previous such meeting, and identify opportunities for improvement. Regular team therapy sessions (but for work).

I is for...

Incremental Development

When each successive version of a product is usable, and each builds upon the previous version by adding user-visible functionality. Building your product piece by piece, where each piece actually works.

Information Radiators

Any of a number of visual displays which a team places in a highly visible location, so that all team members can see the latest information at a glance. Think dashboards or charts on the wall that everyone can see.

Integration

Any efforts still required for a project team to deliver a product suitable for release as a functional whole. Making sure all the different parts of your software work together properly.

INVEST

The acronym stands for a set of criteria used to assess the quality of a user story. If the story fails to meet one of these criteria, the team may want to reword it. A checklist for good user stories.

Iteration

A timebox during which development takes place. The duration may vary from project to project and is usually fixed. A short period (usually 1-4 weeks) where the team works on specific features.

Iterative Development

Agile projects are iterative insofar as they intentionally allow for "repeating" software development activities, and for potentially "revisiting" the same work products. Building in cycles and improving as you go.

K is for...

Kanban

A means to design, manage, and improve flow systems for knowledge work. The method allows organizations to start with their existing workflow and drive evolutionary change by visualizing their flow of work. A visual way to manage work using boards.

Kanban Board

A visual workflow tool consisting of multiple columns. Each column represents a different stage in the workflow process. Like a digital bulletin board showing what's "To Do," "Doing," and "Done."

L is for...

Lead Time

The time between a customer order and delivery. In software development, it can also be the time between a requirement made and its fulfillment. How long it takes from "I want this" to "here it is."

M is for...

Milestone Retrospective

A team's detailed analysis of the project's significant events after a set period of time or at the project's end. A big picture look back at what happened.

Minimum Marketable Feature (MMF)

A small, self-contained feature that can be developed quickly and that delivers significant value to the user. The smallest thing you can build that people will actually pay for.

Minimum Viable Product (MVP)

The "version of a new product which allows a team to collect the maximum amount of validated learning about customers with the least effort." The simplest version that people can actually use and give feedback on.

Mob Programming

A software development approach where the whole team works on the same thing, at the same time, in the same space, and at the same computer. Like pair programming but with everyone.

Mock Objects

Commonly used in the context of crafting automated unit tests, consisting of instantiating a test-specific version of a software component. Fake versions of things used for testing.

N is for...

Niko-niko Calendar

Updated daily with each team member's mood for that day. Over time the calendar reveals patterns of change in the moods of the team, or of individual members. A mood tracker for your team.

O is for...

Open Space

When you bring together a group of folks, empower them to co-create their own learning, provide just enough structure to ensure progress, and hit the Start button. Self-organizing meetings where people choose what to work on.

P is for...

Pair Programming

Two programmers sharing a single workstation. The programmer at the keyboard is usually called the "driver," the other is the "navigator." Two developers working together on the same code.

Personas

Synthetic biographies of fictitious users of the future product. Imaginary people who represent your real customers.

Planning Poker

An approach to estimation used by Agile teams. Each team member "plays" a card bearing a numerical value corresponding to a point estimation for a user story. A fun way to estimate how long tasks will take.

Points (estimates in)

Agile teams generally prefer to express estimates in units other than the time-honored "man-hours." Possibly the most widespread unit is "story points." Using relative sizing instead of hours.

Product Backlog

A list of the new features, changes to existing features, bug fixes, infrastructure changes or other activities that a team may deliver in order to achieve a specific outcome. Your product's wishlist.

Product Owner

A role on a product development team responsible for managing the product backlog in order to achieve the desired outcome. The person who decides what features get built and in what order.

Project Chartering

A high-level summary of the project's key success factors displayed on one wall of the team room as a flipchart-sized sheet of paper. Your project's mission statement on the wall.

Q is for...

Quick Design Session

When "simple design" choices have far-reaching consequences, two or more developers meet for a quick design session at a whiteboard. Impromptu planning sessions when things get complicated.

R is for...

Refactoring

Improving the internal structure of an existing program's source code, while preserving its external behavior. Cleaning up code to make it better without changing what it does.

Relative Estimation

One of the several distinct flavors of estimation used in Agile teams, consisting of estimating tasks or user stories, not separately and in absolute units of time. Comparing tasks to each other instead of guessing exact hours.

Rules of Simplicity

A set of criteria, in priority order, proposed by Kent Beck to judge whether some source code is "simple enough." Guidelines for keeping code clean and simple.

S is for...

Scrum

A process framework used to manage product development and other knowledge work. Scrum is empirical in that it provides a means for teams to establish a hypothesis of how they think something works, try it out, reflect on the experience, and make the appropriate adjustments. A popular Agile framework that organizes work into sprints.

Scrum Master

The team role responsible for ensuring the team lives agile values and principles and follows the processes and practices that the team agreed they would use. The person who helps the team follow Scrum practices and removes obstacles.

Scrum of Scrums

A technique to scale Scrum up to large groups (over a dozen people), consisting of dividing the groups into Agile teams of 5-10. Scrum for really big teams.

Scrumban

A mixture of the Scrum Method and the Kanban Method. The best of both worlds.

Sign Up For Tasks

Members of an Agile development team normally choose which tasks to work on, rather than being assigned work by a manager. Self-service work assignment.

Simple Design

A team adopting the "simple design" practice bases its software design strategy on a set of "simple design" principles. Keeping things as simple as possible.

Sprint Backlog

The subset of product backlog that a team targets to deliver during a sprint to accomplish the sprint goal and progress toward an outcome. What the team commits to finishing in the next sprint.

Story Mapping

Ordering user stories along two independent dimensions based on the order activities occur and sophistication of implementation. Organizing user stories visually to see the big picture.

Story Splitting

Breaking up one user story into smaller ones, while preserving the property that each user story separately has measurable business value. Chopping big features into smaller, valuable pieces.

Sustainable Pace

The team aims for a work pace that they would be able to sustain indefinitely. Not burning out your team with crazy hours.

T is for...

Task Board

A basic task board is divided into three columns labeled "To Do," "In Progress," and "Done." Cards are placed in the columns reflecting the current status. A simple visual way to track work.

TDD

Test-driven development (TDD) is a style of programming where coding, testing, and design are tightly interwoven. Benefits include reduction in defect rates. Writing tests before writing the actual code.

Team

A "team" in the Agile sense is a small group of people, assigned to the same project or effort, nearly all of them on a full-time basis. Your core group of people building the product.

Team Room

The team has the use of a dedicated space for the duration of the project, set apart from other groups' activities. A shared workspace for the whole team.

The Three C's

"Card, Conversation, Confirmation" is a formula that captures the social nature of user stories. The three parts of every good user story.

Three Amigos

Refers to the primary perspectives to examine an increment of work before, during, and after development. Those perspectives are: Business - What problem are we trying to solve? Development - How might we build a solution? Testing - What could possibly happen? The three key viewpoints on every feature.

Three Questions

The daily meeting is structured around the following three questions: What have you completed? What will you do next? What is getting in your way? The standard daily standup format.

Timebox

A previously agreed period of time during which a person or a team works steadily towards completion of some goal. A fixed amount of time to work on something.

U is for...

Ubiquitous Language

Teams use a ubiquitous language to use the vocabulary of a business in the requirements, design discussions and source code for a software product. Everyone using the same words to mean the same things.

Unit Testing

A unit test is a short program fragment which exercises some narrow part of the product's source code and checks the results. Small tests that check if individual pieces of code work correctly.

Usability Testing

An empirical, exploratory technique to answer questions such as "how would an end user respond to our software under realistic conditions?" Testing how real people actually use your app.

User Stories

In consultation with the customer or product owner, the team divides up the work to be done into functional increments called "user stories." Short descriptions of features from the user's perspective.

User Story Template

The "role-feature-reason" template is one of the most commonly recommended aids to write user stories: As a ... I want ... So that ... A formula for writing good user stories.

V is for...

Velocity

The total effort estimates associated with user stories that were completed during an iteration. How much work your team typically gets done in a sprint.

Version Control

Not merely "good practice" but an enabler of a number of Agile practices, such as continuous integration. A system that tracks changes to your code over time.

Why Does This Matter for Your Business?

Understanding Agile terminology isn't just about sounding smart in meetings (though that's a nice bonus). When you speak the same language as your development team, you can:

  • Make better decisions about your product
  • Communicate more clearly with stakeholders
  • Spot problems before they become expensive
  • Build better relationships with your team
  • Actually understand what your developers are talking about in meetings

The Bottom Line

Agile might seem complicated at first, but at its heart, it's about being flexible, working together, and delivering value to your customers quickly. These terms are just tools to help everyone stay on the same page.

Remember: you don't need to memorize every term overnight. Start with the basics like Sprint, Backlog, and User Story, then build from there. Your team will appreciate a founder who makes the effort to understand their world.

Ready to put this knowledge to work and build something amazing? Reach out to us for all your software development and fractional CTO needs – we'll help you navigate the Agile world and turn your vision into reality!