Graduate Catalog 2010-12
Computer Science
Note: Additional work
will be required for graduate credit in 400-level courses.
CS 407 Advanced Topics in Computer Science 1 TO
3
Prereq.: CS 152 and 254 and permission
of instructor. This course provides an opportunity to introduce into the
curriculum topics of interest and new courses on an experimental basis. May be
repeated with different topics for up to 6 credits.
CS 410 Introduction to Software Engineering 3
Prereq.: CS 253. An examination of the
software development process from the initial requirement analysis to the
operation and maintenance of the final system. The scope of the course includes
the organization of software development projects, the verification and
validation of systems, the problems of security and privacy, and the legal
aspects of software development, including software protection and software
liability. Irregular.
CS 423 Computer Graphics 3
Prereq.: CS 253 or (for graduates) CS
501. Wire frame and solid graphics in two and three dimensions, data structure
for computer graphics, geometrical transformations in computer graphics, raster,
and vector display device technologies. Fall.
CS 460 Database Concepts 3
Prereq.: CS 253 or (for graduates) CS
501. Data base systems are considered from both the designer's and user's point
of view. Physical implementation and data access techniques are studied.
Irregular.
CS 462 Artificial Intelligence 3
Prereq.: CS 253 or (for graduates) CS
501. Presentation of artificial intelligence as a coherent body of ideas and
methods to acquaint the student with the classic programs in the field and
their underlying theory. Students will explore this through problem-solving
paradigms, logic and theorem proving, language and image understanding, search
and control methods, and learning. Spring.
CS 463 Algorithms 3
Prereq.: CS 253 or (for graduates) CS
501. Topics include algorithms in combinatorics, integer and real arithmetic,
pattern matching, list processing, and artificial intelligence. Algorithmic
analysis and domain-independent techniques are also considered. Irregular.
CS 464 Programming Languages 3
Prereq.: CS 253 or (for graduates) CS
501. Emphasis on programming languages as one of many tools in the software
development effort. Comparison of different language usages of data types,
information hiding, control structures, block structure, sub-programs,
re-entrance, and recursion. Irregular.
CS 465 Compiler Design 3
Prereq.: CS 355. Current techniques of
compiler writing. Introduction to formal grammar and parsing techniques is
given. Problems of semantic phase are discussed and some solutions are given.
Optimization techniques are discussed. Fall.
CS 473 Simulation Techniques 3
Prereq.: CS 152 or 213, and STAT 315.
Basic principles of simulation methods using digital computers. Topics covered
include random number generators, stochastic variate generators, computer
models, and simulation languages. Irregular.
CS 481 Operating Systems Design 3
Prereq.: CS 253 or CS 501. Theory and
design of computer operating systems. Topics include machine and interrupt
structure, memory, processor, device, and information management. Spring.
CS 483 Theory of Computation 3
Prereq.: MATH 218 and CS 463. The
concept of algorithm, correctness and efficiency of algorithm, decidable vs.
undecidable problems, recursion, halting problem, formal languages, context
free and context-sensitive grammars, and introduction to automata and parallel
algorithms. Irregular.
CS 490 Computer Communications Networks
& Distributed Processing 3
Prereq.: CS 253 and 254. Study of
networks of interacting computers. The problems, rationale, and possible
solution for both distributed processing and distributed data bases will be
examined. Irregular.
CS 495 Legal, Social, Ethical, and Economic
Issues in Computing 3
Prereq.: Permission of instructor. Topics
include privacy, security, law of torts in computing, and legal protection of
software. Spring.
CS 498 Senior Project 1
TO 3
Prereq.: Senior standing, 21 credits
toward major including one advanced course. Opportunity for student to
participate in design and implementation of large problem with small group of
people. Problem will be chosen in consultation with instructor.
CS 499 Seminar in Computer Science 3
Opportunity for student to explore topics of current interest not covered in
normal curriculum. Majors only. Irregular.
CS 500 Computer Science for Computer
Information Technology 3
Prereq.: Permission of department chair
or C.I.T. program coordinator. Concepts of computer science, including software
analysis and design, inheritance, polymorphism, recursion, elementary sorting,
and programming using arrays, sequential files, and linked lists.
CS 501 Foundations of Computer Science 3
Prereq.: CS 500 or CS 153 or permission
of instructor. Software design for structuring and manipulating data. Topics
include stacks, queues, hash tables, trees, graphs, advanced sorting, and
analysis of algorithms.
CS 502 Computing and Communications
Technology 3
Prereq.: Admission to the CIT program or
permission of the program director. Comprehensive coverage of the concepts of
computer networking, and computer architecture and organization required to
enable students to understand and efficiently utilize computing and
communication resources. Development of distributed computer applications.
Spring.
CS 530 Advanced Software Engineering 3
Prereq.: CS 501, 502. Study of the
software lifecycle including requirements analysis, specification, design,
coding, testing, and maintenance. Includes proofs of correctness and techniques
of formal specification. Spring. (O)
CS 550 Topics in Human-Computer Interaction 3
Prereq.: CS 501, 502. Study of the
design, evaluation and implementation of interactive computing systems for the
joint performances of tasks by humans and machines, algorithms and programming of
the interface, and engineering concerns and design tradeoffs. Topics include
computer-supported cooperative work, modeling intelligence, multimedia systems,
and user interface design. Irregular.
CS 570 Topics in Artificial Intelligence 3
Prereq.: CS 501, 502. Topics include
advanced techniques for symbolic processing, knowledge engineering, and
building problem solvers. Irregular.
CS 580 Topics in Database Systems and
Applications 3
Prereq.: CS 501, 502. Database
technology needed to develop and manage sophisticated database systems. Topics
include design of database management systems, advanced database applications,
hypermedia, and object-oriented database management systems. Irregular.
CS 590 Topics in High Performance Computing
and Communications 3
Prereq.: CS 481, 501, 502. Design,
implementation, and evaluation of high performance computing and communications
technologies for the development of distributed multimedia systems. Topics
include distributed systems, parallel computing, modern operating systems, and
network administration. Irregular.