Postgraduate

Master's specialising in Computer Science

Click on the links below for information on the various Master's courses:

CSC5000W    Computer Science Dissertation 
CSC5002W    Computer Science Minor Dissertation 
CSC5008Z    Data Visualisation
CSC5020Z    Research Methods In Computer Science 
CSC5021Z    Computational Geometry For 3d Printing 
CSC5022Z    Distributed Scientific Computing 
CSC5023Z    Evolutionary Computation 
CSC5024Z    Information Retrieval 
CSC5025Z    Intelligent Systems  
CSC5026Z    Introduction To ICT For Development 
CSC5027Z    Logics For Artificial Intelligence 
CSC5028Z    Ontology Engineering 
CSC5029Z    Introduction To Image Processing And Computer Vision 
CSC5030Z    Advanced Topics In Computer Science Master's 1 
CSC5031Z    Advanced Topics In Computer Science Master's 2 
CSC5032Z    Networks & Internet Systems 
CSC5033Z    Human Computer Interaction 


Master's specialising in Computer Science by Dissertation

CSC5000W    COMPUTER SCIENCE DISSERTATION 

Convener: Professor T A Meyer 

Course entry requirements: Computer Science Honours from UCT prior to 2018, or permission from the Head of Department in exceptional cases. In the normal case, students will be expected to register for Master’s specialising in Computer Science, by coursework and minor dissertation.

Course outline:  
This course consists of an investigation of an approved topic chosen for intensive study by the candidate (student), culminating in the submission of a dissertation. The dissertation shall demonstrate the successful completion of a programme of training in research methods, a thorough understanding of the scientific principles underlying the research and an appropriate acquaintance with the relevant literature. It must be clearly presented and conform to the standards of the department and faculty. The dissertation will usually consist of a report detailing the conduct, and analysis of the results of, research performed under the close guidance of a suitably qualified supervisor/s. The dissertation should be well-conceived and acknowledge earlier research in the field. It should demonstrate the ability to undertake a substantial and informed piece of research, and to collect, organise and analyse material. General rules for this degree may be found in the front of the handbook. Students will be expected to attend a research methods course in the first year. 



Master's specialising in Computer Science by Coursework and Minor dissertation 

Programme Convener: Professor T A Meyer 

Course structure: See General rules for Master's Degrees in the front section of the Science handbook.

Progression: In any given year, students must either be registered for or have passed at least six of the elective courses. Students get two attempts to pass each course. Should a student fail any course on the second attempt, they will not be allowed to continue with the degree. This applies to the Research Methods course as well. Students should pass a minimum of two elective courses per year. With the course convener’s permission, students who have passed the Research Methods course as well as four of the six elective courses may be permitted to register for CSC5002W. Students are not eligible to register for CSC5002W until they have completed the Research Methods course and at least four (out of six) elective courses. 


CSC5002W    COMPUTER SCIENCE MINOR DISSERTATION 
90 NQF credits at HEQSF level 9 
Convener: Professor T A Meyer 

Course entry requirements: Completion of all coursework, or permission of the convener. Course outline:  
Upon successful completion of the coursework component (CSC5001W), students will be required to register for this minor dissertation component and complete a suitable research project under supervision of an appropriate computer science academic staff member. The research component will expose the student to research methodology, experimental design, data analysis techniques, and dissertation writing skills. Students should be in a position to submit the final dissertation by the end of the year. 

Assessment: The minor dissertation must be presented for formal examination. The coursework and minor dissertation each count 50% towards the degree; each must be passed separately for the award of the degree. 


CSC5008Z    DATA VISUALISATION 
12 NQF credits at HEQSF level 9 
Convener: Associate Professor M M Kuttel 

Course entry requirements: Admission into the Master's degree specialising in Computer Science, or permission from the course convener. 

Course outline:  
Visualisation is the graphical representation of data with the goal of improving comprehension, communication, hypothesis generation and decision making. This course aims to teach the principles of effective visualisation of large, multidimensional data sets. We cover the field of visual thinking, outlining current understanding of human perception and demonstrating how we can use this knowledge to create more effective data visualisations.  

DP requirements: 40% for assignment component. 

Assessment: Students will be assessed with an assignments (50%) and an exam (50%). A sub-minimum of 40% will be required for each of the assignment and exam components of the course. 


CSC5020Z    RESEARCH METHODS IN COMPUTER SCIENCE 
18 NQF credits at HEQSF level 9 
Convener: Professor T A Meyer 

Course entry requirements: Admission into the Master's degree specialising in Computer Science, or permission from the course convener. 

