Professors: Maurice F. Aburdene, Gary Haggard, Xiannong Meng
Associate Professors: Stephen M. Guattery (Chair), Daniel C. Hyde, Luiz Felipe Perrone, Lea Wittie, Richard J. Zaccone
Assistant Professors: Brian R. King, Anastasia Kurdia (visiting), Benoit Razet
The undergraduate programs in computer science stress fundamental principles of computational thinking, including solid theoretical underpinnings, computational methods and models for solving problems, principles for designing computing systems to meet human needs, and techniques for analyzing the effectiveness of these methods, models, and systems. They provide students with the conceptual foundation needed to stay at the front of this fast-changing field. For most courses, classroom learning is enhanced through significant faculty-directed hands-on experience, typically in the form of a regularly scheduled laboratory.
Graduates typically take entry-level positions in hardware and software systems application and design or continue their education at the graduate level.
Program Educational Objectives for the Bachelor of Science Degree
Computer Science degree graduates will be successful professionals in computer science or other fields, and will be recognized for qualities associated with their Bucknell education. Such qualities include critical thinking, problem solving, and effective communication. Graduates will be prepared to pursue life-long learning such as professional or advanced education.
A computer science major may be pursued under any one of three degree programs: Bachelor of Arts, Bachelor of Science, and Bachelor of Science in computer science and engineering (see College of Engineering). The department also offers a Bachelor of Science in computer engineering degree jointly with the electrical engineering department (see College of Engineering). The Bachelor of Science in computer science degree program is accredited by the Computing Accreditation Commission of ABET. Students interested in the computer science major should consult the department concerning the choice of degree program.
The Bachelor of Arts major curriculum provides the student with an opportunity to combine the liberal arts tradition with strong preparation in computer science. It requires eight and one-half course credits in computer science: CSCI 203, CSCI 204, CSCI 205, CSCI 206, CSCI 208, CSCI 240, CSCI 311, CSCI 315, CSCI 479. Students may substitute one 300-level elective for either CSCI 208 or CSCI 311. In addition, the following mathematics courses are required: MATH 201, MATH 202, MATH 211, MATH 226, and MATH 241. (CSCI 240 and MATH 226 are half courses.)
The Bachelor of Science major curriculum requires 11.5 course credits in computer science: CSCI 203, CSCI 204, CSCI 205, CSCI 206, CSCI 208, CSCI 240, CSCI 311, CSCI 315, CSCI 341, and CSCI 479 and two computer science electives at the 300-level or above. At most one credit for any combination of CSCI 376 and CSCI 378 may count toward this requirement. In addition, the following courses are required: MATH 201, MATH 202, MATH 211, MATH 226, and MATH 241; PHYS 211, PHYS 212, and PHYS 235; and one additional science course. (CSCI 240 and MATH 226 are half courses.)
Both of these programs require CSCI 240 and CSCI 479, which address the writing, presentation, and information literacy requirements of the College Core Curriculum. CSCI 479 additionally serves as a Culminating Experience in computer science.
The recommended sequence for the Bachelor of Science major is as follows:
First Semester: CSCI 203; MATH 201
Second Semester: CSCI 204; MATH 202
First Semester: CSCI 205; MATH 211; PHYS 211
Second Semester: CSCI 206; MATH 241; PHYS 212
First Semester: CSCI 208, CSCI 315; MATH 226*
Second Semester: CSCI 240*; CSCI 311; PHYS 235; One elective in computer science
First Semester: CSCI 341; CSCI 479
Second Semester: One elective in computer science
* Half course, all others are one-credit courses
The minor in computer science requires five computer science courses. If a student's first computer science course is CSCI 203, then the four additional courses are CSCI 204, CSCI 206, and two additional courses chosen from CSCI 205; CSCI 208 and the 300- and 400-level computer science courses. If a student's first computer science course is CSCI 180, CSCI 185, or CSCI 202 then the four additional courses are CSCI 203, CSCI 204, CSCI 206, and one additional course chosen from CSCI 205, CSCI 208 and the 300- and 400-level offerings.