Responsible:
-
2010: Fernando Barraza
Credits: 3
Requirements: Basic knowledge of HTML, XML, UML and Software Engineering.
Time: Saturday, 8:00 a.m. – 1:00 PM
Introduction
The World Wide Web have 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.[1][2] While web development can benefit from established practices from other related disciplines, it has certain distinguishing characteristics that demand special considerations. In the recent years, there have been some developments towards addressing these problems and requirements. 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.[3][4] 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.
Objectives
The main objective of the course is set out formal guidelines from software engineering to build web applications. These guidelines provide support for the software development following methodologies for the design, implementation and testing of Web Applications, using different and modern technologies and standars.
Content
-
Review of World Wide Web Basics
-
Web Engineering Foundations and Field Applications
-
Web Engineering Methods
-
Web Technologies & Tools
-
Semantic Web
-
Web Intelligence (Adaptative Web Sites)
-
Web Quality Attributes: Security, Accesibility and Usability
Evaluation
-
Homework: 30%
-
First miniproject : 20%
-
Second miniproject : 20%
-
Final Project : 30%
Syllabus 2010
Session |
1: Review of World Wide Web Basics ingweb_sesion1-2010.pdf |
2: UML profile ingweb_umlprofile.pdf |
3: Web Methods – Part Aingweb_sesion2-2010.pdf |
4: HTTP Protocol ingweb_protocolohttp.pdf |
5: Web Browsers ingweb_navegadores.pdf |
6: Web Methods – Part B ingweb_sesion2-2010_parteb.pdf |
7: Semantic Web ingweb_sesion3-websemantica.pdf |
8: Ontologies ingweb_sesion4-ontologias.pdf |
9: Usability, Accesibility & Internacionalization ingweb_sesion5-usaaccint.pdf |
10: UI Design ingweb_sesion6-disenoiu.pdf |
11: Social Networks and Semantic Web – Part I desysw_socialnetworksandsemanticweb.pdf |
12: Social Networks and Semantic Web – Part II desysw_socialnetworksandsemanticweb_pii.pdf |
13: Intelligent Web ingweb_webintelligence.pdf |
Lectures and Extra Material 2010
Title | |
1: Web Engineering Introduction webengineeringintro.pdf | |
2: Web Methods modellingwawuml.pdf puml2001-hen-koch.pdf oows.pdf | |
3: XML xml.pdf, xml_esp.pdf | |
4: Semantic Web castells-uclm03.pdf, doc04websemantica.pdf | |
5: Social Networks and Semantic Web socialnetworksandthesemanticweb_parti_cap1.pdf |
Laboratories and Tests
Evaluations
1: Results available at Javeriana university’s academic system |
2: Final results notasingweb.pdf |
Bibliography
1: Web Engineering: The Discipline of Systematic Development of Web Applications, Gerti Kappel, Birgit Prýýll, Siegfried Reich, Werner Retschitzegger |
2: Java 2EE and XML development, Gabrick, Kurt A. (*) |
3: Data on the Web : from relations to semiestructured data and XML, Abiteboul, Serge. (*) |
4: Essential Software Architecture, Ian Gorton |
5: Web Application Architecture: Principles, Protocols and Practices. Leon Shklar, Richard Rosen. |
6: Developing Java web services : architecting and developing secure web services using Java. Nagappan, Armes. (*) |
: Java web services in a nutshell. – 1ed. Topley, Kim. (*) |
8: Service-Oriented Architecture (SOA): Concepts, Technology, and Design.Thomas Erl. |
9: Pro JSF and Ajax : building rich Internet components, Jacobi, Jonas. (*) |
10: Ajax Patterns and Best Practices, Christian Gross. |
11: Ajax in Action, Dave Crane, Eric pascarello, Darren James. |
12: Spinning the semantic web : bringing the world wide web to its full potential. Fensel, Dieter. (*) |
(*): Volúmenes disponibles en biblioteca.
Software
-
Netbeans. http://www.netbeans.org/
References
1: Roger S Pressman, “Can Internet Applications be Engineered?” IEEE Software, Vol. 15, No. 5, Sep/Oct 1998, pp 104-110 |
2: Roger S Pressman, “What a Tangled Web we Weave,” IEEE Software, Jan/Feb 2001, Vol. 18, No.1, pp 18-21 |
3: a b 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, 2001 |
4: Athula Ginige and San Murugesan, “Web Engineering: An Introduction,” IEEE Multimedia, Vol. 8, No. 1, January 2001, pp 14-18 |