Glossary

Glossary

Acceptance Testing

The functional testing of a user story by the software development team during the implementation phase. Usually the customer specifies scenarios to test when a user story has been correctly implemented. A user story is not considered complete until it has passed its acceptance tests.

Agile

Agile Software Development is a group of software development methodologies based on iterative and incremental development, where requirements and solutions evolve through collaboration between self-organizing, cross-functional teams. The Agile Manifesto introduced the term in 2001.

Backlog

A list of user stories, bugs and features that need to be done.

Product Backlog
A list of customer requirements for entire product.

Release Backlog
A list of user stories, features and bugs that should be implemented in defined release.

Burn Down Chart

Burndown chart shows work remaining over time. Work remaining is the Y axis and time is the X axis. The work remaining should jig up and down and eventually trend downward.

The Scrum books define a sprint burndown chart as a place to see daily progress, and a product burndown chart as where to show monthly (per sprint) progress.

DSDM

Dynamic Systems Development Method (DSDM) is an agile project delivery framework, primarily used as a software development method. DSDM was originally based upon the Rapid Application Development method. In 2007 DSDM became a generic approach to project management and solution delivery.

Impediment

Thing that blocks task or user story execution. For example, J.Mouse worked on complex algorithm and his workstation exploded. Now he can't execute his tasks and that is an Impediment. Usually impediments reported by developers on daily meetings.

Iteration

A time period (usually from 2 weeks to 2 months) in which development team implements and delivers a set of functionality (user stories). It is recommended to use iterations with equal duration to have good Velocity measurement.

Iteration Planning

The goal of Iteration Planning is to defined a set of user stories that will be developed in the next iteration. Customer should participate in Iteration Planning and provide a set of desired features. Developers break user stores into tasks and provide estimates. Team signs up for several user stories based on previous Iteration Velocity that will be completed in the next iteration.

Kanban

Kanban, pronounced /ˈkɑnˈbɑn/, is a method for developing products with an emphasis on just-in-time delivery while not overloading the developers. It emphasizes that developers pull work from a queue, and the process, from definition of a task to its delivery to the customer, is displayed for participants to see.

Kanban can be divided into two parts:

Planning poker

Planning Poker, also called Scrum poker, is a consensus-based technique for estimating, mostly used to estimate effort or relative size of tasks in software development. It is a variation of the Wideband Delphi method. It is most commonly used in agile software development, in particular the Extreme Programming methodology.

Release Planning

The goal of release planning meeting is to create release plan. During release planning all user stories estimated, prioritized and likely assigned to specific release. In many cases just few releases planned ahead and other user stories put into backlog.

Scrum

Scrum is an iterative, incremental framework for project management often seen in agile software development, a type of software engineering.

Scrum Meeting

Is a status check where the team meets and share progress, impediments and short term assignments.

Usually three questions asked:

"What did you do yesterday?"

"What will you do today?"

"What is blocking progress?".

Story Board

Shows all user stories with tasks for current iteration. Usually each user story/task represented by cards sticked to the wall. Usually Task Board has several columns: ToDo, In Progress, To Verify, Done.

TDD

Test-driven development (TDD) is a software development process that relies on the repetition of a very short development cycle: first the developer writes a failing automated test case that defines a desired improvement or new function, then produces code to pass that test and finally refactors the new code to acceptable standards.

User Story

A user story is a software system requirement. Usually they are short and consists of several sentences. User stories are a quick way of handling customer requirements without having to deal with large formal requirement documents and tedious tasks related to maintaining them. The intention is to be able to respond faster and with less overhead to rapidly changing real-world requirements.

Velocity

A summary effort of all completed user stories assigned to iteration. For example, in Iteration 2 you have several user stories with total effort equals to 50 points. All user stories were completed, so Iteration 2 Velocity is 50 points. Velocity has the same effort units as user stories.

Short description of the velocity concept .

XP

Extreme Programming (XP) is a software development methodology which is intended to improve software quality and responsiveness to changing customer requirements.