Computer Science | Courses

For current class offerings, times, and additional information, visit the Office of the Registrar.

 

CSC-100
Computers and Information (3)

Course Level: Undergraduate

A first course for studying computers and information. Provides a foundation for using computers in other courses and curricula for research, communication and writing. Hands-on experience in productivity enhancement, software, hardware, systems development, uses of the Internet and World Wide Web, and future directions and trends for computers and information. Usually offered every term.

CSC-210
Creativity and Computers (3)

Course Level: Undergraduate

This course explores how computers enhance the creative process in virtually every aspect of the arts. Examples include computer graphics, multimedia computing in literature and art, synthetic music, and virtual reality systems for simulating stage productions. Usually offered every term.

CSC-280
Introduction to Computer Science I (4)

Course Level: Undergraduate

Problem solving and algorithm development. Structured programming, basic data types, and canonical structures; arrays and subprograms; recursion. Social implications of computing. Elementary applications from business and science. Usually offered every term. Prerequisite: familiarity with using files, e-mail, and the World Wide Web.

CSC-281
Introduction to Computer Science II (3)

Course Level: Undergraduate

Continuation of problem solving. Emphasis on larger programs built from modules. Introduction to abstract data structures: stacks, queues, graphs and trees and their implementations and associated algorithms. Elementary numerical methods. Usually offered every term. Prerequisite: CSC-280.

CSC-282
Assembly-Language Programming (3)

Course Level: Undergraduate

Basic concepts of computer architecture and organization. Assembly-language programming: instruction formats, addressing techniques, macros, and input/output. Program segmentation and linkage. The assembly process. Usually offered every term. Prerequisite: ITEC-234 or CSC-280.

CSC-296

Course Level: Undergraduate

CSC-310
Introduction to Geographic Information Systems (3)

Course Level: Undergraduate

A geographic information system (GIS) is a system of hardware, software, data, people, organizations, and institutional arrangements for collecting, storing, analyzing, and disseminating information about areas of the earth. This course provides an introduction to GIS, GIS software, and applications of GIS. Usually offered every fall. Prerequisite: completion of the College Writing and English Competency Requirement, and familiarity with spreadsheets, e-mail, and the World Wide Web.

CSC-330
Organization of Computer Systems (4)

Course Level: Undergraduate

Logical circuit design, integrated circuits and digital functions, data representation, register transfer operations and microprogramming, basic computer organization, the central processor, and arithmetic operations. Usually offered every term. Prerequisite: completion of the College Writing and English Competency Requirement, and ITEC-234 or CSC-280.

CSC-350
Introduction to Discrete Structures (3)

Course Level: Undergraduate

Introduction to mathematical subjects required in computer science, such as graphs, sets and relations, logic, and recurrence. Usually offered every spring. Prerequisite: completion of the College Writing and English Competency Requirement, MATH-15x, and ITEC-235 or CSC-280.

CSC-390
Independent Reading Course (1-6)

Course Level: Undergraduate

Prerequisite: permission of instructor and department chair.

CSC-391

Course Level: Undergraduate

CSC-392
Cooperative Education Field Experience (3-9)

Course Level: Undergraduate

Prerequisite: permission of department chair and Cooperative Education office.

CSC-396
Selected Topics: Non-recurring (1-6)

Course Level: Undergraduate

Topics vary by section, may be repeated for credit with different topic.

CSC-432
Introduction to Simulation and Modeling (3)

Course Level: Undergraduate

Design and implementation of simulation models for systems design and analysis. Emphasis on discrete stochastic systems and real-world business and government problems including resource allocation, queuing, inventory control, and industrial production. Overview of principal simulation languages and their applicability to problem solving. Usually offered every spring. Prerequisite: completion of the College Writing and English Competency Requirement, and ITEC-211 and ITEC-234, or CSC-280, and STAT-202.

CSC-435
Web Programming (3)

Course Level: Undergraduate

This course presents and applies the web programming languages (HTML, DHTML, Javascript, Coldfusion), tools, and techniques used to develop professional web sites. The course moves step-by-step through the processes involved in planning, designing, launching, and maintaining successful web sites, with an emphasis on teamwork. Usually offered every term. Prerequisite: completion of the College Writing and English Competency Requirement, and ITEC-234 or CSC-280.

CSC-438
PL/SQL Database Programming (3)

Course Level: Undergraduate

