20072008 Computer Science Program (CMPT)
Program Goals  Objectives  Program Requirements  Academic
Major  Academic Minor  Teaching
Minor  Course Descriptions
Faculty: Dan Byrne, Greg Gagne, Helen Hu
Program Goals
 To attain a systemlevel understanding of the computer.
 To understand the concepts and techniques of objectoriented software design.
 To acquire significant project experience working both individually and in a group setting.
 To develop effective problem solving skills.
Objectives
The Computer Science Program offers an academic major leading to the Bachelor of Science degree, as well as an academic minor and a teaching minor. The curriculum in computer science is designed to meet the needs of students whose ultimate objective is to pursue a career in the field or to go on to postgraduate study. The program also serves students who wish to learn to use the computer as a tool.
Program Requirements
Students must maintain an overall 2.5 GPA in courses required for the academic major, the academic minor, and the teaching minor. A 2.8 GPA in CMPT 201, CMPT 202 and MATH 201 is a prerequisite for enrollment in upper division courses. Computer Science major and minor requirements must be satisfied with a grade of C or better. No more than four (4) credit hours from May term courses may be applied to the elective upper division computer science requirement for the academic major. A student enrolled in a Computer Science course without the specified prerequisites may be withdrawn from the course by the instructor.
For course prerequisites, please refer to the course description.
Academic Major
Liberal Education Courses 

There are no LE requirements included as part of the Computer Science
major. 
Requirement Description


I. 
Foreign Language Requirement 


Computer Science majors must complete eight credit hours in a single
foreign language. 

II. 
Lower Division Computer Science Courses 


CMPT 201 Introduction to Computer Science I
CMPT 202 Introduction to Data Structures
CMPT 251 Computer Systems and Programming 

III. 
Upper Division Computer Science Courses 


CMPT 306 Algorithms and Data Structures
CMPT 307 Database Systems
CMPT 322 Software Engineering
CMPT 328 Computer Architecture
CMPT 351 Operating Systems
CMPT 352 Computer Networks
CMPT 390 Research/Development Seminar 

IV. 
Electives 


Students must take an additional eight hours of upper division computer
science course work from the list below.
CMPT 300 Special Topics
CMPT 301 Artificial Intelligence
CMPT 335 Computer Security
CMPT 355 Compilers
CMPT 360 Computer Graphics
CMPT 387 Undergraduate Teaching
CMPT 401 Directed Studies
CMPT 440 Internship
Students may apply at most four (4) credit hours from May term courses toward the upper division elective requirement. 

V. 
Required Courses from Other Programs 


MATH 201 Calculus I
MATH 210 Discrete Mathematics I
MATH 360 Discrete Mathematics II 

TOTAL HOURS FOR THE ACADEMIC MAJOR


Academic Minor
Requirement Description


I. 
Required Courses 


CMPT 201 Introduction to Computer Science I
CMPT 202 Introduction to Data Structures
CMPT 251 Computer Systems and Programming
MATH 201 Calculus I
MATH 210 Discrete Mathematics I 

II. 
Electives 


Additional upper division computer science course work 

TOTAL HOURS FOR THE ACADEMIC MINOR 

Teaching Minor
Requirement Description


I. 
Required Courses 


CMPT 201 Introduction to Computer Science I
CMPT 202 Introduction to Data Structures
CMPT 251 Computer Systems and Programming
CMPT 306 Algorithms and Data Structures
CMPT 350 Methods of Teaching Computer Science
MATH 201 Calculus I
MATH 210 Discrete Mathematics I 

TOTAL HOURS FOR THE TEACHING MINOR 

