Background Image

B.S. in Computer Science

In this Section

Program Chair: Christopher A. Lynch

Computer technology plays a critical role in virtually every business and institution. It is an essential tool in every branch of science and engineering. Many forms of art and entertainment are centered on computer technology. Computer scientists are professionals who understand the technology and have the skills to develop and apply it.

Many computer scientists work as software developers who design, implement, test and maintain computer software. They can also work as information technology specialists who deploy and manage information technology, including computer systems, computer networks, database systems and Web technology. Some are researchers who invent new technology or study its theoretical foundations. Others become lawyers, journalists and some go on to manage their own businesses.

The Computer Science major is organized into four options. The General option is the most flexible. It allows students to design an individualized program of study. The other three options prepare students for the specific career paths mentioned above. They are the Software Design and Development, Information Technology, and Research options.

The requirements of the General option are shown below. The other options are described in detail in the CS student handbook, which is available in the department office (Science Center 357) and on the Department of Computer Science web pages. The first five semesters of the sample schedule shown below are common to all options of the CS major.

In addition to the courses listed below, students must also meet the communication and professional experience requirements of the Common Experience.  See the CS student handbook for guidance.

The Computer Science major is designed so that by the time they graduate, students should be able to:

  • demonstrate a solid understanding of the core concepts of computer science and some advanced topics in computer science;
  • reason clearly and analytically about software and computing systems;
  • work effectively with a variety of programming languages, software tools and computing environments;
  • solve substantial real-world problems;
  • communicate effectively orally and in writing;
  • work effectively in teams; and
  • use computer science literature and other similar resources for independent study or to research the solution to a computing problem.

REQUIREMENTS
Areas of Study Credit Hours
Computer Science 43
Mathematics 15
Science 12
Common Experience 19
Free Electives 31
Total 120


Computer Science Curriculum
line
FIRST YEAR
First Semester Second Semester
Course Title
Cr. Hrs.
Course Title
Cr. Hrs.
CS141 Intro to Computer
CS142 Intro to Computer
  Science I
4
  Science II
3
MA131 Calculus I
3
MA132 Calculus II
3
  Science Sequence
4
  Science Sequence
4
UNIV190 Clarkson Seminar
3
  KA Elective
3
FY100 First-Year Seminar
1
  Free Elective
3
   
line
   
line
   
15
   
16
line
SOPHOMORE YEAR
First Semester Second Semester
Course Title
Cr. Hrs.
Course Title
Cr. Hrs.
CS242 Advanced
CS241 Computer
  Programming     Organization
3
  Concepts
3
CS344 Algorithms and Data
MA211 Foundations
3
  Structures
3
  Science Elective
3
MA339 Applied Linear
  KA/UNIV
3
  Algebra
3
  Free Elective
3
  Science Elective
3
   
line
  KA/UNIV
3
   
15
   
line
         
15
line
JUNIOR YEAR
First Semester Second Semester
Course Title
Cr. Hrs.
Course Title
Cr. Hrs.
CS341 Programming
CS444 Operating Systems
3
  Languages
3
  CS Elective
3
CS345 Automata Theory
3
STAT383 Applied Statistics
3
CS350 Software Design and     KA/UNIV
3
  Development
3
  Free Elective
3
  KA/UNIV
3
   
line
  Free Elective
3
   
15
   
line
     
   
15
     
line
SENIOR YEAR
First Semester Second Semester
Course Title
Cr. Hrs.
Course Title
Cr. Hrs.
  CS Electives
6
  CS Electives
6
  Free Electives
9
  Free Electives
8
CS499 Professional      
line
  Experience
0
   
14
   
line
     
   
15
     

Computer Science Electives
CS443 CSParallel Programming   CS462 Software Development
CS445 Compiler Construction     for the Web
CS446 Computer Graphics   CS463 Wireless Networks
and Geometry   CS464 Computer Games Development
CS447 Computer Algorithms   CS497 Undergraduate Research
CS449 Computational Learning   CS647 Advanced Topics in Algorithms
CS451 Artificial Intelligence   CS643 Parallel Computation
CS452 Computer Graphics   CS644 Current Issues in Operating
CS453 Data Center Architecture     Systems Research
CS455 Computer Networks   CS652 Computer Vision
CS456 Cryptography   CS653 Automated Reasoning
CS457 Computer and Network   CS654 Current Issues in Computer
Security     Networks Research
CS458 Formal Methods for Program   CS656 Advanced Topics in
Verification     Cryptography
CS459 Human-Computer Interaction   CS657 Advanced Topics in Computer
CS460 Database Systems     Security
CS461 Virtual Environments: Principles   CS658 Current Issues in Program
and Applications     Analysis and Verification
CS442 Computational Complexity     Research
      CS659 Systems Biology