Department of Computer Science

Head of Department:
Bayram Annanurov
Group ID:
Faculty of Information and Computer Technologies
Bachelor of Science


The Computer Science curriculum is designed to provide the students with the technical knowledge and skills necessary to specify, evaluate, and manage computer system design; to provide technical guidance in applications ranging from data processing to tactical embedded systems; to perform analysis and design methodologies appropriate for hardware, software, and firmware; and provide practical experience in applying modern computer equipment and research techniques to solve daily problems. The curriculum also provides for concrete experience in computing practices — the skills and ways of thinking that mark a computing professional. These include programming, engineering of systems, modeling, and innovating.

The two dimensions —great principles and practices— define the space in which the core technologies of computing exist and serve application domains: Algorithms, architecture, artificial intelligence, database, networking, operating systems, security, and more.


The mission of the Computer Science Program is to educate the students to gain an understanding of the fundamentals of computers so that they can develop solutions to IT problems and enhance their computing, communication, and research skills. It is aimed to especially emphasize teamwork, independent and innovative thinking and leadership qualities. In particular, the Computer Science Program aims to:

  • Train the students to have theoretical background in IT and to be equipped with necessary technical skills,
  • Develop students' competency soft skills like, communication, ethics, team work, responsibility.
  • Provide practical experience which will enable students to utilize and enhance their IT knowledge,
  • Promote students' self-discipline and self-assurance and the ability to learn on their own,
  • Encourage team work, collaboration and development of interpersonal skills,
  • Motivate the students towards contributing to the progress of science and technology,
  • Teach the importance of ethical behavior in social and professional life,
  • Produce graduates for the engineering and the business communities who are observant, inquisitive and open to new technologies for developing better solutions,
  • Produce graduates for the engineering and business communities with integrity, determination, judgment, motivation, ability and education to assume a leadership role to meet the demanding challenges of the society.


The first two years of the undergraduate program is dedicated to the study of basic sciences and mathematics which provide the student with IT fundamentals. The study of mechanics and materials which is basic to Computer Science begins in the second year. The third and fourth years involve the study and application of Computer Networks & Protocols, Computer Architecture, Database Management Systems, Programming Languages, Human-Computer Interaction, Multimedia Technologies, Foundations of Artificial Intelligence, Machine Learning and Neural Networks, Introduction to Computer Security, Information Security Management, Elements of User Interface Design, Compiler Design, Database Design, E-Commerce.

Job opportunities:

Graduates of the department qualify for a responsible position in the IT industry, public and private sectors. Prospective employers include, but are not limited to, database administrators, IT security management, computer gaming sector, and various government agencies.

What can you do after graduating from our Computer Science major?

  1. Information Technology Applications Engineer
  2. Computer and Information Scientist
  3. Database Administrator
  4. Database Analyst
  5. Information Technology Consultant
  6. Network Engineer
  7. Network Operations Project Manager
  8. Software Engineer
  9. Software Architect
  10. Programmer Analyst
  11. Systems Administrator
  12. Systems Engineer
  13. Telecommunications Network Engineer

Specific jobs for Cambodia:

  1. Medicine-Medical Imaging
  2. Medicine-Patient Monitoring
  3. Medicine-Diagnostics
  4. Government-ICT development and policy
  5. Government-Taxation system
  6. Government-Voting system
  7. Government-Intelligence and code breaking
  8. Aviation-Flight control
  9. Aviation-Air traffic control
  10. Telecommunications-Mobile Operators
  11. Telecommunications-Internet and Fiber Optics
  12. Education-Course instruction
  13. Education-Control of web-based courses



The following table shows the courses required towards Bachelor's degree.

DE = Department Elective (a course offered by CS department)

FE = Faculty elective (a course offered by other departments at the faculty of ICT)

NE = Non-faculty elective (a course offered by faculties other than ICT)

Some MIS courses have content and curriculum equivalent to their CS counterparts. Such are not counted as FE.

Curriculum of Department of Computer Science

Semester 1 - Core Courses
Remarks: 1 (*) BS students must take MATH101 or MATH100, depending on MPT results. BA Students may take MATH 100,MATH 160 or equivalent. 2- (**) All students must take BUS 101 or ECON 101 as NE
Courses Name Credit
CS 110 IT Applications 3
CS 151 Introduction to Programming 3
MATH 101 Calculus I 4
ACAD 101 Fundamentals of Academic Skills I 3
KHM 101 Khmer Studies I 3
NE Non-Faculty Elective (**) 3
Semester 2 - Core Courses
Remarks: (*) BS students must take MATH102. BA Students may take MATH 100,MATH 160 or equivalent. (**) All students must take BUS 102 or ECON 102 as NE.
Courses Name Credit
CS 121 Computer Architecture 3
CS 241 Programming in C & C++ 3
MATH 102 Calculus II 4
ACAD 102 Fundamentals of Academic Skills II 3
KHM 102 Khmer Studies II 3
NE Non-Faculty Elective (**) 3
Semester 3 - Core Courses
Remarks: (*) All students must take a non-Departmental Elective. (**) BA Students may take another Elective instead of MATH 201.
Courses Name Credit
CS 201 Data Structures and Algorithms 3
CS 211 Software Design 3
CS 260 Web Design & Development 3
CS 331 Computer Graphics 3
MATH 201 Linear Algebra and Its Applications 4
Semester 4 - Core Courses
Remarks: (*) BA Students may take another Elective instead of MATH 250.
Courses Name Credit
CS 230 Computer Networks 3
CS 240 Supervised Project in a Programming System 3
CS 250 Operating Systems 3
CS 262 Advanced Concepts in Web Development 3
CS 241 Programming in C & C++ 3
MATH 250 Probability and Statistics 3
Semester 5 - Core Courses
Remarks: (*) All students must take a Faculty Elective. (**) All students must take Non-Faculty Elective.
Courses Name Credit
CS 301 Systems Programming 3
CS 311 Discrete Mathematics 3
CS 321 Database Management 3
CS 221 Media Computation 3
FE Faculty Elective 3
NE Non-Faculty Elective (**) 3
Semester 6 - Core Courses
Remarks: (*) All students must take an elective course.
Courses Name Credit
CS 342 Artificial Intelligence 3
CS 360 Developing Mobile Applications for Android 3
CS 340 Self Study in a Programming System 3
CS 312 Computer Security 3
CS 380 Human-Computer Interaction: UI Design 3
Semester 7 - Core Courses
Courses Name Credit
CS 401 Final Year Project I 3
CS 461 Developing Mobile Applications for iPhone/iPad 3
DE Department Elective 3
DE Department Elective 3
DE Department Elective 3
Semester 8 - Core Courses
Courses Name Credit
CS 402 Final Year Project II 3
CS 480 Professionalism in Computing 3
DE Department Elective 3
DE Department Elective 3
DE Department Elective 3
Departmental Elective Courses
Courses Name Credit
CS 382 Search Engines and Information Retrieval 3
CS 411 Comparative Languages 3
CS 421 Advanced Database Systems 3
CS 441 Parallel Computations 3
CS 426 Cloud Computing 3
CS 451 Introduction to Data Mining 3
CS 427 Selected Topics in CS 3
CS 432 Software Testing 3
CS 470 Social and Information Network Analysis 3
CS 468 IT Project Management 3