Site-wide links

Computer Science BS

Semester Requirements

Mohan Kumar, Chair
(585) 475-4583, mjk@cs.rit.edu

http://www.cs.rit.edu/

Program overview

The computer science major attracts students who are interested in both the mathematical theory and technical applications of computer science. Most employers look for students who are good computer scientists but also understand the tools and techniques of mathematics, science, and industry, and are able to communicate effectively. The BS program is for the mathematically adept student who wishes to become a computing professional with knowledge of relevant applications areas. The major also attractives students transferring to RIT with an associate degree in computer science with course work in mathematics and science.

Computer science covers a wide spectrum of areas within the field of computing, ranging from the theoretical to the practical. A computer scientist can specialize in areas such as intelligent systems (i.e., artificial intelligence), computer graphics, computer theory, distributed systems, security, robotics, data management, computer architecture, or systems software. Programming is necessary, but computer scientists also must be adaptable as well as adept at problem solving and analytical reasoning, able to understand design principles, and fluent in using computers.

Students take a core of computer science courses that provide a solid foundation for advanced work. Building on this base, students explore a variety of specializations in their third, fourth, and fifth years. In addition, students will develop a broad appreciation for computer applications and the effects of computers on society via program electives, general education courses, and various free electives, which can be used to complete minors.

Experiential education

The demands of industry and government require college graduates to master both the fundamentals and the applied aspects of their profession. To meet this requirement, two applied educational experiences are woven into the major. Students are required to complete a cooperative educational experience as well as an extensive set of laboratory and small-group experiences, many as members of a team. These activities are typically held in a setting involving 15 to 20 students each, providing a venue for significant student-faculty interaction.

Accreditation

The BS degree in computer science is accredited by the Computing Accreditation Commission of ABET, http://www.abet.org.

Curriculum

Computer science, BS degree, typical course sequence (semesters), effective fall 2013

Course Sem. Cr. Hrs.
First Year
CSCI-141 Computer Science I 4
MATH-181, 182 LAS Perspective 7A: Project-based Calculus I, II 8
  LAS Foundation 1: First Year Seminar† 3
  LAS Perspective 2, 3, 4 9
CSCI-142 Computer Science II 4
MATH-190 Discrete Mathematics for Computing 3
  LAS Foundation 2: First Year Writing 3
  Wellness Education* 0
Second Year
CSCI-243 The Mechanics of Programming 3
Choose one of the following: 3
   CSCI-262    Introduction to Computer Science Theory  
   CSCI 263    Honors Introduction to Computer Science Theory  
MATH-251 Probability and Statistics I 3
  LAS Perspective 1, 5‡, 6‡ 10
CSCI-250 Concepts of Computer Systems 3
SWEN-261 Introduction to Software Engineering 3
MATH-241 Linear Algebra 3
  LAS Elective§ 4
  Cooperative Education (summer) Co-op
Third Year
CSCI-251 Concepts of Parallel and Distributed Systems 3
CSCI-320 Principles of Data Management 3
  Program Elective 3
  LAS Elective§ 3
  LAS Immersion 1 3
  Cooperative Education (spring) Co-op
Fourth Year
CSCI-261 Analysis of Algorithms 3
  Program Electives§ 6
CSCI-344 Programming Language Concepts 3
  Free Electives 6
CSCI-471 Professional Communications (WI) 3
CSCI-331 Introduction to Intelligent Systems 3
  LAS Elective‡ 3
  LAS Immersion 2 3
Fifth Year
  Cooperative Education (fall) Co-op
  Program Elective § 3
  LAS Immersion 3 3
  LAS Elective 3
  Free Elective 3, 4 6
Total Semester Credit Hours 126

Please see New General Education Curriculum–Liberal Arts and Sciences (LAS) for more information.

(WI) Refers to a writing intensive course within the major.

* Please see Wellness Education Requirement for more information. Students completing bachelor's degrees are required to complete two Wellness courses.
† The First Year Seminar requirement is replaced by an LAS Elective for the 2013-14 academic year.

‡ Students must complete one of the following lab science sequences: (a) University Physics I, II (PHYS-211, 212), (b)  General and Analytical Chemistry I, II and Labs (CHMG-141, 142, 145, 146) or (c) General Biology I, II, and Labs (BIOL 101, 102, 103, 104). Students are free to choose from approved science electives that either extend or complement their lab science selection.

