Skip to main content

This page contains a list of degrees offered by the Department of Computer Science along with links to the requirements for each degree. The university maintains a degree program overview for each department, with degree requirements, suggested program of study, and more as part of the online Undergraduate Bulletin. To ensure the most up-to-date information, we link directly to the online bulletin for degree requirements.

Table of Contents

Useful Links


 

 

Registration and Tar Heel Tracker Requests

Beginning November 30, 2020, the registration@cs-old.sites.unc.edu and tarheeltrackerrequest@cs-old.sites.unc.edu email address will be disabled and no longer accepting emails. Please complete the following forms instead:

MANUAL REGISTRATION REQUESTS

Note: During registration periods, please allow up to 3 business days for a response.

TAR HEEL TRACKER REQUESTS

Please allow 5 business days for processing. For forms submitted during semester registration and during the first 3 weeks of a new semester, please allow up to 4 weeks for processing.

For additional questions/inquiries/follow-up, please either submit them to the Student Services Manager here or email ugrad_ss@cs-old.sites.unc.edu with your PID in all emails.


Bachelor of Science

NOTE: One instance of COMP 495 or COMP 691H will now count as upper division electives toward the major requirements. This change will be officially instated in Fall 2021 and is being retroactively implemented using Tar Heel Tracker adjustments.

Bachelor of Science Degree Requirements

Special Opportunities in Computer Science

These are the requirements as of the current academic year. The Department of Computer Science allows students to choose any set of requirements that were in effect while the student was in residence at UNC. For prior year requirements, see the archives tab on the university’s catalog site.

Bachelor of Arts

NOTE: One instance of COMP 495 or COMP 691H will now count as upper division electives toward the major requirements. This change will be officially instated in Fall 2021 and is being retroactively implemented using Tar Heel Tracker adjustments.

Bachelor of Arts Degree Requirements

Special Opportunities in Computer Science

These are the requirements as of the current academic year. The Department of Computer Science allows students to choose any set of requirements that were in effect while the student was in residence at UNC. For prior year requirements, see the archives tab on the university’s catalog site.

Courses Outside the Department that are Pre-approved / Pre-denied for the B.A.

Following are lists of courses taught in other departments that have either been pre-approved or pre-denied to count toward the B.A. Other courses may be approved on a case-by-case basis. Students are advised to seek approval before taking a course they intend to count toward the B.A.

Use the form below to request that the undergraduate curriculum committee consider a course not already on one of the lists below. The form asks you to submit supporting material including at the very least a syllabus but more helpfully sample assignments, project descriptions, and/or sample assessments for the committee to consider. Be sure that the course is not already on either the pre-approved or pre-denied list before submitting requests.

Course Consideration Request Form

Courses that have been pre-approved:

  • BIOL 525, Computational Analyses and Resources in Genomics
  • BIOL 554, Introduction to Computational Neuroscience
  • BIOS 512, Data Science Basics
  • BIOS 611, Introduction to Data Science
  • BIOS 635, Introduction to Machine Learning
  • ECON 525, Advanced Financial Economics
  • ECON 573, Big Data and Machine Learning in Econometrics
  • INLS 318, Human Computer Interaction
  • INLS 418, Human Factors In System Design
  • INLS 509, Information Retrieval
  • INLS 512, Applications of Natural Language Processing
  • INLS 523, Database Systems I: Introduction to Databases
  • INLS 609, Experimental Information Retrieval
  • INLS 613, Text Mining
  • INLS 623, Database Systems II: Intermediate Databases
  • INLS 672, Web Development 2
  • INLS 718, User Interface Design
  • LING 401, Language and Computers
  • LING 540, Mathematical Linguistics
  • MATH 560, Optimization with Applications in Machine Learning
  • MATH 566, Introduction to Numerical Analysis
  • MATH/ENVR 661, Scientific Computation I
  • PHYS 231, Physical Computing
  • PHYS 331, Introduction to Numerical Techniques in Physics
  • PSYC 559, Applied Machine Learning
  • STOR 520, Statistical Computing for Data Science
  • STOR 565, Machine Learning
  • STOR 566, Introduction to Deep Learning

We will not approve any courses that have one of the above courses as a prerequisite. This does not mean that they may not be appropriate courses, but that we believe that level of concentration in the same area is inappropriate for courses to both be counted toward the B.A.

