It is expected that all new graduate students in the department will have as a minimum the following courses in their background. Students wishing to enter our graduate program with little or no formal computer science background must complete as a minimum all but one of these courses before applying for admission. Completion of these courses does not guarantee admission to our program.
MAC 2311 & MAC 2312 Analytic Geometry and Calculus 1 & 2
Introduction to analytic geometry; limits; continuity; differentiation of algebraic and trigonometric functions; differentials; introduction to integration and the fundamental theorem of calculus. Techniques of integration; applications of integration; differentiation and integration of inverse trigonometric, exponential and logarithmic functions; sequences and series.
STA 2023 or STA 3032 Statistics
Development of the fundamental statistical concepts and their relationship to the social and physical sciences or engineering. Probability, discrete and continuous random variables, estimation, hypothesis testing, and linear and multiple regression.
COP 3502 Programming Fundamentals 1
Credits: 3; Coreq: MAC 2311. The first course of a two-semester introductory sequence for students planning further study in computer science, digital arts and sciences or computer engineering. Concepts of computer science and the process of computer programming, including object-oriented programming, procedural and data abstraction and program modularity.
COP 3503 Programming Fundamentals 2
Credits: 3; Prereq: COP 3502 with a minimum grade of C or an AP exam in computer science with a minimum grade of 4; and MAC 2311. The second course of a two-semester introductory sequence for students planning further study in computer science, digital arts and sciences or computer engineering. Concepts of computer science and the process of computer programming, including object-oriented programming, procedural and data abstraction and program modularity
COT 3100 Applications of Discrete Structures
Sets, relations, functions, and concept of cardinality. Propositional logic and applications. Predicate logic, induction and recursion. Finite state machines, grammars, languages. Graphs and trees. Elements of groups, semigroups, lattices, and Boolean algebra. Prerequisite: MAC 2311.
CDA 3101 Introduction to Computer Organization
Organization of computing systems. Logical basis of computer structure. Machine representation of instructions and data, flow of control, basic machine instructions. Assembly language programming. Prerequisite: MAC 2311 (or MAC 2233).
COP 3530 Data and Algorithm Structures
Analysis of algorithms (O, W, and Q notations); run time measurement; sequential, linked and indirect addressed representation methods; data structures such as arrays, stacks, queues, binary trees, heaps, graphs; algorithm design methods such as greedy, divide-and-conquer, dynamic programming, back-tracking, branch-and-bound, heuristics; sorting and search; hashing. Prerequisite: COT 3100, and COP3504 or COP3503 with minimum grade of C.
COP 4600 Operating Systems
Concepts, design, and implementation of modern operating systems. Operating system management of processes, I/O, memory, and file systems. Prerequisite: COP 3530.