2019-2020 Undergraduate Catalog 
    
    Mar 19, 2024  
2019-2020 Undergraduate Catalog [ARCHIVED CATALOG]

Computer Science, B.S.


Program Coordinator: Alice Fischer, Ph.D.

The bachelor's degree program in computer science is nationally accredited by the Computing Accreditation Commission of the Accreditation Board for Engineering and Technology (CAC/ABET).  Its objectives are to inform, challenge, and train our diverse student body for a constantly changing world of technology. This program develops a solid body of knowledge and understanding of computer hardware, software, and theory, as defined by the Association for Computing Machinery (ACM) curriculum guidelines.

At the time of graduation, every student should have achieved the following program outcomes:

  • An ability to apply knowledge of computing and mathematics appropriate to computer science.
  • An ability to analyze a problem, and identify and define the computing requirements appropriate to its solution.
  • An ability to design, implement, and evaluate a computer-based system, process, component, or program to meet desired needs.
  • An ability to function effectively on teams to accomplish a common goal.
  • An understanding of professional, ethical, legal, security, and social issues and responsibilities.
  • An ability to communicate effectively with a range of audiences.
  • An ability to analyze the local and global impact of computing on individuals, organizations, and society.
  • Recognition of the need for and an ability to engage in continuing professional development.
  • An ability to use current techniques, skills, and tools necessary for computing practice.
  • An ability to apply mathematical foundations, algorithmic principles, and computer science theory in the modeling and design of computer-based systems in a way that demonstrates comprehension in the tradeoffs involved in design choices.
  • An ability to apply design and development principles in the construction of software systems of varying complexity.

The program consists of a required core that exposes students to a wide range of computing and technology topics, including the study of databases, hardware, networks, programming, software design, and security.  Advanced courses and the senior design project are selected from one of several areas: software development, web and database applications, mobile applications, cyber forensics, or cyber security.

Typical initial job titles include applications developer, software engineer, digital forensic examiner, cyber security analyst, or security engineer. Later titles might be system analyst, team leader, software consultant, or system administrator.

Internship Requirement

An internship enriches the academic experience of the student, providing exposure to a working computing environment and the interpersonal relationships of a workplace. Each internship is a partnership between the student and an employer or organization, with oversight by the academic advisor.  Students must complete 60 credits toward the bachelor's degree before an internship is attempted.  To complete the internship, a student must perform at least 200 hours of relevant computer or network-oriented work, submit an essay about the experience, and submit evaluations completed by both the student and the work supervisor.  The internship requirement may be satisfied through employment, community service, or some other activity that is approved by the student's advisor.

UPE Honor Society

The university has a chapter of the national honor society for computer science, Upsilon Pi Epsilon.  Outstanding juniors and seniors are invited by the chapter to join this organization and participate in its service projects.

 

Program Requirements


A total of 128 credits, including the University Core Curriculum, is required for the degree of bachelor of science in computer science.

University Core Curriculum


Core Tier 1

Core Tier 2

Other Requirements


  • Laboratory science restricted elective (see definition, below)
  • Mathematics restricted elective (4 credits) (see definition, below)
  • Two Restricted electives (see definition, below)
  • Three Restricted electives at 3000-level or higher (see definition, below)
  • Free elective (see definition, below)

Definitions of elective categories and restrictions:


  • CC 3.1: any Tier 2 course, or any Tier 1 course from CC 1, 2, 5, 6, 7, 8, 9 or any science course listed in CC 4.1, or MATH 2228
  • CSCI Sophomore or higher elective: any CSCI course with a number above 2000
  • CSCI Senior elective: any CSCI course with a number above 4000
  • Laboratory Science I, II, and Science elective: a laboratory science course that is intended for scientists or engineers
  • Mathematics elective: EASC 3345 or ELEC 3320 or a MATH course beyond the level of MATH 1118
  • Restricted elective: any course approved by the advisor that supports the student's academic focus (Math, Science, Engineering, Computer Science, Finance, Economics, or Accounting)
  • Free elective: any college course that is beyond the level that is considered as remedial in this program, and does not duplicate material of another required or elective course.  Remedial courses are those below the level of ENGL 1105, MATH 1117, CHEM 1115, PHYS 1150, and BIOL 2253