production
Skip to Content

Undergraduate SCNU Joint Institute Computing Science 2026-2027

JC1001: PYTHON PROGRAMMING FOUNDATION

17.5 credits

Level 1

First Term

This course will provide a self-contained introduction to computer programming.  Students will be exposed to the basic principles of computer programming, e.g., fundamental programming techniques, concepts, algorithms and data structures. The course contains lectures where the principles are systematically developed. As the course does not presuppose knowledge of these principles, we start from basic intuitions. It will include a gentle introduction to professional issues and security concepts.

JC1502: COMPUTER ARCHITECTURE

15 credits

Level 1

Second Term

Beginning with number systems and Boolean algebra, this course covers the fundamental building blocks for digital logic gates and the design of combinational and sequential circuits. In addition, students get an introduction to assembly, which is the inner language spoken by processors. By the end of the course, students will have a top-to-down understanding of how microprocessors work. The course is taught without prerequisites and students undertake plenty of exercises on a weekly basis.

JC2503: WEB APPLICATION DEVELOPMENT

15 credits

Level 2

Second Term

Web applications play a central role across business, entertainment, education, and public services. Therefore, web application development is one of the most in-demand skills in computer science. This course introduces the fundamentals of modern, interactive web application development. You will learn to build full-stack applications using a range of core technologies. The course emphasises the integration of HTML, CSS, and JavaScript on the front end, and the use of JavaScript with Node.js to create dynamic and responsive back-end systems.

JC2504: PRINCIPLES AND PRACTICE OF DATABASE SYSTEMS

20 credits

Level 2

Second Term

Databases are an important part of traditional information systems (offline/online) as well as modern data science pipelines. This course will be of interest to anyone who wishes to learn to design and query databases using major database technologies. The course aims to teach the material using case studies from real-world applications, both in lectures and lab classes.


The course introduces both relational databases (e.g., SQL) and non-relational databases such as NoSQL systems (e.g., MongoDB) and XML-based databases, enabling students to understand and work with a range of modern data models. In addition, the course covers topics including the management of different kinds of data such as spatial data and data warehousing. The course provides more hands-on training that develops skills useful in practice.

JC2505: OPERATING SYSTEMS PRINCIPLES

17.5 credits

Level 2

Second Term

This course discusses core concepts and architectures of operating systems, in particular the management of processes, memory and storage structures. Students will learn about the scheduling and operation of processes and threads, problems of concurrency and means to avoid race conditions and deadlock situations. The course will discuss virtual memory management, file systems and issues of security and recovery. In weekly practical session, students will gain a deeper understanding of operating system concepts with various programming exercises.

JC3001: ARTIFICIAL INTELLIGENCE FOUNDATION

15 credits

Level 3

First Term

Artificial Intelligence Foundation is an introductory course in Artificial Intelligence (AI) that provides a broad overview of its core concepts, methods, and applications. The course is designed for undergraduate students and covers several fundamental aspects of AI, including search and adversarial algorithms, knowledge representation, logical reasoning, planning, and basic machine learning and reinforcement learning algorithms. In addition to these, this course also covers the real-world application of AI and its ethical concerns. With the help of lectures and hands-on experience through assessments, the goal of this course is to equip students with the foundational skills necessary to understand and develop intelligent systems.

JC3503: DATA MINING AND VISUALISATION

15 credits

Level 3

Second Term

This course provides an introduction to machine learning, data mining, and data visualisation. Students will learn how to analyse complex datasets by applying data pre-processing, exploration, regression, classification, clustering, time-series analysis, text mining, and many other techniques. This course is particularly suitable for those who are interested in working as data analysts or data scientists in the future.

JC3509: MACHINE LEARNING

15 credits

Level 3

Second Term

This course introduces the foundations of Machine Learning. It covers core algorithms like regression, classification and gradient descent before advancing to deep learning, including Neural Networks, CNNs, and RNNs. The curriculum examines advanced paradigms such as reinforcement learning and foundation models, building essential skills in model training and validation for a rigorous understanding of the field.

JC4000: GRADUATION THESIS

30 credits

Level 4

Full Year

This course consists of a supervised project which provides experience of investigating a real problem in computing science, or a computing application/technology. Students will apply knowledge and skills gained earlier in their degree programme and seek to go even further. Managing the project and presenting the results obtained are an integral part of the investigation.

JC4004: COMPUTATIONAL INTELLIGENCE

15 credits

Level 4

First Term

Computational intelligence (CI) is the subfield of artificial intelligence (AI) covering the biologically and linguistically inspired AI techniques, including fuzzy systems, neural networks, evolutionary computation, and Bayesian modelling. This course introduces the fundamentals of CI including probability theory and fuzzy logic, as well as the modern neural network architectures including convolutional neural networks and transformers. We will also discuss the recent developments and future trends in CI.

Compatibility Mode

We have detected that you are have compatibility mode enabled or are using an old version of Internet Explorer. You either need to switch off compatibility mode for this site or upgrade your browser.