B.S. in Computer Science
Introduction
The Department offers a B.S. in Computer Science program, which was accredited by ABET in 2011.
The undergraduate 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:
 Working as successful practicing computing professionals or pursuing graduate education.
 Evolving in complex technological environments such as those found in the workplace using firm scientific and mathematical principles.
 Working effectively in teams and communicating to others orally, in writing, or by graphical means what they have learned.
 Pursuing lifelong learning opportunities as informed members of their communities and the computing field.
The ABET 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 computerbased 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 computerbased 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:
 Thirty (30) credits of science and mathematics are required with at least fifteen (15) credits of mathematics (except precalculus).
 All nontransfer students must take six signature courses at SJU.
 In addition to the specific course requirements shown below, students must complete three Overlays:
 EthicsIntensive
 WritingIntensive
 Diversity, Globalization, or NonWestern 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 4credit course with laboratory)
 Nonnative 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
 1 Natural Science (one 4credit course with laboratory)


 CSC 120: Computer Science I
 CSC 121: Computer Science II
 CSC 240: Discrete Structures I
 CSC 241: Discrete Structures II
 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
 Four (4) CSC electives including any CSC courses numbered 340 or above
 With the approval of the acadmic advisor, upto three additional (3) Science or Mathematics (Calculus, Applied Calculus, Linear Algebra, Number Theory, Numerical Analysis, Operations Research, or any other mathematics course except Precalculus) courses in order to satisfy the overall requirement of thirty credits of mathematics and sciences


Minor in Computer Science (Advisor: Dr. Wei)
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:
 CSC 120: Computer Science I
 CSC 121: Computer Science II
 CSC 201: Data Structures
 Three Computer Science courses numbered 202 or above
Double Major in Computer Science (Advisor: Dr. Wei)
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:
 CSC 120: Computer Science I
 CSC 121: Computer Science II
 CSC 240: Discrete Structures I
 CSC 241: Discrete Structures II
 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
 Two 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
Mathematics (Beauty)
ENG 101
HIS 154 or First Year Seminar
NonNative Language I

CSC 121: Computer Science II
Mathematics (ILC 1)
ENG 102
HIS 154 or First Year Seminar
NonNative Language II

Sophomore 
CSC 240: Discrete Structures I
CSC 201: Data Structures
CSC 202: Computer Architecture
PHL 154
Social/Behavioral Science

CSC 241: Discrete Structures II
CSC 281: Design & Analysis of Algorithms
Mathematics (ILC 2)
THE 154
Art/Literature

Junior 
CSC 315: Software Engineering
CSC 261: Principles of Prog. Languages
Lab Science I
Philosophy (Philosophical Anthropology)
Mathematics or Science

CSC 310: Computing Systems
CSC Elective 1
Lab Science II (ILC 3)
Theology (Religious Difference)
Free Elective or Overlay

Senior 
CSC Elective 2
CSC Elective 3
Mathematics or Science or Free Elective
Faith & Reason
Free Elective or Overlay

CSC 495: Computer Science Project
CSC Elective 4
Mathematics or Science or Free Elective
Free Elective or Overlay
Free Elective

Notes:
 Thirty (30) credits of science and mathematics are required with at least fifteen (15) credits of mathematics (except precalculus).
 In addition to the specific course requirements shown above, students must complete three Overlays:
 EthicsIntensive
 WritingIntensive
 Diversity, Globalization, or NonWestern Studies
For more information about the overlay courses, please refer to the detailed description of GEP.