Courses that will NOT be allowed

  • Any Special Topics courses not taught regularly (i.e., 590’s.)
  • AAPL 412, Design and Making: Turnign Your Entrepreneurial Ideas Into Reality
  • BIOL 500H, Introduction to Biostatistics
  • BIOL 528, Quantitative Personalized Genomics
  • BIOS 511, Introduction to Statistical Computing and Research Data Management
  • BIOS 669, Working with Data in a Public Health Research Setting
  • BUSI 410, Business Analytics
  • BUSI 520, Advanced Spreadsheet Modeling for Business
  • ECON 400, Economic Statistics
  • GEOG 370, Introduction to Geographic Information
  • GEOG 410, Modeling of Environmental Systems
  • INLS 382, Information Systems Analysis and Design
  • INLS 500, Human Information Interactions
  • INLS 520, Organization of Information
  • INLS 560, Programming for Information Professionals
  • INLS 570, Fundamentals of Programming Information Applications
  • INLS 620, Web Information Organization
  • INLS 572, Web Development 1
  • MATH 547, Linear Algebra for Applications
  • MATH 564, Mathematical Modeling in the Life Sciences
  • MEJO 490, Introduction Into Social Media Analytics Using Python
  • MEJO 583, Advanced Interactive Development
  • MEJO 585. 3D Design Studio
  • PLCY 460, Quantitative Methods for Public Policy
  • MEJO 586, Intermediate Interactive Multimedia
  • STOR 305, Decision Making Using Spreadsheet Models
  • STOR 320, Introduction to Data Science
  • STOR 455, Statistical Methods I

Bachelor of Science/Master of Science Combined Program

Are you a current B.S. computer science major interested in getting a master’s degree? We have a program that may allow you to complete the courses of study for a B.S. AND M.S. in as few as 5 years!

While there are many people for whom this will be a good match, it will not suit everyone. We expect the program to be especially attractive for students intending to go into industry, who would like the more in-depth knowledge that a master’s program offers. However, there are many other students who will find this attractive, and it is an option you will want to consider.

Students in the B.S. degree program with a GPA of 3.3 or better and within 2 semesters of graduation have the option of applying to the combined B.S./M.S. program to pursue graduate coursework leading to the degree of master of science. Such students must complete the requirements for the bachelor of science degree within eight semesters. (Transfer students who are granted additional time by the university may exceed this number.)  Upon completion of the bachelor’s degree, students then enroll as a graduate student to continue work toward the master of science degree. Admission to the master’s portion of the program cannot be deferred. Master’s work must begin the semester following the completion of the bachelor’s degree.

The requirements for both degrees remain the same. The primary benefit of the program is a significantly simplified and expedited admissions process into the master’s program.

We strongly recommend you discuss the option with your CS adviser. The purpose of this page is to give you the basic information that you need to decide whether to apply for the program and how to apply.

Information Session Presentation (PDF)

Frequently Asked Questions

Academic Requirements

  • You need a major GPA of 3.3 and an overall GPA of 3.0. The major GPA includes all courses that are required of the major, both prerequisites and courses for the major.
  • To give us the ability to assess your work and for you to be comfortable that you want a master’s degree, you should have completed at least FOUR Computer Science courses at the 400-level or higher, including at least two at the 500-level or higher, by the time that you apply. This can include both required and distribution courses for your major, but not independent study courses, i.e., ones that require a learning contract. This is not a strict requirement but students applying with less than this will be at a disadvantage.

Admissions Process

Application to the program will be in your senior year. Applications are accepted both Fall and Spring semester. Fall semester applications are due October 15th. Spring semester applications are due March 15th. We recommend that you do it early to assure that the faculty you identify get their recommendations completed. The application materials are to be submitted through the application site (link below):

Application to the BS/MS program

Required application materials are:

  • Name, PID and contact information
  • Names of two CS faculty members who will serve as your primary references. These must be COMPUTER SCIENCE faculty and may not include graduate students. The admissions committee may choose to contact any other faculty member as well. You should discuss your plans with the faculty members that you list BEFORE you submit your application.
  • An unofficial copy of your transcript. Saving your course history as a pdf (print and save as pdf from the browser) from Connect Carolina is the simplest and preferred way to do this.
  • A personal statement of purpose, maximum one page, that explains your objectives in pursuing the MS degree. The purpose of the statement is to convince us that you have thought about why you want the MS degree. There is nothing specific that we are looking for.
  • Resume with work experience, activities, honors, etc.

Course Recommendations

  • In order to help you decide whether this program is right for you, we encourage you to take a 600 or higher computer science course during the fall semester of your senior year.
  • The graduate school will allow you to carry over up to three courses that do not count toward any of your B.S. requirements (including the 120 credits). The department will accept courses in which you have received a minimum of a B.  In order to distribute the workload across the five years, we recommend that you take maximal advantage of this opportunity.
  • When planning the courses that you take to satisfy the distribution requirement for your B.S., you should consider the background content expected on incoming graduate students. The information can be found under Background Preparation on the Master of Science Official Degree Requirements page.

Undergraduate Minor

Undergraduate Minor Degree Requirements

These are the requirements as of the current academic year. The Department of Computer Science allows students to choose any set of requirements that were in effect while the student was in residence at UNC. For prior year requirements, see the archives tab on the university’s catalog site.

Please note that access to the undergraduate minor is limited to students who have applied to and been accepted into the CS program as majors. In other words, even if you only plan on completing the minor, a student must first apply for the major and be accepted. Then, after the minor requirements have been completed, a student can switch from the major to the minor. Direct access to the minor without going through the major application process is not currently available.