Bachelor of Science in Computer Science

Overview

The Bachelor of Science in Computer Science at LAU provides a fundamental understanding of the theoretical principles of software and digital systems within the context of current technology. The program provides students with a strong background in the fundamentals of mathematics and computer science, and is balanced between theoretical and applied courses that prepare students for a professional career in the area of computer science. Furthermore, in addition to developing computer science skills, the program helps the students obtain an understanding of the human and social aspects of computer systems, and how computer science relates to other disciplines.

Mission

The mission of the Computer Science program is to provide students with the ability to integrate the theory and practice of computing in the representation, processing, and use of information while upholding the tradition of a liberal arts education.

Program Objectives

  • Graduates shall be prepared for computer science related careers, locally and abroad, with a broad knowledge of the computing field, related principles, tools and theories, and also for pursuing graduate studies.
  • Graduates shall be committed to life-long learning, be capable to work efficiently in teams, and possess effective communication skills.
  • Graduates shall be aware of cultural, social, legal and ethical issues inherent in the discipline of computing.

Program Outcomes

At the completion of this program, students shall be able to:

  1. Apply their computational and mathematical knowledge in order to solve computational problems;
  2. Analyze a problem, identify, define, and verify the computing requirements appropriate to its solution;
  3. Design, evaluate, and implement an efficient and a correct algorithm, computer-based system, process, component, or program that meets desired needs;
  4. Work effectively and interactively in teams in order to accomplish a common goal;
  5. Understand the ethical and social issues related to computing;
  6. Effectively present, transmit, and communicate their work, written as well as orally, to colleagues and to clients;
  7. Analyze the local and global impact of the computing field on individuals, organizations, and society;
  8. Understand current technology trends as well as future directions and shall recognize the need and develop the necessary skills for continued professional development;
  9. Use current techniques, skills, and tools necessary for computing practices;
  10. Apply mathematical foundations, algorithmic principles, and computer science theory in the modeling and design of computer-based systems in a way that demonstrates comprehension of the tradeoffs involved in design choices; and
  11. Model, analyze and design computer-based software systems including requirements elicitation, specification, prototyping, design, implementation, trade-offs analysis, testing and documentation.

Admission Requirements

To enter the major, students must meet the general university requirements.

Graduation Requirements

A total of 92 credits are required to graduate, based on:

Major Core Requirements 35 credits
Computer Science Electives 15 credits
Mathematics 12 credits
Mathematics Electives 3 credits
Science Requirements 3 credits
Other (LAC) Requirements 21 credits
Free Electives 3 credits
Total: 92 credits

Program Requirements

The Program requirements consist of a minimum of 92 credits. The program requires students to complete core requirements that provide a sound mathematical and computer science foundation. In addition, students are required to take elective courses that provide advanced knowledge and skills.

Major Core Requirements (35 credits):

  • CSC243 / Introduction to Object Oriented Programming (3 cr.)
  • CSC245 / Objects and Data Abstraction (3 cr.)
  • CSC310 / Algorithms and Data Structures (3 cr.)
  • CSC320 / Computer Organization (3 cr.)
  • CSC322 / Computer Organization Lab (1 cr.)
  • CSC326 / Operating Systems (3 cr.)
  • CSC375 / Database Management Systems (3 cr.)
  • CSC430 / Computer Networks (3 cr.)
  • CSC447 / Parallel Programming for Multicore and Cluster Systems (3 cr.)
  • CSC480 / Social and Professional Issues in Computing (3 cr.)
  • CSC490 / Software Engineering (3 cr.)
  • CSC491 / Professional Experience (1 cr.)
  • CSC599 / Capstone Project (3 cr.)

Computer Science Electives (15 credits): 

  • CSC323 / Digital Systems Design (3 cr.)
  • CSC412 / Introduction to Bioinformatics (3 cr.)
  • CSC420 / Computer Architecture (3 cr.)
  • CSC435 / Computer Security (3 cr.)
  • CSC440 / Advanced Object Oriented Programming (3 cr.)
  • CSC443 / Web Programming (3 cr.)
  • CSC460 / Artificial Intelligence (3 cr.)
  • CSC450 / Computer Graphics (3 cr.)
  • CSC458 / Game Programming (3 cr.)
  • CSC495 / IT Project Management  (3 cr.)
  • CSC498 / Topics in Computer Science (may be repeated)  (3 cr.)

Mathematics (12 credits):

  • MTH201 / Calculus III (3 cr.)
  • MTH207 / Discrete Structures I (3 cr.)
  • MTH305 / Probability and Statistics (3 cr.)
  • MTH307 / Discrete Structures II (3 cr.)

Mathematics Electives (3 credits):

  • MTH301 / Linear Algebra (3 cr.)
  • MTH303 / Numerical Methods (3 cr.)
  • MTH304 / Differential Equations (3 cr.)
  • MTH306 / Non-Linear Dynamics and Chaos (3 cr.)
  • MTH309 / Graph Theory  (3 cr.)
  • MTH498 / Topics in Mathematics (may be repeated) (3 cr.)

Science Requirements (3 credits):

  • BIO209 / Basic Biology for Computer Science (3 cr.)
  • CHM209/ Essentials of Chemistry for Computer Science (3 cr.)

 

Sample Study Plan

Year One

Fall: 16 credits Spring: 16 credits
  • CSC243 / Introduction to Object Oriented Programming
  • ENG202 / Sophomore Rhetoric
  • MTH 207 / Discrete Structures I
  • ARA 2/— 3— Arabic Language / Literature
  • PED2— / Physical education
  • Free Elective

 

  • MTH 201 / Calculus III
  • CSC 245 / Objects and Data Abstraction
  • CSC 320 / Computer Organization
  • CSC 322 / Computer Organization Lab
  • ENG 203 / Fundamentals of Oral Communications
  • LAC Arts Elective

Year Two

Fall: 14 credits Spring: 16 credits
  • CSC310 / Algorithms and Data Structures
  • CSC375 / Databases Management Systems
  • CSC326 / Operating Systems
  • MTH305 / Probability and Statistics
  • ETH201 / Moral Reasoning
  • HLT201 / Basic Health

 

  • CSC490 / Software Engineering
  • CSC447 / Parallel Programming for Multicore & Cluster Systems
  • MTH307 / Discrete Structures II
  • CSC—  / Technical Elective
  • Science Elective [1]
  • CSC491 / Professional Experience [2]

 

Year Three

Fall: 15 credits Spring: 15 credits
  • CSC430 / Computer Networks
  • CSC480 / Social & Professional Issues in Computing [LAC Social]
  • CSC / Technical Elective
  • CSC / Technical Elective
  • LAC Philosophy, Religion, History Elective
  • CSC599 / Capstone Project
  • CSC— / Technical Elective
  • CSC— / Technical Elective
  • Mathematics Elective
  • LAC Literature / LAC Elective

 

[1] Choose either BIO209 or CHM209.

[2] Internship must be completed in the Summer following registration.  It is equivalent to 100 hours of professional experience spread over a Summer Term.

Last modified: September 26, 2017