Acceptance criteria
The external quality characteristics specified by the product owner from a business or stakeholder perspective.Acceptance criteria define desired behaviour and are used to determine whether a product backlog item hasbeen successfully developed. 2. The exit criteria that a component or a system must satisfy in order to beaccepted by a user, customer, or other authorized entity
Acceptance Test Driven Development (ATDD)
Test-first software development practice in which acceptance criteria for new functionality are created asautomated tests. The failing tests are constructed to pass as development proceeds and acceptance criteriaare met.
Acceptance Testing
An acceptance test is a formal description of the behaviour of a software product, generally expressed as anexample or a usage scenario. A number of different notations and approaches have been proposed for suchexamples or scenarios. In many cases, the aim is that it should be possible to automate the execution of suchtests by a software tool, either ad-hoc to the Developers or off the shelf.
Accountabilities
Scrum defines three specific accountabilities within the Scrum Team: the Developers, the Product Owner, andthe Scrum Master.
Agile
A movement for finding better ways of developing software. Scrum and Extreme Programming are two leadingexamples. Others, such as Kanban or Lean Startup do not define themselves in the Agile tradition but are basedon compatible values and principles
Antipattern
Antipatterns are common solutions to common problems where the solution is ineffective and may result inundesired consequences
Backlog
A backlog is an ordered list of items representing everything that may be needed to deliver a specific outcome.There are different types of backlogs depending on the type of item they contain and the approach being used.
Behavior Driven Development (BDD)
BDD is a practice where members of the team discuss the expected behavior of a system in order to build ashared understanding of expected functionality.
Burn-down Chart
A chart which shows the amount of work which is thought to remain in a backlog. Time is shown on thehorizontal axis and work remaining on the vertical axis. As time progresses and items are drawn from thebacklog and completed, a plot line showing work remaining may be expected to fall. The amount of work maybe assessed in any of several ways such as user story points or task hours. Work remaining in Sprint Backlogsand Product Backlogs may be communicated by means of a burn-down chart
Burn-up Chart
A chart which shows the amount of work which has been completed. Time is shown on the horizontal axis andwork completed on the vertical axis. As time progresses and items are drawn from the backlog and completed,a plot line showing the work done may be expected to rise. The amount of work may be assessed in any ofseveral ways such as user story points or task hours. The amount of work considered to be in-scope may alsobe plotted as a line; the burn-up can be expected to approach this line as work is completed.
Burndown Chart
Burndown charts and burnup charts track the amount of output (in terms of hours, story points, or backlogitems) a team has completed across an iteration or a project.
Business Agility
Business agility is the ability of an organization to sense changes internally or externally and respondaccordingly in order to deliver value to its customers.
Ceremony
A ritualistic or symbolic activity that is performed on well-defined occasions. Some people refer to the coreScrum activities of sprint planning, daily scrum, sprint review, and sprint retrospective as ceremonies.
Chicken in Scrum
A metaphor used by some Scrum teams to indicate that people are invested in the goal of the Scrum team, butat a level of involvement (not accountable) rather than commitment. Best used to refer to people outside of theScrum team. Derived from an old joke about a chicken and a pig: “In a ham-and-eggs breakfast, the chicken isinvolved, but the pig is committed.” Contrast with pigs.
Clean Code
An attribute of source code that is expressed well, formatted correctly and organized for later coders tounderstand. Clarity is preferred over cleverness.
Coherent/Coherence
The quality of the relationship between certain Product Backlog items which may make them worthy ofconsideration as a whole.
Collective Ownership
Collective code ownership is the explicit convention that every team member can make changes to any codefile as necessary: either to complete a development task, to repair a defect, or to improve the code’s overall structure.
Continuous Deployment
Continuous deployment aims to reduce the time elapsed between writing a line of code and making that codeavailable to users in production. To achieve continuous deployment, the team relies on infrastructure thatautomates and instruments the various steps leading up to deployment, so that after each integrationsuccessfully meeting these release criteria, the live application is updated with new code.
Continuous Integration
Continuous Integration is the practice of merging code changes into a shared repository several times a day inorder to release a product version at any moment. This requires an integration procedure which is reproducibleand automated.
CRC Cards
Class Responsibility Collaborator (CRC) Cards are an object oriented design technique teams can use todiscuss what a class should know and do and what other classes it interacts with.
Customer Development
Customer development is a four-step framework that provides a way to use a scientific approach to validateassumptions about your product and business. (learn more)
Daily Scrum
Daily time-boxed event of 15 minutes, or less, for the Developers to re-plan the next day of development workduring a Sprint. Updates are reflected in the Sprint Backlog.
Definition of Done
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.
Development standards
The set of standards and practices that Developers identify as needed to create releasable Increments of aproduct no later than by the end of a Sprint.
Developers
Accountability in Scrum Team. These members of the Scrum Team are accountable for managing, organizingand doing all development work required to create a releasable Increment of product every Sprint.
DevOps
An organizational concept bridging the gap between development and operations, in terms of skills, mind-set,practices, and silo mentality. The underlying idea is that developers are aware of—and in daily work considerimplications on—operations, and vice versa.
Emergence
The process of the coming into existence or prominence of new facts or new knowledge of a fact, or knowledgeof a fact becoming visible unexpectedly.
Empiricism
Process control type in which only the past is accepted as certain and in which decisions are based on observation, experience and experimentation. Empiricism has three pillars: transparency, inspection and observation, experience and experimentation. Empiricism has three pillars: transparency, inspection and adaptation.
Engineering standards
A shared set of development and technology standards that Developers apply to create releasable Incrementsof software.
Epic
An epic is a large user story.
Estimation
In software development, an “estimate” is the evaluation of the effort necessary to carry out a givendevelopment task; this is most often expressed in terms of duration.
Exploratory Testing
Exploratory testing is, more than strictly speaking a “practice,” a style or approach to testing software which isoften contrasted to “scripted testing.”
Extreme Programming
Extreme Programming (XP) is an agile software development framework that aims to produce higher qualitysoftware, and higher quality of life for Developers. XP is the most specific of the agile frameworks regardingappropriate engineering practices for software development.
Facilitation
A facilitator is a person who chooses or is given the explicit role of conducting a meeting.
Forecast (of functionality)
The selection of items from the Product Backlog Developers deem feasible for implementation in a Sprint.
Frequent Releases
An Agile team frequently releases its product into the hands of end users, listening to feedback, whether criticalor appreciative.
Given When Then
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 consequencesshould obtain.
Heartbeat Retrospective
The team meets regularly to reflect on the most significant events that occurred since the previous suchmeeting and identify opportunities for improvement.
Impediment
Any hindrance or obstacle that is blocking or slowing down the Developers and cannot be solved through theself-managing of Developers themselves. Raised no later than at the Daily Scrum, the Scrum Master isaccountable for its removal.
Increment
A piece of working software that adds to previously created Increments, where the sum of all Increments -as a whole – form a product.
Incremental Development
In an Agile context, Incremental Development is when each successive version of a product is usable, and eachbuilds upon the previous version by adding user-visible functionality.
Information Radiators
“Information radiator” is the term for any of a number of visual displays which a team places in a highly visiblelocation, so that all team members can see the latest information at a glance.
Integration
“Integration” (or “integrating”) refers to any efforts still required for a project team to deliver a product suitablefor release as a functional whole.
INVEST
The acronym INVEST stands for a set of criteria used to assess the quality of a user story. If the story fails tomeet one of these criteria, the team may want to reword it.
Iteration
An iteration is a timebox during which development takes place. The duration may vary from project to projectand is usually fixed.
Iterative Development
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).
Kanban
The Kanban Method is a means to design, manage and improve flow for knowledge work and allows teams tostart where they are to drive evolutionary change.
Kanban Board
A Kanban Board is a visual workflow tool consisting of multiple columns. Each column represents a differentstage in the workflow process.
Lead Time
Lead Time is the time between a customer order and delivery. In software development, it can also be the timebetween a requirement made and its fulfillment.
Minimum Marketable Feature (MMF)
A Minimum Marketable Feature is a small, self-contained feature that can be developed quickly and thatdelivers significant value to the user.
Minimum Viable Product (MVP)
A Minimum Viable Product is the “version of a new product which allows a team to collect the maximumamount of validated learning about customers with the least effort.”
Mob Programming
MbP – 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
Mock Objects (commonly used in the context of crafting automated unit tests) consist of instantiating a test-specific version of a software component.
Pair Programming
Pair programming consists of two programmers sharing a single workstation (one screen, keyboard and mouseamong the pair).
Personas
Personas are synthetic biographies of fictitious users of the future product.
Pigs in Scrum
A metaphor used by some Scrum teams to indicate that people are invested in the goal of the Scrum team, butat a level of involvement (not accountable) rather than commitment. Best used to refer to people outside of theScrum team. Derived from an old joke about a chicken and a pig: “In a ham-and-eggs breakfast, the chicken isinvolved, but the pig is committed.” Contrast with pigs.
Planning Poker
An approach to estimation used by Agile teams. Each team member “plays” a card bearing a numerical valuecorresponding to a point estimation for a user story.
Points (estimates in)
Agile teams generally prefer to express estimates in units other than the time-honored “man-hours.” Possiblythe most widespread unit is “story points.”
Product Backlog
An ordered list of the work to be done in order to create, maintain and sustain a product. Managed by theProduct Owner.
Product Backlog refinement
The activity in a Sprint through which the Product Owner and Developers add granularity to the Product Backlog.
Product Goal
The Product Goal describes a future state of the product which can serve as a target for the Scrum Team toplan against. The Product Goal is in the Product Backlog. The rest of the Product Backlog emerges to define“what” will fulfill the Product Goal.
Product Owner
The Product Owner is accountable for maximizing the value of the product resulting from the work of the ScrumTeam. How this is done may vary widely across organizations, Scrum Teams, and individuals.
Product Roadmap
A description of the incremental nature of how a product will be built and delivered over time, along with theimportant factors that drive each individual release. Useful when developing a product that will have more thanone release.
Product Vision
A brief statement of the desired future state that would be achieved by developing and deploying a product. Agood vision should be simple to state and provide a coherent direction to the people who are asked to realize it.
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.
Quick Design Session
When “simple design” choices have far-reaching consequences, two or more developers meet for a quick designsession at a whiteboard.
Ready
A shared understanding by the Product Owner and Developers regarding the preferred level of description ofProduct Backlog items introduced at Sprint Planning.
Refactoring
Refactoring consists of improving the internal structure of an existing program’s source code, while preservingits external behavior.
Relative Estimation
Relative estimation consists of estimating tasks or user stories by comparison or by grouping of items ofequivalent difficulty.
Role-feature-reason
The “role-feature-reason” template is one of the most commonly recommended aids to write user stories: As a… I want … So that …
Rule of Simplicity
Rules of Simplicity is a set of criteria, in priority order, proposed by Kent Beck to judge whether some sourcecode is “simple enough.”
Scrum
A framework to support teams in complex product development. Scrum consists of Scrum Teams and theirassociated roles, events, artifacts, and rules, as defined in the Scrum GuideTM.
Scrum Board
A physical board to visualize information for and by the Scrum Team, often used to manage Sprint Backlog.Scrum boards are an optional implementation within Scrum to make information visible.
Scrum Guide
The definition of Scrum, written and provided by Ken Schwaber and Jeff Sutherland, co-creators of Scrum. Thisdefinition consists of Scrum’s roles, events, artifacts, and the rules that bind them together.
Scrum Master
Accountability in Scrum Team. This member of the Scrum Team is accountable for guiding, coaching, teachingand assisting a Scrum Team and its environments in a proper understanding and use of Scrum.
Scrum Team
The fundamental unit of Scrum is a small team of people, a Scrum Team. The Scrum Team consists of oneScrum Master, one Product Owner, and Developers.
Scrum Values
A set of fundamental values and qualities underpinning the Scrum framework; commitment, focus, openness,respect and courage.
Self-organization
The management principle that teams autonomously organize their work. Self-organization happens withinboundaries and against given goals. Teams choose how best to accomplish their work, rather than beingdirected by others outside the team.
Sprint
Time-boxed event of 30 days, or less, that serves as a container for the other Scrum events and activities.Sprints are done consecutively, without intermediate gaps.
Sprint Backlog
An overview of the development work to realize a Sprint’s goal, typically a forecast of functionality and the workneeded to deliver that functionality. Managed by Developers.
Sprint Goal
A short expression of the purpose of a Sprint, often a business problem that is addressed. Functionality mightbe adjusted during the Sprint in order to achieve the Sprint Goal.
Sprint Planning
Time-boxed event of 8 hours, or less, to start a Sprint. It serves for the Scrum Team to inspect the work from theProduct Backlog that’s most valuable to be done next and design that work into Sprint backlog.
Sprint Retrospective
Time-boxed event of 3 hours, or less, to end a Sprint. It serves for the Scrum Team to inspect the past Sprintand plan for improvements to be enacted during the next Sprint.
Sprint Review
Time-boxed event of 4 hours, or less, to conclude the development work of a Sprint. It serves for the ScrumTeam and the stakeholders to inspect the Increment of product resulting from the Sprint, assess the impact ofthe work performed on overall progress and update the Product backlog in order to maximize the value of thenext period.
Stakeholder
A person external to the Scrum Team with a specific interest in and knowledge of a product that is required forincremental discovery. Represented by the Product Owner and actively engaged with the Scrum Team at SprintReview.
Scrum of Scrums
A technique to scale Scrum up to large groups (over a dozen people), consisting of dividing the groups intoAgile teams of 5-10.
Sign Up for Tasks
Developers normally choose which tasks to work on, rather than being assigned work by a manager.
Simple Design
A team adopting the “simple design” practice bases its software design strategy on a set of “simple design”principles.
Story Mapping
Story mapping consists of ordering user stories along two independent dimensions.
Story Splitting
Splitting consists of breaking up one user story into smaller ones, while preserving the property that each userstory separately has measurable business value.
Sustainable Pace
The team aims for a work pace that they would be able to sustain indefinitely.
Task Board
The most basic form of a task board is divided into three columns labeled “To Do,” “In Progress,” and “Done.” Cards are placed in the columns to reflect the current status of that task.
Test Driven Development (TDD)
“Test-driven development” is a style of programming in which three activities are tightly interwoven: coding,testing (in the form of writing unit tests) and design (in the form of refactoring).
Team
A “team” in the Agile sense is a small group of people, assigned to the same project or effort, nearly all of themon a full-time basis.
Team Room
The team (ideally the whole team, including the product owner or domain expert) has the use of a dedicatedspace for the duration of the project, set apart from other groups’ activities.
Technical debt
A term used to describe the obligation that a software organization incurs when it chooses a design orconstruction approach that is expedient in the short term but that increases complexity and is more costly inthe long term. 2. A metaphor that facilitates the communication between business and technical peopleregarding implementation artifact inadequacies.
Three C’s
“Card, Conversation, Confirmation” is a formula that captures the components of a User Story.
Three Questions
The daily meeting is structured around some variant of the following three questions: What have youcompleted? What will you do next? What is getting in your way?
Timebox
A timebox is a previously agreed period of time during which a person or a team works steadily towards completion of some goal.
Ubiquitous Language
Striving to use the vocabulary of a given business domain, not only in discussions about the requirements for asoftware product, but in discussions of design as well and all the way into “the product’s source code itself.”
Unit Testing
A unit test is a short program fragment written and maintained by the developers on the product team, whichexercises some narrow part of the product’s source code and checks the results.
Usability Testing
Usability testing is an empirical, exploratory technique to answer questions such as “how would an end userrespond to our software under realistic conditions?”
User Stories
In consultation with the customer or product owner, the team divides up the work to be done into functionalincrements called “user stories.”
Values
When the values of Commitment, Courage, Focus, Openness and Respect are embodied and lived by the ScrumTeam, the Scrum pillars of transparency, inspection, and adaptation come to life and builds trust for everyone.The Scrum Team members learn and explore those values as they work with the Scrum events, roles andartifacts.
Velocity
An optional, but often used, indication of the average amount of Product Backlog turned into an Increment ofproduct during a Sprint by a Scrum Team, tracked by the Developers for use within the Scrum Team.
Version Control
Version control is not strictly an Agile “practice” insofar as it is now widespread in the industry as a whole. But itis mentioned here for several reasons.