§ Two computer science elective courses must come from the same CS cluster.

Accelerated dual degree option

An accelerated dual degree option is available for outstanding undergraduate students who wish to earn both a bachelor's and a master's degree in approximately six years.

Computer science, BS/MS degree, typical course sequence (semesters), effective fall 2013

Course Sem. Cr. Hrs.
First Year
CSCI-141 Computer Science I 4
MATH-181, 182 LAS Perspective 7A, 7B: Project-based Calculus I, II 8
  LAS Foundation 1: First Year Seminar† 3
  LAS Perspective 2, 3, 4 9
CSCI-142 Computer Science II 4
MATH-190 Discrete Mathematics for Computing 3
  LAS Foundation 2: First Year Writing 3
  Wellness Education* 0
Second Year
CSCI-243 The Mechanics of Programming 3
Choose one of following: 3
   CSCI-262    Introduction to Computer Science Theory  
   CSCI-263    Honors Introduction to Computer Science Theory  
MATH-251 Probability and Statistics I 3
  LAS Perspective 5‡ 4
  LAS Perspective 1 3
CSCI-250 Concepts of Computer Systems 3
SWEN-261 Introduction to Software Engineering 3
MATH-241 Linear Algebra 3
  LAS Elective† 4
  LAS Perspective 6‡ 3
  Cooperative Education (summer) Co-op
Third Year
CSCI-251 Concepts of Parallel and Distributed Systems 3
CSCI-320 Principles of Data Management 3
  Program Elective 3
  LAS Elective†  3
  LAS Immersion 1 3
  Cooperative Education (spring) Co-op
Fourth Year
CSCI-261 Analysis of Algorithms 3
CSCI-344 Programming Language Concepts 3
  Free Electives 6
CSCI-471 Professional Communications (WI) 3      
CSCI-331 Introduction to Intelligent Systems 3
  Graduate Electives 6
  LAS Elective† 3
  LAS Immersion 2
Fifth Year
  Cooperative Education (fall) Co-op
  Graduate Elective 3
  LAS Immersion 3 3
  LAS Elective 3
  Free Electives 6
Sixth Year
 CSCI-665 Foundations of Algorithms  3
  Cluster Courses§  9
  Graduate Electives** 15 or 12
CSCI-788/789 or 790 MS Project/Colloquium or MS Thesis 3/0 or 6
Total Semester Credit Hours 156††

Please see New General Education Curriculum–Liberal Arts and Sciences (LAS) for more information.

(WI) Refers to a writing intensive course within the major.

* Please see Wellness Education Requirement for more information. Students completing bachelor's degrees are required to complete two Wellness courses.

† The First Year Seminar requirement is replaced by an LAS Elective for the 2013-14 academic year.

‡ Students must complete one of the following lab science sequences: (a) University Physics I, II (PHYS-211, 212), (b) General and Analytical Chemistry I, II and Labs (CHMG-141, 142, 145, 146) or (c) General Biology I, II, and Labs (BIOL 101, 102, 103, 104). Students are free to choose from approved science electives that either extend or complement their lab science selection.

§ Two computer science elective courses must come from the same CS cluster.

** Students who complete the MS Project take one more graduate elective than those who complete the MS Thesis.

†† The BS degree requires 126 semester hours; the MS degree requires 30 semester hours; students use 9 semester hours of computer science graduate electives toward both degrees.

Evening program

The computer science major may be completed on a part-time basis. Degree requirements are identical to those taken by full-time students. Students are encouraged to work with an academic adviser for planning and course selection.

[arrow] Click to view program requirements in the Quarter Calendar

Quarter Curriculum - For Reference Only

Effective fall 2013, RIT will convert its academic calendar from quarters to semesters. The following content has been made available as reference only. Currently matriculated students who began their academic programs in quarters should consult their academic adviser for guidance and course selection.

Program overview

The computer science program attracts students who are interested in both the mathematical theory and technical applications of computer science. Most employers look for students who are good computer scientists but also understand the tools and techniques of mathematics, science, and industry and are able to communicate effectively. The BS program is for the mathematically adept student who wishes to become a computing professional with knowledge of relevant applications areas. The program also is attractive to students transferring to RIT with an associate degree in computer science with course work in mathematics and science.

