Computer Science is the study of algorithms and computer software.  A BSc degree in Computer Science includes a sequence of courses that constitute a complete undergraduate training in Computer Science, alongside other courses to complete the degree.  Students will learn to write computer programs in a variety of languages and on different computing platforms and develop the accompanying algorithmic solutions to classical (e.g., timetabling) and contemporary (e.g., big data) problems.

Students usually take the following key courses:

  • MAM1004+8 Introductory calculus and discrete mathematics
  • CSC1015 Introduction to programming and problem solving
  • CSC1016 Object-oriented design; Social issues and professional practice
  • CSC2001 Data structure and databases
  • CSC2002 Mobile application design; Concurrency; Computer architecture
  • CSC3002 Operating systems; Networks
  • CSC3003 Advanced software engineering; Computability and Algorithms

The computer science department now offers  a major in Artificial  Intelligence (AI). This requires more mathematics at both first and second year level and covers all aspects of AI, not just machine learning.

For information on this and all course offerings, please visit the BSc courses page.

For complete rules for the degree, refer to the Science Handbook.

Core requirements include admission to a BSc degree and at least 70% for NSC Mathematics (or equivalent).

The handbook also has contact information for this year's student advisors, who can help you make your course decisions.