More and more development shops are adopting some form of agile development practices. Or adopting them for at least some of their projects and development initiatives. It’s a well-known fact that agile methodologies such as eXtreme Programming, SCRUM and Feature-Driven Development strive to reduce the cost of change throughout the software development process. Rapid iterative planning and development cycles are intended to force trade-offs and deliver the highest value features as early as possible. The constant, systemic testing required ensures high quality via early defect detection and resolution.

Adoption drawbacks

As with anything ‘new’ that gets proposed in an organization, there are some adoption roadblocks. Agile methodology advocates often find it difficult to obtain management support for implementing what seem like dramatic changes in application development. These methodologies require developers, managers and users alike to change the way they work and think. These practices of pair programming, test-first design, continuous integration, and an on-site customer can seem like daunting changes to implement. You can still display project tasks in a tool like Seavus’ Project Viewer, you just must think differently in how those tasks are managed. Also, these methodologies tend to be developer-centric and seem to dismiss the role of management in ensuring success.

Roadmap to adoption

Roadmap to adoption

As more organizations have pushed to implement agile development practices, it has become apparent that strong management is absolutely critical to the successful adoption and application of agile methodologies. There is also a need to tweak what is considered traditional project management and methodologies due to discrepancies and misalignment with new agile development processes and the software development life cycle they create. This misalignment is likely symptomatic of a deeper problem – differences in fundamental assumptions about change, control, order, organizations, people and overall problem-solving approaches. Traditional management theory assumes that:


  • Rigid procedures are needed to regulate change
  • Hierarchical organizational structures are a means of establishing order
  • Increased control results in increased order.  Organizations must be rigid, static hierarchies.
  • Employees are interchangeable “parts” in the organizational “machine”
  • Problems are solved primarily through reductionist task breakdown and allocation
  • Projects and risks are adequately predictable to be managed through complex up-front planning


The sometimes slow adoption or hesitation in the adoption of agile methodologies stems mainly from the misalignment between the fundamental assumptions of traditional management and those of the new agile development methodologies. People sometimes just have trouble accepting ‘new’ even when the old isn’t really working. This probably explains why I always want to take the same vacation we took last time…the known is comfortable, the fun or success is repeatable with limited risk. But new is better, too. And, therefore, there is a significant need for a change in assumptions and a new management framework when working with agile methodologies.