American University of Beirut

Department of Computer Science

​Chairperson
Safa, Haidar H.
ProfessorsAbu Salem, Fatima K.; El-Hajj, Wassim; Safa, Haidar H.
Associate ProfessorsElbassuoni, Shady; Khabbaz, Maurice

Assistant Professors

Assaf, Rida; El Hajj, Izzat; Harkous, Hassanein; Mardanbegi, Diako; Mouawad, Amer
Senior LecturerJureidini, Wadi' N.
LecturersKobeissi, Mohamed A.; Raheel, Saeed
InstructorsAoude, Loa; Fatairi, Nour ; Khalil, Alabbass

The Department of Computer Science offers a program leading to the degree of bachelor of science (BS) in computer science. It also offers a program leading to the degree of master of science (MS) in computer science. For more information about the department visit:

Mission Statement

The Department of Computer Science at the American University of Beirut prepares students for advanced studies and professional careers in the dynamically changing world of computing and information technology. Our programs combine the theoretical foundations of computing with the practical knowledge of software development vital to industry, to provide broad and integrated curriculums. 

The department offers a bachelor of science (BS) degree in computer science, designed to be completed typically in three years after the freshman year. It also offers a master of science (MS) program designed to provide advanced and specialized education in computing, offered in formats that meet the needs of both working professionals and full-time students. 

The department has vigorous research programs in theoretical computer science, systems, machine learning and data science, and software engineering. Our faculty members are committed to contributing to the advancement of the field of computing through scholarly activities, in which our students play a vital role.

BS in Computer Science

The BS program aims at imparting graduates with a solid foundation in computing at both the theoretical and practical levels, thus conferring the ability to design, build, and deploy sophisticated systems using state-of-the-art technologies in a broad array of areas. It also develops an appreciation of the transformative impact that computing has had on a wide variety of disciplines. Students are trained in quantitative reasoning, the use of fundamental principles and ideas (abstraction, modularity, data structures, algorithmics, computability, calculus, and logic) for analysis and problem solving, and disciplined development of modern software systems. The BS program adheres to the Association of Computing Machinery (ACM) standards for knowledge area learning outcomes.

BS/MS in Computer Science

A study plan is presented that allows students to finish the requirements for the BS and MS degrees in four years (including summers) after the freshman year.

BE in Computer Science & Engineering (CSE)

AUB also offers a program in computer science and engineering (CSE) leading to the degree of bachelor of engineering (BE). The BE in CSE is offered by the Department of Electrical & Computer Engineering in collaboration with the Department of Computer Science. Students who have completed the requirements for a BS in computer science have the option to transfer to the BE program in CSE, provided they achieve a qualifying overall GPA. Transferring students can finish the CSE degree in four calendar years, provided they follow an appropriate study plan.

Minor in Computer Science

A minor in computer science requires the completion of the following 18 credits: CMPS 201, CMPS 202, CMPS 211 (or MATH 211), CMPS 214, 3 credits from the following: CMPS 215, CMPS 221, CMPS 240, CMPS 241, and CMPS 271, and 3 credits from CMPS courses numbered 214 and above (except CMPS 260 and CMPS 269). [Note: This minor is not open to students from the CSE Program.]

Minor in Computational Science

A minor in computational science requires the completion of the following 18 credits: 12 required credits (CMPS 201 or CMPS 203, CMPS 202, MATH/CMPS 251, MATH 281 or CMPS 254), and 6 credits out of the following: MATH 211 (or CMPS 211), DCSN 200, PHYS 222, or a tutorial course in either PHYS 231 or PHYS 232, a course in bioinformatics, or a chemistry course which has computational contents.[Note: This minor is open to computer science students].

Minor in Data Science

A minor in data science requires the completion of the following 18 credits: CMPS 201 or CMPS 203, CMPS 244, CMPS 261, CMPS 262, one of the following (STAT 201, STAT 210, STAT 230, STAT 233, BUSS 200, EDUC 227, ECON 213, or NURS 203), and MATH 218 or MATH 219. [Note: This minor is not open to Computer Science students and students from the CSE Program].

Minor in Software Development and Design

A minor in software development and design requires the completion of the following 18 credits: CMPS 201, CMPS 202, CMPS 244, and CMPS 271, and two of CMPS 270, CMPS 278, CMPS 279, and CMPS 288. [Note: This minor is not open to computer science students and students from the CSE Program.]

Minor in Gaming

The gaming minor can be attained by AUB students who fulfill 18 credits which vary depending on the students’ majors. Humanities, creative arts, graphic design, and related majors must take the following 3 courses: CMPS 201 or CMPS 203, GRDS 141, CMPS 204. Science, engineering, math, and other STEM majors (including computer science) must take the following 3 courses: CMPS 202, CMPS 285, CMPS 288. All majors must take 2 out of the following courses: ENGL 264, ENGL 297, MCOM 291P. All majors must also take one out of the following courses: ENGL 254G, EDUC 275.

Degree Requirements

To graduate with a BS in computer science, students must complete the following requirements:

University General Education Requirements

The general education requirements are Understanding Communication - English (6 credits), Understanding Communication - Arabic (3 credits), Cultures and Histories (9 credits), Human Values (3 credits), Societies and Individuals (6 credits), Understanding the World (3 credits), and Quantitative Reasoning (6 credits completed via the major requirements), and Community Engaged Learning (3 credits).

