Course Coordinator: Dr Keith LK Lee, BEng, PhD (HKU), MIEEE
Course Developers: Chris Leung Ching-hong, Consultant (Units 1-3); Kendrew Lau Chu-man, Consultant (Units 4-10)
The overall aim of this course is to provide students with knowledge of computer networks and distributed systems. This area is changing rapidly, with new technologies emerging all the time. This course will give you a good grounding in the principles of distributed systems. By helping you to understand how things work ‘under the hood,’ you will get a good foundation to work from, whether you go on to be part of a team implementing and putting together a distributed system, or whether your role is to communicate with others about such systems and to make professional judgments.
You are advised to have already studied COMP S201 Computing Fundamentals with Java. It is also helpful for you to have studied the following courses. If you have not taken any of them, it will require more effort for you to study COMP S368.
- COMP S311 Java Application Development and Programming Languages
- COMP S260 Computer Architecture and Operating Systems
- ELEC S212 Network Programming and Design.
The course aims to provide you with the knowledge and expertise to:
- Describe networks and distributed systems;
- Design and implement distributed applications.
The course covers the following topics:
- Computer networks and socket programming
- Distributed systems
- Multi-tasking programming with locks and conditions
- Persistence and transactions with JPA
- Client and web development with Spring
- Developing business logic with enterprise beans
- Security for web and enterprises
- Web services with SOAP and REST
- Messaging with JMS
- Cloud computing
There will be about ten two-hour tutorials.
There will be four assignments and a final examination. Students are required to submit assignments via the Online Learning Environment (OLE).
This course is supported by the Online Learning Environment (OLE). You can find the latest course information from the OLE. Through the OLE, you can communicate electronically with your tutor and the Course Coordinator as well as other students. To access the OLE, students will need to have access to the Internet. The use of the OLE is required for the study of this course.
You will need access to an IBM-compatible PC with the following minimum configurations:
- 500 MHz Intel Pentium III CPU
- 1 GB RAM (2 GB Recommended)
- 750 MB free hard disk space (1GB Recommended)
- Internet access (broadband recommended)
You will need access to the following software:
- English Windows Vista or above
- Web browser: IE 8 or compatible
There are no set books for this course.
Students with disabilities or special educational needs
The audio and visual components of this course may cause difficulties for students with hearing or vision impairments. You are encouraged to seek advice from the Course Coordinator before enrolling on the course.