College of Computing

Curriculum Overview - BS in Cybersecurity

The BS in Cybersecurity degree offers students the opportunity to gain cutting-edge cybersecurity knowledge and skills with a solid theoretical foundation as well as a good understanding of the social, ethical, legal, and policy aspects of cybersecurity. Students learn to design and develop trusted software systems by adopting best practices and techniques in software development, manage and protect valuable computing infrastructure and data assets in an enterprise environment, and develop next-generation cyber skills to confront emerging cyber threats. Download the latest flowchart for the BS in Cybersecurity degree.

The BS in Cybersecurity degree has the following two concentrations.

1) Software Security: In this concentration, students will learn to systematically design, develop, deploy and test trusted software and applications. Students will find and fix common software and application vulnerabilities to prevent attacks from exploiting them. Adopting best practices and techniques at each phase of the software development cycle is one of the key elements to strengthen the security of software systems and applications. If you enjoy coding and want to develop secure and trusted software systems, this is the right concentration for you!

2) System and Network Security: In this concentration, students will learn to manage and secure computer systems, networks, and IT infrastructure from unauthorized access, attacks, misuse, or damage by implementing various security processes, technologies, and best practices. Students will learn to combine multiple layers of defenses, implement security policies and controls, detect emerging threats before they infiltrate the network, and perform critical functions within a secure enterprise environment. If you prefer hands-on learning and want to secure IT systems and infrastructure, this is the right concentration for you!

Major Requirements (121 Credit Hours)

A. Common Core Courses (36 Credit Hours) 

CS 1121 - Introduction to Programming I

Starting point of the computer science programs. A high-level, object-oriented programming language is introduced as a problem-solving tool. Topics include design, coding, documentation, debugging, and testing of programs. Programming assignments are given in both a closed lab setting and as homework.

  • Credits: 3.0
  • Lec-Rec-Lab: (0-2-2)
  • Semesters Offered: Fall, Spring, Summer
  • Pre-Requisite(s): MA 1031(C) or MA 1032(C)

CS 1122 - Introduction to Programming II

Continuation of CS 1121. Topics include data abstraction, class hierarchies and polymorphism, list, stack, queue and tree data structures, complexity-based algorithm and data structure choices, and recursion. Homework programming assignments are given.

  • Credits: 3.0
  • Lec-Rec-Lab: (0-2-2)
  • Semesters Offered: Fall, Spring, Summer
  • Pre-Requisite(s): CS 1121

CS 1131 - Accelerated Introduction to Programming

An alternative starting point of the computer science programs for students with some programming experience, combining material from CS1121 and CS1122, offered at an accelerated pace. Homework programming assignments are given.

  • Credits: 5.0
  • Lec-Rec-Lab: (0-4-2)
  • Semesters Offered: Fall
  • Restrictions: Permission of department required
  • Pre-Requisite(s): MA 1031 or MA 1032 or MA 1160(C) or MA 1161(C)

CS 2311 - Discrete Structures

Presents fundamental concepts in discrete structures that are used in computer science. Topics include sets, trees, graphs, functions, relations, recurrences, proof techniques, logic, combinatorics, and probability.

  • Credits: 3.0
  • Lec-Rec-Lab: (0-3-0)
  • Semesters Offered: Fall, Spring, Summer
  • Pre-Requisite(s): (CS 1121 or CS 1131) and (MA 1135 or MA 1160 or MA 1161)

CS 4723 - Network Security

Learn fundamental of cryptography and its application to network security. Understand network security threats, security services, and countermeasures. Acquire background knowledge on well known network security protocols. Address open research issues in network security.

  • Credits: 3.0
  • Lec-Rec-Lab: (3-0-0)
  • Semesters Offered: Fall
  • Pre-Requisite(s): EE 4272 or CS 4461

SAT 1700 - Cyber Ethics

Ethics, morality, and privacy issues when working with technology. Topics include: foundational and professional issues in cyber ethics; privacy, security, and crime in cyberspace; intellectual property and internet regulation; the digital divide and online communities; and emerging and converging technologies.

  • Credits: 3.0
  • Lec-Rec-Lab: (0-3-0)
  • Semesters Offered: Fall
  • Restrictions: Must be enrolled in one of the following Major(s): Computer Network & System Admn

SAT 2711 - Linux System Administration

Linux system installation and configuration in an enterprise environment. Topics include: Linux system architecture; Linux installation and package management; GNU and UNIX Commands; Linux file systems; hierarchy standards; shells, scripting and data management; user interfaces and desktops; administrative tasks; essential system services; and networking fundamentals and security.

  • Credits: 4.0
  • Lec-Rec-Lab: (0-3-3)
  • Semesters Offered: Fall, Summer
  • Pre-Requisite(s): SAT 1200 or CS 1111(C) or CS 1121 or CS 1131 or CS 1142 or MIS 2100