This course focuses on creating and manipulating databases using PL/SQL programming language for Oracle databases. Includes on-line SQL as well as batch programs using PS/SQL features such as IF statements, loops, stored procedures/functions, tables, cursors, stored packages, and stored triggers in creating and maintaining Oracle databases. Usually offered every summer. Prerequisite: completion of the College Writing and English Competency Requirement, and CSC-280 or ITEC-234, and familiarity with databases.

CSC-442
Client-Server and Distributed Information Systems (3)

Course Level: Undergraduate

Current methods for analyzing and developing client-server systems and distributed information systems including: communication networks to support client-server architectures, international standards, concepts of hardware, software and data distribution, layered architectures, role of client, server, and middleware, data and transaction management in client-server environments, tools, and systems development. Usually offered every fall. Prerequisite: completion of the College Writing and English Competency Requirement, either CSC-330 or ITEC-455, and CSC-570.

CSC-490
Independent Study Project (1-6)

Course Level: Undergraduate

Prerequisite: permission of instructor and department chair.

CSC-491
Internship (1-6)

Course Level: Undergraduate

Prerequisite: permission of instructor and department chair.

CSC-493
Computer Science Capstone Project (3)

Course Level: Undergraduate

May be repeated for credit. Students complete a semester-long design project related to one or more areas of computer science. The focus is on the design process, documentation, and project presentation. Topics related to the professional practice of computer science, including careers, ethics, technical writing, and speaking, and contemporary issues in computer science are also covered. Usually offered every term. Prerequisite: CSC-280, CSC-281, and one other CSC course at the 300-level or above.

CSC-510
Legal Issues in Computing (3)

Course Level: Undergraduate/Graduate

Copyright, patent, contract, tort, antitrust, privacy, and telecommunications issues. Usually offered every fall. Prerequisite: junior standing.

CSC-520
Algorithms and Data Structures (3)

Course Level: Undergraduate/Graduate

Design and analysis of efficient algorithms. Implementation and manipulation of data structures, including linked lists, stacks, queues, trees, and graphs. Memory management. Internal and external searching and sorting. Usually offered every term. Prerequisite: CSC-281 and junior standing in computer science, or graduate degree standing in computer science.

CSC-521
Design and Organization of Programming Languages (3)

Course Level: Undergraduate/Graduate

Study of desirable features and specifications of programming languages by investigation of data types, control structures, data flow, and run-time behavior of several languages, such as Prolog, Smalltalk, LISP, Ada, etc. At least one non-procedural language is studied in detail. Elements of compiling and interpreting. Usually offered every term. Prerequisite: CSC-281 and junior standing in computer science, or graduate degree standing in computer science.

CSC-535
User Interface Analysis and Design (3)

Course Level: Undergraduate/Graduate

This course provides the technical aspects of web application development, as well as the conceptual issues that affect this technology. Students develop an independent web-based project based on available authoring tools. Usually offered every term. Prerequisite: junior standing.

CSC-540
Computer System Organization and Programming (3)

Course Level: Undergraduate/Graduate

Investigation of the structure of a modern computing system. Alternative computer organizations are discussed so that students may appreciate the range of possible design choices. Assembly, linking, and loading are presented in detail. The relation between system software and computer organization is discussed. Usually offered every fall. Prerequisite: graduate degree or nondegree standing, or permission of department.

CSC-543
Object-Oriented Analysis and Design (3)

Course Level: Undergraduate/Graduate

A study of object-oriented concepts and their use in systems development. This course analyzes abstractions called objects and develops analysis-level models of systems using objects. The properties of these object models are discussed and methods for systematic development of the models are studied. The translations of the analysis-level models into system design is performed to understand how systems can be realized in software implementations. Usually offered every fall. Prerequisite: junior standing.

CSC-544
Object-Oriented Programming (3)

Course Level: Undergraduate/Graduate

Advanced use of an object-oriented programming language in the implementation of object-oriented systems. The language is studied in depth to see how advanced concepts are realized in the language, and is used to produce example systems. Emphasis is placed on the most recent advanced features. Usually offered once a year. Prerequisite: CSC-281 or equivalent.

CSC-546
Introduction to Computer Networks (3)

Course Level: Undergraduate/Graduate

An introduction to the basic concepts of computer networks. The architecture of data communication systems, the seven-layer model of a network, and the physical, data link, network, transport, and session layers are explored. Protocol algorithms are considered for the implementation of the various network layers. Usually offered alternate springs.

CSC-565
Operating Systems (3)

Course Level: Undergraduate/Graduate

