It's no longer about the big beating the small, it's about the fast beating the slow...
Larry Carter, CFO, Cisco
Courage is not the absence of fear, but rather the judgment that something else is more important than fear.
This article investigates how to integrate extreme programming (XP) into your existing development environment. There are some technical hurdles to overcome, as well as a cultural shift for your team. This article assumes that you have a high-level understanding of XP and are contemplating employing it in your organization.
Why Implement XP?
Have you ever built a system that devolves into a death march to deliver and when it's finished the customer hates the process, the result, and/or you? XP is about closing the gap between the result and the processenjoying the journey as well as the outcome.
Prior to the dot-com crash, there was a thing called Internet-time or e-business projects when everything was prefixed with e. The Sun (no pun intended!) has dimmed a little in our Internet world, but we still work in a fast-paced environment. Is the pace of change faster now than before the advent of the commercial Internet? Probably. Perhaps more importantly, however, the time to market has been reduced and only the quick survive. Some of this change is purely perception, but you're selling your capability to deliver under this perception-cloud.
Cisco was the darling of every day trader when Larry Carter made his oft-repeated quote on the need for agile business. I guess you could say that those were the good old days! The only constant is change; you need the capability to respond, develop, and enhance quickly. This was important during the heady days of yesteryear and is perhaps even more so now, as e-players languish on the NASDAQ/NYSE.
The pressure is on to develop systems faster, cheaper, and better. (Or is that faster, faster, faster...?) Staying in your comfort zone won't work, and neither will tried and tested; we have to address the issue of agility. "Making do" won't do. Your competitors are finding painless methods of delivering value to customers. Could it be that they're using an agile process like XP?
XP offers these advantages over non-agile approaches:
Continuous customer involvement
Simplicity of design, development, and implementation
Easily tailored to fit the existing environment
Improves quality of life and experience by mandating a 40-hour workweek
Enables solutions to be delivered both quickly and with high quality
Customers see real results early in the cycle
So the reason to implement XP may come down to the issue of money. Are you able to sustain growth by producing quality software for customers that love what you do and the way you do it? In other words, are you ready for XP?