SAT 3812 - Cyber Security I

The evolution of information security into cybersecurity and its relationship to nations, organizations, society, and individuals. Exposure to multiple cybersecurity technologies, processes, and procedures; analyzing threats, vulnerabilities and risks present; and developing appropriate strategies to mitigate potential cybersecurity issues. Applied lab to develop cyber security offensive attributes and learn how to prevent and/or mitigate threats.

  • Credits: 3.0
  • Lec-Rec-Lab: (0-2-2)
  • Semesters Offered: Fall, Summer
  • Restrictions: Must be enrolled in one of the following Class(es): Junior, Senior
  • Pre-Requisite(s): SAT 1200 or CS 1111 or CS 1121 or CS 1131 or CS 1142 or MIS 2100 or EET 2241

SAT 4816 - Digital Forensics

Introduction of the basic principles and technology of digital forensics, including acquisition, preservation, and recovery and investigation of the evidence stored in digital devices.

  • Credits: 3.0
  • Lec-Rec-Lab: (0-2-2)
  • Semesters Offered: Fall
  • Restrictions: Must be enrolled in one of the following Major(s): Computer Science, Computer Network & System Admn, Computer Engineering; Must be enrolled in one of the following Class(es): Junior, Senior
  • Pre-Requisite(s): SAT 3812

MA 2320 - Elementary Linear Algebra

An introduction to linear algebra and how it can be used. Topics include systems of equations, vectors, matrices, orthogonality, subspaces, and the eigenvalue problem. Not open to students with credit in MA2321 or MA2330.

  • Credits: 2.0
  • Lec-Rec-Lab: (0-2-0)
  • Semesters Offered: Fall, Spring, Summer
  • Restrictions: May not be enrolled in one of the following Major(s): Mathematics, Software Engineering, Computer Science
  • Pre-Requisite(s): MA 1160 or MA 1161 or MA 1135

1. Pick One:  (CS1121 + CS1122)  OR  CS1131

2. New Courses (to be offered):
CS4000 (3)                             National Cybersecurity Policy and Law
CS4510 (3)                             Risk Assessment & Incident Response
CS/SAT4530 (3)                     Reverse Engineering & Malware Analysis
 

B. Core Courses in Concentrations (36 Credit Hours)

B1: Software Security Concentration

CS 1142 - Programming at the Hardware Software Interface

Programming in assembly language and C for students with prior experience in Java. Topics include binary number encodings, instruction set architecture, assembly language programming, and instruction encodings. C programming topics include program structure, preprocessor, arrays, structures, pointers, input/output, dynamic memory management, and linked data structures.

  • Credits: 3.0
  • Lec-Rec-Lab: (0-3-0)
  • Semesters Offered: Fall, Spring, Summer
  • Pre-Requisite(s): CS 1122 or CS 1131

CS 2321 - Data Structures

Presents fundamental concepts in data structures. Topics include abstract data types (priority queues, dictionaries and graphs) and their implementations, algorithm analysis, sorting, text processing, and object oriented design. A significant programming project is assigned.

  • Credits: 3.0
  • Lec-Rec-Lab: (0-3-0)
  • Semesters Offered: Fall, Spring, Summer
  • Pre-Requisite(s): CS 1122 or CS 1131

CS 3141 - Team Software Project

This course introduces software design techniques (e.g., Design-By-Contracts), uses the UML for requirements and design specification, and requires implementation, unit testing and documentation in the context of a significant team project. Other topics: teamwork, user interfaces, social and professional responsibility.

  • Credits: 3.0
  • Lec-Rec-Lab: (0-3-0)
  • Semesters Offered: Fall, Spring
  • Pre-Requisite(s): (CS 2311 or MA 3210) and CS 2321

CS 3331 - Concurrent Computing

Concepts and techniques in concurrent computing. Topics include: processes and threads, mutual exclusion, semaphores, monitors and condition synchronization, deadlock, safety and liveness, message passing, and concurrent architectures.

  • Credits: 3.0
  • Lec-Rec-Lab: (0-3-0)
  • Semesters Offered: Fall, Spring
  • Pre-Requisite(s): CS 1142 or (CS 1141 and CS 1040) and (CS 2311 or MA 3210) and CS 2321

CS 3421 - Computer Organization

Introduction to the logical structure of computers, including the fundamentals of logic design, information storage and manipulation, control, and input/output. Topics include a review of current hardware technology, combinational and sequential logic, arithmetic, datapaths, hard-wired control, interrupts, caches, virtual memory, and an introduction to pipelining.

  • Credits: 3.0
  • Lec-Rec-Lab: (0-3-0)
  • Semesters Offered: Fall, Spring, Summer
  • Pre-Requisite(s): (CS 1141 and CS 1040) or CS 1142