The demands of industry and government require college graduates to master both the fundamentals and the applied aspects of their profession. To meet this requirement, two applied educational experiences are woven into the program. Students are required to complete a cooperative educational experience as well as an extensive set of laboratory and small-group experiences, many as members of a team. These activities are typically held in a setting involving 15 to 20 students each, providing a venue for significant student-faculty interaction.

Computer science covers a wide spectrum of areas within the field of computing, ranging from the theoretical to the practical. A computer scientist can specialize in areas such as artificial intelligence, computer graphics, computer theory, networking, security, robotics, parallel computation, database, data mining, computer architecture, or systems software. Programming is necessary, but computer scientists also must be adaptable as well as adept at problem solving and analytical reasoning, able to understand design principles, and fluent in using computers.

Students take a core of computer science courses that provide a solid foundation for advanced work. Building on this base, students can explore a variety of specializations in their third, fourth, and fifth years. In addition, students have the opportunity to develop a broad appreciation for computer applications and the effects of computers on society via computer science electives, general education courses, and various electives, which can be used to complete minors.

Accreditation

The BS degree in computer science is accredited by the Computing Accreditation Commission of ABET, http://www.abet.org.

Curriculum

Semester conversion
Effective fall 2013, RIT will convert its academic calendar from quarters to semesters. Each program and its associated courses have been sent to the New York State Department of Education for approval of the semester plan. For reference, the following charts illustrate the typical course sequence for this program in both quarters and semesters. Students should consult their academic advisers with questions regarding planning and course selection.

Computer science, BS degree, typical course sequence (quarters)

CourseQtr. Cr. Hrs.
First Year
4003-241 Problem-Based Introduction to Computer Science 4
4003-242 Data Structures for Problem Solving 4
4003-243 Object-Oriented Programming 4
1016-281, 282, 283 Calculus I, II, III 12
1016-265, 366 Discrete Mathematics I, II 8
  Liberal Arts* 16
1720-051, 052 First-Year Enrichment I, II 2
  Wellness Education† 0
Second Year
4003-334 Computer Science 4 4
4010-361 Software Engineering 4
4003-341 Professional Communications 4
4003-345 Computer Organization 4
1016-351 Probability 4
  Lab Science‡ 12
  Liberal Arts* 12
  Free Elective** 4
  Wellness Education† 0
Third, Fourth, and Fifth Years
4003-380 Introduction to Computer Science Theory 4
4003-440 Operating Systems I 4
4003-420 Data Communications and Networks I 4
4003-450 Programming Language Concepts 4
  Computer Science-Related Electives†† 8
  Computer Science Electives 16
  Related Electives§ 12
  Liberal Arts* 24
  Science Electives‡ 8
  Free Electives** 8
  Cooperative Education§§ Co-op
Total Quarter Credit Hours 190

* Please see Liberal Arts General Education Requirements for more information.

† Please see Wellness Education Requirement for more information.

‡ Students complete a lab science sequence by selecting University Physics (1017-311, 312, 313), General and Analytical Chemistry (1011-215, 216, 217, 205, 206, 227), or General Biology (1001-201, 202, 203, 205, 206, 207). If a lab science sequence calls for more than 12 quarter credit hours, then science electives are reduced by the corresponding amount.

§ Related electives may be chosen from any discipline other than computer science or software engineering.

** Any course open to computer science majors may be taken as a free elective subject to restrictions published in the Undergraduate Advising Handbook.

†† The computer science-related electives requirement states that at least two courses are related according to department definitions. The general areas from which related electives may be selected are systems programming, data communications and networks, parallel computing, digital systems design, computer science theory, data management, software engineering, computer graphics, and artificial intelligence. The computer science Undergraduate Advising Handbook has a complete list.

§§ Four quarters of cooperative education are required.

Computer science, BS degree, typical course sequence (semesters), effective fall 2013

CourseSem. Cr. Hrs.
First Year
CSCI-141 Computer Science I 4
MATH-181 LAS Perspective 7A: Project-Based Calculus I  4
  LAS Foundation 1: First-Year Seminar 3
  LAS Perspective 2, 3, 4 9
CSCI-142 Computer Science II 4
MATH-182 LAS Perspective 7B: Project-Based Calculus II  4
MATH-190 Discrete Mathematics for Computing 3
ENGL-150 LAS Foundation 2: Writing Seminar 3
  Wellness Education* 0
