ICOM6034 - Website engineering |
Instructor | Dr. Roy Ho ( scho@cs.hku.hk ) |
Teaching assistant | Mr. Steven Chu |
Syllabus |
This module will introduce the standards, the software technologies, and
some good practices for implementing websites and web applications. The topics covered will be organized into four parts: (1) Website development basics (system architecture, server- and client-side technologies); (2) Design and implementation of web applications (rich Internet applications, client-side frameworks, MVC design patterns and libraries, content management systems); (3) Interoperability of web applications and services (data formats, web APIs, mashups, cloud services); and (4) Optimizations (data replication and caching, server clustering, traffic analysis, search engine optimizations). |
Objectives |
This module will suit students who wish to have a technical understanding on the subject or a career in website engineering. It aims at covering a broader, “end-to-end” picture of content delivery and presentation on the web --- from the “server-sides” where data is stored, adapted or integrated, to the “client-sides” with various demands and capabilities. Its objectives include:
|
Learning outcomes |
Upon the successful completion of this module, you should:
The optional lecture (not covered in the examination) will also enable students to design scalable web infrastructures for accommodating variable traffic intensities. |
Prior knowledge expected | This module requires hands-on experiences of software design and implementation, and is targeted at students with strong technical background. Students are expected to have some basic knowledge on HTML/CSS, JavaScript, Java and PHP (or JSP/ASP). |
Topics covered* |
Part 1: Web development basics (3 sessions)
Session 2: Enabling standards and technologies (part 2)
Session 3: Techniques for versatility
Part 2: Design and implementation of web applications (3 sessions) Session 4: Web 2.0: engineering practices and the client-side
Session 5: The server side (part 1)
Session 6: The server side (part 2)
Part 3: Interoperability of web applications and services (3 sessions) Session 7: Web API protocols (part 1)
Session 8: Web service mashup
Session 9: Simplifying website development with cloud services
Part 4: Optimizations (2 sessions; one optional) Optional Session (not covered in the examination): Scalability and availability
Session 10: Performance and popularity
* Order of topics subject to slight modifications. |
Teaching format | 10 sessions of lectures and labs |
Assessment |
Note: Students are required to fulfill a minimum attendance requirement of 70% for the purpose of applying for the Continuing Education Fund. |
Information on CEF |
Information for part B of the CEF application form
|
Course materials |
Notes, with pre- and post-course reading lists of online reference materials. |
Enrolment | No add or drop after 19 January 2015 (23:59) |
Class quota | Class size will be maintained at 40. |
Special note | Students should bring their notebook computer to the lab sessions. |