Course outline:  
The objective of the Research Methods course is to introduce students to a suite of research methods from the perspective of Computer Science, that will prepare them for the minor dissertation component of the degree. More specifically, the aim is to ensure that students are able to write an appropriate research proposal, and have a good understanding of what it means to conduct research within Computer Science. 

Course content includes: An introduction to finding and reading research papers; Literature reviews; Writing research proposals; Problem statements, research questions, and hypotheses; Types of research within Computer Science; Research Ethics within Computer Science; Scientific and technical writing; Qualitative and quantitative research methods; Research statistics; Research planning and grant writing; Academic career planning. 

DP requirements: None 
Assessment: A submitted literature review (50%) and research proposal (50%).  


CSC5021Z    COMPUTATIONAL GEOMETRY FOR 3D PRINTING 
This course will not be offered every year. 
12 NQF credits at HEQSF level 9 
Convener: Professor J Gain 

Course entry requirements: Admission into the Master's degree specialising in Computer Science, or permission from the course convener. Computer Graphics at third-year level. 

Course outline:  
The objective is to master surface and volumetric modelling concepts applicable to 3D printing. The use of 3D printers for rapid prototyping is becoming increasingly prevalent. However, the process used by most current 3D printers of depositing thin layers of semi-molten material, which is known as Fused Deposition Modelling (FDM), is not without limitations. Factors such as material thickness and support structures need to be considered. This course will cover the theoretical concepts required for creating geometric models suitable for 3D printing. From a practical perspective, students will code modelling software, then design and ultimately print a 3D model. Topics covered include: Geometry and Topology for Computer Graphics; 3D Printing Concepts: Printing Hardware, Overhang Support, Applications; Volumetric Concepts: Voxels, Computational Solid Geometry, Isosurface Extraction; Surface Concepts: Parametric Surfaces, Mesh Smoothing, Free-Form Deformation. 

DP requirements: None 
Assessment: Exam: open book, 2 hours, 40%. Practical assessments 50%; Final printed show piece, 10%  


CSC5022Z    DISTRIBUTED SCIENTIFIC COMPUTING 
This course will not be offered every year. 
12 NQF credits at HEQSF level 9 
Convener: Professor R Simmonds 

Course entry requirements: Admission into the Master's degree specialising in Computer Science, or permission from the course convener. A basic understanding of computer networking and software systems. 

Course outline:  
The objective is to provide an understanding of the basic components used to build Grid and Cloud computing systems, with a focus on how these can support Scientific Computing. 
This course gives an overview of the components that make up Grid and Cloud computing environments. These include the components used to build distributed data and computing grids and the various “as a Service” systems referred to as Cloud computing. It also looks t how these are used for a range of activities, including supporting large scale Scientific Computing. 

DP requirements: None 
Assessment: Final examination: 60%; Practical assignments: 40%  


CSC5023Z    EVOLUTIONARY COMPUTATION 
12 NQF credits at HEQSF level 9 
Convener: Dr G Nitschke 

Course entry requirements: Admission into the Master's degree specialising in Computer Science, or permission from the course convener. A basic understanding of genetics and evolution is useful, but not required. 

Course outline:  
Evolutionary computation entails the use of simulated biological evolution to solve problems that are difficult to solve using traditional computer science and engineering methods. This course examines different Evolutionary Algorithms (EAs) and the types of problems EAs are best suited to solve. Course objectives include: gaining an understanding of various evolutionary computation techniques, identifying EAs suitable for solving different types of problems, and how to apply EAs to optimisation, machine learning, or design tasks. 
The topics covered include: Introduction to Evolutionary Computation; What is an Evolutionary Algorithm; Genetic Algorithms; Evolution Strategies; Evolutionary Programming; Genetic Programming; Niching; Multi-Objective Optimisation; Co-evolution; and Working with EAs. 

DP requirements: None 
Assessment: Exam: closed book, 2 hours, 60%; Practical assignment: 40%.  


CSC5024Z    INFORMATION RETRIEVAL 
This course will not be offered every year. 
12 NQF credits at HEQSF level 9 
Convener: Professor H Suleman 

Course entry requirements: Admission into the Master's degree specialising in Computer Science, or permission from the course convener. Basic understanding of XML data is required. Some background on statistics and linear algebra will be useful. 

Course outline:  
The objective is to understand how search engines work at an algorithmic level. Learn how to build and incorporate basic and specialised search engines into your own projects. 

Course content includes: Introduction to Information Retrieval (IR); Models of Basic IR (Boolean, Vector, Probabilistic); IR evaluation and testbeds; Stemming, Stopping, Relevance Feedback; Models of Web and linked-data retrieval (Pagerank, HITS); Latent Semantic Analysis and Clustering; Multimedia IR; Cross-lingual and multilingual IR; and IR in Practice (CMSes, digital libraries, Web, social media, etc.). 
Selected topics will be included from: Distributed and Federated IR; Recommender Systems; Natural Language Processing for IR; Sentiment Analysis; Opinion Retrieval; and Text Summarization. 

