Undergraduate Course Descriptions
Introduction
All courses, except CS0401, are offered for three credits. Some courses may be cross-listed with courses in the College of General Studies. For descriptions of courses, see the CAS Course Descriptions newspaper published each term. Numbers in parenthesis refer to old course numbers that were used prior to conversion to the four-digit system. Indications of frequency of offering are approximate and subject to change.
I. Core Courses for Majors
- 0401 Intermediate Programming with Java: 4 credits; prerequisite: some high school level programming experience; offered each term
- 0441 Discrete Structures for Computer Science : prerequisite: two years of high school algebra; offered each term
- 0445 Data Structures: prerequisite: CS0401; offered each term
- 0447 Computer Organization and Assembly Language Programming: co- or prerequisite: CS0445; offered each term
- 0449 Introduction to Systems Software: prerequisites: CS0441, CS0445; co- or prerequisite: CS 0447; offered each term
II. Upper-Level Courses for Majors
- 1501 Algorithm Implementations: prerequisites: CS0441, CS0445; offered each term
- 1502 Formal Methods in Computer Science: prerequisites: CS0445, CS0441; offered each term
- 1510 Design and Analysis of Algorithms: prerequisites: CS1501, CS1502; offered fall term
- 1511 Introduction to the Theory of Computation: prerequisite: CS1502; offered spring term
- 1515 Scientific Computation: prerequisites: CS0445, Math 0230, Math 0118 or Math 0280; offered every other year
- 1520 Programming Languages for Web Applications: prerequisite: CS0445; offered each term
- 1530 Software Engineering: prerequisite: CS0445; offered once per year
- 1538 Introduction to Simulation: prerequisites: CS0447, one statistics course; seldom offered
- 1541 Introduction to Computer Architecture: prerequisites: CS0445, CS0447; offered each term
- 1550 Introduction to Operating Systems: prerequisites: CS0447, CS0449; offered each term
- 1555 Database Management Systems: prerequisite: CS1501; offered each term
- 1566 Introduction to Computer Graphics: prerequisites: CS0445, CS0447, Math 0028 or Math 1180; offered once a year
- 1567 Programming and System Design Using a Mobile Robot: prerequisites: CS0441, CS0445; this is an honors course and admission is by special permission from the instructor only; offered once each year
- 1571 Introduction to Artificial Intelligence: prerequisites: CS1501, CS1502 (or equivalent); offered fall term
- 1573 Artificial Intelligence Programming: prerequisite: CS1571; offered spring term
- 1590 Social Implications of Computing Technology: prerequisite: CS0004 or CS0007 or CS0401 or permission of instructor; offered once each year
- 1621 Structure of Programming Languages: prerequisites: CS0441, CS0445; offered fall term
- 1622 Introduction to Compiler Design: prerequisites: CS0441, CS0447; offered spring term
- 1631 Software Design Methodology: prerequisites: CS0441; CS0445
- 1645 Introduction To High Performance Computing Systems: prerequisite: CS0447 and CS1501; offered every other year
- 1651 Advanced Systems Software: prerequisite: CS1550 or permission of instructor; offered once each year
- 1652 Data Communications and Computer Networks: prerequisite: CS1550; offered once per year
- 1653 Applied Cryptography and Network Security: prerequisite: CS0449, CS1501; offered once per year
- 1655 Secure Data Management and Web Applications: prerequisite: CS1555; offered once per year
- 1666 Principles of Computer Game Design and Implementation: prerequisite: CS 1566 and CS 1538 or CS 1571; offered once per year during Fall term
- 1671 Human Language Technologies: prerequisite: CS 1501, 1502; offered once every two years
- 1699 Special Topics in Computer Science : prerequisite: permission of instructor; offered once per year
- 1900 Internship: S/N only; offered each term
- 1950 Directed Study: variable credits 1 to 3; offered each term
III. Introductory Service Courses Primarily for Non-Majors
- 0004 Introduction to Computer Programming: BASIC: offered each term
- 0007 Introduction to Computer Programming: offered each term
- 0110 Computers and Networks: offered each term
IV. Intermediate Service Courses
- 0131 Software for Personal Computing: offered each term
- 0132 Programming in C and a Guide to the Unix Operating System: prerequisite: CS0002 or CS0003 or CS0004 or CS0007; offered each term
- 0134 Web Site Design & Development: prerequisite: CS0110, CS0131, or permission of instructor; offered each term





