Computer Science bachelor`s degree Program


Computer science is developed to be the systematic study of computing system and computation. The body of knowledge resulting from this discipline contains theories for understanding computer systems and methods design methods, algorithms, and tools methods for testing of concepts methods of analysis and verification and knowledge representation and implementation. Moreover, it goes all the way to cutting-edge developments in robotics, computer vision, intelligent systems, bioinformatics, and other exciting areas. We can think of the work of computer scientists as falling into three categories. They design and implement software. Computer scientists take on challenging programming jobs. They also supervise other programmers, keeping them aware of new approaches. They devise new ways to use computers. Progress in the CS areas of networking, database, and human-computer-interface enabled the development of the World Wide Web. Now CS researchers are working with scientists from other fields to make robots become practical and intelligent aides, to use databases to create new knowledge, and to use computers to help decipher the secrets of our DNA. They develop effective ways to solve computing problems. For example, computer scientists develop the best possible ways to store information in databases, send data over networks, and display complex images. Their theoretical background allows them to determine the best performance possible, and their study of algorithms helps them to develop new approaches that provide better performance. Computer science spans the range from theory through programming. Curricula that reflect this breadth are sometimes criticized for failing to prepare graduates for specific jobs. While other disciplines may produce graduates with more immediately relevant job-related skills, computer science offers a comprehensive foundation that permits graduates to adapt to new technologies and new ideas.

Semester 1    Semester 2    Semester 3    Semester 4    Semester 5    Semester 6    Semester 7    Semester 8   

CodeTitlePrequisitesCourse Material
BA003 Math 0 None N/A
BA101 Calculus 1 None N/A
BA113 Physics None Course material
CS111 Introduction to Computers None Course material
IS171 Introduction to Information systems None Course material
LH135 English for Specific Purposes I (ESP I) None of LH130* N/A
NC172 Fundamentals of Business None N/A

CodeTitlePrequisitesCourse Material
BA102 Calculus 2 BA101 Course material
CS143 Introduction to Problem Solving and Programming CS111 Course material
EC134 Fundamentals of Electronics BA113 Course material
GM311 Introduction to Multimedia CS111 N/A
LH136 English for Specific Purposes II (ESP II) LH011 N/A
NC133 Communication Skills LH135 N/A

CodeTitlePrequisitesCourse Material
BA201 Calculus III BA102 Course material
BA203 Probability and Statistics BA102 N/A
BA216 Advanced Physics BA113 N/A
CE216 Digital Logic Design CS111 Course material
CS202 Discrete Structures CS111 Course material
CS243 Object Oriented Programming CS143 Course material

CodeTitlePrequisitesCourse Material
CE231 Introduction to Networks CS143 N/A
CE243 Intro. to Computer Architecture CE216 N/A
CS212 Data Structures and Algorithms CS243 Course material
CS244 Advanced Programming Applications CS243 Course material
IS273 Database Systems CS143 Course material
IT291 Professional Training in Entrepreneurship NoneN/A
SE291 Introduction to Software Engineering CS243, IS171 Course material

CodeTitlePrequisitesCourse Material
BA301 Advanced Statistics BA203 N/A
BA304 Linear Algebra BA102 N/A
CS311 Theory of Computation CS202 Course material
CS321 Systems Programming CS243, CE243 Course material
CS333 Web Programming IS273 Course material
CS352 Computer Graphics CS212 N/A
IT321 Professional Training in Programming I (.Net 1) NoneN/A

CodeTitlePrequisitesCourse Material
CS301 Numerical Methods BA304, CS143 Course material
CS305 System Modeling and Simulation BA203, CS243N/A
CS312 Computing Algorithms CS212 Course material
CS322 Operating Systems CS212, CE243 Course material
CS366 Introduction to Artificial Intelligence CS212, CS202 Course material
IT322 Professional Training in Programming II (.Net 2) IT321N/A

CodeTitlePrequisitesCourse Material
CS401 Project 1 GPA>=2.0 &+96CR N/A
CS445 Structure of Programming Languages CS311, CS321 Course material
CS481 Computers & Society 96CR+ N/A
IT421 Professional Training in Programming III NoneN/A
Major 1 Major Elective -N/A
Major 2 Major Elective -N/A
Minor 2 Minor Elective -N/A

CodeTitlePrequisitesCourse Material
CS402 Project 2 CS401 N/A
CS421 Computer System Security CS322, CE231 Course material
CS451 Human Computer Interaction SE291 Course material
IT422 Professional Training in Programming IV NoneN/A
Major 3 Major Elective -N/A
Major 4 Major Elective -N/A
Minor 4 Minor Elective NoneN/A


Elective courses
CodeTitlePrequisitesCourse material
CS353 Digital Image Processing CS212, BA201 N/A
CS469Robotics Applications CS366, CE243 N/A
CS468Advanced Artificial Intelligence CS366 N/A
CS464Soft Computing CS366 N/A
CS461Software Agents CS366 N/A
CS454Multimedia Acquisition and Communications CS244, CE231 N/A
CS453Virtual Environments CS352 N/A
CS449Functional Programming CS445 N/A
CS443Game Programming CS243, CS352 N/A
CS441Compilers CS321, CS445 N/A
CS432Network Protocols & Programming CE231, CS244 N/A
CS428Cloud Computing CS322, CE231 Course material
CS427Embedded Systems Programming CS143, CE243 N/A
CS425Distributed Systems CS322 N/A
CS411Data Compression CS212,BA201 Course material
CS403Optimization Techniques CS301 N/A
CS475Information Retrieval CS212, BA304 Course material


Elective courses