B.S. in Computer Science

Introduction

The program prepares students for professional careers and for advanced degree programs. Students learn to solve problems using the tools of computer science: networking, database management, artificial intelligence, 3D game development, graphics, web technologies, etc. Not only do students learn the science of the field in this program, but also the art of computer science as a creative endeavor.
 

The Program Educational Objectives for the B.S. Degree in Computer Science are that the Program will produce graduates who will be:

  1. Working as successful practicing computing professionals or pursuing graduate education.
     
  2. Evolving in complex technological environments such as those found in the workplace using firm scientific and mathematical principles.
     
  3. Working effectively in teams and communicating to others orally, in writing, or by graphical means what they have learned.
     
  4. Pursuing life-long learning opportunities as informed members of their communities and the computing field.

 

The Student Outcomes for the B.S. Degree in Computer Science are that the Program enables students to attain by the time of graduation:

  • An ability to apply knowledge of computing and mathematics appropriate to the discipline.
  • 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 in 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 of the tradeoffs involved in design choices.
  • An ability to apply design and development principles in the construction of software systems of varying complexity.

 

Requirements for the Computer Science Major (GEP)

A total of forty courses are required. Note that:
  • All non-transfer students must take six signature courses at SJU.
     
  • In addition to the specific course requirements shown below, students must complete three Overlays:
    1. Ethics-Intensive
    2. Writing-Intensive
    3. Diversity, Globalization, or Non-Western Studies

    For more information about the overlay courses, please refer to the detailed description of GEP.
General Education Program (GEP) Requirements
 
Signature Courses Variable Courses Integrated Learning

Jesuit Tradition Common Core
  • Philosophy: Moral Foundations
  • Theology: Faith, Justice, and the Catholic Tradition
Cultural Legacy Common Core
  • English: Texts and Contexts
  • History: Forging the Modern World
Signature Variable Core
  • First Year Seminar
  • Faith & Reason Course
  • Writing
  • Fine Arts or Literature
  • Mathematics (Beauty)
  • Natural Science (one 4-credit course with laboratory)
  • Non-native language (2 courses)
  • Social/Behavioral Science
  • Philosophy (Philosophical Anthropology)
  • Theology (Religious Difference)
  • Two mathematics courses from Calculus, Applied Calculus, Linear Algebra, Number Theory, Numerical Analysis, Operations Research, or any other mathematics course except Precalculus





  •  
  • Any CAS course
Major Requirements
 
  • CSC 120: Computer Science I
  • CSC 121: Computer Science II
  • CSC 240: Discrete Structures
  • CSC 201: Data Structures
  • CSC 202: Computer Architecture
  • CSC 281: Design and Analysis of Algorithms
  • CSC 261: Principles of Programming Languages
  • CSC 310: Computer Systems
  • CSC 315: Software Engineering
  • CSC 495: Senior Project

  • Five (5) CSC electives including any CSC courses numbered 302 or above

  •  
Math and Lab Science Requirements
 
  • Two semesters of calculus (Mathematics Beauty and ILC1)
    • MAT 120: Mathematics of Modeling and MAT 155: Fundamentals of Calculus, or
    • MAT 155: Fundamentals of Calculus and MAT 161: Calculus I, or
    • MAT 161: Calculus I and MAT 162: Calculus II
       
  • One semester of statistics (ILC2)
    • MAT 118: Introduction to Statistics, or
    • MAT 128: Applied Statistics
       
  • Any CAS course (ILC3)
Free Electives
 
  • Select up to six courses


 

Minor in Computer Science

With the approval of the Department, students may minor in Computer Science. Upon acceptance, the advisor will assist in selecting courses appropriate for their area of interest. Students who elect this minor must take six (6) courses which include:

  1. CSC 120: Computer Science I
  2. CSC 121: Computer Science II
  3. CSC 201: Data Structures
  4. Three Computer Science courses numbered 202 or above

 

Double Major in Computer Science

With the approval of the Department, students who wish to double major in Computer Science and another discipline must take twelve (12) courses which include:

  1. CSC 120: Computer Science I
  2. CSC 121: Computer Science II
  3. CSC 240: Discrete Structures
  4. CSC 201: Data Structures
  5. CSC 202: Computer Architecture
  6. CSC 281: Design and Analysis of Algorithms
  7. CSC 261: Principles of Programming Languages
  8. CSC 310: Computer Systems
  9. CSC 315: Software Engineering
  10. Three additional CSC elective courses numbered 340 or above

 

Requirements for Departmental Honors

Requirements for departmental honors are found under Honors Program and in the brochure published annually by the Director of the Honors program.

 

Typical Program of Study for Computer Science Majors

Presuming that a student enters as a freshman, without needing special background courses or with advanced placement in any subjects, the program shown below is the typical curriculum for four years. The program, therefore, may vary at the discretion of the student and the student's advisor.




Year/Semester Fall Spring
Freshman CSC 120: Computer Science I
MAT 155 or MAT 161 (Beauty)
ENG 101
HIS 154 or First Year Seminar
Non-Native Language I
CSC 121: Computer Science II
MAT 156 or MAT 162 (ILC 1)
ENG 102
HIS 154 or First Year Seminar
Non-Native Language II
Sophomore CSC 240: Discrete Structures
CSC 201: Data Structures
CSC 202: Computer Architecture
PHL 154
Social/Behavioral Science
CSC 261: Principles of Prog. Languages
CSC 281: Design & Analysis of Algorithms
Free Elective or Overlay
THE 154
Art/Literature
Junior CSC 315: Software Engineering
CSC Elective 1
Lab Science
Philosophy (Philosophical Anthropology)
MAT 118 or MAT 128 (ILC2)
CSC 310: Computing Systems
CSC Elective 2
Any CAS course (ILC 3)
Theology (Religious Difference)
Free Elective or Overlay
Senior CSC Elective 3
CSC Elective 4
Free Elective
Faith & Reason
Free Elective
CSC 495: Computer Science Project
CSC Elective 5
Free Elective
Free Elective or Overlay
Free Elective


Notes:
  • Students in need of pre-calculus, will take MAT 120 in fall (ILC1), and MAT 155 or MAT 161 (Mathematics Beauty) in spring of their freshman year.
     
  • In addition to the specific course requirements mentioned above, students must complete three Overlays:
    1. Ethics-Intensive
    2. Writing-Intensive
    3. Diversity, Globalization, or Non-Western Studies

    For more information about the overlay courses, please refer to the detailed description of GEP.
Saint Joseph's University, 5600 City Avenue, Philadelphia, PA 19131