| Going Into Agile |
|
"The biggest fear customers have with adopting the Agile methodology is that they think they will lose control over the pace of development and that without all the specifications set beforehand the project will be doomed to go beyond the allocated time."
The Agile Development Methodology. The three key elements to making this work are:
Software has a characteristic not available to automakers and civil engineers: the cost of changing a small, and sometimes even medium-sized, item does not change appreciably with the stage it is introduced. A layout change just before project sign-off costs not much more than that same layout change done in the early stages. The biggest fear customers have with adopting the Agile methodology is that they think they will lose control over the pace of development and that without all the specifications set beforehand the project will be doomed to go beyond the allocated time. What is not immediately apparent is that while one gives up knowing exactly when a specific module is supposed to be completed, the gain is that the module will be accomplished in better time because errors and usability issues are handled much earlier before they can propagate. As a result, existing and future errors can be reduced. Since in many cases debugging software can take up two-thirds of the development time, it is a wise investment to do things in a way that prevents the errors from even starting How Agile is implemented, briefly, is that the client and the developers agree on selected features that will be implemented within a specific development cycle, typically a few weeks. At the end of the cycle the features are tested by the client for usability and to see if they work according to their business rules. The next development cycle is then planned where the developers will get a mix of requested changes and new features to implement. The cycles are repeated and feature-by-feature the application grows toward completion. The features are selected according to business value and the customer picks the features that are most needed first. This way the important features get completed earlier and chances are increased that the application may get to be used even before it is complete. As the features get added the customer also gets a better idea about their needs even when those needs start changing. An unimplemented feature may be dropped in favor of another feature that will create more business value. If somewhere during development it is unfortunately decided that the project be stopped, the customer is not left with money spent and a mountain of code that gets nothing done. Instead they are left with a partially-complete application with fully-functional features.
Get Agile! It means better-made software, less stress and more satisfaction! Send an email to This e-mail address is being protected from spambots. You need JavaScript enabled to view it or call (632) 8943415.
|













