College of Engineering and Computer Science
335 File and Data Base Processing (3)
A study of sequential, direct, and indexed sequential files. File sorting and searching techniques. Data compression and data encryption. Database concepts. Introduction to the relational model. Prerequisite: CPSC 261 with grade of C or better.
351 Systems Programming (3)
Structure and design of programs whose inputs are programs. Assemblers, interpreters, compilers, loaders and supervisors. Introduction to formal programming languages, syntactic descriptions, symbolic functions and manipulations. Prerequisites: CPSC 261, 306 and Mathematics 303 with grades of C or better.
385 Ethical and Social Issues in Computing (3)
This course examines the ethical and social issues arising from advances in computer technology and the responsibility that computer professionals and users have with regard to computer use by focusing on the intrinsic link between ethics and the law, how both try to define the validity of human actions, and on the moral and ethical dilemmas created by computer technology that challenge the traditional ethical and moral concepts. Prerequisites: CPSC 110 or 150 and English 277 or 278 with grades of C or better.
410 Programming Languages (3)
The study of the structure, design, and implementation of computer programming languages, including procedural, object-oriented, logic programming, and functional languages. Topics include language syntax and semantics, procedure and data abstraction, binding times, exception processing, support for concurrency, and language programming paradigms. Prerequisites: CPSC 251 and 312 with grades of C or better.
420 Computer Graphics Applications and Algorithms (3)
Computer graphics systems, system software, data structures for graphics devices and display processors, representational algorithms and packaged graphics software. Prerequisite: CPSC 312 with grade of C or better.
426 Computer Networks (3)
The theory, design, engineering, and installation of networks to connect digital computers. The course will prepare students to plan and implement a network. Also includes peer-to-peer networks, the client-server model, network operating systems, and an introduction to wide-area networks. The network and implementation tools may vary to meet current development trends. Prerequisites: CPSC 251 and 305 with grades of C or better.
430 Topics in Simulation (3)
Digital simulation. A study of simulation languages and simulation techniques for solving many types of research problems from management, engineering, and science; simulation of large systems, design of simulation experiments for optimization; applications using simulation languages. Prerequisites: CPSC 312 with a grade of C or better and an approved course in statistics.
432 Advanced Operating Systems (3)
Concepts and issues of operating system principles; procedure activation, storage allocation, system structure, performance evaluation, memory management, process management, security, and recovery procedures. An introduction to distributed operating systems; communication, synchronized and system structure in distributed systems. Prerequisites: CPSC 251, 305, 306 and Mathematics 303 with grades of C or better.
435 Data Base Management Systems (3)
Concepts and methods in the definition and management of databases; physical and logical database design; data modeling techniques; programming in a database environment; topics in database security, integrity, recovery and concurrence. Prerequisites: CPSC 335 with grade of C or better or Senior standing in Computer Science and approval of instructor.
440 Wide Area Networks (3)
The design, preparation, and delivery of information, applications, and services using client/server computing over a wide-area network. The network and implementation tools may vary to meet current development trends. Prerequisite: CPSC 312 with a grade of C or better.
444 Computer Network Security (3)
This course will focus on the security issues and procedures in computer and mobile communication networks. Topics include risk assessment and security policies, networks intrusion detection, forensics technologies, and current trends and research in security policies and technologies. Prerequisites: CPSC 426 with grade of C or better and an approved course in statistics.
445 Automata, Complexity, and Computability (3)
An introduction to the classical and contemporary theory of computation including automata, formal languages, Turing machines, recursive functions, computability and incomputability, complexity, and the classes of P and NP. Prerequisites: CPSC 160 and Mathematics 303 with grades of C or better.
450 Software Engineering (3)
Continued study of software development techniques with special consideration of the techniques used to produce large software systems. Planning, scheduling and managing software projects. Configuration management. Formal methods in requirements specification, design and testing. The course will include numerous individual and team programming projects. Prerequisites: CPSC 261, Mathematics 303, and English 277 or 278 with grades of C or better.
460 Computer Architecture (3)
An advanced course in computer architecture. Topics include classical uniprocessor architecture, computer arithmetic, instruction sets, control unit design including the basics of microprogramming, I/O operations, memory hierarchies, cache and virtual memory mechanisms, instruction and arithmetic pipelines, CISC, RISC, superscalar and superpipelined architectures, parallel architectures. Prerequisites: CPSC 251 and 306 with grades of C or better.
475 Advanced Computer Systems (3)
A study of representative computer systems including architectural features, hardware implementation, machine level programming, memory systems, I/O device interfacing, and system design. Prerequisites: CPSC 305, 306, and 460 with grades of C or better.
476 Embedded Microcontroller Systems (3)
Microcontroller systems architecture, advanced real-time signal interfacing techniques, I/O programming concepts, real-time realization of digital signal processing and filtering techniques. Projects included. Prerequisites: CPSC 305, 306 and ENEE 371, 372 with grades of C or better.
480 Introduction to Artificial Intelligence (3)
Artificial intelligence; simulation of cognitive behavior and self-organizing systems; heuristic programming including the use of list processing languages; data representation; pattern matching structures; applications in symbolic mathematics; survey of examples from representative application areas. Prerequisite: CPSC 312 with a grade of C or better.
490r Group Software Project (3)
A group design effort which will concentrate on developing a major software project. Oral and written presentations of progress and final results required. Prerequisites: CPSC 251 and 261 with grades of C or better, and senior standing in computer science.
495r Departmental Honors (1-3 hours per term, 4 hours for the two terms) On demand. See Departmental Honors, page 39.
497r Research (1-4)
On demand.
498r Individual Studies (1-4)
On demand.
499r Group Studies (1-4)
On demand.
