Fall 2016

Course Code Title/Instructor Meets
COMP 131-01 Introduction to Computer Science I
Instructor: Michael Skalak
Course Description:
An introduction to Computer Science as a major scientific discipline. Special emphasis is placed on problem solving and experimentation via programming in Java. Topics covered include the design of objects and the use of flow-of-control constructs, along with techniques for testing software. Three hours classroom and two hours laboratory a week. Offered every semester.
0930:MWF   TOME 118
1500:R   TOME 118
COMP 131-02 Introduction to Computer Science I
Instructor: Farhan Siddiqui
Course Description:
An introduction to Computer Science as a major scientific discipline. Special emphasis is placed on problem solving and experimentation via programming in Java. Topics covered include the design of objects and the use of flow-of-control constructs, along with techniques for testing software. Three hours classroom and two hours laboratory a week. Offered every semester.
1130:MWF   TOME 118
1500:T   TOME 118
COMP 132-01 Introduction to Computer Science II
Instructor: Grant Braught
Course Description:
A problem-solving course that utilizes object-based software design using Java. Topics include code modularity and reusability, recursion, data storage, and the empirical and theoretical comparison of elementary algorithms. The lab component focuses on programming as a tool for solving problems and simulating real-world events. Prerequisite: 131 or one year of object oriented programming in Java and instructor's permission. Three hours classroom and two hours laboratory a week. Offered every semester.
1030:MWF   TOME 118
1500:W   TOME 118
COMP 251-01 Computer Organization and Architecture
Instructor: John MacCormick
Course Description:
Completion of both COMP 251 and COMP 332 fulfills the WID Requirement. An introduction to the internal structure and operation of computers. Topics include an introduction to assembly language programming, data representation, machine arithmetic, digital logic, basic hardware components, input/output processing and a survey of modern machine architectures. Prerequisite: 132. NOTE: Completion of both 251 and 332 fulfills the WID graduation requirement. Offered every fall.
1330:MR   TOME 118
COMP 332-01 Analysis of Algorithms
Instructor: Michael Skalak
Course Description:
Completion of both COMP 251 and COMP 332 fulfills the WID Requirement. A study of algorithmic approaches to problem-solving and techniques for analyzing and comparing algorithms. Approaches such as divide-and-conquer, dynamic programming, and backtracking will be explored in conjunction with complex structures such as trees and graphs. Topics in computational complexity include asymptotic complexity measures, intractability, and NP-complete problems. Prerequisite: 232, MATH 211. NOTE: Completion of both 251 and 332 fulfills the WID graduation requirement. Offered every fall.
1030:TR   TOME 118
COMP 356-01 Programming Language Structures
Instructor: Farhan Siddiqui
Course Description:
An examination of the major programming language paradigms. The course also explores the basic properties and special facilities of languages representing each paradigm. Topics include data types, scope rules, block structures, procedure calls and parameter types, and storage allocation considerations. Prerequisite: 232. Offered every fall.
1500:MR   TOME 231
COMP 364-01 Artificial Intelligence
Instructor: John MacCormick
Course Description:
A survey of techniques for applying computers to tasks usually considered to require human intelligence. Topics include knowledge representation and reasoning, search and constraint satisfaction, evolutionary and genetic algorithms, machine learning, neural networks, and philosophical questions. Prerequisites: 232 and MATH 211. Offered in even numbered fall semesters.
1330:TF   TOME 231
COMP 491-01 Fall Senior Seminar
Instructor: Grant Braught
Course Description:
Students define and begin a year-long project. Written and oral presentation of project progress reports will be required. Contemporary social, ethical, technical and philosophical issues in computer science will also be examined. Prerequisite: Senior standing. Offered every fall.
1500:T   TOME 231
COMP 500-01 Data Mining
Instructor: Michael Skalak
Course Description:
 
COMP 500-02 Cryptography
Instructor: Michael Skalak
Course Description: