2026-2027 Undergraduate Bulletin > Courses > CPS - Computer Science > 400
Software specification, design methods, programming and testing techniques and CASE tools. Design a large software system in a group environment using modern software engineering techniques. Prerequisites: CPS 301, CPS 340, CPS 360. Must be 2nd semester junior or 85+ credit hours.
Operating systems as resource manager. Study of the strategies used to manage system resources such as devices, files, memory, processors. Prerequisites: CPS 340, CPS 360.
Automated reasoning, search strategies, knowledge representation, expert systems, reinforcement learning, machine learning and perception; applications. Prerequisite: CPS 285 or CPS 340.
Selected technical topics of the latest developments in the field. Topic (s) are listed in Course Search and Registration. Repeatable up to 6 credits when content does not duplicate previous special topic studies. Prerequisite: See course search and registration.
Open to students with permission of instructor. May be taken for credit more than once, total credit not to exceed 6 hours. Prerequisite: Permission of instructor.
Continuation of senior capstone experience. This course integrates design methods and software engineering techniques to finalize development of a large software system. Prerequisite: CPS 410.