M.S. in Applied Computer Science
Courses
Graduation requires 30 credit hours of approved graduate credit chosen with the guidance of a graduate advisor. Each student's program of studies will be planned on an individual basis to meet each student's individual needs.
Six of the 30 credit hours will consist of the following core courses:.
ACS 560 Software Engineering
ACS 562 Systems Analysis and Design
Course List
ACS 560 Software Engineering (Cr. 3)
Prereq: CS 260 (Data Structures) or equivalent
A survey of the state of the practice in developing large software systems. Presentation of life cycle models. Techniques for analysis, design, implementation, and testing with emphasis on reusability and team development. Use of metrics to estimate project cost and personnel requirements and to evaluate life cycle products. CASE tools for supporting life cycle activities. Students will be required to participate in a team project to modify a large system and write and present a paper on a selected software engineering topic.
ACS 562 Systems Analysis and Design (Cr. 3)
Prereq: ACS 560
In-depth study of requirements analysis and system design of computer-oriented systems. Emphasis on current techniques for documenting user's requirements and producing maintainable, cost-effective systems. Project includes developing requirements, specifications, and design of a software system. Students will present a semester-based project.
ACS 544 Performance Modeling and Evaluation of Computer Systems (Cr. 3)
Prereq: CS 543
Emphasis is placed on the development and study of models for client-server systems and communication networks and protocols. These models include Petri nets, other analytic models and discrete event simulation models. Actual systems will be modeled and performance predicted. Students will be expected to complete a major project using simulation models and a standard simulation language, network modeling package, or network protocol design tool.
ACS 564 Human-Computer Interaction (Cr. 3)
Prereq: ACS 562
A survey of human-computer interaction (HCI) concepts, theory, and practice including its interdisciplinary nature. Examination of human needs and capabilities as well as technological opportunities in the design of interactive systems. This course will provide an overview and introduction to the field of human-computer interaction. The course provides a systematic approach to human-computer design, including tools, techniques, and sources of knowledge. Students are expected to design and evaluate user interface designs in small projects.
ACS 565 Survey of Database Design (Cr. 3)
Prereq: CS 364 (Introduction to Database Systems) or equivalentCovers several emerging topics in the area of databases. These include database modeling, objected-oriented databases, distributed databases, client-server databases, knowledge databases, and theory of transactions management. Additional topics include database design principles, cyclic databases, dependencies, theory of query languages, query optimization, logic databases, transaction management, and discussion of selected research papers. Projects will involve Oracle and client/server database management systems.
ACS 566 The Strategic Role of Information Systems (Cr. 3)
Prereq: ACS 562
A study of information systems (IS) as part of the corporate strategy. Topics include: strategic planning, role of the chief information officer, value of the corporate information system, IS long range planning, managing MIS development, managing information technologies and resources, and information systems as a corporate competitive tool. Students complete case studies and an information systems strategic plan for their term project.
ACS 567 Software Project Management (Cr. 3)
Prereq: ACS 562
Consideration of managing the software development process and the implementation of information technologies. Advanced material in project planning, cost and time estimation, mechanisms for monitoring and controlling projects, quality assurance, change management, and leadership and team building. Other topics include: project tracking, managing multiple projects, data sharing, communicating plans, and transnational considerations in areas such as staffing and vendor support. Students apply project management software to case studies.
ACS 568 Object-Oriented System Development (Cr. 3)
Prereq: ACS 562
An examination of the concepts of object technology in a language independent fashion, illustrated with examples from specific programming languages. Teaches strategies and patterns for applying object-oriented methodologies to real world application. Emphasis is on object-oriented design and object-oriented programming.. Students are expected to complete large-scale programming and design projects through team programming.
ACS 574 Advanced Computer Networks (Cr. 3)
Prereq: ACS 274 (Data Communications) or equivalent
Introduction to communication networks, the Internet, circuit and packet switching, interfaces between computers and network hardware. Network architecture: OSI seven layer protocol stack, reliable delivery over unreliable channels, transport protocols, datagrams, virtual circuits, internetworking as a fundamental design concept. Network management concepts, client server principles and paradigms, addressing and address resolution algorithms, and remote procedure calls.
ACS 582 Expert Systems (Cr. 3)
Prereq: ACS 560
The design and implementation of expert systems. Knowledge representation, organization, and architecture of knowledge based systems, reasoning with uncertain and incomplete information, justification and explanation, production systems, rule based programming, knowledge acquisition and knowledge engineering, historical overview and recent applications of expert systems, and languages and tools for building expert systems. Students will complete programming assignments with an expert system development tool.
CS 514 Numerical Analysis (Cr. 3)
Prereq: CS 384 (undergraduate Numerical Analysis)
Iterative methods for solving nonlinear equations; linear difference equations; applications to solution of polynomial equations; differentiation and integration formulas; numerical solution of ordinary differential equations; roundoff error bounds.
CS 520 Computational Methods in Analysis (Cr. 3)
Prereq: CS 160 (Introduction to Computer Science I) and MA 351 (Elementary Linear Algebra) or MA 511 (Linear Algebra with Applications)
A treatment of numerical algorithms for solving classical problems in real analysis, with primary emphasis on linear and non-linear systems of equations and on optimization problems; the writing, testing, and comparison of numerical software for solving such problems; the characteristics of quality software for implementing these algorithms.
CS 543 Introduction to Simulation and Modeling of Computer Systems (Cr. 3)
Prereq: CS 160 (Introduction to Computer Science I) and STAT 511
(Statistical Methods)
Simulation: discrete event simulation, process oriented simulation, generating random numbers, simulation languages, simulation examples of complex systems. Nondeterministic models: random variables, Poisson processes, moment generating functions, statistical inference and data analysis. Modeling: elementary queuing models, networks of queues, applications to performance evaluation of computer systems.
CS 572 Heuristic Problem Solving (Cr. 3)
Prereq: ACS 562
Design and development of heuristic problem-solving systems. The emphasis is on the development of general data representations, heuristics and problem solving strategies to wide classes of problems, including game playing, theorem proving, pattern recognition, semantic information processing, and integrated artificial intelligence systems.
CS 580 Algorithm Design, Analysis, and Implementation (Cr. 3)
Prereq: CS 486 (Analysis of Algorithms)
Basic techniques for designing and analyzing algorithms, dynamic programming, divide and conquer, balancing. Upper and lower bounds on time and space costs, worst case and expected cost measures. A selection of applications such as disjoint set union/find, graph algorithms, search trees, pattern matching. The polynomial complexity classes P, NP, and co-NP; intractable problems.
CS 590 Topics in Computer Sciences (Cr. 1-5)
Prereq: Permission of instructor
Directed study for students who wish to undertake individual reading and study on approved topics. Also occasionally offered as a regular course on special topics.
