Graduate Course Descriptions
Computer Science (CSC)
CSC 5300 Advanced Data Structures
and Algorithms 3(3-0)
An introduction to design and implementation of advanced data
structures and their use in program applications.
This is a Specialization in Programming and Information Systems for the MSCS
CSC 5301 Advanced
Database Systems and Data Warehousing 3(3-0)
Pre-requisites: CSC
3326
Covers advanced issues in database design,
including distributed and object-oriented
databases, database optimization, etc. Significant
focus will be placed on data warehousing,
including case study analysis and project
design.
This is a Core Course in the MSCS
This is a Specialization in Programming and Information Systems for the MSCS
This is an Elective Course in the MSSE, MSCN
CSC 5302 Software
Engineering 3(3-0)
Using class projects, this course introduces
the student to techniques used in the software
development life-cycle.
This is a Specialization in Programming and Information Systems for the MSCS
CSC 5303 Advanced
Computer Graphics 3(3-0)
Provides an introduction to 3D viewing and
projections, image synthesis and representation
of 3D shapes.
This is a Specialization in Programming and Information Systems for the MSCS
CSC 5304 Advanced
Operating Systems 3(3-0)
Pre-requisite: CSC3351
An introduction to the basic functions of
an operating system, its internal design
and policies for resource management in parallel
and distributed environments, including the
topics of synchronization, resource allocation,
selection communication, deadlock detection
and termination.
This is a Core Course in the MSCS
This is a Specialization in Programming and Information Systems for the MSCS
This is an Elective Course in the MSSE, MSCN
CSC 5305 Programming
Languages and their Compilers 3(3-0)
An introduction to techniques for implementing
a language compiler along with the internal
structure and functionality.
This is a Core Course in the MSCS
This is a Specialization in Programming and Information Systems for the MSCS
This is an Elective Course in the MSSE, MSCN
CSC 5306 Object-Oriented
Analysis and Design 3(3-0)
This course is an exploration of the object-oriented
analysis and design concepts. Object-Oriented
Analysis and Design Using the Unified Modeling
Language (UML) presents the concepts and
techniques necessary to effectively use system
requirements captured using use cases to
drive the development of a robust design
model. In this course, students learn to
apply the UML to fundamental object-oriented
analysis and design concepts including objects,
classes components, relationships, and all
supporting diagrams: use case diagrams, interaction
diagrams, class diagrams, component diagrams,
ETC. Students learn a process such as Rational
Unified Process and gain hands-on experience
with a CASE tool such as Rational Rose.
This is a Specialization in Programming and Information Systems for the MSCS
This is a Concentration Course in the MSSE
This is a Concentration in Software Engineering for the MSSEMS
CSC 5307 Research
Seminar in Programming and Information Systems
3(3-0)
Presents and discusses the latest results
in the area of programming and information
systems. Students may repeat the seminar
for credit.
This is a Specialization in Programming and Information Systems for the MSCS
CSC 5308 Expertise
Seminar in Programming and Information Systems
3(3-0)
Students discuss topical issues in the design
and implementation of programming and information
system. May be repeated for credit.
This is a Specialization in Programming and Information Systems for the MSCS
CSC 5309 Artificial
Intelligence 3(3-0)
Provides an introduction to advanced techniques
for the programming of intelligent systems
and problem-solving techniques. Topics covered
include: knowledge representation, propositional
and predicate logic, expert systems, search
and machine learning.
This is a Core Course in the MSCS
This is a Specialization in Intelligent Systems for the MSCS
This is an Elective Course in the MSSE, MSCN
CSC 5310 Knowledge-Based
Systems 3(3-0)
Students are introduced to rule-based programming,
control and inference strategies, knowledge
representation and acquisition techniques
of knowledge- based systems.
This is a Specialization in Intelligent Systems for the MSCS
This is an Elective Course in the MSSE, MSCN
CSC 5311 Computer
Vision 3(3-0)
Fundamental concepts of Machine Vision,
covering topics as diverse as edge detection,
perceptual grouping, Hough transforms, segmentation,
texture, stereopsis, shape from texture,
shape from shading, correspondence, motion
and structure from motion, optical flow,
surface representation, 3D representation,
and 3D scene labeling. The course also makes
references to the Human Visual System.
This is a Specialization in Intelligent Systems for the MSCS
CSC 5312 Robotics
3(3-0)
Engineering concepts underlying the design
of intelligent robots - such as sensors and
actuators, planning, control systems and
architectures - within the framework of perception,
cognition and execution. It explores the
topics of reasoning, fuzzy logic, rule-based
systems, control and computer vision, and
positioning in relation to autonomous vehicles.
This is a Specialization in Intelligent Systems for the MSCS
CSC 5313 Research
Seminar in Intelligent Systems 3(3-0)
Presents and discusses the latest results
in the area of intelligent systems. Students
may repeat the seminar for credit.
This is a Specialization in Intelligent Systems for the MSCS
CSC 5314 Expertise
Seminar in Intelligent Systems 3(3-0)
Students discuss topical issues in the design
and implementation of intelligent systems.
This seminar may be repeated for credit.
This is a Specialization in Intelligent Systems for the MSCS
CSC 5315 Theory
of Computation 3(3-0)
Emphasizes computation theory and abstract
complexity. Other topics covered include:
characterization of recursive and recursively
enumerable functions; the Turing machine
model, godel numbers, diagonalization, Church's
Thesis, s-m-n theorem, reducibilities, complete
sets, incomplete sets, recursion theorem;
and fundamental complexity classes in the
polynomial hierarchy.
CSC 5316 Design
and Analysis of Algorithms 3(3-0)
Students study concrete algorithm design
and analysis, abstract models to analyze
the complexity of problems, approximation
and probabilistic algorithms.
This is a Core Course in the MSCS
CSC 5317 Advanced
Algorithms 3(3-0)
The design and analysis of advanced algorithms
for graph problems, computational geometry
problems, linear and integer programming
problems, number theory problems, etc. Content
may vary from one semester to another.
CSC 5318 Research
Seminar in Theory of Computation 3(3-0)
Presents and discusses the latest results
in the area of theory of computation. Topics
will vary, e.g., Cryptanalysis; Computational
Logic. Students may repeat this seminar for
credit with permission of the Advisor.
CSC 5332 Multimedia
Communications 3(3-0)
Pre-requisite: CSC5366 TCP/
IP Networks or Instructor approval
This course covers media data types, packet-based
multimedia communication systems, the so-called
real-time support, multicast routing support
for interactive Multimedia, audio/video coding
and compression. It also covers middleware:
transport protocols (RTP), the important
concept of application layer framing, multimedia
session creation (SIP), advertisement, invitation,
reservation protocols (RSVP) and so on. Finally,
the course covers applications, and application
support (audio, video, shared authoring/viewing
of documents and so on). Various standards
such as H.323, MPEG will be presented.
This is a Specialization in Programming and Information Systems for the MSCS
This is an Elective Course in the MSSE, MSCN
CSC 5333 Thesis
3(3-0)
Pre-requisite : Approval of Graduate Advisor
Students pursuing the academic program must
register for this course for two consecutive
semesters.
CSC 5336 Parallel
Processing Concepts 3(3-0)
Classification of computers. The Von Neumann
architecture. Parallel architectures: multiprocessors,
vector processors, array processors; interconnection
networks. Routing strategies. Switching methodologies.
Partitioning. Embedding. Load balancing.
Survey of current parallel machines.
CSC 5337 Parallel
Algorithms 3(3-0)
Design, analysis and proof of algorithms
for parallel environments, from vector machines
to massively parallel computers. Problems
considered are those from sequential algorithms
courses.
CSC 5338 Human-Computer
Interaction 3(3-0)
Addresses software development for state-of-the-art
interactive computing systems. Covers tools,
techniques and sources of information about
HCI. Specific approaches include visual design
(color, shape and space) and psychological
aspects (perception, cognition and problem-solving).
Relies on use of prototyping tools to construct
usable interfaces and usability testing of
interactive prototypes.
This is a Specialization in Programming and Information Systems for the MSCS
This is an Elective Course in the MSSE, MSCN
CSC 5339 Real-Time
Systems 3(3-0)
Pre-requisite: CSC
3351
Covers specifics of systems driven by or
dependent on direct human interaction: embedded
systems, control systems, Virtual Reality
systems, etc. Addresses issues of reliability,
safety, and fault tolerance, real-time scheduling
theory and software architectures. Also looks
at operating system support for real-time
applications such as multimedia.
This is a Specialization in Programming and Information Systems for the MSCS
This is an Elective Course in the MSSE, MSCN
CSC 5340 Information
Retrieval Systems 3(3-0)
Information organization and retrieval of
natural language data by digital computer
systems. Searching strategies. Current indexing
and retrieval practice. Retrieval evaluation.
Query processing. File structure. File clustering.
This is a Specialization in Programming and Information Systems for the MSCS
CSC 5343 Final
Project 3(3-0)
Pre-requisite: Approval of Graduate Adviser
Students pursuing the professional program
must register for and complete this course.
CSC 5345 Data
Mining 3(3-0)
Covers the most popular machine learning
techniques used for "mining" knowledge
that lies buried in an information system,
including neural networks, decision trees,
genetic algorithms and fuzzy logic. Shows
how these tools can be applied for making
better decisions. Discusses case studies
that provide good models for such applications.
This is a Specialization in Programming and Information Systems for the MSCS
This is a Specialization in Intelligent Systems for the MSCS
This is an Elective Course in the MSSE, MSCN
CSC 5346 Software
Agents 3(3-0)
Analyzes the design issues confronting software
engineers as they define and develop softwarethat
will be housed in computer networks of the
future. Introduces the concept of a program
whose multiple copies provide one or more
services to a user, and may perform the same
tasks differently, depending upon the specific
needs of the master it is serving. Covers
the state-of-the-art in agent technology
with example applications.
This is a Specialization in Programming and Information Systems for the MSCS
This is a Specialization in Intelligent Systems for the MSCS
This is an Elective Course in the MSSE, MSCN
CSC 5350 Digital
Image Processing 3(3-0)
Digital Image Processing - perception, representation,
transforms, enhancement, restoration, and
coding. Subject matters covered include image
perception and formation in the eye, image
acquisition and display devices, image sampling
and quantisation, image transforms, histogram
manipulation, smoothing, feature enhancing,
degradation models, inverse filtering, selective
filtering, segmentation, edge detection,
image data compression, motion compensation,
vector quantisation, and coding standards.
The course will introduce the subject from
the familiar bases of conventional television
and Human Visual system. The necessary mathematical
tools are also covered.
This is a Specialization in Intelligent Systems for the MSCS
CSC 5351 Computational
Neural Networks 3(3-0)
Computational neural networks (CNN's) in
the context of parallel distributed processing.
It defines biological, physical, and different
mathematical models for CNN's, compares these
models, and investigates the relationship
between neural network learning and symbolic
learning methods. Consideration is given
to the relevance of these different issues
when< CNN's are applied to problem-solving.
This is a Specialization in Intelligent Systems for the MSCS
CSC 5352 Fuzzy
Sets and Systems 3(3-0)
Introduces the basic concept of fuzziness
and the underlying theory. Fuzzy sets, fuzzy
logic and fuzzy numbers, fuzzy operations,
fuzzy relationships, and extension principle.
The application of these concepts to engineering
and technology are emphasized, including
fuzzy rule-based systems, fuzzy decision-making,
fuzzy pattern recognition and fuzzy control.
This is a Specialization in Intelligent Systems for the MSCS
CSC 5353 Pattern
Recognition 3(3-0)
Introduction to machine recognition of meaningful
regularities and structure in noisy or complex
environments. Bayes decision theory, parametric
and non-parametric techniques for supervised
learning, discriminant functions, feature
extraction, cluster analysis and performance
estimation. Applications of Fuzzy Sets and
Neural Networks to pattern recognition.
This is a Specialization in Intelligent Systems for the MSCS
CSC 5361 Software
Architecture 3(3-0)
This course explores in detail the various
software architectures, namely client/server
architectures, n-tiered architectures, object-oriented
and Component-based and CORBA architectures,
database applications architectures. The
course also covers middleware such as transaction
monitors, and web applications architecture.
Real case studies are used to illustrate
the various concepts. An integral part of
the course is the achievement of a class
project involving implementation using leading
products such as Oracle Applications Server,
Sun's EJBs, BEA'sWeblogic, MicroSoft's
DCOM and OCX.
This is a Specialization in Programming and Information Systems for the MSCS
This is a Concentration Course in the MSSE
This is an Elective Course in the MSCN
This is a Concentration in Software Engineering for the MSSEMS
CSC 5364 Project
and Quality Management 3(3-0)
Covers basics of project management and
quality management in software projects.
Activity planning, cost and time estimation,
relating quality/complexity/productivity,
techniques or estimating and measuring: time,
cost, risk, profitability. Technical, financial
and economic factors to be considered (based
on Merise method). Project control: objectives,
risks, principles, responsibility, relations,
(based on Merise methods). Human aspects:
interpersonal relations, management style,
organization of project teams, motivation,
links with clients, etc. Formal definition
of a quality measure. Importance of quality
measurement throughout the program> development
cycle. Internal and external quality metrics.
Specialized measurement techniques and related
tools. Identification of quality factors:
specifications, processes, products, resources,
program support. Quality planning, objectives
and resources. Tools for managing the planning
of quality, obtaining measurements and interpreting
data. Verification and evaluation of results.
Evaluation of quality programs.
This is a Specialization in Programming and Information Systems for the MSCS
This is a Concentration Course in the MSSE
This is an Elective Course in the MSCN
This is a Concentration in Software Engineering for the MSSEMS
CSC 5365 Advanced
Computer Networks 3(3-0)
Pre-requisites: CSC
3352 and CSC
3353
Includes thorough coverage of wired LANs
(CSMA/CD, Token Ring, Token bus, Switched
Ethernet, Fast Ethernet, FDDI, Giabit Ethernet
and ATM), wireless LANs, packet-switched
WANs (X25, Frame Relay, ATM), circuit-switched
WANs (ISDN) and internetworking. Design issues.
Also covers wireless communications.
This is a Core Course in the MSCS
This is a Specialization in Programming and Information Systems for the MSCS
This is an Elective Course in the MSSE
This is a Concentration Course in the MSCN
CSC 5366 TCP/IP
Networks 3(3-0)
Pre-requisites: CSC
3352 and CSC
3353
Gives detailed account of the TCP / IP suite
of protocols, multicasting architecture,
routing protocols, Internetworknig with TCP
/ IP Network Management and Ipv6.
This is a Specialization in Programming and Information Systems for the MSCS
This is an Elective Course in the MSSE
This is a Concentration Course in the MSCN
CSC 5367 Internet
and Security 3(3-0)
Pre-requisites: CSC
3351 and CSC
3353
Covers most application-level protocols
used in the Internet (e.g., DNS, HTTP, SMTP,
SNMP, POP3 IMAP) and gives a detailed account
of related security issues, together with
cryptography and its usage in the internet,
firewall technology, packet filtering, etc.
This is a Concentration Course in the MSCN
CSC 5368 Wireless
Digital Communication and Networks 3(3-0)
Pre-requisite: CSC
5365
In this first half, this course introduces
the students to the principles of wireless
cellular communications systems, radio propagation
issues, channel coding, spread spectrum,
and multiple access techniques. Standards
such as IS-54, AMPS, GSM, IS-95, GPRS, and
UMTS are presented. In its second half, this
course addresses computing issues related
to data services offered by wireless access
networks such as Protocol Stacks, Mobility,
Routing, Seamless Communications, Resource
Reservation Protocols, Connection Admission
Control, QoS management, and Wireless Application
Protocols.
This is a Concentration Course in the MSCN
CSC 5370 Advanced
Topics in Software Engineering 3(3-0)
This Course will include specific advanced
topics that reflect current issues of market
or reseach interest. It will focus on application
of a specific technology or a set of techniques,
and will require implementation and illustration
of mastery of the subject area and its context.
This is a Concentration Course in the MSSE
This is a Concentration in Software Engineering for the MSSEMS
CSC 5371 Geographical
Information Systems Concepts, Techniques
and Tools 3(3-0)
Pre-requisites: CSC
3325, CSC
3326
Students will learn where GIS fits in the
world of Information Systems, how it is unique
and important. They will know the issues
involved in choosing a GIS package, obtaining
and evaluating data, and implementing a small
GIS project with GeoConcept, a powerful and
popular desktop GIS pack software.
CSC 5375 Broadband
Networks 3 (3-0)
Pre-requisite CSC
3353, and recommended CSC
5365 and CSC
5366
Broadband networks employ a wide variety
of technologies to support integrated multimedia
applications (data, voice, audio, image,
video) at multi-megabit/second access rates.
Broadband networks comprise LAN, MAN, WAN,
and access networks. In particular, the evolution
of the Internet to a broadband network with
a wired/wireless access is most important.
This course, after a review of the two broadband
WAN technologies (FR, ATM), consists of three
parts. Part 1 covers the emerging broadband
and QoS aspects of the Internet. Part 2 focuses
on broadband access/transmission solutions.
Part 3 deals with voice/video/image encoding
for broadband applications.
This is a Concentration Course in the MSCN
|