Undergraduate Courses
CSC 114 Introduction
to Computer Science Credit, 3 sem. hrs.
An introduction to information
processing. Topics to be covered include
computer history, input/output,
processing, data storage, application and
system software, and the
impact of computers on society. Hands-on
experience with DOS, wordprocessing,
spreadsheet and database software, the
Internet and a graphical
user environment.
Course
Website
CSC 115 Foundations
of Computer Science Credit, 3 sem. hr.
Three hours of lecture per week. The
class will meet some of these times in the computer
laboratory. This
course
is designed to introduce the student with no prior programming
experience to the fundamentals necessary to study the science ot
computing. Topics include history of computing, computing as a tool and
discipline, machine level data representation, algorithms and problem
solving, fundamental programming constructs and software
design
methodology, fundamental data structures,
operating systems,
net-centric computing, human-computer interaction, artificial
intelligence, simulation, and social issues in computing.
Course
Website
CSC 116 Intro.
to Programming and Problem Solving Credit, 4 sem. hrs.
Three hours of lecture and
three hours of laboratory per week. This course is
designed as an introduction
to programming and problem solving. Topics to
be included are the abstractions
necessary for the program development
process, design methodology,
control structures, looping, procedures, interface
design, functions, simple
data types, aggregate data structures and objects.
Course
Website
CSC 216 Data
Structures
Credit, 4 sem. hrs.
Prerequisite: CSC 116
Three hours of lecture and
three hours of laboratory per week. An
introduction to the basic
concepts of data structures from a practical
standpoint with an emphasis
on the use of some of the abstractions necessary
for structured program development.
Topics include software development
tools, top-down design,
algorithm analysis, encapsulation, and methods of
implementation as well as
the common data structures stacks, queues, lists,
and trees. Sorting and searching
techniques employing these data structures
will also be examined.
Course
Website
CSC 220 C/C++
Language
Programming Credit, 3 sem. hrs.
Prerequisites: CSC 116,
or instructor's consent
Astudy of the syntax and
features of the C and C++ programming languages.
Course
Website
CSC 231, 232, 233 Selected
Language Programming Credit, 1, 2, or 3 sem. hrs.
Respectively
Prerequisites: CSC 220 or
instructor's consent
Astudy of the syntax and
features of a selected special purpose language such
as LISP, Prolog, Ada, Pascal,
Fortran, Assembly, BASIC or COBOL. Other
languages may be included
as needed. May be repeated for credit if a
different language is offered.
Course
Website
CSC 300 Fundamentals
of Computer Science for Educators Credit, 3 sem. hrs.
Prerequisite: CSC 216
Astudy of the methodology
and concepts involved in computer education in
the secondary schools. Topics
included will be computer curriculum and
computer laboratory techniques,
course authoring, language survey,
multimedia, and classroom
networking.
Course
Website
CSC 302Internet
and WWW Basics Credit, 3 sem. hrs.
Prerequisite: CSC 114
This course is intended
for the general university audience and will cover
basic Internet concepts
such as telnet, ftp, and newgroups as well as World
Wide Web concepts such as
searching and authoring. The social and ethical
impact of the Internet will
also be examined. This course cannot be applied to
the requirements for the
major in Computer Science or Computing and
Information Systems, but
may be taken as part of the minor in Computer
Science or as general elective
credit.
Course
Website
CSC 309Discrete
Structures Credit, 3 sem. hrs.
Prerequisite: CSC 216, MAT
122
Concepts of algorithms,
induction, recursion, proofs, topics from logic, set
theory, combinatorics, graph
theory, and automata theory fundamental to the
study of computer science.
Course
Website
CSC 310 File and
Systems Software Credit, 3 sem. hrs.
Prerequisite: CSC 216
Astudy of file and data
storage techniques and the operating systems
software necessary to support
such file systems. Topics include operating
systems, I/O, memory management,
indexing, hashing, buffering, and
specialized file management
techniques for database systems.
Course
Website
CSC 314 Computer
Organization Credit, 4 sem. hrs.
Prerequisites: CSC 216 and
CSC 220
Three hours of lecture and
three hours of laboratory per week. Computer
system organization; internal
organization and operation of digital computers;
some systems software. Aworking
knowledge of the C programming
language is assumed.
Course
Website
CSC 320 Systems
Analysis and Design Credit, 3 sem. hrs.
Prerequisite: instructor's
consent
Physical and logical design
of an operational computer system. The processes
of planning for control,
implementation, change, analysis, and review of
existing systems from a
technological as well as managerial standpoint will be
covered.
Course
Website
CSC 330 Social
& Ethical Issues in Computing Credit, 1 sem. hr.
Prerequisite: Junior standing
Astudy of the major social
and ethical issues in computer science, a brief
history of computer science,
the impact of computers on society, and
professional computer ethics.
Course
Website
CSC 387, 388 , 389, and
380 Internship Credit, 1, 2, 3, or 6
sem. hrs.
See Internships section
of the Undergraduate Catalog.
Course
Website
CSC
381 Introduction to Numerical Methods Credit,
3 sem. hrs.
Prerequisites: MAT 122 and
CSC 116
This course looks into the
modeling of mathematical concepts on a computer.
Algorithms will be discussed
and implemented which find roots of equations,
give polynomial approximations
to discrete data, approximate integrals and
derivatives, solve ordinary
differential equations and solve linear systems of
equations. Cross-listed
as MAT 381.
Course
Website
CSC 402 Advanced
Data Structures Credit, 3 sem. hrs.
Prerequisite: CSC 216
Astudy of data structures
and algorithms designed for their implementation.
Lists, arrays, stacks, deques,
queues, graphs, trees and tree structures, and
various search and sorting
techniques will be covered.
Course
Website
CSC 404 Programming
Language Structures Credit, 3 sem. hrs.
Prerequisite: CSC 216
Introduction to the principles
of programming language design and
implementation, syntax,
data types, scope, data abstractions, concurrency and
Object-Oriented Programming.
Course
Website
CSC 405 Introduction
to Operations Research Credit, 3 sem. hrs.
This course is the cross-listed
as MAT 405.
Course
Website
CSC 415 Data Base
Management Systems Credit, 3 sem. hrs.
Prerequisite: CSC 216
Design and implementation
of a data base management system. Also to be
included is a study of hierarchical,
network, inverted and relational structures,
and application of DBMS
to file organization and informational retrieval.
Course
Website
CSC 416 Software
Engineering Credit, 3 sem. hrs.
Prerequisites: CSC 216 and
CSC 220
Astudy of the analysis,
design and implementation of major software
systems. Topics include
software development life-cycles and software
development product management
using the C/C++ language. An exercise in
developing a large software
product is central to the course.
Course
Website
CSC 422 Operating
Systems Credit, 4 sem. hrs.
Prerequisites: CSC 220,
CSC 314
Three hours of lecture and
three hours of laboratory per week. An
introduction to the various
data and control structures necessary for the design
and implementation of the
modern computer operating systems. Process
creation and control, interprocess
communications, synchronization and
concurrency, I/O memory
management, and file systems concepts are
explored in the context
of the Unix operating system. Aworking knowledge of
the C programming language
is assumed.
Course
Website
CSC 423 Computer
Networking Credit, 3 sem. hrs.
Prerequisite: CSC 422
This course is a study of
the physical and logical components used in modern
computer networks. Topics
include: fundamentals of signaling and data
transmission using electromagnetic
media, data encoding, multiplexing,
circuit switching, packet
switching, LAN and WAN technologies, internet
working concepts, transport
protocols, network security, and distributed
applications. May include
programming or laboratory assignments to
demonstrate key concepts.
Course
Website
CSC 425 Relational
Database Credit, 3 sem. hrs.
Prerequisite: CSC 216
Concepts of relational database
theory and design. Topics include: the
relational algebra, relational
calculus, dependency theory, normalization,
multi-valued dependency,
and concurrency. Database programming using
SQLwill be used to implement
typical database applications.
Course
Website
CSC 431, 432, 433 Selected
Topics Credit, 1, 2, or 3 sem. hrs., Respectively
These courses are offered
in response to identified needs and interests.
CSC 440Introduction
to Artificial Intelligence Credit, 3 sem. hrs.
Prerequisite: CSC 402
Astudy of fundamental concepts
in AI. The focus is upon knowledge
representation and searching,
with emphasis on expert systems. Other topics
include machine learning,
natural language understanding, perception,
specialized data structures
such as semantic and neural networks, and open
problems in the field of
AI. Exercises using the LISP and/or Prolog languages
Course
Website
CSC 450 Computer
Graphics Credit, 3 sem. hrs.
Prerequisite: CSC 220
An introduction to raster
graphics technology. Astudy of the theory and
practice necessary for comprehending
the techniques for scientific
visualization, interface
design, and 2- and 3- dimensional data representation
and manipulation.
Course
Website
CSC 455 Graph Theory
Credit, 3 sem. hrs.
This course is the cross-listed
as MAT 455.
Course
Website
CSC 460 Automata
Theory and Formal Languages Credit, 3 sem. hrs.
Prerequisite: CSC 309
Astudy of languages, grammars,
and machines at a theoretical level. Regular,
context free, and context
sensitive languages are covered, as well as finite state,
push down and Turing machines.
The concept of decideability is also
discussed.
Course
Website
CSC 481 Numerical
Analysis Credit, 3 sem. hrs.
Prerequisite: MAT/CSC 381
This course is a mathematical
analysis of scientific computing. Topics covered
include the stability and
convergence of algorithms, interval arithmetic, fixed
point iteration, matrix
factorizations, norms and eigenvalues; iterative
solutions to systems. Additional
discussions will focus on the design of
efficient algorithms for
use on parallel computers. Cross-listed as MAT 481.
Course
Website