100 Computer Science Building
Degree: Bachelor of Science
Chair of Department: Professor Andrew G. Barto. Undergraduate Program Director: Professor Jack Wileden. Distinguished University Professors Croft, Kurose, Towsley; Professors Adrion, Allan, Barrington, Clarke, Grupen, Immerman, Lehnert, Lesser, Moss, Osterweil, Rissland, Zilberstein; Associate Professors Berger, Brock, Jensen, Levine, Mahadevan, McCallum, Moll, Shenoy, Siegelmann, Sitaraman, Smaragdakis, Weems; Assistant Professors Corner, Diao, Fu, Ganesan, Kulp, Learned-Miller, McGregor, Miklau, Venkataramani, Verts, Wang; Lecturer Constantine; Research Faculty Manmatha, Smith, Woolf.
The Computer Science Department offers an undergraduate program leading to the Bachelor of Science degree (a Bachelor of Arts degree is not currently offered). Students admitted to the Computer Science major learn from and interact with faculty who are doing state-of-the-art research in computer science. Many Computer Science majors become involved in such research themselves during their junior and senior years. Students graduating with a Computer Science degree are well prepared to assume responsible and challenging positions in the computing profession or to continue their computer science education at the graduate level.
The Computer Science undergraduate program is intended to provide a solid foundation for students whose goals span a wide range of endeavors within the rapidly changing computing field. The Computer Science undergraduate program is built around a core of 11 computer science courses (total credits 40), 5 mathematics courses (total credits 17), and 2 approved science courses (total credits 8). These courses supply the essential theory, concepts, and techniques in the major areas of computer science. To complement the breadth achieved by this core, majors must also complete at least three advanced technical elective courses in computer science or some related area.
Required Computer Science Courses
121 Introduction to Problem Solving with Computers
At least two from the following:
Required Mathematics Courses
MATH 131 Calculus I
One of the following courses (or another upper-level mathematics course approved by the academic adviser).
Required Natural Sciences Courses
Two of the three General Education Science courses must be introductory courses (with labs) intended for majors in some department in the College of Natural Sciences and Mathematics (8 total credits). Currently accepted courses are: BIOLOGY 100, 101; CHEM 111, 112, 121, 122; GEO-SCI 101, 103/131, 105/131; PHYSICS 151/153, 152/154, 181/183, 182/184. Other courses may be approved by the Computer Science Undergraduate Program Director.
Computer Science Electives
Three further elective courses are required. At least one elective must be an advanced computer science course, numbered 400 or higher. Other electives from Mathematics or Electrical and Computer Engineering may be approved.
Notes: Computer Science majors are not permitted to use any course taken on a Pass/Fail basis to fulfill the Computer Science core requirements (including Mathematics, Science, and Computer Science concentration sequences). All courses used to satisfy the Computer Science Undergraduate Program requirements must be passed with a grade of C or better. (Courses passed with C- prior to Fall 2006 may be used.) Students receiving a grade of less than C in any such course must see the Computer Science Undergraduate Program Director as soon as possible. Finally, at least five Computer Science courses numbered 311 or higher must be taken at the university or Five Colleges.
While some freshmen are admitted directly into the Computer Science major when they apply for admission to the University, the major is restricted for students already on campus who wish to enter the program. Students who are interested in the major may apply at any time and will receive an answer within one semester. Admission criteria for the major are based principally upon the applicant’s performance in courses that are required in the early stages for the Computer Science degree including CMPSCI 121, 187, 201, and MATH 131-132. At the present time, the requirements for joining the major do not exclude any qualified students. An application form may be obtained from the Computer Science departmental office in room 100 Computer Science Building and should be returned there when completed.
The Computer Science Department offers a minor in Computer Science. While the minor is most appropriate for students in math, science, engineering, or business, it is open to all students at the university. The nine courses that make up the minor provide a coherent introduction to the science of computing. These courses are: MATH 131-132; CMPSCI 121, 187, 201, 250, 287, and two additional regular computer science courses, numbered 300 or higher, except CMPSCI 305 or courses designated to be for non-majors. Note: A grade of C or better is required in all courses used to satisfy the minor, including the preliminary courses. (C- grades received prior to Fall 2006 are acceptable.) For more information on the minor, contact the Computer Science Undergraduate Program Director.
Students graduating with a Computer Science degree are well prepared for a professional career in industry or for graduate study. Most graduates of the program pursue careers in software development, networking, or information management. Such positions are available in companies spanning a wide variety of fields, including medicine, defense, and finance. Some students pursue graduate degrees in computer science after completing their undergraduate studies, and occasionally graduates go on to M.B.A. programs or to medical school.
An increasing number of undergraduates, whatever their major, are finding it necessary to have the ability to use and/or program modern computing equipment. For these students the Department offers CMPSCI 105 Computer Literacy, CMPSCI 120 Introduction to Problem Solving with the Internet, and CMPSCI 145 Representing, Storing, and Retrieving Information, in addition to CMPSCI 121 Introduction to Problem Solving with Computers and the other courses for majors.