# Computer Science

## Courses

## Semester One

**Units**: 3

**Lecturer**: Shemal Shukri Taher

**Description**:

**Course overview:**

###### This course is a complementary of the first course of IS, students will experience system analysis and design for more business efficient systems. The course is an introductory, meant for those with little or no experience with computers or information systems. While sometimes the descriptions can get a little bit technical, in order to understand the current market requirement of IS. The student should understand the component of computerized IS and who to systematically develop an information system from the scratch using Microsoft Access with all its components, this course will focus on queries rather than the other components.

**Units**: 2

**Lecturer**: Kafi Dano Pati

**Description**:

**Course overview:**

This is an undergraduate course in linear algebra for students of science, and mathematics. Linear algebra is the study of linear systems of equations, vector spaces, and linear transformations.

Solving systems of linear equations is a basic tool of many mathematical procedures used for solving problems in science. In this class we will concentrate on the mathematical theory and methods of linear algebra.

The student will become competent in solving linear equations, performing matrix algebra, calculating determinants, and finding eigenvalues and eigenvectors. On the theoretical side, the student will come to understand a matrix as a linear transformation relative to a basis of a vector space.

The student will become comfortable with the vector space Rn and be exposed to vector spaces more generally by working on examples with polynomials in Pn and continuous functions in C [a ,b ].

The definite integral from calculus will be revisited and recognized as an inner product. The student will understand the concept of orthogonally of vectors and its use in projecting vectors into subspaces and decomposing vectors into components.

Finally the student will learn how to solve over constrained systems using the method of least squares. The science student will have a solid base of understanding in elementary linear algebra as required for further undergraduate work in those fields and the mathematics student will be prepared for a more formal and rigorous linear algebra course.This is an undergraduate course in linear algebra for students of science, and mathematics. Linear algebra is the study of linear systems of equations, vector spaces, and linear transformations.

Solving systems of linear equations is a basic tool of many mathematical procedures used for solving problems in science. In this class we will concentrate on the mathematical theory and methods of linear algebra.

The student will become competent in solving linear equations, performing matrix algebra, calculating determinants, and finding eigenvalues and eigenvectors. On the theoretical side, the student will come to understand a matrix as a linear transformation relative to a basis of a vector space.

The student will become comfortable with the vector space Rn and be exposed to vector spaces more generally by working on examples with polynomials in Pn and continuous functions in C [a ,b ].

The definite integral from calculus will be revisited and recognized as an inner product. The student will understand the concept of orthogonally of vectors and its use in projecting vectors into subspaces and decomposing vectors into components.

**Course Code**: SC212

**Units**: 3

**Lecturer**: Shamal Mohammed Amin

**Description**:

** Course overview:**

This course provides in-depth coverage of object-oriented programming principles and techniques using C++. Topics include functions, pointers, dynamic memory allocation, structures and union, classes and objects, overloading, inheritance, polymorphism, templates, etc. The goal of the course is to familiarize the students with programming in a high-level object-oriented language while studying the main constructs of C++. The students will learn to translate algorithms into correct programs as well as to debug, document and maintain the code.

**Lecturer**: Lamya Abdulateef Omer

**Description**:

**The course is aimed at the following outcomes:**

- To study fundamentals mathematical concepts of logic, sets, and functions.
- To refine mathematical reasoning skills through the study of mathematical logic and proof.
- To develop problem solving skills for enumeration.
- To investigate discrete structures, including sets, matrices, permutations, relations, graphs, trees, and finite-state machines.
- To apply the above to applications with an emphasis on applications to computing.

**Units**: 4

**Lecturer**: Omar Ammar Omar

**Description**:

**Course Overview:**

This course introduces the principle of computer organization and architecture with focus on detailed implementation of CPU, memory organization and management, bus, I/O systems and pipelining. The software part of the microprocessor will also be covered including data movement, arithmetic and logic, branching (conditional and unconditional), and interrupt. We shall further discuss both hardware and software technologies of computer systems and latest technologies, design, implementation and current development of related technologies

**Units**: 3

**Lecturer**: Saman Alias Barakat

**Description**:

**Course overview:**

The study of data structures is an essential subject of every under graduate and graduate programs related to computer science. Data structure is a data organization, management, and storage format that enable efficient access and modification. More precisely, a data structure is a collection of data values, the relationships among them, and the functions or operations that can be applied to the data. A thorough understanding of the basics of this subject is inevitable for efficient programming. This course covers the design and implementation of data structures including arrays, stacks, queues, linked lists to give a better understanding about the Data Structures.