Semester Requirements
Paul T. Tymann, Chair
(585) 475-7908, ptt@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 | 3 | ||||
| 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.
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)
| Course | Qtr. 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
| Course | Sem. 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)
| Course | Qtr. 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
| Course | Sem. 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 | 3 | |
| 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.