CIS 310 - Computer Organization
- Prerequisite: MATH 115 and (CIS 200 or IMSE 200) and CIS 275
- Description: The architecture of computer systems and associated software. Topics include digital logic circuits, computer interfacing, interrupt systems, input/output systems, memory systems, assemblers, assembly language programming, and computer networks. (4 credits)
CIS 350 - Data Structures and Algorithm Analysis
- Prerequisite: MATH 115 and (CIS 200 or IMSE 200) and CIS 275.
- Description: A focus on data and algorithm design. Data design topics include object-oriented discussions of hashing, advanced tree structures, graphs, and sets. Algorithm design topics include the greedy, divide-and- conquer, dynamic programming, backtracking, and branch-and-bound techniques. A significant discussion of algorithm complexity theory, including time and space trade-offs and elementary computability theory, is included. (4 credits)
CIS 450 - Operating Systems
- Prerequisite: IMSE 317, (CIS 350/3501 or IMSE 350 or (ECE 370, ECE/MATH 276, (ECE 372 or ECE 375))).
- Description: The study of operating systems as managers of computing resources. Management of CPU, memory, and devices. Case studies of popular operating systems. (4 credits)
IMSE 317 - Engineering Probability and Statistics
- Prerequisite: One year of calculus.
- Description: Set theory, combinatorial analysis, probability and axioms, random variables, continuous and discrete distribution functions, expectations, Chebychev's inequality, Weak Law of Large Numbers, Central Limit Theorem, sampling statistics and distributions, point and interval estimation, and linear regression. (3 credits)