Web Technologies

Module code: CO3098

Software engineering nowadays presents challenges relating to the internet and e-commerce that weren’t part of previous generations’ software engineering courses. In particular we are dealing with a large, distributed system that is not under particular control by anyone. In this module we will discuss the issues that are relevant for designing useful, stable and secure systems in this context, highlighting many of the currently prevailing technologies.

Starting from a background of 'traditional' middleware we will move on to the emerging paradigm of Service Oriented Computing. You will look at scalable techniques for developing applications for the web (e.g. JavaServlets, .net), discussing their respective merits as well as getting hands-on experience in writing applications using these techniques.

One important aspect of web applications which also occurs in enterprise application integration is dealing with different data formats. The standard format these days is XML and its related technologies. We will investigate XML Schema, XPATH and Style Sheets (XSL), AJAX as well as DOM and SAX as programming paradigms.

Finally we will combine what we have learned and apply it in the context of Service Oriented Architecture. We will look at Web Services and consider why they are the next generation technology for distributed (web) applications.


  • 20 hours of lectures
  • 10 hours of seminars
  • 20 hours of labs/practical classes/workshops
  • 150 hours of guided independent study


  • Coursework (50%)
  • Exam, 2 hours (50%)