University of Vermont

Official 2007-2008 Catalogue Site

2007-08 Online Catalogue

Graduate Courses in Computer Science (CS)

CS 201 - Operating Systems
Supervisory and control software for multiprogrammed computer systems. Processes synchronization, interprocess communication, scheduling, memory management, resource allocation, performance evaluation, object-oriented systems, case studies. Prerequisites: 103, 104.
Credits: 3.00
CS 202 - Compiler Construction
Practice in design and implementation of translators for ALGOL-like languages. Regular and context-free grammars, parsing, code generation for stack and register machines. Interpreters. Run-time storage administration for block-structured languages. Prerequisites: 103, 243.
Credits: 3.00
CS 204 - Database Systems
Techniques for processing very large collections of data. Secondary storage. Database design and management. Query languages and optimization. Database recovery. Prerequisites: CS 104
Credits: 3.00
CS 205 - Software Engineering
Treatment of software engineering problems and principles, including documentation, information hiding, and module interface specification syntax and semantics. Requires credit for 205 may not receive credit for 208 or 209. participation in a team project. Students who receive
Credits: 3.00
CS 208 - Software Requirements&Design
Project management, requirements for software products, design methodologies and formal and informal notations describing designs. Includes developing requirements and design for a substantial software product. Credit not awarded for more than one of 205 and 208. Prerequisites: CS 100, CS 104.
Credits: 3.00
CS 209 - Software Implement&Verificat'n
Covers advanced program development methodologies, software performance measuring and tuning and the verification and validation of software. Includes a significant implementation and evaluation project. Credit not awarded for more than one of 205 and 209. Prerequisites: CS 100, CS 104.
Credits: 3.00
CS 222 - Computer Architecture
Architecture of computing systems. Control unit logic, input/output processors and devices, asynchronous processing, concurrency, parallelism, and memory hierarchies. Prerequisite: 101.
Credits: 3.00
CS 224 - Analysis of Algorithms
Introduction to both analytical and experimental techniques in algorithm analysis. Basic algorithm design strategies. Introduction to computational complexity theory. Prerequisites: CS 104, Math 173 recommended.
Credits: 3.00
CS 228 - Human-Computer Interaction
The design, implementation and evaluation of user interfaces for computers and other complex, electronic equipment. Includes a significant project.
Credits: 3.00
CS 231 - Bioinformatics
Introduction to current topics in bioinformatics. Applications may include sequence alignment, dynamic programming, hidden Markov models, phylogenetics trees, microarray data analysis, genomics, and proteomics. Prerequisites: STAT 151, CS 26, and MMG 102 desirable. Crosslisting MMG 231.
Credits: 3.00
CS 243 - Theory of Computation
Introduction to theoretical foundations of computer science. Models of computation. Church's thesis and noncomputable problems. Formal languages and automata. Syntax and semantics. Prerequisite: 104. (Same as Math 243).
Credits: 3.00
CS 251 - Artificial Intelligence
Introduction to methods for realizing intelligent behavior in computers. Knowledge representation, planning, and learning. Selected applications such as natural language understanding and vision. Prerequisites: CS 103, CS 104, STAT 153 or equivalent.
Credits: 3.00
CS 256 - Neural Computation
Introduction to artificial neural networks, their computational capabilities and limitations, and the algorithms used to train them. Statistical capacity, convergence theorems, backpropagation, reinforcement learning, generalization. Prerequisites: Math 124 (or 271), Stat 153 or equivalent, computer programming. Cross-listed: STAT 256
Credits: 3.00
CS 260 - Parallel Algorithms&Prog Tech
Taxonomy of parallel computers, basic concepts for parallel computing, effectiveness and scalability, parallel algorithms for variety of problems, message-passing programming paradigm and data-parallel languages. Prerequisite: 103, 104. MATH 173 and MATH 124 recommended.
Credits: 3.00
CS 265 - Computer Networks
Introduction to the theoretical and pragmatic principles of computer networking and client-server computing. Topics include: Local Area Networks; the Internet; ATM technology; TCP programming. Prerequisite: CS 101, 104, STAT 153 or equivalent.
Credits: 3.00
CS 266 - Network Security&Cryptography
Security and secrecy in a networked environment. Cryptography: public and private key. Authentication: trusted agents, tickets. Electronic mail and digital signatures. Privacy and national security. Prerequisites: 104, Math. 124 or 271.
Credits: 3.00
CS 274 - Computer Graphics
Graphical representation of two- and three-dimensional objects on color raster displays. Line generation, region filling, geometric transformations, hidden line and surface removal, rendering techniques. Prerequisite: 104, Math. 121, Math. 124 or 271.
Credits: 3.00
CS 294 - Independent Readings&Research
Independent readings and investigation under the direction of faculty member. Prerequisite: Department permission.
Credits: 3.00
CS 295 - Special Topic:Computer Science
Subject will vary from year to year. May be repeated for credit.
Credits: 6.00
CS 296 - Special Topics:Computer Sci
Credits: 3.00
CS 303 - Adv Top:Prog Environ&Language
Object-oriented, functional, or procedural programming languages, language design, parsing, translation, compilation, interpretation, programming and runtime environments. May be repeated for credit with instructor permission. Prerequisites: 103, 202.
Credits: 3.00
CS 316 - Adv Topi:Computational Science
Topics chosen from engineering and scientific applications, visualization, large-scale data analysis. May be repeated for credit with instructor permission. Prerequisite: Varies by semester. Instructor permission required.
Credits: 3.00
CS 321 - Adv Top:Computer Architecture
Topics from computer architecture, network architecture, array and vector processors, memory hierarchies. May be repeated for credit with Instructor permission. Prerequisite: CS 222.
Credits: 3.00
CS 331 - Adv Tpcs Database&Knwldg Sys
Topics chosen from database design, knowledge based systems, object-oriented and relational systems, data models, knowledge representation. May be repeated for credit with Instructor permission. Prerequisite: CS 204, CS 224.
Credits: 3.00
CS 346 - Adv Top:Theory of Computation
Topics from complexity theory, analysis of algorithms, formal languages, combinatorial and geometric algorithms, and theory of databases, networks, distributed algorithms. May be repeated with Instructor permission. Prerequisite: CS 224, CS 243.
Credits: 3.00
CS 355 - Statistical Pattern Recongntn
Analysis of algorithms used for feature selection, density estimation, and pattern classification, including Bayes classifiers, maximum likelihood, nearest neighbors, kernels, discriminants, neural networks, and clustering. Prerequisites: Stat 241 or 251 or instructor permission. Crosslisted with STAT 355.
Credits: 3.00
CS 361 - Adv Topics:Systems Software
Topics chosen from operating systems, distributed or parallel software systems, real-time systems, experimental systems, software engineering. May be repeated for credit with Instructor permission. Prerequisite: CS 201, CS 222.
Credits: 3.00
CS 381 - Seminar
Presentations by students, faculty, and guest speakers on advanced topics in Computer Science. May be repeated up to three times for credit.
Credits: 1.00
CS 391 - Master's Thesis Research
Credits: 4.00
CS 392 - Master's Project
Prerequisite: Department permission.
Credits: 3.00
CS 394 - Independent Study
Independent readings and investigation under the direction of a faculty member. Prerequisite: Instructor permission.
Credits: 4.00
CS 395 - Special Topics
Subject will vary from year to year. May be repeated for credit. Prerequisite: Instructor permission.
Credits: 6.00
CS 491 - Doctoral Dissertation Research
Credit as arranged.
Credits: 6.00