Increment
An Increment is the sum of all the Product Backlog items completed during a sprint, combined with the increments of all previous sprints. It represents a tangible, usable, and potentially shippable product at the end of each sprint. The Increment must meet the team’s Definition of Done, ensuring it is fully integrated, tested, and ready for use or demonstration.
Key Characteristics of an Increment: #
1. Usable: It should be in a state that can be used by the customer, even if all the planned functionality is not yet complete.
2. Shippable: While it may not be released to customers after every sprint, it should be in a deployable state.
3. Meets Definition of Done: It adheres to the agreed-upon criteria for completeness, ensuring quality and functionality.
Example of an Increment #
Continuing with the e-commerce website example, let’s assume we are at the end of the first sprint. The Sprint Goal was to implement basic user account functionality and enable product search. Here’s what the Increment might look like:
Sprint Goal: #
– Implement basic user account functionality and enable product search.
Completed User Stories and Tasks: #
1. Register an account
– Completed Tasks:
– Designed registration form UI.
– Implemented backend API for user registration.
– Set up database schema for user accounts.
– Sent confirmation email upon registration.
– Wrote unit tests for registration functionality.
2. Log in to account
– Completed Tasks:
– Designed login form UI.
– Implemented backend API for user login.
– Set up session management.
– Displayed error messages for incorrect credentials.
– Wrote unit tests for login functionality.
3. Search for products
– Completed Tasks:
– Designed search bar UI.
– Implemented search functionality in the backend.
– Created product index in the database for fast search.
– Displayed search results on the UI.
– Wrote unit tests for search functionality.
4. Resolved Bugs:
– Fixed the issue where search results did not refresh when a new query was entered.
– Tested the fix to ensure search results updated correctly.
Demonstrating the Increment #
At the end of the sprint, the team holds a Sprint Review meeting to demonstrate the Increment to stakeholders. Here’s how they might present the Increment:
1. User Account Registration:
– Demonstration: Show the registration form with fields for name, email, password, and phone number. Complete the registration process and display the confirmation email received.
– Outcome: Users can successfully register an account, and the system sends a confirmation email.
2. User Login:
– Demonstration: Show the login form, enter valid credentials, and log in to the account. Also, demonstrate the error message for incorrect credentials.
– Outcome: Users can log in to their accounts, and error messages are displayed for incorrect credentials.
3. Product Search:
– Demonstration: Show the search bar on the home page, enter a search query, and display the relevant results.
– Outcome: Users can search for products, and the system displays relevant search results.
Example of a Sprint Increment with Completed Features: #
Feature | Description | Status |
Register an account | Users can register an account and receive a confirmation email. | Completed |
Log in to account | Users can log in to their account and see error messages for incorrect credentials. | Completed |
Search for products | Users can search for products using the search bar, and relevant results are displayed. | Completed |
Bug fix | Search results update correctly when a new query is entered. | Completed |
Conclusion #
The Increment is a critical Agile artifact that showcases the tangible progress made during a sprint. It ensures that the team delivers usable, high-quality features that add value to the product. By focusing on creating increments that meet the Definition of Done, Agile teams can consistently deliver functional software, receive feedback, and make necessary adjustments to meet customer needs effectively.