Historical background. Operating system functions and concepts: processes; processor allocation; memory management; virtual memory; I/O and files; protection; and design and implementation. Several existing operating systems are discussed. A group project to design and implement a small operating system is usually required. Usually offered every spring. Prerequisite: CSC-281 and junior standing in computer science, or graduate degree standing in computer science.

CSC-568
Artificial Intelligence (3)

Course Level: Undergraduate/Graduate

Application of computers to tasks usually thought to require human intelligence, such as game playing, problem solving, learning, pattern recognition, natural language understanding, and expert systems. Usually offered every spring. Prerequisite: junior standing.

CSC-570
Database Management Systems (3)

Course Level: Undergraduate/Graduate

Examination of database management systems, distributed systems, evaluation and selection of computer systems, privacy and security, and performance evaluation. This course provides a fundamental exposure to relational architecture through exercises in Microsoft Access and Oracle 8, including an introduction to SQL. Prerequisite: ITEC-234 or CSC-281, and either ITEC-211 or MMDD-200; or CSC-520.

CSC-589
Topics in Computer Science (3)

Course Level: Undergraduate/Graduate

Topics vary by section, may be repeated for credit with different topic. Rotating topics include artificial intelligence programming, computer graphics, the history of computing, and neural networks.

CSC-590
Independent Reading Course (1-6)

Course Level: Undergraduate/Graduate

Prerequisite: permission of instructor and department chair.

CSC-596
Selected Topics: Non-recurring (1-6)

Course Level: Undergraduate/Graduate

Topics vary by section, may be repeated for credit with different topic.

CSC-600
Simulation (3)

Course Level: Graduate

Design and implementation of simulation systems. Covers discrete-event, stochastic simulations with examples chosen from a variety of fields. At least one simulation language is studied in detail. Prerequisite: admission to MS degree in an AU science program or permission of department.

CSC-610
Introduction to Geographic Information Systems (3)

Course Level: Graduate

A geographic information system (GIS) is a system of hardware, software, data, people, organizations, and institutional arrangements for collecting, storing, analyzing, and disseminating information about areas of the earth. This course provides an introduction to GIS, GIS software, and applications of GIS. Usually offered every fall. Prerequisite: familiarity with spreadsheets, e-mail, and the World Wide Web.

CSC-636
Advanced Database Management Systems (3)

Course Level: Graduate

Advanced query capabilities and procedural constructs are described using SQL and PL/SQL. The theoretical foundation for using these capabilities is presented. Performance issues are discussed including indexing, key definitions, and data constraints. The role of application development in ease of use, query optimization, and system performance is discussed. Usually offered every fall. Prerequisite: CSC-570.

CSC-637
Database Administration (3)

Course Level: Graduate

Database administration subjects including space allocation, recovery, security, configuration management, and performance tuning are discussed. Administration capabilities are presented using a real environment. Recovery issues include commit and rollback capabilities, check points, and data logs. Physical design and implementation constraints are addressed. Usually offered every spring. Prerequisite: CSC-570.

CSC-689
Topics in Computer Science (3)

Course Level: Graduate

Topics vary by section, may be repeated for credit with different topic. Rotating topics include design and analysis of algorithms, expert systems, simulation and modeling, client server computing, and computer network design and analysis.

CSC-690
Independent Study Project (1-6)

Course Level: Graduate

Prerequisite: permission of instructor and department chair.

CSC-691
Internship (1-6)

Course Level: Graduate

Prerequisite: permission of instructor and department chair.

CSC-692
Cooperative Education Field Experience (3-6)

Course Level: Graduate

Prerequisite: permission of department chair and Cooperative Education office.

CSC-694
Capstone Project (3)

Course Level: Graduate

With guidance from their advisor and the project class coordinator, students select an application area in computer science where an open-ended problem can be identified. Students research the literature and current domain solutions in the application area. Projects are documented and defended. Prerequisite: Completion of minimum of 24 credits hours of graduate study in computer science.

CSC-696
Selected Topics: Non-recurring (1-6)

Course Level: Graduate

Topics vary by section, may be repeated for credit with different topic.

CSC-797
Master's Thesis Seminar (1-6)

Course Level: Graduate

Prerequisite: completion of 24 graduate credit hours and permission of department.


Events Today

(rss)
Today's Events Time
Jacobs Fitness Center Hours 6:00 am
Kogod at 11 10:45 am
SPSS Drop-in Tutorial 11:00 am
MORE EVENTS

Newly Updated AUPedia

(rss)
MORE INSIDER GUIDES