To avoid Big Bang integration and delivery right at the end that we get with waterfall and Water-Scrum-Fall, we have to change the way we do requirement gathering, analysis, and design. The aim of a User Story is to break requirements down into discrete chunks of work that will realize some business value in their own right. While it's not always possible to deliver a single User Story in isolation, the aim is to make them as independent as possible.
In fact, independent is the first attribute of the mnemonic INVEST, which we use when discussing the attributes of a good User Story. The letters of INVEST stand for the following:
- Independent: Avoid creating dependencies; if we have dependencies between User Stories, we'll create unfinished work, meaning we'll have to wait for other work to complete, before what we're working...