Course Summary
The main objective of the course is to lay the foundations for understanding the discipline of Web Engineering (http://en.wikipedia.org/wiki/Web_engineering). The course will provide students with a global view of all what concern the web: from emerging modeling approach (such as Document Engineering and MDA – Model Driven Architecture), to cutting-edge technologies (.NET, Web Security, Cloud Computing, RIA, etc.), to advanced semantic-enabled support for information architectures (Semantic Web, Ontologies, Etc.). The course combines lectures and a mini-project. Different concepts and technologies seen in the theory sessions are applied with the practical part.

The Web Engineering course is divided into three main parts:
  1. Architecture Design: Paradigms & Modeling approaches
    • Document Engineering & SOA (Service Oriented Architecture)
    • Model Driven Architecture (MDA, MOF, PIM, PSM)
  2. Architecture Development: frameworks & technologies
    • J2EE, XML Schemas (recall)
    • .NET (Microsoft .NET Platform: principles, Virtual Machine, ASP.NET, ADO.NET, etc.)
    • Ruby on Rails
    • Web services: (UDDI, SOAP, WSDL, etc.)
    • Rich clients (AJAX, XAML, XUL, etc.)
    • XML Databases
    • Cloud + Web security
  3. Reasoning Web
    • Semantic Web (standards: RDF, DAML-OIL, OWL, logic, rules, and inference, cases studies: FOAF, semantic tools)
    • Ontology engineering & Knowledge Discovery (methodology, semantic information access)
    • Semantic Web Services (WSMO, WSML, SWSL, SWSO)
Learning Outcomes
On successful completion of this course, you will be able to:
  • Install, configure and manage a Web Server
  • Design n-tier Web Application System
  • Describe, compare and develop with a Web Framework (Java EE, .NET, Ruby-on-Rails, etc.)
  • Design and use a database (Relational or Native XML Database)
  • Define and apply different architecture modeling approaches (MDA, Document Engineering, etc.)
  • Have a good working knowledge of next generation software business based on emerging Distributed Web Architecture (Cloud Computing and Semantic Web Services)
  • Discuss and argue the ongoing evolution of the Web toward the “Semantic Web” and how it will foster and change communication between organizations, individuals and machines.