|
CS |
5543 |
Software Engineering (3) |
| |
|
This course aims at producing
good practice in developing software and provides an
overview of how to do software engineering using an
object-oriented approach. The course assumes familiarity
with object-oriented programming. It focuses on the
appropriate processes, models and metrics in quality
software development.
Prerequisite:
CS 4446 or
CS 5547 |
|
CS |
5545 |
Computer Architecture (3) |
| |
|
Functional descriptions of the
major components of digital computer architectures are
explored, such as arithmetic and control units, memory
hierarchies, channels and characterizations and interactions
of individual major components of small and large computers.
Also included are minicomputer architectures, specialized
computer architectures, and distributed data processing
architectures.
Prerequisite: CS 3357, CS 3365 or CS 4445 |
|
CS |
5547 |
Systems Analysis and Design (3) |
| |
|
Introduction to information
systems devel-opment process. Systems analysis methods,
covering activities, tools, and techniques for requirements
gathering, modeling and specification. Systems design
methods, including activities, tools and techniques for
design, with an emphasis on architecture, rapid development
and prototyping, and detailed design. Introduces classical
approaches such as information engineering as well as
object-oriented analysis and design. (CS 4446 recommended) |
|
CS |
5549 |
Analysis of Algorithms (3) |
| |
|
This course discusses various
algorithms that solve searching, sorting, and cryptographic
problems. There are many candidate algorithms to solve such
problems. Tradeoffs involved when choosing an algoithm are
discussed. Sorting algorithms such as merge, insertion,
quick, and heap, search algorithms such as binary search
tree, red-black tree, hashing, and B-Trees are discussed.
Prerequisite: CS 3323 |
|
CS |
5550 |
Operating Systems Principles (3) |
| |
|
This course discusses what
operating systems are, what they do, how they are designed
and organized. Topics discussed include: process
management (scheduling, intercommunication, synchronization,
and deadlock handling), storage management (memory
management and virtual memory management). I/O systems
(hardware, interfaces, request-handling, performance
issues). Applications of these concepts in modern operating
systems such as Windows and Unix are presented.
Prerequisite: CS 3323 |
|
CS |
6625, |
Specialized Study in Computer Science (1-3) |
| |
6626,
6627 |
This course involves the study
of a problem or problems using research techniques.
Selection of a problem is to be approved by the student’s
advisor, instructor, college dean, and Dean of the Graduate
School. The study should contribute to a student’s program.
Preparation of a scholarly paper is required and may involve
an oral defense. Total credit for any combination of
enrollments in the specialized study courses may not exceed
three (3) semester hours. The course may not be substituted
for a required course.
See
semester hour limits listed under Course Restrictions in
General Regulations section. |
|
CS |
6640 |
Data Base Management Concepts (3) |
| |
|
This course discusses design
and implementtation issues associated with relational and
object-oriented databases. Topics include E-R modeling,
relational modeling, normal forms, data storage, and
concepts of object-oriented data modeling.
Prerequisite:
CS 3323
|
|
CS |
6641 |
Society and Information Systems (3) |
| |
|
A survey and analysis of
individual and societal attitudes, interactions, and
decision-making is provided concerning the design and
application of computers in information storage, retrieval
and processing. |
|
CS |
6643 |
Theory and Design of Compilers (3) |
| |
|
The formal properties of
grammars, lexical and syntactic analysis, macro generators,
and code selection are presented. Additional topics include
hardwire compilers, extensibility of languages, and
implementation of simple compilers.
Prerequisite: CS 3343 or 3370 |
|
CS |
6646 |
Information Systems for Operations and Management (3) |
| |
|
Conceptual and practical
foundations of information processing systems’ support
formanagement and decision-making functions are examined.
Computer system project management, economic and legal
considerations of management information systems, systems
implementation and evaluation are additional topic areas
covered in this course.
Prerequisite: CS 5547 |
|
CS |
6647 |
Simulation and Modeling (3) |
| |
|
The theory and design of
modeling problems, validation and verification of simulation
models for dynamic queuing and static Monte Carlo problems
are reviewed. Discrete event and continuous simulation
models are analyzed. Random number generation used in
simulation languages and the implementation of models on
computer hardware and software engineering using general
purpose and simulation languages re presented in this
course.
Prerequisite: CS 5547 |
|
CS |
6648 |
Operations Research (3) |
| |
|
A systems approach is explored
as it relates to using various algorithms to solve different
classes of managerial problems with a computer.
Prerequisite: CS 3325 or CS 5547 |
|
CS |
6649 |
Special Topics in CS (3) |
| |
|
A series of advanced topics in
areas of computer science is offered. The course details a
structured discussion of varied subjects to include
technological updates, a more intense study of topics
covered in other course offerings, and an introduction to
advanced concepts such as artificial intelligence, the
theory of computability, and formal languages.
Prerequisites: 12 semester hours of graduate credit |
|
CS |
6650 |
Distributed System Principles (3) |
| |
|
The invention of high-speed
computer networks make it possible to easily put together
computing systems composed of large numbers of computers
connected by a high-speed network called a Distributive
System. This course presents the terminology, concepts,
problems and implementations of such systems. Specific
Object-Based Distributive Systems like Corba and DCOM and
Java Remote Method Invocation (RMI) will be covered.
Prerequisite: CS 3323 or CS 5550 |
|
CS |
6651 |
Artificial Intelligence (3) |
| |
|
Intelligent agents,
problem-solving, search, knowledge representation and
reasoning, planning, and reasoning with uncertain knowledge.
Machine learning. Design and implementation of artificial
intelligence systems including expert systems, planning,
logic and constraint programming. |
|
CS |
6652 |
XML
Technology Principles (3) |
| |
|
This course discusses Extended
Markup Language (XML) technology. Topics discussed are XML
document creation, document rule definitions such as
document type definition (DTD and Schema), XML style
anguages (XSL and XSLT). Also XML applications and how
programming language can process documents are presented.
Prerequisite: CS 3323 |
|
CS |
6653 |
Topics in Software Security and Reliabil ity (3) |
| |
|
This course discusses Software
Quality, Fundamentals of Reliability and Rates of ailure,
Fundamentals of Data and Distribution, Reliability Testing,
Software Growth Models, Software Security and Safety
Fundamentals, Software Testing and Stopping Rules (Project
Topic I), System Reliability and Redundancy, and Integrated
and Internet Software System Reliability Security (Project
Topic II).
Prerequisite: Permission of the instructor |
|
CS |
6654 |
Topics in Software Engineering (3) |
| |
|
The course extends the topics
of the Software Engineering course in which the principles
of software development are covered. This course covers
advanced topics in software engineering, including software
architecture, design patterns, multi-media software,
embedded software engineering, and knowledge-based
approaches to software engineering. The course also includes
a number of case studies. Participants are to write a paper
on a topic in Software Engineering.
Prerequisite: CS 5547 |
|
CS |
6655 |
Digital Logic Design – Principles and Practices with
Emphasis on Testable Semicustom Circuits (3) |
| |
|
Combinational
circuit analysis including hazard detection; Number systems
and codes; Switching algebra; Combinational circuit design
including PLA and MSI techniques; IC logic families;
Flip-flop properties; Switching algebra: special properties
– symmetric functions, unate functions, threshold functions,
Boolean difference, functional decomposition; Introduction
to sequential circuits – sequential circuit analysis; Pulse
mode sequential circuits – state reduction, incompletely
specified machines, state assignment, series-parallel
decomposition; Fundamental mode sequential circuits – race,
hazards, state assignment; Testing aspects of digital
systems – failure and fault models, deterministic test
generation for combinational circuits, testing sequential
circuits, state identification, testing memories and complex
LSI/VLSI circuits, design for testability techniques: scan
techniques, built-in self-test (BIST), easily testable
network structures; Semicustom and MSI design; Special
sequential circuits including sequential integrated
circuits.
Prerequisite: CS 5545 |
|
CS |
6656 |
Design and Testing of Reliable Digital Systems (3) |
| |
|
Introduction to digital
circuits testing. Fault model and test generation for
combinational circuits – fault table, path sensitization,
ENF, SPOOF and Boolean difference methods. Fault detection
in sequential circuits – state identification sequences and
designing checking experiments for sequential ma chines.
Design for testability – readily diagnosable and
counter-cycle (CC) type sequential machines. Random testing
of digital combinational and sequential circuits –
continuous-parameter Markov model and error latency model.
Built-in self-test (BIST) in VLSI. Data compression in VLSI
BIST – concepts of space compression and time compression.
Aliasing probability. Fault signature analysis. Fault
simulation. Deterministic and pseudorandom test pattern
generator. FAN and PODEM. Scan path design. Functional
testing of LSI and VLSI circuits – testing microprocessors.
Testing of memory devices. Recent trends – embedded systems
and systems-on-chip (SOC) design and circuits. Fault
tolerance and reliability in modern digital design.
Prerequisite: CS 6655 |
|
CS |
6699 |
Research and Thesis (1-6) |
| |
|
Guided research in Computer
Science results in the preparation of a scholarly thesis.
The thesis includes a discussion of the research design and
methodology available to plan and conduct a systematic,
thorough, critical, interpretive and analytical research in
an area appropriate to the interest of the individual
student and consistent with the degree program. The course
requires students to prepare a thesis within guidelines
provided by the faculty member and to defend it before a
thesis committee. Prerequisites: Unconditional admission to
the Master of Science in Computer Science program and
completion of twenty-four (24) semester hours of course work |