ARCHIVED CATALOG: Visit to view the 2023-2024 General Catalog.

UC Santa Barbara General CatalogUniversity of California, Santa Barbara

Computer Science - Engineering

Department of Computer Science, Harold Frank Hall, Room 2104;
Telephone (805) 893-4321
Web site:
Chair: Tevfik Bultan
Vice Chair: Chandra Krintz
Vice Chair: Ben Hardekopf


Many of the greatest challenges facing our world today are increasingly reliant on computing their solutions — from conquering disease to eliminating hunger, from improving education to protecting the climate and environment.  Information is key to all of these efforts, and computer scientists make it possible to visualize, secure, explore, transmit, and transform this information in ways never before thought possible.  Solving problems through computation means teamwork, collaboration, and gaining the interdisciplinary skills that modern careers demand.  Our goal with the Computer Science curriculum at UCSB is to impart to students the knowledge and experience required for them to participate in this exciting and high-impact discipline.
Mission Statement
The Computer Science department seeks to prepare undergraduate and graduate students for productive careers in industry, academia, and government, by providing an outstanding environment for teaching and research in the core and emerging areas of the discipline.  The department places high priority on establishing and maintaining innovative research programs that enhance educational opportunity.
The Department of Computer Science offers programs leading to the degrees of Bachelor of Science in computer science, and the M.S. and Ph.D. in computer science.
One of the most important aspects of the Computer Science program at UCSB is the wealth of “hands-on” opportunities for students. UCSB has excellent computer facilities. Campus Instructional Computing makes accounts available to all students. Computer science majors use the workstations in several computing facilities on campus. Students doing special projects can gain remote access to machines at the NSF Supercomputing Centers. Additional computing facilities are available for graduate students in the Graduate Student Laboratory. Students working with faculty have access to the specialized research facilities within the Department of Computer Science.
The undergraduate major in computer science has a dual purpose: to prepare students for advanced studies and research and to provide training for a variety of careers in business, industry, and government. Under the direction of the Associate Dean for Undergraduate Studies, academic advising services are jointly provided by advisors in the College of Engineering, as well as advisors in the department. A faculty advisor is also available to help with academic program planning.
Computer Engineering Major
This major is offered jointly by the Department of Computer Science and the Department of Electrical and Computer Engineering. For information about this major, please refer to the section on Computer Engineering.
Program Goals for Undergraduate Programs
The goal of the computer science undergraduate program is to prepare future generations of computer professionals for long-term careers in research, technical development, and applications.  Graduates of the B.S. program that wish to seek immediate employment are prepared for a wide range of computer science positions in industry and government.   Outstanding graduates interested in highly technical careers, research, and/or academia, might consider furthering their education in graduate school.
The primary computer science departmental emphasis is on problem solving using computer program design, analysis and implementation, with both a theoretical foundation and a practical component.
Program Outcomes for Undergraduate Programs
The program enables students to achieve, by the time of graduation:

  1. An ability to apply knowledge of computing and mathematics appropriate to computer science.
  2. An ability to analyze a problem, and identify and define the computing requirements appropriate to its solution.
  3. An ability to design, implement, and evaluate a computer-based system, process, component, or program to meet desired needs.
  4. An ability to function effectively on teams to accomplish a common goal.
  5. An understanding of professional, ethical, and social responsibilities.
  6. An ability to communicate effectively.
  7. An ability to analyze the impact of computing on individuals, organizations, and society, including ethical, legal, security, and global policy issue.
  8. Recognition of the need for and an ability to engage in continuing professional development.
  9. An ability to use current techniques, skills, and tools necessary for computing practice.
  10. An ability to apply mathematical foundations, algorithmic principles, and computer science theory in the modeling and design of computer-based systems in a way that demonstrates comprehension of the trade-offs involved in design choices.
  11. An ability to apply design and development principles in the construction of software systems of varying complexity.

Admission to the Major
Students interested in computer science who apply to UCSB should declare the computer science major when they apply. Computer Science majors have priority when registering for all Computer Science courses. UCSB students in majors other than computer science may apply for change of major consideration into the Department of Computer Science once the minimum requirements are met (specified on the departmental web pages). The change of major application process is extremely competitive and a limited number of applications will be approved. No exceptions are made for the minimum requirements, and meeting the requirements does not guarantee admission to the major.

Students admitted to the computer science major are responsible for satisfying major requirements in effect when they declare their major. Upper and lower division courses required for the major that are offered by the Department of Computer Science or any other department must be taken for letter grades.