Companies often turn to agile software development in an effort to reduce time to market. Short iterations, frequent deliveries, integrated testing — sounds nimble and fast — right?
Not quite. Agile development,when done properly, has a relentless focus on the customer, teamwork, quality and continuous improvement. There is no goal to deliver a final product in less time than with other approaches. That said, agile holds the promise of delivering software better, cheaper, and yes, faster … over time.
Agile teams improve with each iteration and release. They learn from their mistakes, take corrective actions, and get better. It takes time.
So, if you decide to try agile development, be prepared to give it time. Your first major release will likely take just as long, or longer, than it would using any other approach. Be patient.
Too often, a company will give agile a try only to abandon it after one project because they did not see an obvious improvement. Any new process takes time for people to adjust and feel comfortable. Agile is no different.
If you’re looking for instant improvement, forget developing custom software and go with a commercial off the shelf package. It may not do exactly what you want, but it can be delivered and installed next week.