Team Practices Group/Glossary

NOTE: Definitions are a work-in-progress. Terms will be added or removed as needed.

Agile
"Agile" is a mindset, not a specific process. As such, it does not call for the use of any specifc practices or ceremonies. People often confuse the concept of agile development with specific agile methodologies such as Scrum or Extreme Programming, or with specific agile practices such as Incremental Development or Daily Standup meetings.

Agile was developed in the 1990's as a response to the dominant software development paradigms of the time. which were "No process" and "Heavy process". The heavy processes of the time, which were typically some form of Waterfall, often required massive requirements documents and massive design documents to be created and approved, before single line of code would get written. It was frustrating for both developers and customers, and the failure rate of software projects (whether they used heavy processes or no processes) was insanely high. At first, this new alternative approach was known as "lightweight" development, but that had negative connotations, so they renamed it to agile.

Agile changed the focus from the process and tools to the people doing the work. It de-emphasized documentation in favor of working code. And it embraced responding to change over following a plan. The highest priority of agile is to satisfy the customer, and another priority is "technical excellence and good design".

Agile Manifesto
A public declaration that launched the Agile movement

Backlog
A list of tasks (features, defect fixes, etc) that need to be done. Backlogs are a key artifact of the Scrum process. For details, see Product Backlog and Sprint Backlog.

Bug
The term "bug" is often used as a catchall to mean a code defect, requirements oversight, feature request, improvement, task, or any other technical work. Generally, it is better to use a more specific term, to avoid confusion. Wikipedia article.

Daily scrum (meeting)
The Scrum process requires the team to hold a brief daily "scrum" meeting.

During the meeting, each team member answers three questions: Typically, the daily scrum is a "standup" meeting, where to encourage brevity, everyone remains standing.
 * What did I do yesterday that helped the Development Team meet the Sprint Goal?
 * What will I do today to help the Development Team meet the Sprint Goal?
 * Do I see any impediment that prevents me or the Development Team from meeting the Sprint Goal?

Daily standup (meeting) *
A common agile practice, where the team meets briefly each day to share status, blockers, or other helpful information. The name ("standup") comes from the convention of not sitting down, to encourage brevity. The Scrum process requires daily team meetings, and defines a very specific agenda for them (see Daily Scrum).

Product backlog
In Scrum, the list of tasks that need to be completed in order to deliver a viable product, ordered by priority. This list can contain features, defect fixes, and non-functional requirements, and is managed by the Product Owner. Wikipedia article:

Scrum (a methodology) *
Wikipedia article:

Scrum (a meeting)
Teams following the Scrum process meet daily in a brief "scrum" meeting. See Daily Scrum.

Sprint
In the Scrum process, each iteration is called a "sprint". A Sprint is a fixed amount of time (a "timebox" of up to one month), during which the team has committed to a specific set of work, and is focused on completing it. Each sprint starts with a Sprint Planning meeting to define the scope, and ends with a Sprint Review meeting (showing the results) and a Sprint Retrospective meeting (for continuous improvement).

Note that despite the name "sprint", the pace of work is expected to be steady and sustainable. Also see Iteration.

Sprint backlog
In Scrum, the list of tasks (features, defects fixes, etc.) which the team has committed to complete during the current sprint. This backlog is managed by the team, and once a sprint has started, only the team can add items to the sprint backlog. Wikipedia article:

Standup (meeting)
A short meeting, often held daily. The name comes from the common practice of having all attendees stand up during the meeting, to encourage brevity. See also Daily Standup and Daily Scrum.

Waterfall
==== Online Agile glossaries: http://www.solutionsiq.com/agile-glossary/ http://agiledictionary.com http://www.telerik.com/teampulse/agile-vocabulary http://www.innolution.com/resources/glossary http://www.scrumstudy.com/search.asp ====