The way Agile methods handle change is probably the main differentiating factor for most people. The important point is to understand that the difference is a consequence of the lifecycle, rather than a direct approach: Agile methods are not dependent on upfront design and plan, and let the product evolve based on the feedback; so, any "change request" is just another input for planning the next iteration, without much consequences. There's no upfront design you need to revise because of a change, and if the previous features were developed properly (independent of each other), not much rework is required either.
Change in Predictive Environments vs. Adaptive Ones
Change is inevitable, in any project. Change is not bad; only uncontrolled change is dangerous. A properly managed change in any environment results in a better product, and higher customer satisfaction.
Changes have fewer consequences in Agile environments, and that makes the change control much easier. The rest is the same for Agile and predictive methods.
PRINCE2 Agile Approach to Change
There are two types of change requests:
- Change requests that directly affect the Baselines: They should be managed by the normal PRINCE2 change procedure, where the consequences are assessed, options are evaluated, the best option selected, and finally, applied to the baselines.
- Change requests that do not affect the baselines directly: They will be handled informally, by the development team, for example, the same way it's handled in Scrum.
Based on this, it's required to keep the Baselines high-level enough to enable the Agile type of change management, and adaptation.
Multiple small changes, that are supposed to be handled informally by the development team, can result in a major deviation in baselines. Such deviations should be measured using the Progress Theme, and may result in an exception. For example, a number of small changes might cause the project to become unable to deliver the MVP in the proper time; this would be an exception raised because of the scope and/or time targets move outside the tolerances.
One of the main purposes of having a configuration management system is to help us assess the consequences of change requests. We need this information when the change request is major, and affects the Baselines directly. So, PRINCE2 Agile recommends keeping the Configuration Item Records high-level to allow for small, informal changes, and this should be reflected in the Configuration Management Strategy.
- Requirements focus area
- Change Theme at PRINCE2 wiki