Working in a large organization with over 100+ employees? Discover how Dovetail can scale your ability to keep the customer at the center of every decision. Contact sales.
Short on time? Get an AI generated summary of this article instead
Agile is an iterative, collaborative, and adaptable strategy typically thought of as the opposite of the waterfall (top-down) development approach. It’s a very popular method of developing software.
Understanding the key terms that are used during agile development is an important part of being able to work effectively in any of the agile methodologies.
Below, you’ll find a list of 60 key terms that are vital to understanding the mindset and methodologies inspired by the Agile Manifesto.
Every product feature should meet stakeholder requirements. The acceptance test verifies that the features in question pass all acceptance criteria. These criteria are typically written in collaboration with developers, testers, and other stakeholders. The test ensures the final product will function correctly and meet end users’ expectations.
As software development became more complex, the need for adaptability became greater. “Agile” is a set of principles and practices originating from the Manifesto for Agile Software Development, or the Agile Manifesto. They allow software development processes to provide this level of flexibility.
The process evolves requirements and solutions through a collaborative process that brings teams from all areas of software development together. It allows these cross-functional teams to work together simultaneously—this is where it differs from the more linear software development style that came before it.
An agile iteration is a time-boxed period in which a team works to complete a set of user stories or tasks. These periods typically last between one and four weeks each. The goal for each iteration is to create a potentially shippable product increment. Developing software in this way allows for regular feedback and adjustments.
The Agile Manifesto outlines four key values and 12 principles for agile software development. It serves as a guide for teams who want to implement an agile workflow.
Here are the Manifesto’s four key values:
Placing individuals and interactions over processes and tools
Working software over comprehensive documentation
Customer collaboration over contract negotiation
Responding to change instead of following a plan
The 12 principles expand on these values.
While the Agile Manifesto lays out the principles of agile development, the process doesn’t work if nobody embraces the principles.
An agile mindset values continuous learning, collaboration, and flexibility. In this context, an agile mind focuses on delivering value to customers, adapting to changing environments, and improving team processes.
An agile release train (ART) is a group of multiple agile teams all working together over the long term. These are common in large enterprises where the staff is large enough to accommodate multiple groups.
Teams working within an ART typically work within a scaled agile framework (SAFe). This framework makes it easier to manage enterprise-scale agile development.
Agile software development is an umbrella term for methodologies based on the Agile Manifesto.
There are several approaches in this category, including scrum, kanban, and extreme programming (XP). Though they differ in approach, each focuses on iterative development, collaboration, and flexibility in responding to changes.
Companies that are not currently using agile development need to make changes to adapt to the new approach. Agile transformation involves transitioning a company’s culture, processes, and structures to embrace an agile mindset. It aims to enhance responsiveness, collaboration, and productivity across all levels of the organization.
Organization is a key aspect of successful agile development. A backlog is one of the tools used to keep team members organized.
A backlog is a list of features, enhancements, bug fixes, and other technical tasks that the team plans on working on during the development process. It provides a single source of truth for what needs to be accomplished.
An agile mindset is all about flexibility. Backlog grooming embraces this mindset. It’s the ongoing process of reviewing and updating the backlog.
The process includes adding new user stories, re-prioritizing existing ones, ensuring that large tasks are broken down into manageable chunks, and ensuring that backlog items are ready for future sprints.
Like in other areas of development, a bottleneck is any point in the workflow that limits productivity and causes delays and other inefficiencies. An agile team must quickly identify and address bottlenecks to keep the process moving smoothly.
To stay on course and adapt to changing timelines, agile teams must keep track of what needs to be done versus how much time remains. The burndown chart serves this purpose. It’s a visual representation of the amount of work remaining versus the time remaining.
Agile teams use burndown charts to quickly determine whether they are on track to complete the tasks remaining in the iteration or sprint.
A burnup chart is the opposite of the burndown chart. It shows the amount of work completed over time.
A burnup chart serves a similar purpose to a burndown chart. It allows agile teams to visualize progress toward the final goal and identify how past scope changes impacted the project’s timeline, enabling better future forecasting.
Cadence is the rhythm at which an agile team works. The ideal cadence will be regular and predictable, allowing the team to accurately predict how much work they will be able to accomplish in a given timeframe and forecast the completion dates for features and other milestones.
Continuous integration is a development practice designed to accelerate the problem-solving process.
During CI, team members frequently integrate their work into a shared repository. When changes are made to the repository, automated tests are run. This process detects issues early, ensuring code quality and preventing problems from occurring further down the line.
A daily scrum is a short, time-boxed meeting (usually 15 minutes) where team members synchronize their work. They discuss what they did yesterday, what they plan to do today, and any impediments, fostering collaboration and transparency.
Frequent and well-documented daily scrums help teams learn from past projects to improve future workflows.
Bottlenecks can arise if a team starts working on a story or task before all the pieces are in place. The definition of ready is a set of criteria that sets out what must be in place before the team can commit to working on a given task. It ensures that items are well-understood, sized appropriately, and have clear acceptance criteria.
One of the frameworks teams can use during agile development is disciplined agile delivery. It provides a structured approach for applying agile principles throughout the project lifecycle.
DAD emphasizes tailoring decisions to the specific context of the project. It integrates concepts and practices from various agile methodologies to support a flexible and adaptable approach.
DSDM is another common agile framework that stands out for its strong focus on user and stakeholder involvement throughout the development process.
Unlike some other frameworks, DSDM places a strong emphasis on the entire project lifecycle, starting with detailed feasibility and foundation phases before development begins.
Agile epics are large, high-level bodies of work that encompass multiple smaller stories or tasks. An epic typically results from a much larger set of features or goals that have been broken down into smaller, more manageable tasks during the backlog refinement stage.
The agile process depends heavily on accurate predictions of how long a task will take and the resources and effort that need to go into it. If any of these are predicted inaccurately, delays will occur in development. Estimation simply refers to the process of predicting these factors.
As the name implies, feature-driven development is an agile methodology that places primary emphasis on designing and developing new features.
FDD uses a series of short, iterative cycles to build up features. Each cycle aims to have a working software product ready to be extended further with the next cycle.
A Gantt chart is a visual project management tool that displays tasks or activities along a timeline.
These tools are useful in many contexts, but agile teams often use them to plan and track project schedules, dependencies, and milestones.
The term “information radiators” is used to describe any visually oriented data display that allows teams and stakeholders to get information about a project’s status and progress. It will also highlight any impediments the project is facing. In other words, these displays radiate information.
Some examples include burndown charts, task boards, and cumulative flow diagrams.
An impediment is any obstacle that hinders a team’s progress toward their goals. Identifying and addressing impediments quickly is vital for the team to maintain productivity and a smooth workflow.
An iteration is a short, fixed period, typically one to four weeks, during which an agile team works to complete a set of user stories or tasks.
As with many other areas of agile development, each iteration is planned with the goal of delivering a potentially shippable product increment.
Kanban is an agile methodology that relies heavily on visualizing workflows. Stages of the project are tracked depending on their status, such as “to do,” “in progress,” and “completed.”
The kanban approach maximizes efficiency by limiting the number of items in progress to ensure continuous delivery and a steady workflow over the fixed iterations or sprints common with other agile methods.
A kanban board is a visual tool that teams using a kanban system use to manage and track their workflow.
The board typically consists of columns representing different stages of the workflow. Tasks are represented by cards that move through the columns as work progresses.
A team that works in a lean way aims to eliminate waste and improve processes so that only the bare essentials required to get the job done remain. This limits distractions and other processes that don’t contribute to the final product, allowing teams to work more productively toward their end goal.
In agile processes, retrospectives are important for evaluating what went well and what needed improvement during a project or iteration. They allow teams to learn from past projects to improve future ones.
Mad sad glad is a retrospective technique where each team member expresses something about the project that made them feel each of those emotions. It helps identify areas for improvement.
This is a gamified way of estimating how long a task will take. Planning poker allows teams to get an accurate read without one person’s choice influencing everyone else’s.
Team members are all given a deck of cards with the Fibonacci sequence of numbers on them. For each task, team members simultaneously turn over the card they think represents how long the task will take.
A product manager is the person responsible for defining the product strategy, vision, and roadmap. They work closely with stakeholders, customers, and development teams to ensure the product meets market needs and delivers value.
A product owner is the person responsible for defining and prioritizing the product backlog and ensuring it reflects the needs and goals of all stakeholders involved in the project. They work closely with the development team to ensure the right features are delivered.
Refactoring is the process of improving the internal structure and design of existing code without changing its external behavior. It’s often used to make older code easier to manage with newer changes and requirements that may not work well with existing structures.
Refactoring can enhance code readability, maintainability, and performance.
A release plan outlines the schedule and scope of product releases. It includes the features, enhancements, and bug fixes that will be delivered in each release.
Agile teams use the release plan as a high-level roadmap for delivering value to customers and other stakeholders.
A retrospective is a regular meeting held at the end of an iteration or sprint. In a retrospective, the team reflects on what went well, what didn’t, and how they can improve.
When they perform these retrospectives regularly, teams can learn from previous efforts, which allows for continuous improvement in their agile workflows.
The SAFe is a set of organizational and workflow patterns that help businesses put agile practices to work at an enterprise scale. It addresses some of the common difficulties of enterprise-scale agile development with guidance on roles, responsibilities, and activities required to scale agile across multiple teams.
Scrum is an agile framework for developing, delivering, and maintaining complex products.
The primary iteration in the scrum framework is called a sprint.
The framework assigns someone to oversee the process, called the scrum master.
Daily meetings address what will be done in the current sprint or what the upcoming sprint will accomplish.
Retrospectives at the end of each scrum aim to improve the next.
A scrum board is a visual tool used by scrum teams to manage and track a sprint’s progress. Similar to a kanban board, it lays out the “to do,” “in progress,” and “completed” status of each task. However, a scrum board focuses only on the tasks in the current sprint, not a complete project like kanban does.
The scrum master is the person in charge of the scrum process. They ensure the scrum team follows scrum practices. During the process, they will remove impediments and foster an environment for continuous improvement and efficient collaboration.
A scrum meeting, often referred to as a daily stand-up, is a short, daily meeting where team members update each other on their progress. They will use this time to discuss plans for the day and outline any obstacles they are facing.
Scrum meetings keep everyone on the same page and help identify any impediments early.
When multiple scrum teams must work together, collaboration requires more effort. A scrum of scrums is a meeting that allows multiple scrum teams to coordinate their work and address dependencies. Representatives from each team share updates, discuss problems, and plan out how they will work together.
A scrum team is a cross-functional group responsible for delivering product increments. Typically, developers, testers, and other roles needed to complete the work are all working at the same time as a scrum team. The team also includes a scrum master and product owner.
Scrumban is an agile methodology that aims to combine the elements of the scrum and kanban methodologies. It merges scrum’s structured approach for planning and review with kanban’s focus on continuous flow and visual workflow management.
A sprint is a time-boxed iteration, usually lasting one to four weeks. During this period, a scrum team works to complete a set of user stories or tasks.
In keeping with the spirit of agile development, each sprint aims to deliver a potentially shippable product increment.
The sprint backlog is a list of user stories, tasks, and bugs that the scrum team commits to completing during a sprint. These items come directly from the product backlog, which remains the single source of truth for the project’s goals.
The sprint goal is a clear and concise statement that describes the sprint’s goal. The sprint goal helps the team align their efforts and measure the success of their efforts at the end of the sprint.
Sprint planning is a meeting held at the beginning of a sprint. During scrum planning, the team discusses user stories and tasks they will complete during the sprint. In this phase, the team defines the sprint goal and creates the sprint backlog.
A sprint retrospective is a meeting held at the end of a sprint where the team reflects on the past sprint to identify what went well, what didn’t, and how they can improve. Scrum teams use this data to improve processes for the next sprint.
A sprint review is a meeting held at the end of a sprint where the team presents the completed work to stakeholders. It provides key stakeholders the opportunity to inspect the product in its current stage and provide input the team can use to update the product backlog.
A stakeholder is anyone with an interest in the product or project. It includes customers, users, sponsors, and team members. During the agile process, stakeholders frequently provide feedback to ensure the product meets their needs and expectations.
Story points are a unit of measure that agile teams use to estimate the relative effort or complexity of a user story. Accurately assigned story points help teams gauge the amount of work required, making it easier to facilitate planning and prioritization.
Story splitting is the process of breaking down large user stories (epics) into smaller, more manageable pieces. The goal of story splitting is to create stories that are small enough to be completed within a sprint and to allow for more granular and accurate estimation and planning.
A task board is a generic term for any visual tool that agile teams use to track the progress of tasks during a sprint or iteration. This often takes the form of a kanban board or scrum board, but any visual way of representing the tasks can qualify as a task board.
Timeboxing is an agile practice of setting a fixed maximum duration for an activity or task. Creating limits in this way helps ensure focus, efficiency, and timely delivery by limiting the time available to complete the work.
A user story is a brief, informal description of a feature or functionality from the end-user’s perspective. It typically follows the format: “I want [feature] so that [benefit].”
By creating or gathering user stories, teams can capture requirements in a clear, concise way to guide development efforts.
User story mapping is a visual technique for organizing and prioritizing user stories. It helps teams understand the user journey so they can identify gaps and plan the release of features in a way that delivers value incrementally and regularly.
Velocity refers to the amount of work the scrum team completes during a sprint. The value is typically expressed in story points. When a team learns how many story points they can complete in a given time frame, they can more accurately plan and forecast future sprints.
A work item is any task, user story, bug, or piece of work that needs to be completed by the team. Work items are tracked in the backlog. They may be amended during the development process to adapt to changing conditions.
Extreme programming focuses on very fast iteration cycles that rapidly develop user stories. In addition to moving quickly through stories, teams often focus heavily on code reviews and unit testing to ensure quality output. Features are only implemented when needed, which facilitates a rapid pace and keeps the team focused.
Do you want to discover previous interviews faster?
Do you share your interview findings with others?
Do you interview customers?
Last updated: 17 October 2024
Last updated: 19 November 2024
Last updated: 22 October 2024
Last updated: 22 October 2024
Last updated: 24 October 2024
Last updated: 24 October 2024
Last updated: 22 October 2024
Last updated: 22 October 2024
Last updated: 29 October 2024
Last updated: 24 October 2024
Last updated: 19 November 2024
Last updated: 13 May 2024
Last updated: 13 May 2024
Last updated: 10 August 2023
Last updated: 19 November 2024
Last updated: 19 November 2024
Last updated: 29 October 2024
Last updated: 24 October 2024
Last updated: 24 October 2024
Last updated: 24 October 2024
Last updated: 22 October 2024
Last updated: 22 October 2024
Last updated: 22 October 2024
Last updated: 22 October 2024
Last updated: 17 October 2024
Last updated: 13 May 2024
Last updated: 13 May 2024
Last updated: 10 August 2023
Get started for free
or
By clicking “Continue with Google / Email” you agree to our User Terms of Service and Privacy Policy