production
Skip to Content

Undergraduate Qatar Computing Science 2021-2022

QC1002: MODELLING AND PROBLEM SOLVING FOR COMPUTING

15 credits

Level 1

First Term

This course will introduce students to techniques that support problem solving and modelling with computers, and concepts and methods that are fundamental to computing science. The techniques and concepts will be illustrated with numerous computing examples.

QC1502: OBJECT-ORIENTED PROGRAMMING

15 credits

Level 1

Second Term

This course will build on the basic programming skills acquired in the first half-session and equip the students with advanced object oriented programming knowledge, implementation of data structure and algorithms, and basic software engineering techniques. The students will be challenged with more complicated programming problems through a series of continuous assessments.

QC1504: COMPUTER SYSTEMS AND ARCHITECTURE

15 credits

Level 1

Second Term

This course provides an introduction to computer systems. It includes an introduction to computer architecture and organization, and an introduction to operating systems. 

The course is taught without prerequisites; students are taught with plenty of exercises from lectures, tutorials, practical and tests every week.

QC2001: SOFTWARE PROGRAMMING

15 credits

Level 2

First Term

This course is concerned with tools and techniques for scalable and dependable software programming. It focusses primarily on the Java programming language and related technologies. The course gives extensive programming practice in Java. It covers in depth features of the language and how best to use them, the execution model of the language, memory management, design principles underpinning the language, and comparisons with other languages. Tools for collaboration, productivity, and versioning will also be discussed. 

QC2002: DATABASES AND DATA MANAGEMENT

15 credits

Level 2

First 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.

In addition, the course covers topics including 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.

QC2501: HUMAN-COMPUTER INTERACTION

15 credits

Level 2

First Term

This course looks at why a computer system that interacts with human beings needs to be usable. It covers a set of techniques that allow usability to be taken into account when a system is designed and implemented, and also a set of techniques to assess whether usability has been achieved. Weekly practical sessions allow students to practice these techniques. The assessed coursework (which is normally carried out by groups of students) gives an opportunity to go through the design process for a concrete computer system, with a particular focus on ensuring usability.

 

QC2502: MATHEMATICS FOR COMPUTING SCIENCE

15 credits

Level 2

Second Term

This course provides an introduction to areas of Discrete Mathematics that are used extensively in Computing. The course covers three topics: (1) formal languages and machines; (2) formal logic; (3) probability and statistics. Applications of these in Computing are indicated throughout.

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.