Mar 03, 2025  
2025-2026 Undergraduate Catalog 
    
2025-2026 Undergraduate Catalog

Computer Science, B.S.


Department Website

The program leading to a Bachelor of Science degree in Computer Science equips students for a successful career in the industry and graduate studies in diverse disciplines. It emphasizes the development of crucial skills, such as formulating abstract concepts, creating innovative computational solutions, designing complex systems, and incorporating cutting-edge technologies. The curriculum not only establishes a robust foundation for lifelong learning but also integrates theoretical principles in information and computation, keeping students informed about the latest developments. With a strong focus on professional development, encompassing technical communication, ethical considerations, and teamwork, the program ensures that graduates are well-prepared for the dynamic demands of the computing landscape. The Bachelor of Science in Computer Science program is accredited by the Computing Accreditation Commission of ABET.

Program educational objectives


In the course of their careers, graduates of the Computer Science program will:

  • Work productively in the creation, maintenance, and improvement of computing systems.
  • Remain current in their profession through lifelong learning, including graduate school.
  • Exhibit leadership and exercise their profession with the highest level of ethics, and social responsibility.

Schedule of Classes


Specific offerings for each semester may be found in the Schedule of Classes.

Requirements for the major in computer science, B.S. program


To earn the Bachelor of Science degree with a major in computer science students must complete a minimum of 128 credits and meet the following requirements:

General Education requirements


In order to graduate on-schedule without taking additional courses, it is highly recommended that students meet with an Undergraduate Academic Adviser concerning the selection of all of their general education courses.

Each candidate for an Oakland University baccalaureate will need to satisfactorily complete approved courses in each of the following areas: Foundations, Explorations, Integration, Writing Intensive, and US Diversity. For details, refer to the General Education Requirements  section of the catalog. In order to satisfy both general education and other program requirements, in some of the general education areas students should select from the courses listed below.

Foundations

  • Writing Foundations (WRT 1060)
  • Formal Reasoning (Satisfied by MTH 1554; see Quantitative foundations)

Explorations: One course from each of the seven Explorations areas

  • Arts
  • Language and Culture
  • Global Perspective
  • Literature
  • Natural Science and Technology (Satisfied by an approved science elective with lab)
  • Social Science
  • Western Civilization (Satisfied by PHL 1310; see additional major requirements)

Integration

  • Knowledge Applications (Satisfied by MTH 1555; see Quantitative foundations)

U.S. Diversity

  • May be met by an approved course in the Explorations area.

Writing Intensive and Capstone

  • Capstone (Satisfied by CSI 4999; see Required professional subjects)
  • Writing Intensive in the Major (Satisfied by CSI 4999; see Required professional subjects)
  • Writing Intensive in General Education (may be met by an approved course in the Explorations area)

Additional Major Requirements

All students must complete the following requirement.

  • Professional Ethics: PHL 1310 - Introduction to Ethics in Science and Engineering

Approved science elective with lab


Take one of the following biology, chemistry, or physics courses with the corresponding laboratory:

Professional electives


Students must complete three courses as part of the professional electives requirements. Courses can be selected from within one area if the student has a particular academic interest or any combination of courses listed under different areas.

Note


CSI 4900 (Special Topics), CSI 4995 (Undergraduate Research), and CSI 4996 (Independent Study) may also count toward fulfilling the professional electives requirement, provided each course is at least 3 credits. General elective credits may be needed to meet the minimum of 128 credits required for the degree, depending on the chosen professional electives courses. Students following this catalog may apply any future courses introduced within the professional electives to meet the professional electives requirement.

Flexible Electives


Students must complete a minimum of 5 additional credits in flexible electives. Flexible elective courses can be chosen from 3000-level or higher courses in CSI, BE, ECE, ISE, ME, APM, MOR, MTH, STA, BIO, CHM, or PHY, or from the approved courses listed below. No more than 1 credit of CSI 4950 (Internship) can be used to fulfill the flexible electives requirement. Additionally, courses at the 5000-level require approval from the instructor.

Approved flexible elective courses:*

Minimum credit hour requirements in quantitative foundations


Students must complete all five required quantitative foundations courses for a minimum of 15 credits. Students with fewer than 15 credits of required quantitative foundations, for example due to transfers from another institution, must take additional courses to satisfy the requirement. Any additional course must be approved by a petition of exception.

Optional Concentrations


The Computer Science and Engineering Department offers optional major-dependent concentrations to any student enrolled in the Bachelor of Science degree in Computer Science. These concentrations aim to broaden students’ knowledge in specific areas. The concentrations will be noted on the transcript of the students. To earn a concentration as part of the Bachelor of Science degree in Computer Science, students must fulfill all the requirements of the Bachelor of Science degree in Computer Science and complete a minimum of 15 credits by selecting specific courses. These selected courses also count towards fulfilling the professional and flexible electives requirements of the Bachelor of Science degree in Computer Science. Please refer to the individual concentration requirements for more details. Students interested in the concentration should consult an academic adviser for guidance on course selection. The following major-dependent concentrations are available to students enrolled in the Bachelor of Science degree in Computer Science:

• Concentration in Artificial Intelligence

• Concentration in Computer Systems and Networking

• Concentration in Cybersecurity

• Concentration in Data Science

• Concentration in Game Development

• Concentration in Web and Mobile Systems

Computer science and data science double major


Students interested in pursuing a double major in computer science and data science are encouraged to consult with an academic adviser for a nine-semester course plan.

Major standing


To enroll in 3000- or higher level courses and to become candidates for the degree of Bachelor of Science with a major in Computer Science, students must gain major standing.  An application for major standing should be submitted prior to intended enrollment in 3000- or higher level courses. Students can obtain the major standing form from the SECS Undergraduate Advising Website. At the time that major standing is approved, students with majors of Pre-Computer Science will have their major changed to Computer Science. Approval of both a major standing application and change of major to Computer Science is required prior to enrolling in any 3000- or higher-level courses.
 

To gain major standing in Computer Science, students must:

• have a minimum average GPA of 2.0 in major standing courses which consist of MTH 1554 , MTH 1555 , CSI 2120  or APM 2663 , approved science elective with lab, CSI 1320  or CSI 1420 , CSI 2300 , CSI 2310 , CSI 2470 , and CSI 2999 ;

• have no more than two grades with C-, D+, or D in the major standing courses;

• have not attempted any major standing course more than three times; and

• have not repeated more than three different major standing courses, with courses bearing a W (withdrawal) grade not being counted.

Conditional major standing, which permits students to register for 3000- or 4000-level SECS courses, will be granted in the semester during which the student will fulfill requirements for major standing courses.

Students who have questions about petition of exception, transfer credit, academic standing, major standing, or any other aspects of their degree programs should consult an academic adviser and other relevant sections of the undergraduate catalog.

Performance requirements


Satisfactory completion of the program requires an average grade of at least 2.0 within each group: quantitative foundations and approved science elective with lab; computer science core; and professional courses (including required professional subjects, professional electives, and flexible electives). Within the professional courses at most two different courses may be repeated, a total of three attempts per course is permitted, and at most two grades below C are permitted. A grade of C or better in CSI 4999 (Senior Capstone Project) must be received.

Sample computer science schedule


Students entering the School of Engineering and Computer Science with the required background may follow a schedule such as the one indicated below. However, students will need additional time to complete the program if they do not have the required background upon entrance to the program.

Freshman year


 

Winter semester – 17 credits

Sophomore year


 

Fall semester – 16 credits

Junior year


 

Senior year


 

Fall semester – 16 credits

Winter semester – 13 credits