Introduction
Agile methodology has revolutionized the way teams approach project management and software development. Even though Agile has been around for only two decades, agile terminology still significantly impacts project management.
To manage projects effectively, understanding Agile terminologies is important, whether you’re a seasoned project manager or just starting your journey in software development.
In this article, we’ll learn the important Agile terminologies and key concepts that will help you master the Agile methodology.
So let us dive deeper into the Agile terminology, shall we?
List of important agile terminologies that you must know
1. Acceptance test-driven development
The first agile terminology that is popular in agile software development is ATDD (Acceptance Test-Driven Development). It is a collaborative method that involves team members from several viewpoints (customer, development, and testing) working together to write acceptance tests before implementing the relevant functionality.
2. Acceptance testing
Another agile term that is used in agile is acceptance testing. An acceptance test is a formal explanation of a software product’s behavior in the glossary of Agile terms, usually given in the form of an example of a usage scenario.
In such cases or circumstances, experts have proposed various notations and techniques. In many cases, the goal is to use a software tool to automate the execution of such tests, either ad-hoc for the development team or off the shelf.
3. Antipattern
Antipatterns are the standard solutions that are ineffective and may result in unwanted results for their shared problem. While using this term be extra cautious as it can bring negative results to the user.
4. Automated build
Within the confines of software development, a “build” refers to converting files and other assets under a developer’s responsibility into a cohesive software product in a final consumable form.
When we say the build is automated, we mean that it repeats steps without requiring human interaction or intervention. It also means the build can be executed using only the information already stored in the source code repository.
5. Backlog refinement (backlog grooming)
Another popular agile terminology that is known by every professional is backlog refinement. In the backlog refinement process, the product owner and some or all of the team constantly refine the backlog to ensure it contains only the correct type of items. It’s also crucial to prioritize these appropriate items and place them at the top of the backlog when they are ready for delivery.
6. Behavior-driven development (BDD)
Behavior Driven Development (BDD), is an agile practice where you have team members deliberate the usually anticipated behavior of a given system to create a collective understanding of expected functionality.
7. Burndown chart
Burndown and burnup charts show how much output (in hours, narrative points, or backlog items) a team has produced during an iteration or project and is one of the critical terms in this compilation of Agile terms.
8. Business agility
Business agility refers to an organization’s ability to detect and adapt to changes within and outside to provide value to its customers.
9. Collective ownership
Collective code ownership is the express agreement that any team member can make changes to any code file as needed to fulfill a development task, fix a problem, or improve the overall structure of the code.
10. Continuous deployment
The goal of continuous deployment is to shorten the time between developing a line of code and making it available to users in production. The team relies on infrastructure that automates and instruments the many phases leading up to deployment to achieve continuous deployment. We update the live application with new code when each integration meets these release criteria.
11. Continuous integration
Continuous Integration is the process of merging code changes into a shared repository numerous times per day to release a new version of a product at any time. This necessitates a repeatable and automated integration approach.
12. CRC cards
CRC, or what is more commonly known as Class Responsibility Collaborator, is an object-oriented design tool that teams can use to talk about what a class should know and do and how it interacts with other classes and other Agile terms.
13. Customer development
Customer development is a four-step strategy for validating assumptions about your product and business using a scientific manner.
14. Daily meeting
One of the most widely used Agile strategies is the daily meeting, which allows a team to get together regularly to coordinate their efforts.
15. Definition of done
The definition of done is an agreed-upon list of actions that the conclusion of a sprint must complete bringing a product increment, usually represented by a user story, to a finished state.
16. Definition of ready
The definition of Ready entails establishing specific criteria that a user narrative must achieve to be accepted into a subsequent iteration. Typically, this is based on the INVEST matrix.
17. Estimation
An “estimate” in software development calculates the effort required to complete a specific development activity, which is usually stated in terms of time.
18. Exploratory testing
Another agile term that we have included in this agile terminology list is exploratory testing. It is a style or technique for testing software typically contrasted with “scripted testing.” It is more than just a “practice.”
19. Facilitation
A facilitator is a person who chooses or is assigned the responsibility of leading a meeting.
20. Frequent releases
An Agile team frequently releases its product into the hands of end-users, listening to feedback, whether critical or appreciative.
21. Given when then
The Given-When-Then formula is a template for building acceptance tests for a User Story: (Given) some background, (When) some action is taken, (Then) a specific set of observable outcomes should be attained.
22. Incremental development
In an Agile setting, incremental development is when each consecutive version of a product is functional and builds on the preceding version by adding user-visible features.
23. Information radiators
Any number of visual displays that a team initiates in an obvious location so that all team members may see the most up-to-date information at a glance is referred to as an “information radiator.”
24. Integration
“Integration” (or “integrating”) refers to any remaining work required for a project team to deliver a functionally complete product.
25. INVEST
INVEST is an acronym for a set of criteria used to evaluate the quality of a user narrative. The team may want to rewrite the story if it fails to fit one of these requirements.
26. Iteration
An iteration is a period in which work is completed. The duration of a project can vary from one to the next, but it is usually set.
27. Iterative development
Iterative projects are those that allow for “repeating” software development activities and maybe “revisiting” the same work products (the term “planned rework” is sometimes used; refactoring is a good example).
28. Kanban
The Kanban Method empowers teams to start where they are to drive evolutionary change by designing, managing, and improving the flow of knowledge work.
29. Kanban Board
A Kanban board is a multi-column visual workflow management tool. Each column corresponds to a separate stage of the workflow.
30. Lead time
The time between a customer’s order and delivery is lead time. It can also refer to the time it takes to fulfill a requirement in software development.
31. Milestone retrospective
A Milestone Retrospective is a detailed examination of the project’s significant events conducted by a team after a predetermined time or at the project’s conclusion.
32. Minimum marketable feature (MMF)
A Minimum Marketable Feature is a minor, self-contained feature that can be quickly built and provides considerable value to the user.
33. Minimum viable product (MVP)
A Minimum Viable Product is “a new product version that allows a team to collect the most amount of verified learning about customers with the least effort.”
34. Mob programming
Mob Programming is a method of software development in which the entire team works on the same project at the same time, in the exact location, and on the same computer.
35. Mock objects
Mock Objects are created by instantiating a test-specific version of a software component (often used in writing automated unit tests).
36. Niko-niko calendar
Each team member’s mood for the day is recorded in a Niko-Niko Calendar. The calendar illustrates patterns of change in the team’s or individual members’ emotions over time.
37. Open space
Participants establish and manage their schedule of parallel sessions around a specific theme during Open Space meetings, events, or conferences.
38. Pair programming
Pair programming is a technique in which two people work together as Two programmers sharing a single workstation in pair programming (one screen, keyboard, and mouse among the pair).
39. Personas
Personas are made-up biographies of hypothetical users of a future product.
40. Planning poker
Agile teams employ this method of estimation. Each team member “plays” a card with a numerical value corresponding to a user story point estimate.
41. Points
Agile teams frequently use units other than the time-honored “person hours” to communicate estimations. “Story points” are probably the most common unit.
42. Product backlog
A product backlog lists new features, improvements to current products, bug repairs, infrastructure changes, and other tasks that a team can deliver to meet a given goal.
43. Product owner
The product owner is a Scrum Framework role tasked with ensuring that the team achieves the desired result.
44. Project chartering
A flipchart-sized sheet of paper with a high-level description of the project’s major success elements is displayed on one team room wall.
45. Quick design session
Quick Design Sessions is what is meant when “simple design” decisions have far-reaching repercussions, two or more developers gather at a whiteboard for a fast design session.
46. Refactoring
Refactoring improves the internal structure of the current source code while maintaining the program’s exterior behavior.
47. Relative estimation
The agile term “relative estimation” refers to estimating jobs or user stories by comparing or combining things of similar difficulty.
48. Retrospective
The team meets regularly to discuss the most important events since the previous meeting and identify areas for development.
49. Rule of simplicity
Rules of Simplicity is a set of criteria, in priority order, proposed by Kent Beck to judge whether some source code is “simple enough.”
50. Scrum
Scrum is an agile process framework that teams use to operate and manage a product development process along with other knowledge management work.
51. Scrumban
One of the most interesting Agile terms, as the name already suggests, Scrumban is a mixture of the two words Scrum and Kanban.
52. Scrum master
The scrum master is in charge of ensuring that the team adheres to agile values and principles and the practices agreed upon by the team.
53. Scrum of scrums
Scrum may be scaled up to big groups (over a dozen individuals) by breaking them into Agile teams of 5-10 persons.
54. Sign up for tasks
Members of an Agile development team typically choose which tasks to focus on, rather than management allocating work to them.
55. Simple design
The software design strategy of a team using the “simple design” practice is based on a set of “simple design” principles.
56. Sprint backlog
A sprint backlog is a subset of the product backlog that a team aims to deliver during a sprint to meet the sprint goal and advance toward the desired end.
57. Sprint planning
Sprint planning is a meeting at the start of a sprint to identify which product backlog items the team will work on during that sprint.
58. Story mapping
Story Mapping is the process of arranging user stories along two distinct dimensions.
59. Story splitting
Splitting is breaking down an extensive user narrative into smaller ones while maintaining the condition that each user story has demonstrable business value on its own.
60. Sustainable pace
This is one of the Agile terms that refers to means the team aspires to work at a rate that they can maintain indefinitely.
61. Task board
A task board in its most basic form is organized into three columns: “To Do,” “In Progress,” and “Done.” To reflect the current status of that work, cards are placed in the columns.
62. Test driven development (TDD)
“Test-driven development” better known as TDD is a programming technique in which coding, testing (in the form of creating unit tests), and design are all intimately intertwined (in the form of refactoring).
63. Team
In the Agile definition, a “team” is a small group of people who are nearly all assigned to the same project or effort full-time.
64. Team room
For the project’s duration, the team (preferably the entire team, including the product owner or domain expert) has access to a dedicated area that is separate from the operations of other groups.
65. Three C’s
The formula “Card, Conversation, and Confirmation” captures the components of a User Story.
66. Three amigos
This is one of our favorite Agile terms. The term “three amigos” refers to the three essential viewpoints used to evaluate a piece of work before, during, and after creation. Business, Development, and Testing are the three perspectives.
67. Timebox
A timebox is a set amount of time during which a person or group works consistently toward a goal.
68. Ubiquitous language
Attempting to apply the vocabulary of a specific business domain in discussions about software product needs and design and down to “the product’s source code itself.”
69. Unit testing
The product team’s developers generate and maintain a small program fragment called a unit test. It exercises and tests a specific section of the product’s source code.
70. Usability testing
Usability testing is a practical, exploratory technique for answering issues like “How would an end-user respond to our program in real-world conditions?”
71. User stories
The team breaks the work into useful chunks called “user stories” in consultation with the client or product owner.
72. User story template
The User Story Template is one of the more interesting Agile terms because it recommends a specific template for writing user stories in various scenarios.
73. Velocity
The team finished user stories at the end of each iteration and added effort estimates connected with them. They refer to this sum as velocity.
74. Version control
In the sense that it is now widely used across the industry, version control is not strictly an Agile “practice.” However, it is mentioned here for a variety of reasons.
75. XP – extreme programming
In the list of agile terminologies the next agile terminology that we have included is Extreme Programming (XP). XP is an agile software development approach that attempts to deliver better software while improving the development team’s quality of life. It is the most detailed of the agile frameworks in terms of proper engineering methods for software development.
76. Epics
Epics represent large bodies of tasks that can be broken down into smaller tasks or stories. They signify significant parts of functionality that teams typically cannot complete within a single iteration or Sprint.
77. Continuous integration (CI)
Team members frequently use Continuous Integration in software development to integrate their code changes into a shared repository, enabling the detection of integration issues.
78. Burn-up chart
A burn-up chart graphically represents tasks completed over time. It shows the work completed compared to the total work planned to be finished by the end of the project.
79. Acceptance criteria
The stakeholder or customer must accept the project or product if it meets the specific conditions called Acceptance Criteria. These criteria help define the objective and set the standard for the project’s expected outcome.
80. Daily scrum
Daily Scrum (Daily Stand-up) is a quick meeting (15 minutes or less) where the team members project progress briefly and create a plan for the next 24 hours.
81. Time-boxing
Now we have reached the end and we have included time boxing which is another popular agile term in agile software development. Time boxing is an Agile time management technique that allocates a fixed amount of time to a specific activity. Time-boxing helps teams stay focused, manage expectations, and ensure tasks do not exceed their allotted time.
Wrapping up
Learning all the Agile terminologies can be a little overwhelming, but once you get the hang of it, everything falls into place.
This Agile terminology glossary is to help you navigate the complicated world of Agile by giving you definitions that you need to understand Agile better and how everything works together.
I know that with enough exposure to Agile, you’ll have all these terms and their functions by heart in time.
If everything still feels a little scary, don’t worry. You don’t have to do anything alone. As you’re in luck, we have an Agile project management tool like ProofHub that has everything you need to implement Agile in your organization.
Related articles
- What is Agile project management?—A strength or weakness?
- What is an Agile team? Here’s everything you need to know
- Kanban vs Agile: Separating facts from fiction
- Traditional vs Agile project management method: Which one is right for your project?
- 17 Best agile project management tools for project managers