Courses for Seniors and Graduate Students
CS Home Contact CS UG Advisor Grad Advisor
Undergrad-Lower Level
Undergrad-Upper Level
Graduate Core
Seniors and Graduates
Graduate Courses

Master of Science Computer Science
Bachelor of Science Computer Science
Associate of Science Computer Science
Minor in CS
Undergrad Certificate
Graduate Certificates
Bachelor of Science in Computer Technology

<< Back
Systems Programming/C                             Syllabus    Offerings
CS 647 Systems Programming/C

Prerequisite: CS 320 or EE 371 or CS 644. Techniques for UNIX systems programming in the C language. Topics include, macro preprocessors, conditional compilation, low-level interface programming, UNIX system calls including file and directory operations, process control, interprocess communication, and client-server routines. Programming projects required. 3 credit hours.

CS 338 The Structure of Programming Languages       Syllabus     Offerings
CS 636 The Structure of Programming Languages

Prerequisites: (CS 166 and CS 226) or (CS 620 and CS 630), and knowledge of two high-level programming languages. Language is dissected in order to study its components, implementation, and internal operation. The structure, syntax and semantic aspects of computer languages are studied. Short programs will be written in FORTH and LISP. 3 credit hours.

CS 417 Java Applet Programming                        Syllabus    Offerings
CS 617 Java Applet Programming

Prerequisites: (CS 226 and CS 320) or (CS 620 and CS 644). A study of object-oriented programming in an Internet environment using the Java Abstract Windows Toolkit. Also covers concurrency and synchronization with threads.

CS 420 Software Design and Development                 Syllabus     Offerings
CS 624 Software Engineering

Prerequisite: senior C.S. standing or (CS 610 and CS 620). Application and extension of ideas and skills from preceding courses. Topics include: The human-machine interface. An introduction to object-oriented techniques. Formal methods for capturing requirements, designing, improving, and debugging code. For undergraduates, a major group project will be designed and implemented. Graduate students may do an independent design project instead. 3 credit hours.

CS 425 Principles of Computer Graphics                 Syllabus     Offerings
CS 650 Computer Graphics

Prerequisites: (M 118 or M 610) and (CS 226 or CS 610 and CS 620). Development and implementation of the fundamental algorithms of computer graphics: 2-D viewing, geometric transformations, clipping, curves, user interaction. Introduction to 3-D viewing and surfaces. Programming projects required. 3 credit hours.

CS 434 Assembly Language                 Syllabus     Offerings
CS 616 Assembly Language

Prerequisite: CS 314 or (CS 610 and CS 640). Introduction to assembly language programming, including the hardware instruction set, assembly language syntax and features, macros, subprograms, interrupts, I/O conversions. Programming required.

CS 437 Data Base Systems                 Syllabus     Offerings
CS 622 Data Base Systems

Prerequisite: CS 226 or CS 610. A survey of database systems, their purpose, structure, function and use. Topics will include an overview of DB systems, major DB models, design and implementation methods in DB models, introduction to typical DB systems and internal operation of DB systems. 3 credit hours.

CS 447 Computer Communications                 Syllabus     Offerings
CS 642 Computer Networks and Data Communication

Prerequisites: (CS 226 and CS 314) or (CS 610 and CS 640). Problems and solutions in designing a network of computers. Topics: ISO 7-level model, network topology, communications theory, protocols, virtual circuits and packet switching, local networks (CSMA, token ring), security (DES, Public Key Crypto-systems), concurrency, distributed software. 3 credit hours.

The ISO 7-level model, network topology, communications theory, protocols, virtual circuits and packet switching, local networks (CSMA/CD, token ring), error detection and correction. Additional topics may include security (Data Encryption Standard, public-key crypto-systems), TCP/IP, sockets.

CS 478 Artificial Intelligence                 Syllabus     Offerings
CS 660 Artificial Intelligence

Prerequisite: CS 226 or (CS 610 and CS 620). Principal techniques of a functional programming language, and the fundamental goals and methods of artificial intelligence (or AI), a field which attempts to simulate intelligent behavior by computer. Topics: general search strategies, heuristics, game trees, knowledge representation, propositional and first-order logic, inference, probabilistic reasoning, planning and expert systems. Design and implementation of AI programs3 credit hours.

CS 526 Object-Oriented Principles and Practice/C++    Syllabus     Offerings
CS 626 Object-Oriented Principles and Practice/C++

Prerequisite: CS 330 or CS 620 or permission of instructor. The C++ language; object-oriented design and programming. Protection of privacy, encapsulation of data with relevant functions. Advanced aspects of C++; inheritance, templates, polymorphism, virtual functions and exception handling. Several programming projects in C++. 3 credit hours.

CS 528 Object-Oriented Software Development        Syllabus    Offerings
CS 628 Object-Oriented Design

Prerequisits: CS 417, CS 526, CS 617, or CS 626. An object-oriented design methodology course. Topics: requirements capture, object-oriented system analysis, design and implementation. Primary emphasis on the UML methodology, separation of layers, and design patterns, and the importance of these in developing a software project. Students will design a major group project and implement portions using C++ or Java. 3 credit hours.

CS 445 Network Administration                             Syllabus    Offerings
CS 645 Network Administration

Prerequisite: CS 320 or CS 644. Fundamentals of administration of a networked computer. Topics include basic duties of a system administrator, overview of TCP/IP networking, file system layouts, user management, network services such as DNS, NIS, DHCP, file sharing, printing, mail, ftp, web, interfacing different operating systems on one network, and general security issues including prevention through firewalls and secure shells. Lab exercises will use both Unix and Windows systems. 3 credit hours.

CS 551 Advanced Computer Graphics                 Syllabus     Offerings
CS 551 Topics in Computer Graphics

Prerequisite: CS 425 or CS 650. Three-dimensional graphics including surface modeling, transformations, three-dimensional viewing, spline curves and surfaces, color theory and shading, hidden-surface elimination and an introduction to ray tracing. Progamming projects required. 3 credit hours.

Last updated: 11/29/01 Comments about this website should be directed to CS webmaster