banner
Undergraduates Graduates Faculty AlumniDonations

Graduate Course Descriptions

 

Course NumberDescription# of CreditsDescription
618Simulation Models3Fundamental techniques involved in using a computer to simulate business, social, and industrial systems. Includes principles of random variate generation, statistical sampling, and design of experiments. Prereq: Stat 367.
626Introduction to Artificial Intelligence3Introduction to artificial intelligence. Basic AI languages, concepts, and techniques. Prereq: CSci 372.
653Linear Programming and Network Flows3Linear programming models and applications; primal and dual formulations; computational procedures; introduction to networks, maximum flow, and shortest path problems. Prereq: Math 265.
654Operations Research3Deterministic and probabilistic models of operations research: networks and project management, dynamic programming, nonlinear programming, inventory, queuing, reliability, stochastic processes, and simulation. Prereq: CSci 453/653, Stat 367.
658Microcomputer Graphics3Information on the techniques by which computers generate images of 2D and 3D objects. Principles to guide the use of computer graphics to enhance human-computer interaction. Prereq: CSci 372, and Math 146 or 165.
659Foundations of Networks3LANs interconnect modern computer work groups. LAN architecture, applications, implementations, protocols, management, security, external connections, and future directions are examined. Prereq: CSci 214, 474.
660Dynamic Programming3Basic principles and algorithms of dynamic programming as applied to sequential decision problems in CS and OR. Prereq: Math 166.
667Algorithm Analysis3Design, correctness, and analysis of algorithms and data structures. Prereq: Math 166; and CSci 161, 222.
668Database Systems Design3Overview of the maintenance and manipulation of databases. Includes a large project in C++. Prereq: CSci 366.
669Network Security3This course introduces cryptography and its application to network and system security.  Topics include symmetric encryption, public key cryptography, email security, IP security, web security, network management security, intrusion detection, firewalls, etc.  Prereq: CSci 459 or equivalent, programming in C, C++, or Java.
676Computer Forensics3This course is intended to acquaint the students with principles, tools, and practical skills necessary to perform investigations of incidents in which computers play a significant or interesting role.  Prereq: CSci 474 or consent of the instructor.
677Object-Oriented Systems3Introduction to the concepts and advantages of object-oriented computer systems. Introduces exercises with at least one such language. Prereq: CSci 372.
679Introduction to Data Mining3Data mining versus query processing, data mining examples, introduction to the basic techniques in association rule mining, classification, clustering, data warehousing and online analytic processing.  Application areas may include bioinformatics, homeland and network security, web searching, market basket research, and image and video analysis.  Prereq: CSci 366.
688Human-Computer Interaction3Survey of the methodologies and alternatives used in developing and evaluating human-computer interfaces. Prereq: CSci 372. Cross-listed with Psyc.
689Social Implications of Computers3Presentation and discussion of several ethical and social issues that have arisen from the introduction of the computer, including copy-protected software and liability for computer software errors. Prereq: CSci 372.
702Performance Evaluation3Examination of basic techniques used to evaluate multi-programming systems. Both queuing models and other analytical approaches are constructed with simulation and direct measurements of actual systems. Prereq: CSci 475.
708Foundations of Programming3Introduction to formalisms, in which computer programs are considered as mathematical objects, including weakest precondition and predicate calculus. Prereq: CSci 236.
713Software Development Processes3This course is designed as a breadth course on the software engineering process. Basic concepts are reviewed and reassured to create a basis for higher concepts and techniques. Prereq: graduate standing.
714Software Project Planning and Estimation3This course is designed to introduce the student to the concepts and techniques of how to plan for a software project. This includes time and effort estimation, planning and teaming the project, and managing the development activities. Prereq: CSci 713.
715 Software Requirements Definition and Analysis3This course is designed to make the student able to identify and capture requirements for a software system and be able to document and assess the requirements. Prereq: CSci 713.
716 Software Design3This course covers both architectural design and module design. Students receive practice using a set of design patterns to produce software designs with several different types of architecture. Substantial presentation and practice with the UML modeling language is provided. Prereq: CSci 713.
717Software Construction3This course covers the fundamentals of software construction including programming and evaluation of the source code. Students receive a good grounding in and extensive practice with the comprehensive libraries associated with a modern programming language. Prereq: CSci 713.
718Software Testing and Debugging3This course covers the goals, practices, evaluation and limitations of software testing and software debugging.  Students receive practice in developing and using test plans and various testing and debugging techniques.  Prereq:  CSci 713.
722Compiler Construction3Design and structure of complex grammars, lexical analysis, parsers, semantic data structures, and code generating and optimization. Construction of a simple compiler. Prereq: CSci 372 or graduate standing.
724Survey of Artificial Intelligence3Survey of major areas of AI, including theorem proving, heuristic search, problem solving, computer analysis of scenes, robotics, natural language understanding, and knowledge-based systems. Prereq: CSci 372 or graduate standing.
728Computer Graphics3Principles and algorithms used in computer graphics packages. Emphasis on raster graphics, clipping, hidden-surface elimination, ray-tracing, and radiosity. Prereq: Graduate standing.
730Office Information Systems3 Exploration of the evolution of the office since the introduction of the computer. Examination of the introduction of computers, word processors, database management systems, networks, and AI into the office. Prereq: CSci 160 or graduate standing.
732Introduction to Bioinformatics3An introduction to the principles of bioinformatics, including statistical techniques for the analysis of one or more gene sequences, and computational techniques for knowledge discovery from biological data.  Prereq: Graduate standing.
734Expert Systems3Examination of types of expert systems, their powers and limitations. Students write their own expert system. Prereq: CSci 724.
735Neural Networks3Introduction to the parallel processing paradigms that have been developed recently, including neuronetworks and genetic algorithms. Students will work on projects using these tools. Prereq: CSci 724. Cross-listed with Psyc.
737System Simulation3Systems, models, discrete event simulation models, queuing systems, fundamental statistics of simulation. Prereq: CSci 653, Math 166.
741Algorithm Analysis3Algorithm design and analysis, asymptotic analysis, worst and average case, recurrences, generating functions, divide-and-conquer, the greedy method, search and traversal, backtracking, branch-and-bound. Prereq: CSci 161, Math 166.
742Algorithms and Complexity3Linear and nonlinear recurrences, algebraic problems, fast Fourier transforms, lower bound theory, computational geometry, the classes P and NP, NP--completeness, Cook's theorem, NP-hard problems. Prereq: CSci 741.
745Formal Methods for Software Development3This course is a high level course with the aim of formal representation to be able to formally assess characteristics of software. The formal representations are based on the theoretical foundations of computer sciences such as set theory, logic, and graph theory. Prereq: CSci 713.
746Development of Distributed Systems3This course is an advanced course in software engineering aiming at strategies and solutions of distributed systems. It assumes the knowledge of software engineering and particularly the design and implementation of software systems, then builds on these concepts to discuss how distributed systems designed and implemented. Prereq: CSci 713.
747Software Complexity Metrics3This course covers complexity metrics for the entire software lifecycle.  Students gain experience in using requirements metrics, design metrics, program metrics, test metrics, and planning metrics.  The effectiveness and limitations of metrics in all these areas is emphasized.  Prereq:  CSci 713 and CSci 718.
751Nonlinear Optimization I3Convex sets, convex functions and extensions, one-dimensional optimization, theory and algorithms for constrained and unconstrained nonlinear programs, optimization without derivatives. Prereq: CSci 653.
752Nonlinear Optimization II3Convergence, rates, primal and dual methods of constraining optimizations of large-scale programs, linear complementarity, quadratic programs, computational complexity, minimax problems. Prereq: CSci 751.
760Dynamic Programming3Dynamic programming as an algorithm design method, formulating and solving problems using dynamic programming, deterministic and stochastic problems in OR and CS. Prereq: Math 166.
761Integer Programming3Integer linear programs and modeling, theory and algorithms, duality and relaxation, cutting plane and branch-and-bound methods, combinational problems, total unimodularity, matching and matroids. Prereq: CSci 653.
762Network Flows3Theory and algorithms for network flow optimization including network representation data structures, basic change methods, maximum flow, shortest path, minimum cost problems, and generalized networks. Prereq: CSci 653.
765Introduction to Database Systems3Basic database concepts, models, management facilities, data structures, storage structures, data definition languages, data manipulation languages, normalization, operator implementation algorithms, transactions, correctness, reliability, distribution, performance analysis. Prereq: CSci 366 or graduate standing.
766Database System Internals3Transaction management, processing, correctness, recoverability, serializability (conflict and view), concurrency control(2PL, BTO, SGT, multiversion), recovery, distributed systems (correctness, recovery, replication), query processing and optimization. Prereq: CSci 765.
773Foundations of the Digital Enterprise3The course covers current and emerging electronic digital technologies, including web development, security, server management, and privacy. Prereq. CSci 372 or consent of instructor.
773Topics of the Digital Enterprise3Topics in database, networks, cryptology, security, and software engineering as they apply to the digital enterprise. Prereq. CSci 315 and CSci 773.
778Computer Networks3Examination of computer networks using the ISO-OSI model as a framework. Practical and theoretical issues are explored in modems, codes, error, impairments, modulation, protocols, and interfaces. Prereq: CSci 474 or graduate standing.
779Advanced Data Mining3Topics include association rule mining, classification and clustering.  Applications to such areas as bioinformatics, homeland and network security, web searching, market basket research, and image and video analysis will be included.  Prereq: CSci 765 or departmental approval.
783Topics in Software Systems3Includes an area of computer science not otherwise treated in computer science courses. Varies each time offered. May be repeated. Prereq: Graduate standing or departmental approval.
785Topics in Computer Architecture3Includes an area of computer architecture not considered in other courses. Varies each time offered. May be repeated. Prereq: Graduate standing or departmental approval.
787Topics in Operations Research3Includes an area of operational research not considered in other courses. Varies each time offered. May be repeated. Prereq: Graduate standing or departmental approval.
789Topics in Theoretical Computer Science3Includes an area of theoretical computer science not considered in other courses. Varies each time offered. May be repeated. Prereq: Graduate standing or departmental approval.

 

 

The following variable credit courses also are offered:


Course NumberDescription# of Credits
790Graduate Seminar1-3
793Individual Study/Tutorial1-5
696/796Special Topics1-5
797Master's Paper1-3
798Master's Thesis1-10
799Doctoral Dissertation1-15

   
June 13, 2011