COMPUTER SCIENCE (CSC)

1997-1998 Bulletin Information

For current bulletin information see www.southalabama.edu/bulletin

CSC 331 Modeling and Simulation I 4 cr
Develop insight into nature of models and experience in their construction. Basic systems theory, use of techniques such as linear programming, Queuing, Markov chains, and simulation. Prerequisites: CIS 142 or 271, ST 275 or 315, and MA 132 or 287.

CSC 332 Modeling and Simulations II 4 cr
Concentration on simulation as the activity of experimenting with a computer model. Techniques based on mathematical methodologies and the practices of simulation will be used to develop a "real world" project. Prerequisites: CSC 331 and MA 331.

CSC 340 Programming Languages 4 cr
Formal examination of programming languages. Formal language concepts including syntax and basic grammars are studied. Language features such as data types and structures, control structures and data flow are examined. The run-time environment and the process of interpretation/compilation are covered. The object-oriented programming paradigm is introduced. Prerequisite: CIS 265.

CSC 346 Advanced Operating Systems Concepts 4 cr
Emphasis on time sharing, multiprocessing, and virtual systems environments. Performance measurement and evaluation, as well as system simulation. Recent developments in operating-systems theory will be discussed. Prerequisite: CIS 245.

CSC 371 Scientific Computing 4 cr
Elementary problems in scientific computing. Introduction to representation of floating-point numbers, errors in floating-point calculations, FORTRAN-77, program libraries, and a high-level, problem-solving tool will be used. Prerequisite: CIS 141 or 271 or 272 or 273.

CSC 421 Fundamentals of Compiler Construction 4 cr
Review of program language structure translation, loading, execution, and storage allocation. Compilation of simple expressions and statements. Organization of a compiler. Prerequisite: CSC˙340.

CSC 422 Performance Evaluation of Algorithms 4 cr
Classification and analysis of algorithms including recursive, divide and conquer, greedy, etc. Data structures and algorithms design and performance. Run time and main storage complexity analysis. Performance evaluation measurements will be discussed and popular benchmarking techniques reviewed. P, NP, and NP complexities will be discussed. Prerequisites: CIS 263, MA 267 or 367, and ST 315.

CSC 436 Numerical Analysis I 4 cr
Selected numerical algorithms are analyzed. Topics of study include: error analysis, machine arithmetic, round-off errors, root finding using fixed-point methods, systems of equations, interpolation polynomials, numerical integration, and ordinary differential equations. The algorithms are implemented with the aid of a computer. Also offered as MA 436. Prerequisites: MA234 and CIS˙142 or the equivalent. Credit for or concurrent registration in MA 331.

CSC 438 Numerical Analysis II 4 cr
Continuation of CIS 436. Topics include: In-depth error analysis, order of error, interpolation and derivatives using difference techniques, least square analysis and splines, matrix algebra and eigenvalues, and boundary-value problems from partial differential equations. Also offered as MA 438. Prerequisites: MA 436 or CSC 436. Credit for or concurrent registration in MA 316 or 318.

CSC 446 Digital Logic and Computer Architecture 4 cr
Topics include: Boolean algebra, minimization techniques, combinatorial and sequential circuit analysis, memory organization, microprocessor concepts, and system architecture. Prerequisites: CIS˙244 and MA 267 or 367.

CSC 447 Communications and Network Analysis 4 cr
Data communications and computer networks. An in-depth treatment of network architectures and protocols for both WANs and LANs. Network routing and flow algorithms, internetworking and ISDN, and distributed systems. Prerequisite: CIS 247.

CSC 453 Theory of Computation 4 cr
An introduction to formal computer theory. Finite machines, automata, formal language theory, and Turing machines are studied. Prerequisite: CSC 340.

CSC 457 Data-Base Theory 4 cr
Architecture of data-base systems. Relational, hierarchical, and network models; normalization; data-base security and integrity; query processing. A survey of several data-base management systems. Prerequisite: CIS 265.

CSC 472 Computer Graphics 4 cr
Introduction to 2D and 3D graphics techniques and algorithms. State of the art packages (PHIGS) will be used. Applications to business and engineering applications. Prerequisite: CIS 265.

CSC 473 Real-Time Computing 5 cr
Methods of signal acquisition, storage, and processing. Real-time algorithms and data structures. System consideration and system planning. Advanced processing techniques including averaging, filtering, and frequency-domain analysis. Principles of computerized instrument design. Prerequisites: CIS 247 and 265.

CSC 474 Artificial Intelligence I: Theory 4 cr
Introduction to basic concepts, implementation techniques, and philosophies of artificial intelligence and intelligent systems. Introduction to expert systems, fuzzy logic systems, and neural network. Prerequisite: CIS 265.

