Academic Catalog 2023–2024

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

Within few years after graduation, the following set of educational objectives describe what LAU Computer Science graduates are expected to attain:

  • Be successful professionals and recognized leaders in computer science or in related fields.
  • Pursue graduate studies.
  • Embrace human differences, social justice, ethical and environmentally-safe practices inherent in the discipline of computing.

Student Outcomes

By the time of graduation, students in the computer science program shall have the ability to:

  1. Analyze a complex computing problem and to 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 the program’s discipline.
  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 the program’s discipline.
  6. Apply computer science theory and software development fundamentals to produce computing-based solutions.

Curriculum

The BS in Computer Science curriculum includes 92 credits and introduces the idea of structured tracks.  The three tracks are:

  1. Artificial Intelligence and Data Science;
  2. Security and Networks;
  3. Software Development and Competitive Programming.

The detailed proposed program is shown in the Table below.

Major core requirements (35 credits)

  • CSC243 Introduction to Object Oriented Programming (3 cr.)
  • CSC243B Introduction to Object Oriented Programming Lab (1 cr.)
  • CSC245 Objects and Data Abstraction (3 cr.)
  • CSC245B Objects and Data Abstraction Lab  (1 cr.)
  • CSC310 Algorithms and Data Structures    (3 cr.)
  • CSC310B Algorithms and Data Structures Lab      (1 cr.)
  • CSC320 Computer Organization (3 cr.)
  • CSC322 Computer Organization Lab (1 cr.)
  • CSC326 Operating Systems (3 cr.)
  • CSC380 Theory of Computation  (3 cr.)  
  • CSC430 Computer Networks (3 cr.)
  • CSC375 Database Management Systems    (3 cr.)
  • CSC447 Parallel Program for Multicore and Cluster Systems (3 cr.)
  • CSC490 Software Engineering (3 cr.)
  • CSC491 Professional Experience (1 cr.)

Capstone Experience (3 credits)

Select one of the following:

  • CSC598 Undergraduate Computer Science Research (3 cr.)
  • CSC599 Capstone Project (3 cr.)

Track Requirements (6 credits)

Students must complete two courses from one declared area and are encouraged to take one course from each of the other two areas in order to cover the depth and breadth requirements

Artificial Intelligence and Data Science

Select two from the following

  • CSC460 Artificial Intelligence (3 cr.)
  • CSC461 Introduction to Machine Learning (3 cr.)
  • CSC462 Fundamentals of Deep Learning (3 cr.)
  • CSC463 Intro. to Data Science (3 cr.)
  • CSC464 Deep Learning for Natural Language Processing (3 cr.)

Security and Networks

Select two from the following

  • CSC433 Introduction to Cloud Computing  (3 cr.)
  • CSC435 Computer Security (3 cr.)
  • CSC437 Networks Security (3 cr.)
  • CSC438 Blockchain Systems (3 cr.)
  • CSC439 Computer Forensics (3 cr.)

Software Development and Competitive Programming

Select two from the following

  • CSC317 Competitive Programming (3 cr.)
  • CSC443 Web Programming (3 cr.)
  • CSC431 Mobile Applications (3 cr.)
  • CSC446 Systems Programming (3 cr.)
  • CSC458 Game Programming (3 cr.)

Open Technical CS Elective (6 credits)

Mathematics Requirements (15 credits)

  • MTH201 Calculus III (3 cr.)
  • MTH207 Discrete Structures I (3 cr.)
  • MTH305 Probability and Statistics (3 cr.)
  • MTH312 Applied Linear Algebra  (3 cr.)
  • Open Mathematics elective numbered 300 or above (3 cr.)

Natural Sciences Requirement (3 credits)

Choose one of the following

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

Liberal Arts and Science Requirements (12 credits)

  • ENG202 Advanced Academic English (3 cr.)
  • COM203 Art of Public Communication (3 cr.)
  • LAS204 Technology, Ethics, and the Global Society (3 cr.)
  • LAS205 Digital Cultures (3 cr.)

Liberal Arts and Science Electives (12 credits)

  • Change Makers (9 cr.)
  • Arts and Humanities (3 cr.)

Recommended Study Plan

Year One

Fall (16 credits)

  • CSC243 Introduction to Object Oriented Programming (3 cr.)
  • CSC243B Introduction to Object Oriented Programming Lab (1 cr.)
  • ENG202 Sophomore Rhetoric (3 cr.)
  • MTH207 Discrete Structures I (3 cr.)
  • LAS205 Digital Cultures (3 cr.)
  • MTH201 Calculus III (3 cr.)

Spring (14 credits)

  • CSC245 Objects and Data Abstraction (3 cr.)
  • CSC245B Objects and Data Abstraction Lab (1 cr.)
  • CSC320 Computer Organization (3 cr.)
  • CSC322 Computer Organization Lab (1 cr.)
  • COM203 Fundamentals of Oral Communications (3 cr.)
  • LAS Change Makers Series I (3 cr.)

Year Two

Fall (16 credits)

  • CSC310 Algorithms and Data Structures (3 cr.)
  • CSC310B Algorithms and Data Structures Lab (1 cr.)
  • CSC375 Databases Management Systems (3 cr.)
  • CSC326 Operating Systems (3 cr.)
  • LAS Change Makers Series II (3 cr.)
  • LAS204 Technology, Ethics, and the Global Society (3 cr.)

Spring (16 credits)

  • MTH305 Probability and Statistics (3 cr.)
  • CSC490 Software Engineering (3 cr.)
  • MTH301 Linear Algebra (3 cr.)
  • CSC Major Track Elective I (3 cr.)
  • BIO209/CHM208 Natural Sciences requirement (3 cr.)
  • CSC491 Professional Experience (1 cr.)

Year Three

Fall (15 credits)

  • CSC599 Capstone Experience Project  (3 cr.)
    or
  • Undergraduate Computer Science Research (3 cr.)
  • CSC447 Parallel Programming for Multicore & Cluster Systems (3 cr.)
  • CSC380 Theory of Computation (3 cr.)
  • CSC Major Track Elective II (3 cr.)
  • CSC Minor Track I (3 cr.)

Spring (15 credits)

  • CSC430 Computer Networks (3 cr.)
  • Open LAS Elective: Arts, Humanities, or Change Makers (3 cr.)
  • CSC Minor Track II (3 cr.)
  • MTH3XX Mathematics Free Elective (3 cr.)
  • LAS Change Makers Series III (3 cr.)