Computer Science

Courses

CS-101: Computer Literacy

Credits 3
For students who have no background in computers; this course discusses basic components and terminology of computers and provides hand-on work with a computer operating system, word processing, spreadsheets, and databases. Prerequisite: MTH 100 or placement beyond. Cannot be used toward computer science major or minor.

CS-109: Intro to Computer Science

Credits 3
A breadth-based survey of computer science. Topics to be covered include computer basics, the Internet, history of computers, algorithms and data representation, introductory computer architecture, ethics and computer in society. About half of the course will involve simple programming in a high level language (e.g. Java Script). Prerequisite: MTH 100 or placement beyond.

CS-170: Digital Imaging

Credits 3
This course is a study in how computers can be used to create and manipulate images. Students will learn how to use image editing software to edit images. Students will also learn how some of these tasks are performed by writing programs in a high level language to modify images as well. Prerequisite: MTH 100 or placement beyond.

CS-221: Object-Oriented Programming I

Credits 4
An introduction to programming using a high-level object-oriented programming language. Topics will include fundamental data types, flow of control, classes and objects, methods and functions, and inheritance. This is an integrated course meeting five hours each week in a computer lab, and it will provide experience with typical software development tools: editor, compiler/linker, and symbolic debugger. Prerequisites: CS 109 or CS 170, and MTH 095 or placement beyond, or MTH 121.

CS-222: Object-Oriented Programming II

Credits 4
A continuation of CS 221, where practices in object-oriented design will be further developed, especially those related to inheritance, collections and polymorphisms. The integrated course structure will provide substantial practice with modern programming tools and increased use of program development tools. Prerequisite: CS 221.

CS-280: Programming Language

Credits 3
An in-depth study of a particular programming language such as ADA, C, COBOL, FORTH, FORTRAN, LISP, PROLOG, RPG, Smalltalk, or X-Windows. Frequency of offering and language covered will vary according to demand. May be taken for credit any number of times, provided that a different language is studied, but only 3 credits may be used toward a Computer Science major. Prerequisite: CS 221.

CS-290: Special Topics

Credits 3
A study of a selected topic of special interest. The topic may differ each time the course is offered and may be proposed by either the instructor or students. This course may be taken for credit any number of times, provided that a different topic is studied each time. Prerequisites: Computer Science major and consent of the Instructor.

CS-299: Directed Individual Study

Credits 1 3
A student of sophomore status may pursue special studies in computer science based on the interest and needs of the individual. Prerequisite: Permission of the Instructor, Division Chair, and Dean of the College of Arts and Sciences.

CS-330: Machine Organization

Credits 3
A survey of the internal architecture and operating principles of digital computers. Prerequisites: CS 109, CS 221, CS 222 and MTH 251.

CS-350: Data Structures I

Credits 3
A study of programming techniques and strategies that are important for developing larger and more complex programs than those encountered in elementary programming courses. In particular, data structures such as stacks, queues, and lists will be considered, as well as topics in algorithmic analysis related to the use of these data structures. Prerequisite: CS 222.

CS-355: Data Structures II

Credits 3
A continuation of CS 350. More advanced data structures will be considered such as hash tables, binary search trees, and graphs. In addition, related topics in algorithmic analysis will be treated. Prerequisite: CS 350.

CS-360: Database Analysis

Credits 3
Design, organization and manipulation of data bases, including the design of data items and records. Data base management systems are surveyed and cases are examined in details of data insertion and retrieval. Prerequisite: CS 350.

CS-380: Princ of Programming Languages

Credits 3
Survey of several programming languages: historical, current, special-purpose, and experimental. Emphasis on comparison of language features, implementation techniques selection of appropriate language for a given application. Prerequisites: CS 221 and CS 222.

CS-410: Operating Systems

Credits 3
A study of a selected operating system with respect to scheduling, program initiation, memory allocation, CPU allocation, and input/output control. Prerequisite: CS 350.

CS-430: Parallel Programming

Credits 3
An introduction to parallel processing hardware and programming. Topics will include computer cluster construction and operation, writing simple parallel programs for execution on a computer cluster, and writing multi-threaded programs for execution on a single- or multi-core processor. Prerequisite: CS 222.

CS-480: Senior Project

Credits 3
The capstone course in Computer Science. Class meets for two hours per week at the beginning of the term, then down to once a week (or less often) after midterm. Classroom time is on the study of software engineering; the remainder of the time is for students to develop and write a program of suitable complexity decided upon by the student and professor. Prerequisite: CS 355 and Senior standing.

CS-490: Special Topics

Credits 3
A study of a selected topic of special interest. The topic may differ each time the course is offered and may be proposed by either the instructor or students. This course may be taken for credit any number of times, provided that a different topic is studied each time. Prerequisites: Junior or Senior standing, Computer Science major, and consent of Instructor.

CS-499: Directed Study in Computer Science

Credits 1 3
A student of junior or senior status may pursue special studies in the field of computer science. Prerequisites: Permission of the Instructor, Division Chair, and Dean of the College of Arts and Sciences.

CS-ELEC: Computer Science Elective

Credits 3
Please plan credits to fulfill a total of 9 hours of electives from Computer Science. Once you have added this course to your plan, delete this placeholder by clicking the X.

CS-ELEM: Computer Science Elective

Credits 3
Please plan a Computer Science elective at the 300-400 level or MTH 320. Once you have added this course to your plan, delete this placeholder by clicking the X.

CS-OR: Computer Science Either/Or

Credits 3
Please plan to take CS 330 or CS 380. Once you have added this course to your plan, delete this placeholder by clicking the X.

CS-REQ: Computer Literacy Requirement

Credits 3
Plan BUS 215, CS 101 or higher, EDU 205, or FMA 170 to meet Computer Literacy requirement. Once you have added this course to your plan, delete this placeholder by clicking the X.