DP requirements: None 
Assessment: Exam (take-home): 40%; Assignments: 40%; Class participation: 20%  


CSC5025Z    INTELLIGENT SYSTEMS 
This course will not be offered every year. 
12 NQF credits at HEQSF level 9 
Convener: Associate Professor D Moodley 

Course entry requirements: Admission into the Master's degree specialising in Computer Science, or permission from the course convener. A strong mathematics background. 

Course outline:  
This Computer Science masters course provides an introduction to designing and implementing intelligent systems, using selected Artificial Intelligence techniques. The course will introduce you to at least two widely used Artificial Intelligence approaches, including machine learning and Bayesian Artificial Intelligence. You will learn these techniques from a Computer Science perspective, specifically how to design real world intelligent systems that incorporate such AI techniques. 

DP requirements: None 
Assessment: 2 hour open book exam: 50%, Practical assignments: 50%  


CSC5026Z    INTRODUCTION TO ICT FOR DEVELOPMENT 
This course will not be offered every year. 
12 NQF credits at HEQSF level 9 
Convener: Dr M Densmore 

Course entry requirements: Admission into the Master's degree specialising in Computer Science, or permission from the course convener. 

Course outline:  
The goal is for you to understand basic ideas underlying ICT4D and how they are used in practice. You will learn about and critically evaluate ICT4D projects. You will learn how to design and evaluate development-oriented computing projects. 
Course Content: Introduction to key terminology around socio-economic development; Key concepts in ICT4D (e.g. social inclusion, after access); Case studies in specific domains, including healthcare, agriculture, mobile money, education, etc.; Critical evaluation of ICT4D projects. 

DP requirements: None 
Assessment: Practical assignments: 80%; Case Study Presentation: 10%; Class Participation: 10%  


CSC5027Z    LOGICS FOR ARTIFICIAL INTELLIGENCE 
This course will not be offered every year. 
12 NQF credits at HEQSF level 9 
Convener: Professor T A Meyer 

Course entry requirements: Admission into the Master's degree specialising in Computer Science, or permission from the course convener. Familiarity with basic discrete mathematics is highly recommended. 

Course outline:  
This course will introduce students to logics used in the area of Knowledge Representation - a subarea of Artificial Intelligence. 
Logic plays a central role in many areas of Artificial Intelligence. This course will introduce students to Description Logics, a family of logics frequently used in the area of Knowledge Representation and Reasoning. Description Logics are frequently used to represent formal ontologies.  

Topics covered include the following: The Description Logic ALC; Reasoning in Description Logics with Tableaux Algorithms; Reasoning in the EL family of Description Logics; and Query Answering. 

DP requirements: None 
Assessment: Exam: open book, 3 hours, 50%; Assignments: 50%.  


CSC5028Z    ONTOLOGY ENGINEERING 
This course will not be offered every year. 
12 NQF credits at HEQSF level 9 
Convener: Associate Professor M Keet 
Course entry requirements: Admission into the Master's degree specialising in Computer Science, or permission from the course convener. Experience in modelling (ER, UML Class diagrams) and some familiarity with logic will be helpful. 

Course outline:  
The principal aim of this module is to provide the participant with an overview of ontology engineering—including language features, automated reasoning, and top-down and bottom-up ontology development—and a main application field being the Semantic Web. 
Course Content: Ontologies are used in a wide range of applications, such as data integration, recommender systems, e-learning, semantic scientific workflows, and natural language processing. While some of these applications pass the revue, the main focus of the course is on the ontologies. The topics covered include the following: 
Logic foundations for ontologies: Languages (Description Logics, OWL); and Automated reasoning (class and instance classification, satisfiability and ontology consistency checking). 
Ontology development: Ontology engineering, top-down - foundational ontologies, ontology design patterns; Ontology engineering, bottom-up - exploiting legacy material, such as relational databases, thesauri, text; and Methodologies for ontology development and maintenance, methods to enhance ontology quality and to automate some aspect of the methodology. 

DP requirements: None 
Assessment: Exam (closed-book but with some material provided): 50%; assignments: 50%.  


CSC5029Z    INTRODUCTION TO IMAGE PROCESSING AND COMPUTER VISION 
This course will not be offered every year. 
12 NQF credits at HEQSF level 9 
Convener: Associate Professor P Marais 

Course entry requirements: Admission into the Master's degree specialising in Computer Science, or permission from the course convener. Experience in modelling (ER, UML Class diagrams) and some familiarity with logic will be helpful. 

Course outline:  
To introduce students to basic concepts in computer vision and image processing, oriented towards solving real world, practical image analysis problems. The student will be introduced to basic concepts from digital signal processing, and a foundation built that will allow understanding of how more sophisticated schemes such as image analysis/segmentation which can be used to describe image and volumetric data at a higher, more useful, levels of abstraction. Case studies and papers will be examined which relate this to real-world problems. 
A number of lectures (as indicated below) will be presented by the course convener, interspersed with paper/review sessions in which topical papers are discussed and followed up by review questions. 
Topic will include: Basic Signal processing; Image Transforms & Operations; Feature Detection; Object Descriptions; Basic Segmentation & Registration; Fundamental Segmentation techniques; Machine Learning & GAs in Cvision; Case Study; and Paper Reviews. 

DP requirements: None 
Assessment: Exam: Open Book; 2 hours. Class Record: Practical 60%, Review Questions 40%. Final Mark: Exam 40%, Class Record 60%.  


CSC5030Z    ADVANCED TOPICS IN COMPUTER SCIENCE MASTER'S 1 
This course will not be offered every year. 
12 NQF credits at HEQSF level 9 
Convener: Professor T A Meyer 

Course entry requirements: Admission into the Master's degree specialising in Computer Science, or permission from the course convener. 

Course outline:  
This course introduces advanced and cutting edge topics in Computer Science as they emerge with new areas of investigation or practice. 

DP requirements: None 
Assessment: Exam: 50% and Coursework: 50%  


CSC5031Z    ADVANCED TOPICS IN COMPUTER SCIENCE MASTER'S 2 
This course will not be offered every year. 
12 NQF credits at HEQSF level 9 
Convener: Professor T A Meyer 

Course entry requirements: Admission into the Master's degree specialising in Computer Science, or permission from the course convener. 

Course outline:  
To introduce advanced and cutting edge topics in Computer Science as they emerge as new areas of investigation or practice. 

DP requirements: None 
Assessment: Exam: 50% and Coursework: 50%  


CSC5032Z    NETWORKS & INTERNET SYSTEMS 
This course will not be offered every year. 
12 NQF credits at HEQSF level 9 
Convener: Dr J Chavula 

Course entry requirements: Admission into the Master's degree specialising in Computer Science, or permission from the course convener. Working knowledge of computer networks. 

Course outline:  
The objective is to gain advanced understanding of techniques for traffic engineering and quality of service in the Internet architecture. The course focuses on advanced topics in internetworking, traffic engineering, and mechanisms for measuring performance and Quality of Service (QoS) for network services and the Internet. 

Course content includes: New Network and Transport Protocols (IPv6, Mobile IP, IP Multicast, Multipath TCP, QUIC); Routing and Traffic Engineering (Interdomain Routing and Traffic Enginering with Border Gateway Protocol); Traffic Engineering with Overlay Networking (MPLS/GMPL, Location/Identifier Separation Protocols, Software Defined Networking and Network Function Virtualization); Internet Measurements (Quality of Service and Quality of Experience (QoS and QoE), IP Traffic Monitoring and Analysis) 
Selected reading/discussion topics will be included from: Cloud Infrastructure; Content Delivery Networks; Internet Access in the Developing World, Community Networks; ICT4D, Online Data Protection and Online Censorship. 

DP requirements: None 
Assessment: Assignments: 40%; Discussion sessions: 15%; Active Participation in Class: 5%; Final Exam : 40%  


CSC5033Z    HUMAN COMPUTER INTERACTION 
This course will not be offered every year. 
12 NQF credits at HEQSF level 9 
Convener: Dr M Densmore 

Course entry requirements: Admission into the Master's degree specialising in Computer Science, or permission from the course convener. 

Course outline:  
This course will introduce you to basic concepts and practice around user-centred design of digital systems. 
This course covers how to design and evaluate interactive systems for real users both in the developed and developing worlds. We will look at both theory and practice of designing digital systems. 

Topics include the design cycle, sketching and storyboarding, task analysis, contextual inquiry, conceptual models, usability inspection, human information processing, experience design, and qualitative and quantitative study design and evaluation. We will also invite guest speakers from industry and research to talk about their own experiences with user-centred design. 
The course will contain additional practical work to distinguish it from the honours level module on Human Computer Interaction (CSC4024Z). 

DP requirements: None 
Assessment: Participation: 10% (measured by participation in user studies, in-class activities, in-class discussion/presentations, and pre-class quizzes on Vula) Individual Practical Assessments: 20%. Group Project Assessments: 40% Final Exam: 30%  
 

TOP