CS 3425 - Introduction to Database Systems

This course provides an introduction to database systems including database design, query, and programming. Topics include goals of database management; data definition; data models; data normalization; data retrieval and manipulation with relational algebra and SQL; data security and integrity; database and Web programming; and languages for representing semi-structured data.

  • Credits: 3.0
  • Lec-Rec-Lab: (0-3-0)
  • Semesters Offered: Fall, Spring
  • Pre-Requisite(s): (CS 2311 or MA 3210) and CS 2321

CS 3411 - Systems Programming

Development of robust programs that provide efficient services to system software developers. Topics include: file I/O, process creation and management, linking and libraries, interprocess communication, performance measurement, and socket programming.

  • Credits: 3.0
  • Lec-Rec-Lab: (0-3-0)
  • Semesters Offered: Fall, Spring, Summer
  • Pre-Requisite(s): CS 3421

CS 3712 - Software Quality Assurance

Practices for ensuring quality through the software process. Topics include: requirements elicitation, analysis and documentation, testing, and quality assurance management.

  • Credits: 3.0
  • Lec-Rec-Lab: (3-0-0)
  • Semesters Offered: Spring
  • Pre-Requisite(s): CS 3141

CS 4321 - Introduction to Algorithms

Fundamental topics in algorithm design, analysis, and implementation. Analysis fundamentals include asymptotic notation, analysis of control structures, solving recurrences, and amortized analysis. Design and implementation topics include sorting, searching, and graph algorithms. Design paradigms include greedy algorithms, divide-and-conquer algorithms, and dynamic programming.

  • Credits: 3.0
  • Lec-Rec-Lab: (0-3-0)
  • Semesters Offered: Fall, Spring
  • Restrictions: May not be enrolled in one of the following Class(es): Freshman, Sophomore
  • Pre-Requisite(s): (CS 2311 or MA 3210) and CS 2321

CS 4461 - Computer Networks

Computer network architectures and protocols; design and implementation of datalink, network, and transport layer functions. Introduction to the Internet protocol suite (TCP, UDP, IP), domain name service and protocols, file sharing protocols, wireless networks, and network security.

  • Credits: 3.0
  • Lec-Rec-Lab: (0-3-0)
  • Semesters Offered: Fall, Spring
  • Pre-Requisite(s): CS 3411

CS 4471 - Computer Security

This covers fundamentals of computer security. Topics include practical cryptography, access control, security design principles, physical protections, malicious logic, program security, intrusion detection, administration, legal and ethical issues.

  • Credits: 3.0
  • Lec-Rec-Lab: (0-3-0)
  • Semesters Offered: Fall
  • Restrictions: May not be enrolled in one of the following Level(s): Graduate
  • Pre-Requisite(s): CS 3411 or CS 4411

CS 4740 - Development of Trusted Software

This course exposes students to the concepts of secure software development. Students will learn how to develop high-quality software that is resistant against cyber-attacks, by minimizing the number of vulnerabilities that can be exploited by an attacker. Topics include access control, race conditions, buffer overflows, and code injection.

  • Credits: 3.0
  • Lec-Rec-Lab: (0-3-0)
  • Semesters Offered: Spring
  • Pre-Requisite(s): CS 4471

B2: System and Network Security Concentration

SAT 2343 - Network Administration I

Introduction to basic networking concepts and implementation. Topics include OSI model, subnetting, network addressing, data encapsulation, network topologies, and basic configuration of networking hardware including cabling, bridges, routers, and other communications.

  • Credits: 4.0
  • Lec-Rec-Lab: (0-3-2)
  • Semesters Offered: Fall, Summer
  • Pre-Requisite(s): SAT 1610

SAT 3210 - Database Management

Introductory course on database management. Topics include data modeling, database design, implementation techniques, SQL Language, database administration and security.

  • Credits: 3.0
  • Lec-Rec-Lab: (0-2-2)
  • Semesters Offered: Fall, Summer
  • Restrictions: Must be enrolled in one of the following Major(s): Computer Network & System Admn; Must be enrolled in one of the following Class(es): Junior, Senior
  • Pre-Requisite(s): SAT 1200 or CS 1111 or CS 1121 or CS 1131 or CS 1142 or MIS 2100

SAT 3343 - Network Administration II

Study of network devices in various architectures. Topics include routing protocols, TCP/IP, access-lists, remote network structures, network topologies, telnet and SSH authentication, switch programming, VLAN and STP configuration, IP traffic control, network troubleshooting and WAN encapsulation.

  • Credits: 4.0
  • Lec-Rec-Lab: (0-3-2)
  • Semesters Offered: Spring, Summer
  • Pre-Requisite(s): SAT 2343 or CS 3411

SAT 3611 - Infrastructure Service Administration and Security

