REGULATIONS FOR THE DEGREE OF
MASTER OF SCIENCE IN COMPUTER SCIENCE (MSc[CompSc])

(See also General Regulations, pp. 1 to 16)

calcover.jpg (8337 bytes)

Bachelor of
Engineering (BEng)

Bachelor of Science in Computer Science (BSc[CompSc])

Master of Science in Computer Science
(MSc[CompSc])

Master of Science in Engineering (MSc[Eng])

Certificates in Engineering Subject

Any publication based on work approved for a higher degree should contain a reference to the effect that the work was submitted to the University of Hong Kong for the award of the degree.

The degree of Master of Science in Computer Science (MSc[CompSc]) is a postgraduate degree awarded for the satisfactory completion of a course of study in the Faculty of Engineering. The MSc(CompSc) course is offered in both the full-time and part-time day release modes.


CS 9 Admission requirements

To be eligible for admission to the courses leading to the degree of Master of Science in Computer Science a candidate

(a)

shall comply with the General Regulations;

(b)

shall hold
  (i) a Bachelor's degree in Computer Science; or
  (ii) any relevant qualification of equivalent standard from this University or from another university or comparable institution accepted for this purpose; and

(c)

shall satisfy the examiners in a qualifying examination if required.

CS 10 Qualifying examination

(a)

A qualifying examination may be set to test the candidate's formal academic ability or his ability to follow the courses of study prescribed. It shall consist of one or more written papers or their equivalent and may include a project report.

(b)

A candidate who is required to satisfy the examiners in a qualifying examination shall not be permitted to register until he has satisfied the examiners in the examination.

CS 11 Award of degree

To be eligible for the award of the degree of Master of Science in Computer Science a candidate

(a)

shall comply with the General Regulations; and

(b)

shall complete the curriculum and satisfy the examiners in accordance with the regulations set out below.

CS 12 Length of curriculum

The curriculum shall extend over one academic year of full-time study or two academic years of part -time study.


CS 13 Completion of curriculum

(a)

To complete the curriculum a candidate shall, within the prescribed maximum period of study stipulated in Regulation CS 12 above,
  (i) follow courses of instruction and complete satisfactorily all prescribed written work;
  (ii) not fail in more than three units of study and shall satisfy the examiners in either
    (1) the papers for twelve units of study at the prescribed written examinations; or
    (2) the papers for eight units of study and a project report or dissertation on a subject within his approved field of study.
  The examiners may also prescribe an oral examination.

(b)

A candidate who fails to fulfil the requirements within the period of study specified in Regulation CS 12 above shall be recommended for discontinuation under the provisions of General Regulation G 12, except that a candidate, who is unable because of illness or circumstances beyond his control to complete the requirements within the prescribed period of study, may apply for permission to extend his period of studies. Any such application shall be made within two weeks of the first day of the examination paper in question.

CS 14 Course selection

(a)

Selection of study patterns shall be made in consultation with and be subject to the approval of the Head of the Department of Computer Science.

(b)

A candidate who is permitted to select the study pattern under section (a)(ii)(1) of Regulation CS 13 shall select twelve units of study which shall include a minimum of four core units.

(c)

A candidate who is permitted to select the study pattern under section (a)(ii)(2) of Regulation CS 13 shall select eight units of study which shall include a minimum of four core units.

(d)

Subject to the approval of the Head of the Department of Computer Science, a student may in exceptional circumstances be permitted to select at most 2 units from the syllabuses for the degree of MSc(Eng).

(e)

Subject to the approval of the Faculty Higher Degrees Committee on the recommendation of the Head of the Department of Computer Science, a candidate may in exceptional circumstances be permitted to select an additional unit of study.

CS 15 Project report or dissertation

A candidate who is permitted to select the study pattern under section (a)(ii)(2) of Regulation CS 13 is required to submit his project report or dissertation by a date specified by the Board of Examiners .

The candidate shall submit a statement that the project report or dissertation represents his own work (or in the case of conjoint work, a statement countersigned by his co-worker, which shows his share of the work) undertaken after registration as a candidate for the degree.


CS 16 Examinations

(a)

The written examination for each unit shall be held after the completion of the prescribed course of study for that unit, and not later than the January or May immediately following the completion of the course of study for that unit.

(b)

A candidate who has failed to satisfy the examiners in a paper or papers may be permitted to present himself either for re-examination in the paper or papers of failure or for examination in the same number of new papers when the examination is next held, but a candidate who has twice failed to satisfy the examiners in the paper or papers for the same unit of study shall not be permitted to present himself for examination in the same paper or papers for a third time. A candidate who has failed to satisfy the examiners in the papers for a total of four units of study1 shall be recommended for discontinuation of studies under the provisions of General Regulation G 12.

(c)

A candidate who has presented an unsatisfactory project report or dissertation may be required to submit a revised project report or dissertation on the same subject within a specified period.

(d)

A candidate who has presented an unsatisfactory project report or dissertation for a second time shall be recommended for discontinuation of studies under the provisions of General Regulation G 12.

(e)

A candidate who has failed to submit a satisfactory project report or dissertation within the prescribed maximum period of study, including any extension, shall be recommended for discontinuation of studies under the provisions of General Regulation G 12.

1 For this purpose, failure in the paper or papers of one unit at two attempts shall count as failure in two units; and, notwithstanding a pass in the paper or papers of that same unit at the second attempt, failure in that unit at the first attempt shall still count as failure in one unit.


CS 17 Examination results

