Gorges has published our best practices methodology, but it does not mention agile development. Why not?
First, what is agile development? Agile development is a set of methodologies for creating software. These methodologies include breaking projects into smaller tasks with minimal long-term planning. Each task, or iteration, is treated at a mini-project with planning, design, coding, and testing cycles. Collaboration is encouraged among team members, and face-to-face communication is prefered to written documentation. The customer is expected to be available to make decisions on design, features, and prioritizing tasks.
The proclaimed benefits are faster development and higher customer satisfaction.
So why don’t we promote agile development on our web site?
We have found that it takes a certain type of client to make agile development work. The client must be actively involved, willing to make quick decisions and not be adverse to compromise if we learn that certain features may be costly to implement. The smaller cycles are called “sprints” and since the deadlines are fixed, decisions are continually made to prioritize the features and tasks to meet these deadlines.
Likewise this sort of development can be a challenge to developers who are used to fixed specifications and planning the entire project before starting programming.
Gorges has had some marvelous agile-development successes, but we have also learned to not push this style onto our customers. Another reason we do not promote this methodology is that it is difficult to estimate the project size since the development is dependent upon the client’s feature selections.