Undergraduate Catalog

Bachelor of Science in Computer Science Requirements

The BSc in Computer Science program is concerned with the theoretical foundations of information and computation. Computation is defined as any type of calculation or use of computing technology that follows well-defined models (such as algorithms and protocols) in the practice of information processing. The study of computer science involves systematically studying, building, and testing methodical processes (such as algorithms) in order to aid the acquisition, representation, processing, storage, and communication of information. The program provides a strong understanding of the relationship between computer hardware and software and all related issues. It is key to many career opportunities in high-tech manufacturing, in software development, and in mobile and digital security. Students are offered opportunities to customize their education by selecting from a wide pool of technical elective courses.

Program Educational Objectives

The program’s graduates are expected to be able to:

  • Develop in their chosen profession and/or progress toward an advanced degree
  • Gain the trust and respect of others as effective and ethical team members
  • Achieve a reputation as a source of innovative solutions to complex problems in computer science and related areas; and
  • Reach positions of leadership in an organization and/or on teams.

Program Learning Outcomes

Upon successful completion of the BSc in CS program, the graduates of the B.Sc. in Computer Science program will be able, without guidance, to:

(1) Analyze a complex computing problem and apply principles of computing and other relevant disciplines to identify solutions.
(2) Design, implement, and evaluate a computing-based solution to meet a given set of computing requirements in the context of computer science.
(3) Communicate effectively in a variety of professional contexts.
(4) Recognize professional responsibilities and make informed judgments in computing practice based on legal and ethical principles.
(5) Function effectively as a member or leader of a team engaged in activities appropriate to computer science.
(6) Apply computer science theory and software development fundamentals to produce computing-based solutions.

Career Opportunities

Computer Scientists usually work in research laboratories that design, build and test various types of computer software models. Most work in high-tech manufacturing firms in the software development, mobile and digital security industries. There are also computer systems opportunities in design firms, research and development firms, or in governmental bodies such as defense, armed forces, police, health care and information technology (IT).

Career Specialization

Some indicative career specializations include:

  • Artificial Intelligence
  • Cloud Computing
  • Data Mining and Business Intelligence
  • Game Development
  • Digital Security/Cryptography
  • Mobile Applications Development
  • Robotics
  • Software development & Testing
  • Virtualization
  • Web and Multimedia Design

Degree Requirements

To be recommended for graduation with a BSc in Computer Science degree, students must successfully complete the courses in the specified categories as set out below. The categories cover the University General Education Requirements (GER, 48 credits), Additional Math/Science requirements (15 credits), as well as Computer Science Core (67 credits) that include  18 credits of Technical Electives requirements and 2 credits of internship. The normal length of the program is 130 credits. Students may also opt for a concentration in Artificial Intelligence or Cybersecurity.

Additional Math/Sciences Requirements (15 credits)

To satisfy the program requirements, the BSc in Computer Science requires the following courses in addition to the Math/Sciences required in GERs: CHEM 115, PHYS 121, MATH 111, and MATH 112.

MATH 204Linear Algebra

3

MATH 214Mathematical and Statistical Software

3

MATH 232Engineering Mathematics

3

MATH 234Discrete Mathematics

3

MATH 243Probability and Statistical Inference

3

Computer Science Core Requirements

The BSc degree program core requires a minimum of 47 credits core, 18 credits of technical electives, and 2 credits of internship.
COSC 101Foundations of Computer Science

3

COSC 201Computer Systems Organization

3

COSC 301Automata, Computability, and Complexity

3

COSC 310Data Structures

3

COSC 312Design and Analysis of Algorithms

3

COSC 320Principles of Programming Languages

3

COSC 330Introduction to Artificial Intelligence

3

COSC 340Introduction to Computer Security

3

COSC 497Senior Design Project I

3

COSC 498Senior Design Project II

3

COSC 230Object-Oriented Programming

4

COSC 354Operating Systems

3

COSC 336Introduction to Software Engineering

3

CCEN 356Computer Networks

4

COSC 399Computer Science Internship

1

COSC 399Computer Science Internship

1

COSC 444Database Systems

3

COSC 354Operating Systems

3

Total Credit Hours:52-54

Computer Science Technical Electives (18 credits)

Students are required to take a total of 18 credits from the following approved technical electives list. Technical electives must be at 300-level or 400-level and at most three credits may be Undergraduate Research. Additional courses may be approved by the department as technical electives.

COSC 401Computational Social Science

3

COSC 410Parallel and Distributed Computing

3

COSC 412Numerical Computing

3

COSC 430Data Analytics

3

COSC 432Algorithmic Robotics

3

COSC 434Introduction to Machine Learning

3

COSC 435Introduction to AI/ML for Cybersecurity

3

COSC 440Digital Forensics

3

COSC 442Applied Cryptography

3

COSC 452Human-Computer Interaction

3

COSC 454Computer Graphics

3

COSC 460Bioinformatics and Genomic Data Science

3

COSC 462Mobile and Web Applications Development

3

COSC 464Natural Language Processing

3

COSC 377Undergraduate Research

3

COSC 477Undergraduate Research

3

COSC 436Software Testing and Quality Assurance

3

COSC 333System Analysis & Software Design

3

COSC 435Introduction to AI/ML for Cybersecurity

3

COSC 438Software Architecture

3

COSC 449iOS App Development

3

COSC 456Image Processing and Analysis

3

CCEN 448Cloud Infrastructure and Services

3

CCEN 446Network Security

3

CCEN 481Wireless Sensor Networks and Internet of Things

3

Computer Science Concentrations (Optional)

Computer Science students may opt for selecting a concentration in either Artificial Intelligence or Cyber Security. Selecting a degree concentration at Khalifa University leads to a specialization which will be specified on the student’s academic record (transcript). The concentration consists of 15 credits in the specialized area.

Artificial Intelligence Concentration

COSC 330Introduction to Artificial Intelligence

3

COSC 430Data Analytics

3

COSC 434Introduction to Machine Learning

3

COSC 432Algorithmic Robotics

3

COSC XXX
Artificial Intelligence Elective

3

COSC XXX (Artificial Intelligence Elective): From an approved list of courses.

Cyber Security Concentration

COSC 340Introduction to Computer Security

3

COSC 435Introduction to AI/ML for Cybersecurity

3

COSC 440Digital Forensics

3

COSC 442Applied Cryptography

3

CCEN 446Network Security

3