Essay Assist
SPREAD THE LOVE...

Introduction

Web engineering aims to bridge the gap between Web development technologies and software engineering best practices by applying mainstream and systematic software engineering procedures and principles to the World Wide Web and associated technologies. It involves studying and developing processes, models, techniques and methods for developing and maintaining high quality web-based applications that satisfy the requirements of both web developers and end users. This paper presents a comprehensive survey of the key areas of research in web engineering and discusses some of the important research papers that have contributed significantly to each area.

Requirements Engineering for the Web

One of the early challenges in web engineering research was developing suitable techniques for requirements engineering tailored specifically for the web domain. Traditional requirements engineering techniques did not fully address the dynamic and interactive nature of web applications with frequent changes in requirements. Some of the seminal papers in this area include:

Evolving Web Site Requirements by Capture and Analysis of Visitor Sessions (Su et al., 1999): This paper proposed a technique to capture and analyze visitors’ sessions on a website to understand usage patterns and elicit implicit requirements. This provided insights into website usage and helped identify requirements for improvements.

The Web Site Engineering Method (Hendrickson, 2000): This methodology focused on stakeholder identification and requirements collection using techniques like focus groups, interviews and card sorting specifically adapted for web requirements engineering. It emphasized iterative development and frequent end-user testing.

Applying Use Cases to Model Dynamic Web Applications Behaviors (Casteleyn et al., 2003): This research proposed an extension to use case modeling to capture the dynamic and interactive behaviors of web users. It presented concepts like navigational use cases and interactive sequences to model complex user flows through a website.

Read also:  HAS MBA ESSAY QUESTIONS

Web Design Methodologies

Several design methodologies were proposed to address the unique challenges of web application development. Some of the notable ones include:

Web Modeling Language (Abrams et al., 1999): WML was one of the earliest modeling languages proposed specifically for web applications. It included concepts like pages, links and navigation between them. It could represent both content and dynamic website behaviors.

OOHDM (Schwabe & Rossi, 1995): Object-Oriented Hypermedia Design Method extended traditional OO methodologies to model hypertext elements and navigation specific to web design. It introduced concepts like abstract pages and links to model navigational structures.

RMM (Isakowitz et al., 1995): The RMM methodology introduced the notion of abstraction layers to separate presentation, content and navigational design aspects. It emphasized early prototyping and iterative development of user interfaces.

UWE (Koch et al., 2000): The UML-based Web Engineering methodology extended UML with additional modeling constructs to capture the hypermedia aspects of web applications. It featured concepts like ports and links.

Web Usability Evaluation

Usability is a key quality attribute for web applications. Many methods were investigated to systematically evaluate usability during the design process. Some influential works include:

Heuristic Evaluation (Nielsen, 1994): A discount usability inspection method where domain experts evaluate a site against recognized usability principles (heuristics). It popularized the concept of usability inspection in web development.

Cognitive Walkthrough (Wharton et al., 1994): This involves experts simulating user tasks and identifying usability issues that may be encountered. It helps detect learnability and user experience issues early.

Empirical Usability Evaluation (Dumas & Redish, 1999): Proposed a standardized multi-method process incorporating techniques like user testing, questionnaires and transaction log analysis to rigorously evaluate usability.

Read also:  HOW TO BE A SUCCESSFUL WRITER ESSAY

Web Quality Model (Barnes & Vidgen, 2002): This model presented a comprehensive set of web quality factors including usability, information quality, service interaction quality etc. that could be used to construct usability questionnaires.

Software Process Models

With the recognition of web projects as software, various software process models were proposed for web development activities. Notable contributions include:

Web Engineering Process (Siau & Rossi, 2011): A comprehensive process model that includes phases for requirements, analysis, design, coding, testing and maintenance specifically for web projects.

Agile Process Models (Beck et al., 2001): The popularity of lightweight agile methods like Scrum, XP etc. emphasized adaptive and iterative processes for web development.

Spiral Model (Boehm, 1988): The Spiral Model was effectively applied in organizing iterative web development cycles involving prototyping, evaluation and refinement.

RUP for Web Projects (Kruchten, 2003): Adaptation of Rational Unified Process best practices with guidance for iterative planning and requirements management in web systems.

Model-Driven Web Development

Model-driven engineering approaches gained prominence in web engineering research focused on model-based system specification, automation and code generation. Some notable contributions are:

UWE (Koch et al., 2002): UML-based Web Engineering methodology focused on modeling all aspects of web applications and enabling code generation from models.

WebML (Ceri et al., 2000): A graphical language aimed at conceptual, navigational and presentational modeling of data-intensive websites. Supported model transformations and code generation.

OO-H Method (Schwabe & Rossi, 1998): Early object-oriented methodology that modeled abstract hypertext structures and enabled code scaffolding generation.

Read also:  WHAT ARE SOME STRATEGIES FOR EFFECTIVELY PRESENTING CAPSTONE PROJECTS TO DIFFERENT AUDIENCES

Hera (Gillmann et al., 2002): A profile for UML to support modeling Rich Internet Applications with behavior, structure and navigational models. Enabled RIA platform-specific code generation.

Emerging Trends in Web Engineering Research

Some emerging research areas of interest in web engineering nowadays include:

Development of Agile Web Engineering Methodologies: Tailoring agile practices like scrum and XP for web projects and validating their applicability and effectiveness.

Model-Driven Approaches for Web APIs and Microservices: Representing RESTful services and distributed microservice architectures using domain-specific modeling languages.

DevOps and Continuous Integration/Delivery: Applying concepts like infrastructure as code, automated testing/deployment pipelines in web development.

Data/Content-Driven Websites: Techniques to model, transform and generate data models for data-intensive websites from databases.

Web/Mobile Engineering: Mobile-first methodologies addressing unique challenges of developing cross-platform web and hybrid mobile applications.

Web Crowdsourcing: Architectures and processes leveraging the crowd for tasks like requirements gathering, usability testing, content curation etc. in web projects.

Web of Things Applications: Engineering IoT platforms and smart connected devices integrated via web interfaces and architectures.

Web Performance Engineering: Performance modeling, measurement techniques and optimization best practices for building high performance web-based systems and applications.

Conclusion

This paper provided an overview of the evolution of web engineering as a dedicated area of software engineering research. It discussed the seminal contributions across key aspects like requirements engineering, design methodologies, usability evaluation, process models and model-driven approaches. Emerging trends indicate increasing focus on agility, APIs, cloud-native systems, data/mobile/IoT enablement and performance optimization. Overall, web engineering research aims to leverage mainstream software engineering principles for developing high quality, usable and maintainable web-based systems.

Leave a Reply

Your email address will not be published. Required fields are marked *