Skip to Main Content

Computer Science


Computer Science is the study of the design and use of computer systems. The goal of the Computer Science curriculum is to provide students with the tools to identify those problems that are best solved by means of a computer and to design and implement effective, economical and creative solutions.

The curriculum’s required courses give students a strong foundation in both the software and hardware aspects of computing, as well as the mathematics and science that underlie the discipline. The electives in the later years allow students to study a particular area of computer science in greater depth.

The Department of Computer Science offers Bachelor of Science degree in Computer Science. Students enrolled in BS program may, if they wish, choose an option in one of the following areas:

  • Bio-Cheminformatics 
  • Data Science 

Bio-Cheminformatics Option

The Bio-Cheminformatics option provides an opportunity for Computer Science majors to broaden their knowledge base to the disciplines of biology and chemistry, and to learn, design, and implement Computer Science tools relevant to the disciplines. The option requires Genetics course and an additional course from Biology or Chemistry department. It also requires two Computer Science courses related to bio-cheminformatics, such as Data Mining, Machine Learning, and Visualization.

Data Science Option

The Data Science option for Computer Science majors is a new degree option available starting in the Fall of 2015.

The continuing explosion in “Big Data” is revolutionizing industry and research. Companies are responding by looking for data scientists—information technology experts capable of analyzing and extracting useful patterns from lots of data. The Data Science option allows Computer Science majors to gain the additional knowledge necessary to become a data scientist. The option consists of 4 required and 2 elective courses. The courses cover a range of topics, including Linear Algebra, Data Mining and Machine Learning, Databases, Natural Language Processing, Visualization and Big Data systems. The Data Science option is ideal for students who have an interest in statistics and data mining. Data Science option students will also satisfy all requirements needed to receive a minor in Mathematical Sciences.

Automatic Math Minor

The option satisfies Mathematics Minor requirements for CS students. Note that the reverse is not true, i.e. a Math minor is not an automatic Data Science option.

To request more information about the program, email

View the complete Degree Pathways.

For more information, contact the Department of Computer Science.


The Computer Science Department offers a five-year combined BS/MS program, in which students earn both Bachelor and Master of Science degrees.

Two major advantages of the program: 

  • The ability in some cases to count computer science courses for both your undergraduate and your graduate degrees and
  • Being accepted into the master's program without taking the graduate record examination.

Computer Science majors who want to take advantage of this program should consider taking one or two qualifying graduate courses during their senior years. Foundations of Computer Science (COMP.5020) and Algorithms (COMP.5030) are good choices. Either of these can count as an undergraduate CS elective and as a master's degree course. Only credits beyond the 120 required for the BS can be double-counted.

The rules governing double-counting of courses are as follows:

  • Any graduate course allowed for graduate computer science credit may be taken as an undergraduate course and double-counted. 
  • With the permission of the undergraduate coordinator, certain project-oriented pairs of graduate courses may be taken for the undergraduate project sequence, and may be double-counted.
  • The double-counting of 4000-level courses requires case-by-case Graduate Committee approval.

As always, students must satisfy prerequisites before they enroll in courses.

Please note that some graduate courses offered by the Computer Science Department do not carry credit even for our own graduate students. For example, you cannot receive credit for COMP.5000

To be accepted into this program, you must have good grades and apply in your junior year. There are many rules governing eligibility. Please see the graduate catalog.

There are advantages and disadvantages to pursuing your master’s degree at the university as your bachelor's. Please discuss this with your academic advisor or other faculty member.

This program is managed by the Computer Science graduate coordinator, not the undergraduate coordinator.