Learn the unique terminology used in Agile development from the experts at Agile Alliance.
Help the Agile community practice continuous learning. If you have suggestions for revisions to existing terms or ideas for new terms, please let us know.
Acceptance Test Driven Development (ATDD) involves team members with different perspectives (customer, development, testing) collaborating to write acceptance tests in advance of implementing the corresponding functionality.
An acceptance test is a formal description of the behavior of a software product, generally expressed as an example or a usage scenario. A number of different notations and approaches have been proposed for such examples or scenarios.
Antipatterns are common solutions to common problems where the solution is ineffective and may result in undesired consequences.
In the context of software development, build refers to the process that converts files and other assets under the developers' responsibility into a software product in its final or consumable form. The build is automated when these steps are repeatable, require no direct human intervention, and can be performed at any time with no information other than what is stored in the source code control repository.
Backlog grooming is when the product owner and some, or all, of the rest of the team refine the backlog on a regular basis to ensure the backlog contains the appropriate items, that they are prioritized, and that the items at the top of the backlog are ready for delivery.
BDD is a practice where members of the team discuss the expected behavior of a system in order to build a shared understanding of expected functionality.
Burndown charts and burnup charts track the amount of output (in terms of hours, story points, or backlog items) a team has completed across an iteration or a project.
Business agility is the ability of an organization to sense changes internally or externally and respond accordingly in order to deliver value to its customers.
Collective code ownership is the explicit convention that every team member can make changes to any code file as necessary: either to complete a development task, to repair a defect, or to improve the code's overall structure.
Continuous deployment aims to reduce the time elapsed between writing a line of code and making that code available to users in production. To achieve continuous deployment, the team relies on infrastructure that automates and instruments the various steps leading up to deployment, so that after each integration successfully meeting these release criteria, the live application is updated with new code.
Continuous Integration is the practice of merging code changes into a shared repository several times a day in order to release a product version at any moment. This requires an integration procedure which is reproducible and automated.
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.
Customer development is a four-step framework, originally identified by Steve Blank, to discover and validate that you have identified a need(s) that customers have built the right product to satisfy […]
The daily meeting is one of the most commonly practiced Agile techniques and presents opportunity for a team to get together on a regular basis to coordinate their activities.
The definition of done is 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.
Definition of Ready involves creating clear criteria that a user story must meet before being accepted into an upcoming iteration. This is typically based on the INVEST matrix.
An epic is 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.
In software development, an "estimate" is the evaluation of the effort necessary to carry out a given development task; this is most often expressed in terms of duration.
Exploratory testing is, more than strictly speaking a "practice," a style or approach to testing software which is often contrasted to "scripted testing."
Extreme Programming (XP) is an agile software development framework that aims to produce higher quality software, and higher quality of life for the development team. XP is the most specific of the agile frameworks regarding appropriate engineering practices for software development.
An Agile team frequently releases its product into the hands of end users, listening to feedback, whether critical or appreciative.
The Given-When-Then formula is 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.
The team meets regularly to reflect on the most significant events that occurred since the previous such meeting, and identify opportunities for improvement.
In an Agile context, Incremental Development is when each successive version of a product is usable, and each builds upon the previous version by adding user-visible functionality.
"Information radiator" is the term for 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.
"Integration" (or "integrating") refers to any efforts still required for a project team to deliver a product suitable for release as a functional whole.
The acronym INVEST 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.
An iteration is a timebox during which development takes place. The duration may vary from project to project and is usually fixed.
Agile projects are iterative insofar as they intentionally allow for "repeating" software development activities, and for potentially "revisiting" the same work products (the phrase "planned rework" is sometimes used; refactoring is a good example).
The Kanban Method is a means to design, manage, and improve flow systems for knowledge work. The method also allows organizations to start with their existing workflow and drive evolutionary change. They can do this by visualizing their flow of work, limit work in progress (WIP) and stop starting and start finishing.
A Kanban Board is a visual workflow tool consisting of multiple columns. Each column represents a different stage in the workflow process.
Lead Time is the time between a customer order and delivery. In software development, it can also be the time between a requirement made and its fulfillment.
A Milestone Retrospective is a team's detailed analysis of the project's significant events after a set period of time or at the project's end.
A Minimum Marketable Feature is a small, self-contained feature that can be developed quickly and that delivers significant value to the user.
A Minimum Viable Product is the "version of a new product which allows a team to collect the maximum amount of validated learning about customers with the least effort."
Mob Programming is 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.
Mock Objects (commonly used in the context of crafting automated unit tests) consist of instantiating a test-specific version of a software component.
A Niko-niko Calendar is 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.
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 – that’s Open […]
Pair programming consists of two programmers sharing a single workstation (one screen, keyboard and mouse among the pair). The programmer at the keyboard is usually called the "driver", the other, also actively involved in the programming task but focusing more on overall direction is the "navigator"; it is expected that the programmers swap roles every few minutes or so.
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.
Agile teams generally prefer to express estimates in units other than the time-honored "man-hours." Possibly the most widespread unit is "story points."
A product backlog is 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.
The product owner is a role on a product development team responsible for managing the product backlog in order to achieve the desired outcome that a product development team seeks to accomplish.
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.
When "simple design" choices have far-reaching consequences, two or more developers meet for a quick design session at a whiteboard.
Refactoring consists of improving the internal structure of an existing program's source code, while preserving its external behavior.
Relative estimation is one of the several distinct flavors of estimation used in Agile teams, and consists of estimating tasks or user stories, not separately and in absolute units of time, […]
Rules of Simplicity is a set of criteria, in priority order, proposed by Kent Beck to judge whether some source code is "simple enough."
Scrum is 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. That is, when the framework is used properly.
The scrum master is 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.
A technique to scale Scrum up to large groups (over a dozen people), consisting of dividing the groups into Agile teams of 5-10.
Members of an Agile development team normally choose which tasks to work on, rather than being assigned work by a manager.
A team adopting the "simple design" practice bases its software design strategy on a set of "simple design" principles.
A sprint backlog is the subset of product backlog that a team targets to deliver during a sprint to accomplish the sprint goal and progress toward an outcome.
Story mapping consists of ordering user stories along two independent dimensions based on the order activities occur and sophistication of implementation.
Splitting consists of breaking up one user story into smaller ones, while preserving the property that each user story separately has measurable business value.
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.
Test-driven development (TDD) is a style of programming where coding, testing, and design are tightly interwoven. Benefits include reduction in defect rates.
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.
The team has the use of a dedicated space for the duration of the project, set apart from other groups' activities.
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 to solve that problem? Testing - What about this, what could possibly happen?
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?
A timebox is a previously agreed period of time during which a person or a team works steadily towards completion of some goal.
Teams use a ubiquitous language to use the vocabulary of a business in the requirements, design discussions and source code for a software product.
A unit test is a short program fragment which exercises some narrow part of the product's source code and checks the results.
Usability testing is an empirical, exploratory technique to answer questions such as "how would an end user respond to our software under realistic conditions?"
In consultation with the customer or product owner, the team divides up the work to be done into functional increments called "user stories."
The "role-feature-reason" template is one of the most commonly recommended aids to write user stories: As a . I want . So that .
Velocity is the total effort estimates associated with user stories that were completed during an iteration.
Version control is not merely "good practice" but an enabler of a number of Agile practices, such as continuous integration
Agile Alliance offers many online and in-person events and workshops for our members. If you’re not currently a member, you can join now to take advantage of our many members-only resources and programs.
By subscribing, you acknowledge the Agile Alliance Privacy Policy, and agree to receive our emails.
Featured All day
Featured September 25 - September 27
Featured All day
Your membership enables Agile Alliance to offer a wealth of first-rate resources, present renowned international events, support global community groups, and more — all geared toward helping Agile practitioners reach their full potential and deliver innovative, Agile solutions.
Our new Annual Partner Program offers a new and exciting level of engagement beyond event sponsorship.
Our Corporate Supporting Members are vital to the mission of Agile Alliance. Click here to view all corporate members.
Our Corporate Supporting Members are vital to the mission of Agile Alliance.
Click here to view all corporate members.
Get the latest Agile Alliance news and updates, including event announcements, special offers, discounts, and more by becoming a newsletter subscriber today.
©2024 Agile Alliance | All Rights Reserved | Privacy Policy
Get the latest news and updates from Agile Alliance, including event announcements, special offers, discounts, and more by becoming a newsletter subscriber today.
©2024 Agile Alliance
All Rights Reserved | Privacy Policy
Not yet a member? Sign up now
We use cookies on our website to give you the most relevant experience by remembering your preferences and repeat visits. By clicking “Accept”, you consent to the use of ALL the cookies. However you may visit Cookie Settings to provide a controlled consent.
Manage consentThis website uses cookies to improve your experience while you navigate through the website. Out of these cookies, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website. These cookies will be stored in your browser only with your consent. You also have the option to opt-out of these cookies. But opting out of some of these cookies may have an effect on your browsing experience.
Please see our Privacy Notice for further information.
Always EnabledNecessary cookies are absolutely essential for the website to function properly. These cookies ensure basic functionalities and security features of the website, anonymously.
Cookie | Duration | Description |
---|---|---|
__cfduid | 1 month | The cookie is used by cdn services like CloudFare to identify individual clients behind a shared IP address and apply security settings on a per-client basis. It does not correspond to any user ID in the web application and does not store any personally identifiable information. |
_csrf | session | This cookie is essential for the security of the website and visitor. It ensures visitor browsing security by preventing cross-site request forgery. |
_GRECAPTCHA | 5 months 27 days | This cookie is set by Google. In addition to certain standard Google cookies, reCAPTCHA sets a necessary cookie (_GRECAPTCHA) when executed for the purpose of providing its risk analysis. |
cookielawinfo-checbox-analytics | 11 months | This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Analytics". |
cookielawinfo-checbox-functional | 11 months | The cookie is set by GDPR cookie consent to record the user consent for the cookies in the category "Functional". |
cookielawinfo-checbox-others | 11 months | This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Other. |
cookielawinfo-checkbox-advertisement | 1 year | The cookie is set by GDPR cookie consent to record the user consent for the cookies in the category "Advertisement". |
cookielawinfo-checkbox-necessary | 11 months | This cookie is set by GDPR Cookie Consent plugin. The cookies is used to store the user consent for the cookies in the category "Necessary". |
cookielawinfo-checkbox-performance | 11 months | This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Performance". |
gdpr[allowed_cookies] | 1 year | This cookie is set by the GDPR WordPress plugin. It is used to store the cookies allowed by the logged-in users and the visitors of the website. |
JSESSIONID | session | Used by sites written in JSP. General purpose platform session cookies that are used to maintain users' state across page requests. |
PHPSESSID | session | This cookie is native to PHP applications. The cookie is used to store and identify a users' unique session ID for the purpose of managing user session on the website. The cookie is a session cookies and is deleted when all the browser windows are closed. |
pmpro_visit | The cookie is set by PaidMembership Pro plugin. The cookie is used to manage user memberships. | |
viewed_cookie_policy | 11 months | The cookie is set by the GDPR Cookie Consent plugin and is used to store whether or not user has consented to the use of cookies. It does not store any personal data. |
Functional cookies help to perform certain functionalities like sharing the content of the website on social media platforms, collect feedbacks, and other third-party features.
Cookie | Duration | Description |
---|---|---|
__atuvc | 1 year 1 month | This cookie is set by Addthis to make sure you see the updated count if you share a page and return to it before our share count cache is updated. |
__atuvs | 30 minutes | This cookie is set by Addthis to make sure you see the updated count if you share a page and return to it before our share count cache is updated. |
__jid | 30 minutes | Used to remember the user's Disqus login credentials across websites that use Disqus |
aka_debug | This cookie is set by the provider Vimeo.This cookie is essential for the website to play video functionality. The cookie collects statistical information like how many times the video is displayed and what settings are used for playback. | |
bcookie | 2 years | This cookie is set by linkedIn. The purpose of the cookie is to enable LinkedIn functionalities on the page. |
CONSENT | 16 years 8 months 15 days 5 hours | Description Pending |
disqus_unique | 1 year | Disqus.com internal statistics |
lang | session | This cookie is used to store the language preferences of a user to serve up content in that stored language the next time user visit the website. |
language | This cookie is used to store the language preference of the user. | |
lidc | 1 day | This cookie is set by LinkedIn and used for routing. |
locale | 3 days | This cookie is used to store the language preference of a user allowing the website to content relevant to the preferred language. |
STYXKEY_aa_signup_visited | session | No description |
Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.
Cookie | Duration | Description |
---|---|---|
_gat_UA-17319182-1 | 1 minute | Set by Google Analytics and Google Tag Manager to enable website owners to track visitor behaviour and measure site performance. These cookies are used to collect information about how you use our website. The information collected includes number of visitors, pages visited and time spent on the website. The information is collected by Google Analytics in aggregated and anonymous form, and we use the data to help us make improvements to the website. |
YSC | session | This cookies is set by Youtube and is used to track the views of embedded videos. |
Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics the number of visitors, bounce rate, traffic source, etc.
Cookie | Duration | Description |
---|---|---|
_ga | 2 years | This cookie is installed by Google Analytics. The cookie is used to calculate visitor, session, campaign data and keep track of site usage for the site's analytics report. The cookies store information anonymously and assign a randomly generated number to identify unique visitors. |
_gat_gtag_UA_17319182_1 | 1 minute | Set by Google Analytics and Google Tag Manager to enable website owners to track visitor behaviour and measure site performance. These cookies are used to collect information about how you use our website. The information collected includes number of visitors, pages visited and time spent on the website. The information is collected by Google Analytics in aggregated and anonymous form, and we use the data to help us make improvements to the website. |
_gat_UA-0000000-1 | 1 minute | Set by Google Analytics and Google Tag Manager to enable website owners to track visitor behaviour and measure site performance. These cookies are used to collect information about how you use our website. The information collected includes number of visitors, pages visited and time spent on the website. The information is collected by Google Analytics in aggregated and anonymous form, and we use the data to help us make improvements to the website. |
_gid | 1 day | This cookie is installed by Google Analytics. The cookie is used to store information of how visitors use a website and helps in creating an analytics report of how the website is doing. The data collected including the number visitors, the source where they have come from, and the pages visted in an anonymous form. |
eud | 1 year 24 days | The domain of this cookie is owned by Rocketfuel. This cookie is used to sync with partner systems to identify the users. This cookie contains partner user IDs and last successful match time. |
S | 1 hour | domain .google.com |
uvc | 1 year 1 month | The cookie is set by addthis.com to determine the usage of Addthis.com service. |
vuid | 2 years | This domain of this cookie is owned by Vimeo. This cookie is used by vimeo to collect tracking information. It sets a unique ID to embed videos to the website. |
Advertisement cookies are used to provide visitors with relevant ads and marketing campaigns. These cookies track visitors across websites and collect information to provide customized ads.
Registers data on visitors from multiple visits and on multiple websites. This information is used to measure the efficiency of advertisement on websites. |
Other uncategorized cookies are those that are being analyzed and have not been classified into a category as yet.
Cookie | Duration | Description |
---|---|---|
CP5XKN6QLDFWUC | This cookie is provided by the Calculated Fields form. This cookie is used by the online calculators on the website. Without the Calculated Fields cookie the instant quotation may not work. |