Web engineering

Source: Wikipedia, the free encyclopedia.

The World Wide Web has become a major delivery platform for a variety of complex and sophisticated enterprise applications in several domains. In addition to their inherent multifaceted functionality, these Web applications exhibit complex behaviour and place some unique demands on their usability, performance, security, and ability to grow and evolve. However, a vast majority of these applications continue to be developed in an ad hoc way, contributing to problems of usability, maintainability, quality and reliability.[1][2] While Web development can benefit from established practices from other related disciplines, it has certain distinguishing characteristics that demand special considerations. In recent years, there have been developments towards addressing these considerations.

Web engineering focuses on the methodologies, techniques, and tools that are the foundation of

Web application development
and which support their design, development, evolution, and evaluation. Web application development has certain characteristics that make it different from traditional software, information systems, or computer application development.

Web engineering is multidisciplinary and encompasses contributions from diverse areas:

human-computer interaction, user interface, data engineering, information science, information indexing and retrieval, testing, modelling and simulation, project management, and graphic design and presentation. Web engineering is neither a clone nor a subset of software engineering, although both involve programming and software development. While Web Engineering uses software engineering principles, it encompasses new approaches, methodologies, tools, techniques, and guidelines to meet the unique requirements of Web-based applications
.

As a discipline

Proponents of Web engineering supported the establishment of Web engineering as a discipline at an early stage of Web. Major arguments for Web engineering as a new discipline are:

  • Web-based Information Systems (WIS) development process is different and unique.[3]
  • Web engineering is multi-disciplinary; no single discipline (such as software engineering) can provide a complete theory basis, body of knowledge and practices to guide WIS development.[4]
  • Issues of evolution and lifecycle management when compared to more 'traditional' applications.
  • Web-based information systems and applications are pervasive and non-trivial. The prospect of Web as a platform will continue to grow and it is worth being treated specifically.

However, it has been controversial, especially for people in other traditional disciplines such as software engineering, to recognize Web engineering as a new field. The issue is how different and independent Web engineering is, compared with other disciplines.

Main topics of Web engineering include, but are not limited to, the following areas:

Modeling disciplines

  • Business Processes for Applications on the Web
  • Process Modelling of Web applications
  • Requirements Engineering for Web applications
  • B2B applications

Design disciplines, tools, and methods

  • UML and the Web
  • Conceptual Modeling of Web Applications (aka. Web modeling)
  • Prototyping Methods and Tools
  • Web design methods
  • CASE Tools for Web Applications
  • Web Interface Design
  • Data Models for Web Information Systems

Implementation disciplines

  • Integrated Web Application Development Environments
  • Code Generation for Web Applications
  • Software Factories for/on the Web
  • Web 2.0, AJAX, E4X, ASP.NET, PHP and Other New Developments
  • Web Services
    Development and Deployment

Testing disciplines

  • Testing and Evaluation of Web systems and Applications.
  • Testing Automation, Methods, and Tools.

Applications categories disciplines

  • Semantic Web applications
  • Document centric Web sites
  • Transactional Web applications
  • Interactive Web applications
  • Workflow-based Web applications
  • Collaborative Web applications
  • Portal-oriented Web applications
  • Ubiquitous and Mobile Web Applications
  • Device Independent Web Delivery
  • Localization and Internationalization of Web Applications
  • Personalization of Web Applications

Attributes

Web quality

Content-related

  • Web Content Management
  • Content Management System (CMS)
  • Multimedia Authoring Tools and Software
  • Authoring of adaptive hypermedia

Education

See also

References

  1. S2CID 5258957
    .
  2. ^ Roger S Pressman, "What a Tangled Web we Weave," IEEE Software, Jan/Feb 2001, Vol. 18, No.1, pp 18-21
  3. ^ Gerti Kappel, Birgit Proll, Seiegfried, and Werner Retschitzegger, "An Introduction to Web Engineering," in Web Engineering, Gerti Kappel, et al. (eds.) John Wiley and Sons, Heidelberg, Germany, 2003
  4. .
  5. ^ JKU » Webwissenschaften - Master. Jku.at (2014-04-18). Retrieved on 2014-04-28.
  6. ^ iWMC » Academic Program - Web Engineering. iWMC.at (2014-04-30). Retrieved on 2014-04-30.

Sources

  • Robert L. Glass, "Who's Right in the Web Development Debate?" Cutter IT Journal, July 2001, Vol. 14, No.7, pp 6–0.
  • S. Ceri, P. Fraternali, A. Bongio, M. Brambilla, S. Comai, M. Matera. "Designing Data-Intensive Web Applications". Morgan Kaufmann Publisher, Dec 2002,

Web engineering resources

Organizations
Books
Conferences
Book chapters and articles
  • Pressman, R.S., 'Applying Web Engineering', Part 3, Chapters 16–20, in Software Engineering: A Practitioner's Perspective, Sixth Edition, McGraw-Hill, New York, 2004. http://www.rspa.com/'
Journals
Special issues
  • Web Engineering, IEEE MultiMedia, Jan.–Mar. 2001 (Part 1) and April–June 2001 (Part 2). http://csdl2.computer.org/persagen/DLPublication.jsp?pubtype=m&acronym=mu
  • Usability Engineering, IEEE Software, January–February 2001.
  • Web Engineering, Cutter IT Journal, 14(7), July 2001.*
  • Testing E-business Applications, Cutter IT Journal, September 2001.
  • Engineering Internet Software, IEEE Software, March–April 2002.
  • Usability and the Web, IEEE Internet Computing, March–April 2002.

Citations

[1]