At the conclusion of the examination, and after presentation of the project reports or dissertations, a pass list shall be published in alphabetical order. A candidate who has shown exceptional merit at the whole examination may be awarded a mark of distinction, and this mark shall be recorded on the candidate's degree diploma.


SYLLABUSES FOR THE DEGREE OF
MASTER OF SCIENCE IN COMPUTER SCIENCE

The curriculum extends over one academic year of full-time study or two academic years of part-time study.

The following is a list of units offered by the Department of Computer Science. This list is not final, and may be changed from time to time.

Candidates may also in exceptional circumstances select at most 2 units from the syllabuses for the degree of MSc(Eng), subject to approval of the Head of the Department or Course Co-ordinator concerned, and in accordance with the provisions of Regulation CS 14(d).

Core Units

23920. Software specification

To study the concepts and methodologies in software specification. Topics include object-oriented specifications and formal specifications.


23921. Software design

Design process, design quality, design representations, design methods and strategies, completeness and correctness of design, traceability to requirements and code.


23922. Fundamentals of parallel computing

Parallel architectures; hardware technology, structure and organization, classification, SIMD, MIMD, examples of parallel computers, performance aspects, etc. Parallel program design: computational models, parallel algorithms, complexity aspects, notation and proof techniques, synchronization and deadlock problems, mutual exclusion, fault tolerance, etc. Parallel programming: languages and constructs, program configuration, mapping, load balancing considerations, monitoring, debugging, etc.


23923. Fundamentals of distributed computing

This course offers a study of the design and implementation issues of distributed computing systems. Topics include goals and basic issues of distributed systems, distributed computing models, network operating systems versus distributed operating systems, examples of distributed operating systems, network communication architecture and support, remote interprocess communications, concurrent computation paradigms, distributed programming languages, distributed debugging, network file systems, protection and security, data replication and consistency, and fault tolerance.

Prerequisites: 23230 and 23234 or their equivalent.


23924. Algorithms

This course covers some fundamental topics in the design and analysis of algorithms that are not covered in our undergraduate programme.


23925. Introduction to computational complexity

This course studies the classification of problems according to their computational difficulty in terms of time, space, hardware, communication, etc.


Non-core Units

23940. Computer recognition of speech

This is a course surveying over various aspects of machine recognition of speech including: speech production and perception, derivation of features characterizing short-timed speech segments, speech recognition algorithms and system performance evaluation. The major emphasis is on the recognition of speech at the acoustic level as well as the linguistic level.


23941. Computer vision and image analysis

This course examines the theories and algorithms in computer vision and image analysis. Topics include image processing algorithms, image representation, image reconstruction, image enhancement, image data compression, multiresolution representations and techniques, mathematical morphology, scale space, edge detection, texture analysis, 3-D object reconstruction, and motion analysis.


23942. Pattern recognition

Bayes Decision Theory; supervised and unsupervised learning; parametric and non-parametric techniques; linear discriminant functions; feature selection and dimension reduction. Formal language theory, grammars, recognition of syntactic structures.


23943. Advanced computer graphics

Reflection models, texture and environment mapping, advanced ray tracing, radiosity method, volume rendering, advanced modelling techniques, animation.

Prerequisite: 23271 or equivalent course(s).


23944. Software implementation, testing and maintenance

Software implementation: design analysis, test plan, quality assurance plan, software development process selection, development, integration and testing; software testing: unit testing, system testing; software maintenance: purpose of maintenance, effective mechanisms to control software change.


23945. Software project management

Life cycle review; project planning and estimation; project management theory; quality assurance; quality factors; reviews and audits; process management and improvement.


23946. Special topics in parallel and distributed computing

This course will study in depth a selected topic of current interest in parallel and distributed computing. Examples are fault tolerance, load balancing, task scheduling, parallel languages, compilation of parallel programs, real-time scheduling, interconnection networks, cache-coherent architectures, routing, the deadlock problem, communication protocols, concurrency control, distributed file systems, decentralized algorithms, etc.


23949. Simulation of discrete event systems

This course familiarizes the student with the declarative simulation of a wide range of applications. The syllabuses encompass the discrete-event system and its realizations; diagrammatic approaches to modelling including Petri nets; the queuing-theory model; the process concept; complexity of discrete -event systems; modelling process interactions; comparison with object modelling and the SIMIAN language.


23950. Advanced topics in algorithms

This course aims at offering an in-depth view of some research topics in algorithms that are of current interests to the teaching staff. The content of the course may vary from year to year.

Prerequisite: 23924.


23951. Project

Students will be required to undertake a computing project which demands substantial work under the supervision of a teacher.


23952. Topics in networking

Specialized topics in networking that are of current interests and not covered in an undergraduate level course.

Prerequisite: 23234 or equivalent course(s) in computer networks.


23953. Special topics in theory of computing

The topic to be studied may vary from year to year. Examples are computational learning theory, lower bounds, distributed computing, circuit complexity, and algebraic complexity theory.

Prerequisite: 23924 or 23925 .


23954. Advanced topics in database systems

The course will survey and study some interesting areas in database systems. Examples are federated databases, object-oriented databases, spatial databases, knowledge discovery in large databases, active databases and temporal databases.


23955. Special topics in information systems I

This course aims to introduce the MSc and MPhil students the important issues within the domain of information systems, which include important issues from both technical and managerial sides to allow the students to have a balanced understanding of the information systems.


23956. Special topics in information systems II

Technological trends in telecommunications networks, internet and their major applications, such as, electronic commerce and electronic data interchange (EDI) will be covered in this course. The impacts of such applications on the business processes as well as future trends will be covered. Discussion of strategies and methods for planning and administration of such applications will also be covered.