Computer Science Major

PREPARES YOU TO COMBINE ENGINEERING THEORY AND DESIGN
WITH COMPUTING PRINCIPLES



Computers are everywhere in our society. The infrastructure of business, government, science, and everyday life is increasingly based on computers and digital communication. Whether you are listening to your digital music player, instant messaging with friends, driving a modern car, trading stocks, producing a movie, performing or undergoing a medical procedure, playing a video game, or submitting an income tax return, you depend on networks of computers that store, exchange, and process information in increasingly elaborate ways.

Understanding the foundation of this technology — what it can and cannot do, how it relates to information processing in living things and society, and how you can use it — will enable you to utilize, analyze and create information processing systems for whatever career, advanced education or personal interests you choose to pursue.

Computing is a critical tool for controlling and shaping the processes of modern society. If you want to be in the driver's seat for this amazing ride, consider one of several options that the Department of Computer and Information Science offers, from a single introductory course to a minor or major.

Educational Objectives of the CS Program

The undergraduate program in Computer Science strives to prepare students to:

  • identify, formulate, and solve challenging computer science problems;
  • develop professional skills that prepare them for immediate employment or graduate study in computer science and related disciplines;
  • understand and apply the scientific and relevant mathematical foundations of computer science;
  • understand the social and human context in which their computer science work will be used; and
  • communicate ideas and collaborate effectively with other members of research and development teams.

CS Sample Curriculum

  FALL   SPRING
Year One
Introduction to Programming
Calculus I
Principles of Physics I
Natural science lab
Social Sciences and Humanities elective (SSH)
Free elective
Programming Languages and Techniques I
Calculus II
Math Foundations of Computer Science
SSH elective
Natural science elective
year two
Intro to Computer Architecture
Principles of Physics II
Discrete Probability, Stochastic Processes,
and Statistical Inference or
Engineering Probability or Engineering Statistics
Natural science lab
Two SSH electives
Programming Languages and Techniques II
Digital System Organization/Design and lab
Math elective
Two SSH electives
year three
Automata, Computability and Complexity
Computing Operating Systems and Lab
CSE elective
Technical elective
Intro to Algorithms
Two CSE electives
Technical elective
Math elective
year four
Senior Design I
Two technical electives
SSH elective
Free elective
Senior Design II
Two technical electives
Free elective
 

To learn more, visit the Computer Science Undergraduate Program website.