I had a bit of a realisation moment recently. Whenever I’ve read or talked about ‘Agile’ its proponents have always talked about how it is better for supporting customer change, so if a customer changes their mind part way through the project you are much more able to change.
Sometimes a reason for not adopting agile has been “our customers tend not to change their mind very much, it’s a stable environment. Agile wont bring us anything”. My realisation was that Agile supports change, not just customer driven change but also internal change. For example part way through your project Microsoft release a wizz-bang new tool, that would really help your project, so you want to work it into your project. If you’ve adopted an agile software development approach you will be more able to implement this change.