The Agile Web Engineering (AWE) process

During the late 1990s commerce and academia voiced major concerns about the problems with development processes for Web Engineering. These concerns primarily centred upon the perceived chaotic and 'ad-hoc' approach to developing Web-based applications in extremely short time-scales when compared to traditional software development. Based on personal experience, conducting a survey of current practice, and collecting supporting evidence from the literature, I proposed a set of seven criteria that need to be addressed by a successful Web engineering process: 1. Short development life-cycle times; 2. Delivery of bespoke solutions and different business models; 3. Multidisciplinary development teams; 4. Small development teams working in parallel on similar tasks; 5. Business analysis and evaluation with end-users; 6. Requirements capture and rigorous testing; 7. Maintenance (evolution) of Web-based applications. These seven criteria are discussed in detail and the relevance of each to Web engineering is justified. They are then used to provide a framework to assess the suitability of a representative sample of well-known software engineering processes for Web engineering. The software engineering processes assessed comprise: the Unified Software Development Process; Dynamic Systems Development Method; and eXtreme Programming. These seven criteria were also used to motivate the definition of the Agile Web Engineering (AWE) process. A WE is based on the principles given in the Agile Manifesto and is specifically designed to address the major issues in Web Engineering, listed above. A number of other processes for Web Engineering have been proposed and a sample of these is systematically compared against the criteria given above. The Web engineering processes assessed are: Collaborative Web Development; Crystal Orange Web; Extensions to the Rational Unified Process; and Web OPEN. In order to assess the practical application of A WE, two commercial pilot projects were carried out in a Fortune 500 financial service sector company. The first commercial pilot of A WE increased end-user task completion on a retail Internet banking application from 47% to 79%. The second commercial pilot of A WE used by an Intranet development team won the company's global technology prize for 'value add' for 2003. In order to assess the effect of AWE within the company three surveys were carried out: an initial survey to establish current development practice within the company and two further surveys, one after each of the pilot projects. Despite the success of both pilots, AWE was not officially adopted by the company for Webbased projects. My surveys showed that this was primarily because there are significant cultural hurdles and organisational inertia to adopting different process approaches for different types of software development activity within the company. If other large companies, similar to the one discussed in this dissertation, are to adopt AWE, or other processes specific to Web engineering, then many will have to change their corporate goal of a one size fits all process approach for all software technology projects.