Web software development
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 behavior 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. 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.
As an emerging discipline, Web engineering actively promotes systematic, disciplined and quantifiable approaches towards successful development of high-quality, ubiquitously usable Web-based systems and applications. In particular, 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 system, or computer application development.
Web engineering is multidisciplinary and encompasses contributions from diverse areas: systems analysis and design, software engineering, hypermedia/hypertext engineering, requirements engineering, human-computer interaction, user interface, information engineering, 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. First Workshop on Web Engineering was held in conjunction with World Wide Web Conference held in Brisbane, Australia, in 1998. San Murugesan, Yogesh Deshpande, Steve Hansen and Athula Ginige, from University of Western Sydney, Australia formally promoted Web engineering as a new discipline in the first ICSE workshop on Web Engineering in 1999. Since then they published a series of papers in a number of journals, conferences and magazines to promote their view and got wide support. Major arguments for Web engineering as a new discipline are:
- Web-based Information Systems (WIS) development process is different and unique.
- Web engineering is multi-disciplinary; no single discipline (such as software engineering) can provide complete theory basis, body of knowledge and practices to guide WIS development.
- 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:
- Design Manufacturing of Steel Plant equipments
- Process Modelling of Web applications
- Requirements Engineering for Web applications
- B2B applications
Design disciplines, tools and methods
- Prototyping Methods and Tools
- CASE Tools for Web Applications
- Web Interface Design
- Data Models for Web Information Systems
- 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
- Testing and Evaluation of Web systems and Applications
- Testing Automation, Methods and Tools
Applications categories disciplines
- Ubiquitous and Mobile Web Applications
- Mobile Web Application Development
- Device Independent Web Delivery
- Localization and Internationalization Of Web Applications
- Roger S Pressman, "Can Internet Applications be Engineered?" IEEE Software, Vol. 15, No. 5, Sep/Oct 1998, pp 104-110
- Roger S Pressman, "What a Tangled Web we Weave, " IEEE Software, Jan/Feb 2001, Vol. 18, No.1, pp 18-21
- ^ San Murugesan, Yogesh Deshpande, Steve Hansen and Athula Ginige, "Web Engineering: A New Discipline for Development of Web-based Systems, " Proceedings of the First International Conference of Software Engineering (ICSE) Workshop on Web Engineering, Los Angeles, USA, 1999. Also published in Web Engineering: Managing Diversity and Complexity of Web Application Development, San Murugesan and Yogesh Deshpande (Eds), LNCS 2016, Springer Verlag, Berlin Heidelberg, 2001Athula Ginige and San Murugesan, "Web Engineering: An Introduction, " IEEE Multimedia, Vol. 8, No. 1, January 2001, pp 14-18
- 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
- Yogesh Deshpande, and Steve Hansen, "Web Engineering: Creating Discipline among Disciplines, " IEEE Multimedia, Vol. 8, No. 1, January 2001, pp 81-86
- S. Ceri, P. Fraternali, A. Bongio, M. Brambilla, S. Comai, M. Matera. "Designing Data-Intensive Web Applications". Morgan Kaufmann Publisher, Dec 2002, ISBN 1-55860-843-5
Web engineering resourcesOrganizations Books
- "Handbook of Research on Web 2.0, 3.0, and X.0: Technologies, Business, and Social Applications", San Murugesan (Editor), Information Science Research, Hershey – New York, October 2009, ISBN 978-1-60566-384-5
- "Web Engineering: Modelling and Implementing Web Applications", edited by Gustavo Rossi, Oscar Pastor, Daniel Schwabe and Luis Olsina, Springer Verlag HCIS, 2007, ISBN 978-1-84628-922-4
- "Web Engineering - The Discipline of Systematic Development of Web Applications", edited by Gerti Kappel, Birgit Pröll, Siegfried Reich, and Werner Retschitzegger, John Wiley & Sons, 2006
- "Web Engineering", edited by Emilia Mendes and Nile Mosley, Springer-Verlag, 2005
- "Web Engineering: Principles and Techniques", edited by Woojong Suh, Idea Group Publishing, 2005
- "Building Web Applications with UML" (2nd edition), by Jim Conallen, Pearson Education, 2003
- "Information Architecture for the World Wide Web" (2nd edition), by Peter Morville and Louis Rosenfeld, O'Reilly, 2002
- "Web Site Engineering: Beyond Web Page Design", by Thomas A. Powell, David L. Jones and Dominique C. Cutts, Prentice Hall, 1998
- "Designing Data-Intensive Web Applications", by S. Ceri, P. Fraternali, A. Bongio, M. Brambilla, S. Comai, M. Matera. Morgan Kaufmann Publisher, Dec 2002, ISBN 1-55860-843-5