A Quality-Aware Engineering Process for Web Applications
Cristina Cachero Castro (Universidad de Alicante, Spain), Coral Calero (University of Castilla-La Mancha, Spain) and Yolanda Marhuenda García (Universidad Miguel Hernández de Elche, Spain)
Copyright: © 2008
This chapter introduces the necessity to consider quality management activities as part of the Web engineering (WE) process to improve the final quality of Web applications with respect to creative practices. We explore principles and achievements that, uncovered in different Web quality lines of research, provide insights into how to deal with quality in each of the different workflows that a typical WE process defines, from requirements to implementation. Also, in order to preserve the semiautomatic nature of WE processes, we propose the definition of measurable concepts, measures, and decision criteria in a machine-readable way that facilitate the automation of the quality evaluation process, thus preserving the model-driven engineering (MDE) nature of WE processes. In this way, we are providing the user of a WE methodology with the advantages associated with managing quality from the early stages of development with little extra development costs.
Key Terms in this Chapter
Web: Application: An application delivered to users from a Web server over a network such as the World Wide Web or an intranet.
Web Quality Model: The set of characteristics and the relationships between them which provide the basis for specifying quality requirements and evaluating quality for Web applications.
Software Engineering Management: The application of management activities - planning, coordinating, measuring, monitoring, controlling, and reporting - to ensure that the development of software is systematic, disciplined, and measured.
Web Engineering Practices: The application of systematic, disciplined, and quantifiable approaches to the cost-effective development and evolution of high-quality applications in the World Wide Web.
Measurable Concept: Abstract relationship between attributes of entities and information needs.
Model-Driven Engineering (MDE): This is a software development approach whose primary focus is on models, as opposed to source code. Models are built representing different views on a software system. They can be refined, evolved into a new version, and can be used to generate executable code. The ultimate goal is to raise the level of abstraction, and to develop and evolve complex software systems by manipulating models only.