Course
Descriptions
Computer Science
(CPS)
Course
Schedules
Distance
Learning Courses: Courses in the department approved for
offering in a distance learning format include: CPS 502, 512, 603,
612.
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.
CPS 502 Introduction to
Problem Solving and Data Structures 3(3-0)
Structured program design and problem solving. Abstract data
types. Searching and sorting. Does not count toward any degree
program in Computer Science. Prerequisite: conditional
admission into CPS M.S. program or permission of instructor.
CPS 503 Digital Design and
Computer Organization Using Assembly Language 3(3-0)
Introduction to organization of a digital computer. Design of
digital circuits. Assembly language programming. Does not
count towards any degree program in Computer Science.
Prerequisite: conditional admission into CPS M.S. program or
permission of instructor.
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 MS in
Computer Science. Prerequisites: CPS 340 and MTH 175.
CPS 530 Simulation of Discrete
Event Systems 3(3-0) D
Development of computer models for discrete systems using
computer simulation languages. Performance evaluation of
computer, industrial and engineering systems. Prerequisites:
CPS 181; STA 282 or STA 382.
CPS 531 Distributed
Programming 3(3-0)
Study of design and implementation issues in distributed
programming, including event model, networking, database
connectivity, remote method invocation, servlet, XML and
security. Prerequisites: CPS 280J or equivalent, CPS 340.
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 542 Analysis and Design of
Algorithms 3(3-0)
Models of computation. Analysis of algorithms including
computing time and space requirements. Efficient algorithm
design techniques. Introduction to parallel algorithms.
Prerequisite: CPS 340.
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 data communication as a basis for computer
networking. Protocols, routing algorithms, and congestion in
point-to-point networks. Introduction to local area networks.
Prerequisites: CPS 340 and CPS 360, or ITC 465; and permission of
instructor.
CPS 575 Computer Graphics
3(3-0)
Representation of line drawings, handwritings, and
three-dimensional surfaces in computers. A plotter and
graphics terminal are used. Prerequisites: CPS 181; MTH 137 or
MTH 223
CPS 576 Digital Image
Processing 3(3-0)
Digital image fundamentals. Introduction to digital image
processing concepts and techniques. Image transforms.
Enhancement, segmentation, representation, and description of
images. Image encoding and restoration. Prerequisites: MTH
175, MTH 223, CPS 340, or consent of instructor.
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 hexadecimal numeration
systems. Does not count on CPS majors or minors except for
teacher certification programs. Prerequisite: CPS 501.
CPS 596 Special Topics in
Computer Science 1-6(Spec)
May be taken for credit more than once but total credit earned
in CPS 596 may not exceed 6 semester hours. Prerequisite:
permission of instructor.
CPS 597 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 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 or permission of instructor.
CPS 610 Advanced Software
Design and Development 3(3-0)
Advanced topics in software engineering. Developing a large
software system using modern software engineering techniques
including object-oriented programming and CASE tools.
Prerequisite: CPS 410 or permission of instructor.
CPS 611 Software Verification
and Validation 3(3-0)
Software verification and validation techniques are introduced
and their applicability 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 management issues, software project economics, software
quality assurance, software configuration management, software
operations issues. Does not count for MS in Computer Science.
Prerequisites: CPS 510 and MSA 650.
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 maintenance.
Alternatives 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. Prerequisite: CPS
510.
CPS 619 Continuing
Registration for Final Research Project 1(1-0)
A
non-credit course intended for students who have completed all
program credits but still need to use university resources to
complete their degree requirements.
CPS
640 Theory of Automata and Formal Languages 3(3-0)
Introduction to theory of Automata (FA, PDA, Turing Machines)
and theory of formal languages (RE, CFL, CSL, etc.) and their
relationships. Chomsky Hierarchy. Undecidability.
Prerequisites: CPS 340 or permission of instructor.
CPS 641 Advanced Topics in
Databases 3(3-0)
Conceptual models. Relational theory. Access methods, query
optimization. Concurrency Integrity. Selected current topics,
e.g., distributed, temporal, and object-oriented databases.
Student projects; literature review. Prerequisites: CPS 541.
CPS 650 Theory and Practice of
Compiler Construction 3(3-0)
Automata theory, context-free languages, syntax analysis and
parsing techniques. Semantic processing for structured and/or
object-oriented programming languages. Code generation and
optimization. Prerequisites: CPS 450 or permission of
instructor.
CPS 660 Advanced Computer
Organization 3(3-0)
Calculator and minicomputer design, organization of computer
software and hardware interface, concept of microprogramming
and microprocessor design, multiprocessing and pipeline
processing. Prerequisite: CPS 360.
CPS 665 Computer Networks II
3(3-0)
Examination of satellite and packet radio networks. Detailed
study of various local network topologies and protocols. Areas
of current research. Prerequisites: CPS 340, CPS 360, CPS 565, and STA
382.
CPS 670 Operating Systems
3(3-0)
Concepts, communication, synchronization, processes, and
processors in distribution systems. Distributed file systems.
Distributed shared memory systems. Prerequisite: CPS 470.
CPS 675 Advanced Topics in
Computer Graphics 3(3-0)
Detailed study of selected advanced topics in computer
graphics. Prerequisite: CPS 575.
CPS 676 Computer Vision 3(3-0)
Introduction to basic issues in computer vision, early
processing, boundary detection; texture, motion and color;
representation of 2-D, 3-D structures; knowledge-based vision
systems. Prerequisites: CPS 576, (CPS 680 desired, but not
required).
CPS 680 Artificial
Intelligence 3(3-0)
Introduction to symbolic manipulation and machine
intelligence. Design of AI methods in a functional programming
language. Logic programming. Machine learning. Applications.
Prerequisites: CPS 340 and CPS 410 or permission of instructor.
CPS 681 Advanced Topics in
Artificial Intelligence 3(3-0)
Advanced topics in artificial intelligence including topics
from expert systems, natural language processing, automated
reasoning, and other areas. Prerequisite: CPS 680.
CPS 685 Pattern Recognition
and Data Mining 3(3-0)
Pattern modeling, classification, recognition, and their
applications in data mining. Data mining process and
techniques, including data transformation, supervised
induction, association discovery, and conceptual clustering.
Prerequisites: CPS 410, MTH 223, STA 282, STA 382 or STA 584; or
permission of instructor.
CPS 695 Professional Field
Experience 1-6(Spec)
Professional field experience via internship or
apprenticeship. Must be integral to the student's program of
study. Does not count towards a degree in Computer Science.
CR/NC only. Prerequisites: permission of graduate advisor
or department chairperson.
CPS 696 Special Topics in
Computer Science 1-6(Spec)
May be taken for credit more than once, but total credit
earned in CPS 696 may not exceed 6 semester hours.
Prerequisite: permission of instructor.
CPS 697 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 798 Thesis 1-6 (Spec)
CR/NC only. Prerequisites: written permission of advisor and
department chairperson.
Top of Page