Administrating Linux and Microsoft servers together to provide infrastructure services to mixed clients. Topics include: DNS; DHCP; file, web, mail, and directory security of these services; and best practices for combining and mixing server platforms in an enterprise environment.

  • Credits: 3.0
  • Lec-Rec-Lab: (0-2-2)
  • Semesters Offered: Fall, Summer
  • Pre-Requisite(s): SAT 2511 and SAT 2711

SAT 3820 - Wireless System Administration and Security

Study of wireless communications, standards, and regulations in an enterprise environment. Topics include: various radio frequency and light communications; IEEE 802.11 Regulations and Standards; protocols and devices; network implementation; network security; and site surveying.

  • Credits: 4.0
  • Lec-Rec-Lab: (0-3-2)
  • Semesters Offered: Spring, Summer
  • Restrictions: Must be enrolled in one of the following Major(s): Computer Network & System Admn; Must be enrolled in one of the following Class(es): Junior, Senior
  • Pre-Requisite(s): SAT 1200 or CS 1111 or CS 1121 or CS 1131 or CS 1142 or MIS 2100

SAT 4310 - Advanced Scripting Programming

Emphasizes advanced portions of scripting programming, testing, implementation and documentation (i.e. PERL, PHP, Python and Scripting). Other topics include language syntax data and file structures, input/output devices, file, database access, and graphical user interfaces.

  • Credits: 3.0
  • Lec-Rec-Lab: (0-2-2)
  • Semesters Offered: On Demand
  • Restrictions: Must be enrolled in one of the following Major(s): Computer Network & System Admn
  • Pre-Requisite(s): SAT 3002 or SAT 3310

SAT 4411 - Data Center Engineering

Data center and virtualization strategies and design for an enterprise environment. Topics include: data center planning; disaster recovery; virtualization methods; and cloud computing services to provide business continuity.

  • Credits: 3.0
  • Lec-Rec-Lab: (0-2-2)
  • Semesters Offered: Spring
  • Pre-Requisite(s): (SAT 3200 and SAT 3611) or (SAT 3511 and SAT 3711)

SAT 4812 - Cyber Security II

An advanced course in cyber security that covers information assurance, cryptography and data security, and malware analysis. Key topics include: buffer overflow; security audits; cryptographic systems (symmetric and public-key algorithms); public-key certificates (X.509); message authentication; Kerberos; authentication applications; electronic mail security; IP security; and SELinux.

  • Credits: 3.0
  • Lec-Rec-Lab: (0-2-2)
  • Semesters Offered: Spring, Summer
  • Pre-Requisite(s): SAT 3812

OSM 4300 - Project Management

The various stages in a project life cycle will be covered and include initiation, planning, execution, and closeout. Basic tools such as the Project Charter, Network Diagrams Gantt, and budgeting will be covered. Basics of MS Project are included.

  • Credits: 3.0
  • Lec-Rec-Lab: (3-0-0)
  • Semesters Offered: Fall, Spring, Summer
  • Restrictions: May not be enrolled in one of the following Class(es): Freshman, Sophomore
  • Pre-Requisite(s): BUS 2100 or CEE 3710 or MA 2720 or MA 3710 or EE 3180 or BE 2110 or MA 2710

1. New Courses (to be offered):
SAT4520 (3)                           Machine Learning in Cybersecurity
SAT4817 (3)                           Security Penetrationing Test & Audit 

C. Culminating Experience (4 Credit Hours)


Pick One: 
CS/SAT4793 (2) + CS/SAT4794 (2)      Senior Design I + II
OR
UN3002 (2) + UN3003 (2)                    Undergraduate Cooperative Education I + II
OR
ENT4950(2)+ENT4960(2)                     Enterprise Project Work

 

D. Technical Elective Courses (6 Credit Hours)


CS3000 – CS5999
SAT3000 – SAT5999
EE3000 – EE5999
ENT3950(1) and ENT3960(1)
HU3120 (3)                              Technical & Professional Communication
SS3640 (3)                                Selected Topics in Cyber-Law
MIS4200 (3)                             Management of Cyber Security
OSM4300 (3)                           Project Management

 

E. General Education Requirements (39 Credit Hours + 3 Co-Curricular Units)


Gen Ed Core Requirements (12 credits):
UN 1015 (3),
UN 1025 (3),
Critical and Creative Thinking (3),
Social Responsibility & Ethical Reasoning (3)

Gen Ed HASS Requirements (12 credits):
Communication and Composition (3),
Humanities and Fine Arts (3),
Social and Behavioral Sciences (3),
HASS Elective (3)

Gen Ed STEM Requirements (15 credits):
Science Elective with lab (4),
Science Elective (3)
MA1160(4) OR MA1161(5)    Calculus with Technology I OR Calculus Plus w/ Technology I
MA2720(4)                               Statistical Methods

Co-curricular Requirements (3 semester units = 3 credits)