Academic Catalog 2018–2019

jump to navigation

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. In addition to developing computer science skills, the program helps 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 Bachelor of Science in Computer Science 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 Educational Objectives

  1. 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.
  2. Graduates shall be committed to life-long learning, be capable to work efficiently in teams, and possess effective communication skills.
  3. Graduates shall be aware of cultural, social, legal and ethical issues inherent in the discipline of computing.

Student 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.

Curriculum

A total of 92 credits are required to graduate, distributed as follows:

  • Major Core Requirements 35 (credits)
  • Computer Science Elective Courses (15 credits)
  • Mathematics Required Courses (12 credits)
  • Mathematics Elective Courses (3 credits)
  • Science Required Courses (3 credits)
  • Other LAC Requirements (21 credits)
  • Free Elective (3 credits)

Computer Science Core Requirements (35 credits)

  • CSC243 Introduction to Object-Oriented Programming (3 cr.)
  • CSC245 Objects & Data Abstraction (3 cr.)
  • CSC310 Algorithms & 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 & Cluster Systems (3 cr.)
  • CSC480 Social & Professional Issues in Computing (3 cr.)
  • CSC490 Software Engineering (3 cr.)
  • CSC491 Professional Experience (1 cr.)
  • CSC599 Capstone Project (3 cr.)

Computer Science Elective Courses (15 credits)

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

Mathematics Required Courses (12 credits)

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

Mathematics Elective Courses (3 credits)

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

Science Required Courses (3 credits)

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

Recommended Study Plan

Year One

Fall (16 credits)

  • CSC243 Introduction to Object Oriented Programming (3 cr.)
  • ENG202 Advanced Academic English (3 cr.)
  • MTH207 Discrete Structures I (3 cr.)
  • ARA2xx Arabic Language (3 cr.)1
  • PED2xx Physical Education (1 cr.)
  • Free Elective (3 cr.)

1 or ARA3xx Arabic Literature (3 cr.)

Spring (16 credits)

  • MTH201 Calculus III (3 cr.)
  • CSC245 Objects & Data Abstraction (3 cr.)
  • CSC320 Computer Organization (3 cr.)
  • CSC322 Computer Organization Lab (1 cr.)
  • COM203 Fundamentals of Oral Communications (3 cr.)
  • LAC Arts Elective (3 cr.)

Year Two

Fall (14 credits)

  • CSC310 Algorithms & Data Structures (3 cr.)
  • CSC326 Operating Systems (3 cr.)
  • CSC375 Database Management Systems (3 cr.)
  • MTH305 Probability & Statistics (3 cr.)
  • ETH201 Moral Reasoning (1 cr.)
  • HLT201 Basic Health (1 cr.)

Spring (16 credits)

  • CSC447 Parallel Programming for Multicore & Cluster Systems (3 cr.)
  • CSC490 Software Engineering (3 cr.)
  • MTH307 Discrete Structures II (3 cr.)
  • CSCxxx Technical Elective (3 cr.)
  • Science Elective (3 cr.)1
  • CSC491 Professional Experience (1 cr.)2

1Choose either BIO209 or CHM209
2Internship must be completed in the summer following registration. It is equivalent to 200 hours of professional experience spread over a summer term normally.

Year Three

Fall (15 credits)

  • CSC430 Computer Networks (3 cr.)
  • CSC480 Social & Professional Issues in Computing (3 cr.)1
  • CSCxxx Technical Elective (3 cr.)
  • CSCxxx Technical Elective (3 cr.)
  • LAC Philosophy, Religion, or History Elective (3 cr.)

1LAC Social Sciences

Spring (15 credits)

  • CSC599 Capstone Project (3 cr.)
  • CSCxxx Technical Elective (3 cr.)
  • CSCxxx Technical Elective (3 cr.)
  • Mathematics Elective (3 cr.)
  • LAC Literature (3 cr.)