CPS 150 FORTRAN Programming 2(2-0)
Algorithms, programs, and computers. Computer solution of several numerical and nonnumerical problems. Does not count toward a major or minor in CPS. Prerequisite: MTH 107.
CPS 180 Principles of Computer Programming 3(3-0)
Algorithm development and problem solving methods. Design and develop- ment of computer programs in a structured programming language. Corequisite: MTH 130. (University Program Group II-B)
CPS 181 Introduction to Data Structures 3(3-0)
Continuation of CPS 180. Dynamic storage allocation, recursion, abstract data types (such as stacks, queues, linked lists, and binary trees), sorting and searching. Prerequisites: CPS 180; Corequisite: MTH 175.
CPS 210 Assembly Language and Computer Organization 3(3-0)
Topics in assembly language concepts, introduction to computer organiza- tion, machine representation of information, models of computer architecture, instruction and addressing fundamentals, control structures. Pre/Co-Requisite: CPS 181. Recommended: One of: MTH 132 or MTH 216.
CPS 280 Alternative Programming Languages 1-6(Spec)
Intensive study of one or more selected programming languages, such as APL, LISP and ADA. Languages presented will be announced in the Phase I Class Schedule Booklet. Students may not earn credit for a language in which they already have credit in one of the primary programming sequences. Pre- requisites: CPS 181 or ITC 111.
CPS 282 Introduction to Multimedia Design 3(3-0)
Introduction to multimedia concepts. Survey of multimedia applications in fields such as education, business and entertainment. Introduction to multimedia authoring tools. Hands-on projects. Prerequisites: any CPS 100-level course.
CPS 340 Advanced Data Structures and Algorithms 3(3-0)
Theory of and advanced techniques for representation of information; lists, trees, graphs; analysis of algorithms; sorting, searching and hashing techniques. Prerequisites: CPS 181, CPS 210; MTH 223.
CPS 360 Computer Design and Architecture 3(3-0)
Logic gates, design and analysis of digital circuits, clocked digital circuits, processor micro-architecture, instructions sets and addressing modes, virtual memory.
CPS 370 File Manipulation Techniques 3(3-0)
Creation and manipulation of program and data files, scientific and industrial applications of file-oriented systems, prominent computer languages having file processing capabilities. Prerequisite: CPS 181.
CPS 380 Microcomputer Architecture 3(3-0)
Concepts and operation of microprocessors and microcomputers to include input/output, mass storage, memory, and small read-only memory operating systems. Prerequisites: CPS 210, CPS 360.
CPS 395 Internship in Computer Science 1-9(Spec)
Supervised work experience in computer science. Only 3 hours may count toward the major. Any additional hours must provide a significantly different educational experience. CR/NC only. Prerequisites: CPS 210 or ITC 291; permission of department chairperson.
CPS 410 Software Engineering 3(3-0)
Software specification, design methods, programming and testing techniques and CASE tools. Developing large software systems in a group environment using modern software engineering techniques. Prerequisites: CPS 340; Rec- ommended: CPS 370.
CPS 420 Windows Programming 3(3-0)
Introduction to programming for windowing systems. Graphical User Interfaces, object-oriented programming, shared data and program libraries. Mixed-lan- guage programming. Relationships among windowing systems. Prerequisites: CPS 340 or ITC 320.
CPS 450 Programming Language Concepts 3(3-0) Formal definition of programming languages including specification of syntax and semantics. Prerequisite: CPS 340.
CPS 468 Systems Programming and Software 3(3-0)
Systems concepts--filesystem, shell, system calls; software such as as- semblers, linkers, loaders; systems programming in a modern programming environment such as UNIX. Prerequisites: CPS 340.
CPS 482 Advanced Multimedia Design 3(3-0)
Interactive multimedia projects will be designed using advanced authoring tools. Issues concerning representation, storage, compression, transmission, and manipulation of various multimedia components will be discussed. Pre- requisites: CPS 282.
CPS 497 Independent Study 1-6(Spec) Open to students with permission of instructor. May be taken for credit more than once, total credit not to exceed 6 hours.
CPS 501 Survey of Computer Science 3(3-0)
Computer organization, low and high level computer languages, various computer applications. Does not count toward CPS major or minor or the M.S. in Computer Science except the Teaching Minor in Computer Science on the secondary education curriculum. This course is approved for offering in a distance learning format.
CPS 510 Software Systems Engineering 3(3-0)
Covers requirements analysis and techniques to develop a system from those requirements. Credit will not be given for both CPS 410 and CPS 510. Does not count for the M.S. in Computer Science. Prerequisites: CPS 340; MTH 175. This course is approved for offering in a distance learning format.
CPS 530 Simulation of Discrete Event Systems 3(3-0)
Development of computer models for discrete systems using computer simula- tion languages. Performance evaluation of computer, industrial and engineering systems. Prerequisite: CPS 181; STA 282 or STA 382.
CPS 541 Databases 3(3-0)
Physical and logical organizations of databases, database management systems, project involving a student-designed database. Prerequisites: CPS 340 and CPS 370; or ITC 441 and permission of instructor.
CPS 560 Digital Computer Design 3(3-0)
Design of basic components of a general purpose computer such as CPU, memory, I/O systems. Instruction set design. CISC versus RISC debate. Parallel Architectures. Prerequisite: CPS 360.
CPS 565 Computer Networks I 3(3-0)
Introduction to computer networks. Point-to-point, local area and wireless networks. Protocols, routing algorithms, and congestion control in networks. Prerequisites: CPS 340, 360.
CPS 575 Computer Graphics 3(3-0)
Representation of line drawings, handwritings, and three-dimensional sur- faces in computers. A plotter and graphics terminal are used. Prerequisites: CPS 181 or MTH 223.
CPS 590 Computer Applications In Educational Administration 3(3-0)
Use of computers in managing educational resources and programs. Hands- on instruction in use of existing systems. How to design and implement new systems. Does not count on CPS majors or minors except for teacher certification program. Prerequisite: CPS 501.
CPS 591 Computer Application In Classroom Instruction 3(3-0)
Software evaluation and hardware selection. Modes of computer-based instruction. Introduction to CAI and authorizing systems. Simulation/gaming for instructional purposes. Does not count on CPS majors or minors except for teacher certification programs. Prerequisite: CPS 501.
CPS 592 Computer Science Content for Elementary Teachers 3(3-0)
Introduction to procedural thinking skills. Programming in BASIC and LOGO. Overview of computer architecture at a functional level. Use of binary and hexa- decimal numeration systems. Does not count on CPS majors or minors except for teacher certification programs. Prerequisite: CPS 501.
CPS 603 Computer Information Systems 3(3-0)
Growth stages of computer usage, information flow, role of MIS manager in providing information to an organization. Does not count on the M.S degree in computer science. Prerequisite: CPS 501. This course is approved for offering in a distance learning format.
CPS 611 Software Verification and Validation 3(3-0)
Software verification and validation techniques are introduced and their applica- bility discussed. In-depth study of verification and validation area. Does not count for the MS in Computer Science. Prerequisites: CPS 510 and MTH 175.
CPS 612 Software Project Management 3(3-0)
Software engineering process, software project organization and manage- ment issues, software project economics, software quality assurance, software configuration management, software operations issues. Does not count for MS in Computer Science. Prerequisites: CPS 510. This course is approved for of- fering in a distance learning format.
CPS 613 Specification of Software Systems 3(3-0)
Formal models and representations. Specification techniques and tools that support them.Assessment of specification for attributes such as consistency and completeness. Does not count on the MS in Computer Science. Prerequisites: CPS 510 and MTH 175.
CPS 614 Principles and Applications of Software 3(3-0)
Covers several different methods and languages for expressing designs. The process of assessment is also covered. Does not count for the MS in Computer Science. Prerequisites: CPS 510 and MTH 175.
CPS 615 Software Generation and Maintenance 3(3-0)
Techniques for performing software generation and maintenanceAlternatives to coding, language concepts, the role of standards and style, the role of tools, performance analysis, regression analysis, other maintenance-specific subjects. Does not count for the MS in Computer Science. Prerequisites: CPS 510.