Cyber Security Courses
CPSC 1301. Computer Science 1 (3-0-3) Co-requisite: CPSC 1301L. This course includes an overview of computers and programming; problem solving and algorithm development; simple data types; arithmetic and logic operators; selection structures; repetition structures; text files; arrays (one-and-two-dimensional); procedural abstraction and software design; modular programming (including sub-programs or the equivalent).
CPSC 1301L. Computer Science 1 Lab (0-3-1) Corequisite: CPSC 1301. This course provides a hands-on experience for the students in the area of programming as a realization of the concepts presented in Computer Science 1. The students will complete programming projects using one or more program development environments. The lab projects will apply and reinforce the topics covered in Computer Science 1.
CPSC 1302. Computer Science 2 (3-0-3) Prerequisites: CPSC 1301 and CPSC 1301L with grades of "C" or better. A continuation of CPSC 1301. This course emphasizes programming using object-oriented methods. The fundamentals used in designing, developing and using classes, encapsulation, inheritance mechanisms, polymorphism and dynamic binding.
CPSC 2105. Computer Organization (3-0-3) Prerequisites: CPSC 1301 and CPSC 1301L with grades of "C" or better. Overview of basic computer organization. Representation of data in computers. Introduction of Boolean Algebra and logic gates used to implement Boolean functions. Introduction to flip-flops and sequential logic. Methods to reduce the complexity of Boolean functions-algebraic and K-Maps. Overview of computer arithmetic. Instruction set architecture of a sample computer. Interaction of the machine and computer languages including discussion of the compilation, assembly, and loading process.
CPSC 2106. Information Security (3-0-3) Prerequisite: CPSC 1301 and CPSC 1301L or permission of instructor. This course introduces the main hardware and software components of a modern computer system, investigates the vulnerabilities and threats associated with each component, and suggests prudent measures to defend against these threats.
CPSC 3125. Operating Systems (3-0-3) Prerequisites: CPSC 2105 and CPSC 2108, both with grades of "C" or better. An introduction to basic operating system level software concepts. Course topics include processes, threads, symmetric multi-processing, thread synchronization and memory management techniques.
CPSC 5127. Computer and Network Security (3-0-3) Prerequisite: CPSC 2106 and CPSC 5157 with a grade of "C" or better. This course is a basic introduction to the issues of software security with a focus on raising the students' awareness of the difficulties of maintaining a secure software environment. It reviews traditional security techniques and discusses the vulnerabilities of such methods. The course emphasizes well-written software as a prerequisite to network security and highlights security implications of common programming mistakes.
CPSC 5157. Computer Networks (3-0-3) Prerequisite: CPSC 3125 with a grade of "C" or better. Local area networks, wide area networks, and internets. Protocols and the ISO Open Systems Interconnect reference model. Design, analysis, and performance evaluation. Emphasis on data link, network, and transport protocols.