Second Year
CSCI-243 The Mechanics of Programming 3
Choose one of the following: 3
   CSCI-262    Introduction to Computer Science Theory    
   CSCI 263    Honors Introduction to Computer Science Theory  
MATH-251 Probability and Statistics I 3
  LAS Perspective 5†, 6 7
CSCI-371 Professional Communications (WI) 3
CSCI-250 Concepts of Computer Systems 3
SWEN-261 Introduction to Software Engineering 3
MATH-241 Linear Algebra 3
  LAS Elective† 4
  Cooperative Education (summer) Co-op
Third Year
CSCI-251 Concepts of Parallel and Distributed Systems 3
CSCI-320 Principles of Data Management 3
  CS Elective 1 3
  LAS Elective† 3
  LAS Immersion 1 3
  Cooperative Education (spring) Co-op
Fourth Year
CSCI-261 Analysis of Algorithms 3
  CS Elective 2, 3# 6
CSCI-344 Programming Language Concepts 3
  Free Elective 1, 2 6
  LAS Perspective 1 3
CSCI-331 Introduction to Intelligent Systems 3
  LAS Elective† 3
  LAS Immersion 2 3
Fifth Year
  Cooperative Education (fall) Co-op
  CS Elective 4# 3
  LAS Immersion 3 3
  LAS Elective 3
  Free Elective 3, 4 6
Total Semester Credit Hours 126

Please see New General Education Curriculum–Liberal Arts and Sciences (LAS) for more information.

(WI) Refers to a writing intensive course within the major.

* Please see Wellness Education Requirement for more information.

† Students must complete one of the following lab science sequences: (a) University Physics I, II (PHYS-211, 212), (b)  General and Analytical Chemistry I, II and Labs (CHMG-141, 142, 145, 146) or (c) General Biology I, II, and Labs (BIOL 101, 102, 103, 104). Students are free to choose from approved science electives that either extend or complement their lab science selection.

# Two computer science elective courses must come from the same cluster.

Accelerated dual degree program

The BS/MS program is for outstanding undergraduate students who wish to spend approximately one additional year to complete their MS degree immediately after their BS degree. A student who is accepted into the BS/MS program will be able to take two graduate courses (8 quarter hours) in computer science and apply them to both the BS and MS degree requirements. There can be significant financial benefits to students who enroll in this program, although these are best discussed with your financial aid counselor. The example that follows illustrates one of many possible paths.

Computer science, BS/MS degree, typical course sequence (quarters)

CourseQtr. Cr. Hrs.
First Year
4003-241 Problem-Based Introduction to Computer Science 4
4003-242 Data Structures for Problem Solving 4
4003-243 Object-Oriented Programming 4
1016-281, 282, 283 Calculus I, II, III 12
1016-265, 366 Discrete Mathematics I, II 8
  Liberal Arts* 16
1720-051, 052 First-Year Enrichment I, II 2
  Wellness Education† 0
Second Year
4003-334 Computer Science 4 4
4010-361 Software Engineering 4
4003-341 Professional Communications 4
4003-345 Computer Organization 4
1016-351 Probability 4
  Lab Science‡ 12
  Liberal Arts* 12
  Free Elective** 4
  Wellness Education† 0
Third, Fourth, and Fifth Years
4003-380 Introduction to Computer Science Theory 4
4003-440 Operating Systems I 4
4003-420 Data Communications and Networks I 4
4003-450 Programming Language Concepts 4
  Computer Science-Related Electives†† 8
  Computer Science Electives 8
  Computer Science Graduate Electives 8
  Related Electives§ 12
  Liberal Arts* 24
  Science Electives‡ 8
  Free Electives** 8
  Cooperative Education§§ Co-op
Sixth Year
 4005-800  Theory of Computer Algorithms  4
   Four courses from a Cluster  16
   Three or Two Computer Science Graduate Electives***  12/8
4005-893  MS Project/Thesis Seminar  2
4005-890/891  MS Project/Thesis  3/7
Total Quarter Credit Hours 235†††

* Please see Liberal Arts General Education Requirements for more information.

† Please see Wellness Education Requirement for more information.