CSC 475 Artificial Intelligence II: Programming 4 cr
Introduction to techniques for Artificial Intelligence Programming. The fundamentals of an A.I. programming language (LISP or PROLOG) will be presented. The language will then be used to solve problems in typical A.I. applications. Prerequisite: CSC 474.

CSC 520 Computer Architecture 4 cr
An introduction to computer architecture including the structure and function of memory, cache, pipelines, RISC processors, vector processors, and multi-processors. Prerequisites: CIS 245, 261, and ST 315.

CSC 522 Performance Evaluation of Algorithms 4 cr
Classification and analysis of algorithms including recursive, divide and conquer, greedy, etc. Data structures and algorithms design and performance. Run time and main storage complexity analysis. Performance evaluation measurements will be discussed and popular benchmarking techniques reviewed. Analytic, simulation, and qualitative approaches will be discussed. Prerequisites: CIS 261, MA 267, and ST 315.

CSC 524 Computer Language Design 4 cr
A study of programming language design and specification, including the compiling process, parsing, BNF grammars, and models of semantics. Differences between interpreters, assemblers, and compilers will be studied. Prerequisites: CIS 261, CSC 340, and MA 267.

CSC 525 Theory of Computing and Automata 4 cr
An introduction to the theory of computing including finite automata, pushdown automata, formal languages, decidable problems, and Turing machines. Prerequisites: MA 132 and 267.

CSC 535 Data Base Structure and Design 4 cr
An in-depth study of the underlying principles of database management system models. Database design issues are examined from algorithmic and structural perspective. Prerequisite: CSC 522.

CSC 539 Communications and Network Analysis 4 cr
Data communications and computer networks. An in-depth treatment of network architectures and protocols for both WANs and LANs. Network routing and flow algorithms, internetworking and ISDN, and distributed systems. Prerequisite: CIS 245.

CSC 542 Advanced Operating Systems 4 cr
Monitors, non-time-sharing operating systems, and multi-user systems will be discussed. Memory management techniques will be stressed. Disk and other secondary storage media and their associated drivers will be discussed. Analytic modeling techniques will be used to discuss operating systems design decisions. Students will be expected to write or simulate sections of an operating system in a high-level programming language Prerequisites: CSC Foundation courses or equivalents and CSC 520 and 524.

CSC 544 Software Engineering Principles 4 cr
Advanced concepts of software engineering will be discussed. Program testing techniques including structured design and walk-throughs - proving program correctness and verifiability, and system coding standardization and integration will be covered in depth. Software team formulation and management techniques will also be discussed. Prerequisites: CSC 520, 522, 524, and 525 or equivalent.

CSC 546 Compiler Design 4 cr
Detailed analysis of compiler construction. Topics to be covered include a study of techniques for semantic and syntactic analysis, parsers, scanners, organization and allocation of storage areas, optimization techniques, and compiler compilers. Prerequisites: CSC 520, 522, and 524.

CSC 550 Modeling and Simulation Techniques 4 cr
Advanced mathematical treatment of sampling techniques used in simulation, pseudorandom-number generators and their properties, and the construction and verification of simulation models. A simulation project will be developed. Prerequisite: CSC 522.

CSC 552 Artificial Intelligence and 4 cr
Heuristic Programming Methods of heuristic programming, the production of intelligent algorithms, and simulation of human cognitive processes will be studied. Al languages, such as LISP and PROLOG, will be discussed. Attention placed on the relationship between man-made machines (Robots) and biological organisms with natural intelligence. Expert systems and neural network research will be reviewed. Prerequisite: CSC 522.

CSC 554 Real-Time Software Systems 4 cr
Study of software requirements and organization for real-time computer systems. Topics include: survey of typical real-time systems; techniques for code-conversion, error checking, and transmission monitoring; and study of software systems in current use. Prerequisites: CSC 522 and 539.

CSC 556 Computer Graphics 4 cr
An in-depth study of hardware and software techniques used in computer graphics. Study of display and entry devices, including refresh, storage, and raster scan topics. Software techniques will include display files, windowing, clipping, two and three-dimensional transformations, and hidden-surface removal. Prerequisite: CSC 522.

CSC 560 Numerical Analysis 4 cr
Mathematical aspects of scientific programming. Topics to be covered include: iterative methods for solving linear and nonlinear equations, curve-fitting and regression techniques, error analysis, numerical quadrature methods. Prerequisites: CSC 522 and MA 331, or equivalent.

Courses of Instruction

Bulletin Home Page

USA Home