|
|||||||||
Small Releases |
|||||||||
|
A couple of disadvantages are associated with big releases. As an example, it is of increasing importance for customers, that an investment starts to pay off as soon as possible. The earlier a system can be used productively, the earlier it can earn money. Customer requirements are subject to ongoing changes. The increasing globalisation, but also the increasing worldwide informational integration are leading to requirements changing in increasingly shorter timespans. A lot of functionality can be delivered with one large release, but typically the requirements are determined at the beginning of the implementation, that is at the beginning of the release cycle. During the release cycle, the requirements may change (and they do!), for example because the market has changed. If ultimately the system is shipped (using large releases), it could well be, that the functionality does not meet the actual requirements. Small releases, one of the 12 practices of XP, cannot eliminate this risk; due to the timely availability of functionality the customer has at least two advantages:
Ad 1: The functionality can be put to production, because the features are tested, both reproducable and automatically. To achieve this, acceptance tests and unit tests are used. Ad 2: Alway at the beginning of a release cycle a planning game takes place. The customer specifies his requirements by writing user stories. At this point new user stories can be added or existing user stories can be modified or even completely removed, for example if they become obsolete. Tips
|
Tips | ||||||||