‡ Students complete a lab science sequence by selecting University Physics (1017-311, 312, 313), General and Analytical Chemistry (1011-215, 216, 217, 205, 206, 227), or General Biology (1001-201, 202, 203, 205, 206, 207). If a lab science sequence calls for more than 12 quarter credit hours, then science electives are reduced by the corresponding amount.

§ Related electives may be chosen from any discipline other than computer science or software engineering.

** Any course open to computer science majors may be taken as a free elective subject to restrictions published in the Undergraduate Advising Handbook.

†† The computer science-related electives requirement states that at least two courses are related according to department definitions. The general areas from which related electives may be selected are systems programming, data communications and networks, parallel computing, digital systems design, computer science theory, data management, software engineering, computer graphics, and artificial intelligence. The computer science Undergraduate Advising Handbook has a complete list.

§§ Four quarters of cooperative education are required.

*** Students who complete the MS Project take one more computer science graduate elective than those who complete the MS Thesis.

††† The BS degree requires 190 quarter credit hours; the MS degree requires 45 quarter credit hours; students use 8 quarter hours of computer science graduate electives toward both degrees.

Computer science, BS/MS degree, typical course sequence (semesters), effective fall 2013

CourseSem. Cr. Hrs.
First Year
CSCI-141 Computer Science I 4
MATH-181 LAS Perspective 7A: Project-Based Calculus I  4
  LAS Foundation 1: First-Year Seminar 3
  LAS Perspective 2, 3, 4 9
CSCI-142 Computer Science II 4
MATH-182 LAS Perspective 7B: Project-Based Calculus II 4
MATH-190 Discrete Mathematics for Computing 3
ENGL-150 LAS Foundation 2: Writing Seminar 3
  Wellness Education* 0
Second Year
CSCI-243 The Mechanics of Programming 3
Choose one of following: 3
   CSCI-262    Introduction to Computer Science Theory  
   CSCI-263    Honors Introduction to Computer Science Theory  
MATH-251 Probability and Statistics I 3
  LAS Perspective 5†, 6 7
CSCI-371 Professional Communications (WI) 3
CSCI-250 Concepts of Computer Systems 3
SWEN-261 Introduction to Software Engineering 3
MATH-241 Linear Algebra 3
  LAS Elective†  4
  Cooperative Education (summer) Co-op
Third Year
CSCI-251 Concepts of Parallel and Distributed Systems 3
CSCI-320 Principles of Data Management 3
  CS Elective 1 3
  LAS Elective†  3
  LAS Immersion 1 3
  Cooperative Education (spring) Co-op
Fourth Year
CSCI-261 Analysis of Algorithms 3
  Computer Science Graduate Elective 3
CSCI-344 Programming Language Concepts 3
  Free Electives 6
  LAS Perspective 1 3
CSCI-331 Introduction to Intelligent Systems 3
  Computer Science Graduate Elective 3
  Science Elective 2 3
  LAS Immersion 2
Fifth Year
  Cooperative Education (fall) Co-op
  Computer Science Graduate Elective 3
  LAS Immersion 3 3
  LAS Elective 3
  Free Electives 6
Sixth Year
 CSCI-665 Foundations of Algorithms  3
 CSCI-687 Graduate Research Seminar  3
  Cluster Courses  9
  Computer Science Graduate Electives** 3/0
CSCI-788/790 MS Project/MS Thesis 3/6
Total Semester Credit Hours 156††

Please see Liberal Arts and Sciences (LAS) General Education Requirements, in the Graduation Requirements section of this bulletin, for more information.

(WI) Refers to a writing intensive course within the major.

* Please see Wellness Education Requirement for more information.

† Students must complete one of the following lab science sequences: (a) University Physics I, II (PHYS-211, 212), (b) General and Analytical Chemistry I, II and Labs (CHMG-141, 142, 145, 146) or (c) General Biology I, II, and Labs (BIOL 101, 102, 103, 104). Students are free to choose from approved science electives that either extend or complement their lab science selection.

# Two computer science elective courses must come from the same cluster.

** Students who complete the MS Project take one more computer science graduate elective than those who complete the MS Thesis.

†† The BS degree requires 126 semester hours; the MS degree requires 30 semester hours; students use 9 semester hours of computer science graduate electives toward both degrees.

Evening program

The computer science program may also be taken on a part-time basis. Degree requirements are identical to those taken by full-time students. Students are encouraged to work with an academic adviser for planning and course selection.