When teams deliver products in an incremental fashion it means that we create done working versions of the product that can be released to our customers, so they can provide feedback, which can help us decide what problem or need we want to work on next.

Using this approach has many benefits including, reducing the risk of building the wrong thing by only delivering a small increment, if the feedback is not good then we can pivot or even stop. It allows the team to focus on a specific problem or need and get it done rather than having lots of things started but nothing finished. And we deliver value to our customers sooner than releasing everything all at once in a big bang style approach.

Imagine we need to build a contact page for our customers to send a message on our website. Here is an example of how we might deliver this in an incremental way.

John Leighton incremental delivery example 1

Increment #1 could deliver a basic HTML page that allows the user to enter their details and message and then submit the form which could add an entry to a file.

John Leighton incremental delivery example 2

Increment #2 could deliver the CSS as per the design and update the submit functionality to send an email to a customer service inbox.

John Leighton incremental delivery example 3

Increment #3 could deliver validation logic around empty fields or limiting the number of characters for a field.

Based on customer feedback we might then decide that extra fields are needed, better inline validation would help with customer experience and so...