At least one of the courses from Cultures and Histories or Human Values should be from the History of Ideas: CHLA. At least one course from the degree requirements (except Understanding Communication) should cover the theme of Social Inequalities (3 credits).

Major Requirements

  • Computer science: CMPS 201, CMPS 202, CMPS 214, CMPS 215, CMPS 221, CMPS 240,
    CMPS 241, CMPS 271, and 18 additional credits in computer science courses numbered 214 and above (except CMPS 260 and CMPS 269).
  • Technical electives: Three credits to be chosen from the following: CMPS elective numbered 214 or above (except CMPS 260 and CMPS 269), BIOL 251, ECON 214, ECON 217, EECE 421,
    EECE 422, EECE 423, EECE 425, FINA 210, MATH 210, MATH 261, MATH/STAT 234, MATH/STAT 238, PHYS 222, PHYS 228, PHYS 235, PSYC 222, PSYC 229.
  • Mathematics: MATH 201, MATH 211 (or CMPS 211), MATH 218 (or MATH 219), and STAT 230 (or STAT 233).
All prospective computer science majors are expected to complete CMPS 201, MATH 201,
MATH 211 or CMPS 211, MATH 218, CMPS 202, and STAT 230 in the sophomore year. Computer science majors are expected to complete CMPS 214, CMPS 221, CMPS 241, and CMPS 271 in the junior year, and CMPS 215, and CMPS 240 in the senior year, and maintain an average grade of at least 2.3 in computer science courses. Students must have a grade of at least C+ in CMPS 201, and a grade of at least C+ in CMPS 202 before they are allowed to enroll in most CMPS courses.

Optional Focus Areas

Students may claim one or two of the following optional focus areas by taking their elective courses as specified for each focus area:
  • Systems focus area: 3 courses (9 credits) selected from CMPS 224, CMPS 231, CMPS 232,
    ​CMPS 242, CMPS 243, CMPS 244, or a special topics course in systems.
  • Artificial intelligence and data science focus area: 3 courses (9 credits) selected from CMPS 244, CMPS 261, CMPS 262, or a special topics course in artificial intelligence and data science.
  • Software engineering focus area: 3 courses (9 credits) selected from CMPS 244, CMPS 278, CMPS 279, CMPS 288, or a special topics course in software engineering.

Sample Study Plan for BS

A typical study plan could have the following distribution of CMPS courses: 

First Year
  • First term: CMPS 201, CMPS 211, MATH 201
  • Second term: CMPS 202, MATH 218, STAT 230
​Second Year
  • First term: CMPS 214, CMPS 221, CMPS 241
  • Second term: CMPS 215, CMPS 240, CMPS 271
​Third Year
  • First term: 3 CMPS electives
  • Second term: 3 CMPS electives

Sample Study Plan for BS/MS

First Year
  • Fall: CMPS 201, CMPS 211, MATH 201
  • Spring: CMPS 202, MATH 218, STAT 230
  • Summer: CMPS 221
Second Year
  • Fall: CMPS 214, CMPS 241, CMPS elective
  • Spring: CMPS 215, CMPS 240, CMPS 271
  • Summer: CMPS elective
Third Year
  • Fall: 3 CMPS electives
  • Spring: 4 Graduate Courses
  • Summer: CMPS elective
Fourth Year
  • Fall: 3 graduate courses + comprehensive (for thesis and project options)
  • Spring: 3 graduate courses (for course-based option) or 2 graduate courses + project (for project option) or thesis (for thesis option)​

Courses


42 Credits in Computer Science​

​Modes of Analysis
​Understanding Communication - English and Arabic (9)
​Cultures and Histories (9), Human Values (3)
​Societies and Individuals (6)
​Understanding the World (3), Quantitative Reasoning (54)
​Community-Engaged Learning (3)
​Technical Electives (3)
​Lecture Courses

(9+12+ 6+3+3 +54+3)
​Required Arabic course (3)

Required English courses (usually 6): ENGL 203(3), 204(3), as determined by placement
​Required credits in the Cultures and Histories: 9 credits including History of Ideas and 3 credits Human Values
​Required courses (6)
​Required Understanding the World courses (3)​

Required CMPS courses (24): CMPS 201(3), 202(3), 214(3), 215(3), 221(3), , 240(3), 241(3), 271(3)

Required CMPS electives (18): to be chosen from CMPS courses above 214 (Except CMPS 260 and CMPS 269)

Required mathematics courses (12): MATH 201(3), MATH 211(3) (or CMPS 211), MATH 218 (or 219), STAT 230 (or 233)
​Required courses (3)
​Required 3 credits course (3): CMPS elective numbered 214 or above (Except CMPS 260 and CMPS 269), BIOL 251, ECON 214, ECON 217, EECE 421, EECE 422, EECE 423, EECE 425, FINA 210, MATH 210, MATH 261, MATH/ STAT 234, MATH/ STAT 238, PHYS 222, PHYS 228, PHYS 235, PSYC 222, PSYC 229
​Seminar (0)

​Laboratory
​CMPS 201, 202, 278

​Research project (0 or 3)
​​​

Contact Us

For various questions, please try contacting us via social media first!
read more

Privacy Statement

We take data privacy seriously and adhere to all applicable data privacy laws and regulations.
read more

Copyright and Disclaimer

Written permission is needed to copy or disseminate all or part of the materials on the AUB website.
read more

Title IX, Non-Discrimination, and Anti-Discriminatory Harassment

AUB is committed to providing a safe and respectful environment to all members of its community.
read more