Content area
Full Text
Methodologies, although lacking in glamour, are often the process backbone of significant Web development projects. Software engineering methods are currently evolving in ways that impact major Web sites, both developmentally and through ongoing enhancement. Lean/agile methods meld best practices from manufacturing-with team empowerment that would make an organizational development expert proud-and prototyping acceleration. These methods avoid some pitfalls of prior approaches to software development and implementation.
To fully understand the benefits of lean/agile Web site development, it is useful to review the maturation process of other development processes.
AD-HOC DEVELOPMENT
Many Web sites have their roots in an organic development process that was logical and useful for relatively simple sites. Well intentioned and technically literate Web site managers and teams built credible and effective sites based on common sense. They listened to stakeholders and employed a natural cycle for building and improving sites. Ad-hoc development, however, is not a method; it reflects the lack of a formal method. Advantages of ad-hoc development come from translating direct dialogue with customers into immediate action. When in-depth planning falls short during the project, quick rework patches things up.
Ad-hoc development works well for small and simple Web projects that have minimal interdependencies to other processes or systems. Sites of a few hundred pages, all generated from HTML, do not need the formality of a methodology to get a successful result. However, this changes when the sites become more complex.
Disadvantages of an ad-hoc approach are significant and painful. Fearsomely high failure rates of projects that involve implementation of new technology or other significant complexity result from:
* lack of clarity in sponsorship.
* unpredictable schedules and costs.
* morphing of requirements and drifting of overall project direction.
* high potential for "surprise factor" upon implementation caused by significant risks overlooked during development.
Projects with an infrastructure that makes sense from the perspective of each individual project often end up being suboptimal, expensive, or even impossible to maintain at an organizational level. The risks of applying no formal methodology to projects can multiply, driving consideration of formal methods for delivering Web projects.
SOFTWARE DEVELOPMENT LIFE CYCLE (SDLC)
SDLC and similar methods depend on a rigorous, planned flow of activities guided by analysis and thought. The approach can be applied...