How often are the software development projects in your organization delivered on time? Within budget? Most importantly, how much is it costing you to maintain and support your delivered software to address usability issues, quality issues, or the inability of the delivered software to genuinely meet the current (and future) needs of the business?
It is no secret that information technology (IT) projects have earned a notorious reputation for budget overruns, missed deadlines, lack of alignment with the business, and dissatisfied users. These outcomes are so commonplace that they have become an expected part of the industry. (Just ask commercial software vendors how much they inflate their up-front development costs to allow for the inevitable overhead of addressing software problems during the warranty period?)
Arguably, the most quantifiable indicator of escalating software issues is the fact that, for many organizations, the ‘support desk’ has ballooned from a few part-time staff members to a fully staffed standalone department. This increase in the need for software support is not just due to the increasing number of IT systems and users; it is a symptom of software solutions which are being released with:
- fewer quality controls (bug fixes)
- less intuitive interfaces (phone and online support)
- a lack of alignment with the true business needs of the stakeholders (enhancements).
It does not matter whether your organization is a commercial software vendor, a 40-person IT consulting firm, or a large multinational with a dedicated IT department for internal business systems; whether you work in the private, not-for-profit or public sector; whether you are a recent start-up or an established company which has been in the industry for over 50 years. No organization is immune to these software issues. Which is exactly why Agile methods emerged in the first place.
Since the 1990s, Agile methods have provided the IT industry with an approach to software development that focuses on the quality, relevance and extensibility of software solutions. These approaches overcome traditional software development issues by positioning IT resources to regularly deliver high business-value outcomes; they replace up-front investment in software solutions with incremental investment based on proven business-value returns; most critically, they protect the organization from wasting money on software solutions that will only need to be reworked or replaced in the future because they do not meet the needs of the intended recipient.
In picking up this book, you have likely traded off your valuable time with one primary goal in mind – to decide whether Agile methods are worth pursuing in your organization – and, if so, to determine the best way to introduce, incorporate and leverage these approaches in your current environment.
Accordingly, this book has been written with only one objective: to provide IT executives and managers with the information that they need to make realistic (and justifiable) decisions on whether Agile is right for their organization, and the strategies to make it happen.