Agile Software Construction

In this chapter, we will consider some of the obstacles that can be encountered when trying to introduce an agile approach into an organisation. We will also try to suggest some approaches to overcome these obstacles (although the suggestions made in Chapter 12 regarding introducing an agile project are still important).
In the remainder of this chapter, we consider the issues associated with management intransigence regarding new development processes. We also address the issue of the "failed agile project" syndrome, that is, what do you do if somewhere else in your organisation an agile project has been tried and failed. Developer resistance is also a major drag factor as well as customer opposition (this later possibility, the biggest stumbling block of all, as you really do need customer involvement in any agile project). Next, we consider contractual difficulties arising from the traditional use of requirements as the basis for any development contracts. Finally, we discuss the lack of familiarity with agile development methods.
The drive towards agile software development often comes from the developers themselves or from developer teams. In such situations, management can represent a significant obstacle to adoption of an agile approach. This can be for a host of reasons that include:
Lack of familiarity with Agile Software Development methods.
Mis-comprehension of what eXtreme Programming and Agile Modelling offers (such as believing them to be legalised hacking).
A feeling of losing control (as agile methods are more dynamic in terms of planning activities...