Courses of the Computer Science Department
This module is primarily aimed at the student who is new to Computer Science. As with most technical subjects, Computer Science has its own terminology. This module lays the foundations by introducing some basic terminology, which is then used to give an overview of what a computer, is and the elements from which computers are made. The student is strongly urged to establish the good habit of learning the terminology as it is introduced, starting with this module. Computer Science is concerned with the application of scientific principles to the design, construction and maintenance of systems based upon the use of computers. Targeted skills in this module are: hardware and software systems, numbering systems, mathematical and logical binary operations, basic concepts of computer organization and the introduction to the fundamental concepts of procedural programming.

This module will review the purpose and responsibilities of the Database Administrator. The student will learn how the DBMS manages the data and controls such as recovery, locking and transaction logging and performance tuning. Through hands on Database Administration using Oracle, the student will practice much of the theory presented.


The aim of the module which has two instances:

  1. Computer Networks
  2. Web Development

Technologies is to describe the theories and practices underlying computer Network communications and web development technologies and  show how these are applied in real world Network and Web applications by equipping female and male students with knowledge og designing and implementation of computer networks as well as tools used in internet programming.

This Module contains three instances:

  1. Microprocessor and assembly Language programming
  2. Operating systems
  3. Systems programming.

Microprocessor and assembly Language programming is to enable students to gain knowledge in PC hardware, and in using assembly language, including what is needed to write, link and execute a program written in assembly language.

The purpose of Operating Systems, is to help students to understand the functions of operating system components and their interactions, to be able to exploit operating system facilities to improve the functionality and efficiency of programs, and be able to evaluate the suitability of a given operating system for a given task.

The systems programming allow the students to use the operating systems for the systems administration.

The main objective of this course is to provide an introduction to basic data structures, and  algorithms for manipulating them, by using C programming language. This course specifically gives an insight view of the fundamental design, analysis, implementation and evaluation of basic data structures structure needs of particular problems. Both females and males students will be able to analyze the asymptotic performance of algorithms, write rigorous correctness proofs for algorithms and synthesize efficient algorithms in common engineering design situations.