Master of Science in Computer Science
The M.S. degree program in Computer Science offers an optional degree specialization in Cybersecurity. Applicants must declare, at the time of application, their intent to pursue or not pursue the optional degree specialization in Cybersecurity
Admission (without degree specialization)
Students seeking admission to the M.S. program in the Department of Computer Science must meet all the requirements for admission to the NIU Graduate School. The master’s program requires degree-seeking applicants to submit the following materials:
- Baccalaureate Field: A B.A./B.S. degree in computer science or a closely related field is preferred. Students without such a background may also be admitted but may be required to take deficiency courses and earn a grade of B or higher in each. Deficiencies should be resolved in the first year and do not normally carry graduate credit toward the degree.
- Test Scores: All applicants must provide official scores on all sections of the General Test of the GRE taken in the past 5 years.
- Letters of Recommendation: Two (2) letters of recommendation from individuals who can speak to the applicant’s ability to be successful in the completion of a graduate-level degree program. Individuals submitting letters should have a professional or academic relationship with the applicant.
- Personal Statement: Should be at least 500 words in length. It should outline the applicant’s preparation for graduate study in their chosen field, as well as their goals for graduate school and beyond. Additional information about the applicant’s personal academic journey that cannot be found in other application documents should be included here.
- Resume/CV: Copy of current resume/CV in PDF format indicating the applicant’s professional and/or volunteer experience. If applicable, papers and other works produced by the applicant should be mentioned here.
Admission (with degree specialization in Cybersecurity)
Students seeking admission to the M.S. program in the Department of Computer Science must meet all the requirements for admission to the NIU Graduate School. The master’s program with degree specialization in Cybersecurity requires degree-seeking applicants to submit the following materials:
- Baccalaureate Field: A B.A./B.S. degree in any discipline. An undergraduate CGPA of 3.0 is preferred, but not required. Students without a background in information
technology may also be admitted but may be required to take deficiency courses during their first year of the program. Deficiencies should be resolved in the first year.
Deficiency courses may include
- Programming Principles in Python (CSCI 503). This course will count toward degree program requirements.
- Topics in Computer Science: Computer Security (CSCI 490), MATH 497, and STAT 490. These courses will not count toward degree program requirements.
- Personal Statement: Should be at least 500 words in length. It should outline the applicant’s preparation for graduate study in their chosen field, as well as their goals for graduate school and beyond. Additional information about the applicant’s personal academic journey that cannot be found in other application documents should be included here.
- Resume/CV: Copy of current resume/CV in PDF format indicating the applicant’s professional and/or volunteer experience. If applicable, papers and other works produced by the applicant should be mentioned here.
General Program Information
Students pursuing the M.S. in computer science must complete at least ten graduate-level courses of 3 or 4 semester hours each. At least eight of the ten required courses must be in the Department of Computer Science. Students must obtain prior departmental approval to apply courses not offered by the Department of Computer Science to their programs of study. For students who write a master’s thesis, 6 semester hours of CSCI 699 will count as two of the ten courses required. In addition, students must complete one semester hour of CSCI 600. Students who are planning to continue their studies through the department’s doctoral program must choose the thesis option. Students who write a master’s thesis, may receive credit for up to 6 semester hours of CSCI 699. A program of study designed by the student and the advisor must be approved by the Department of Computer Science. Students must obtain prior departmental approval to apply courses not offered by the Department of Computer Science to their programs of study. No more than 8 credit hours may be taken outside the Department of Computer Science. Check departmental information for any additional requirements. The student learning outcomes for this degree are located at http://www.niu.edu/assessment/clearinghouse/outcomes/index.shtml.
Requirements (without degree specialization in Cybersecurity) (31-32)
Students must complete the required number of hours in each of the following areas:
- Survey (1)
- Programming (3)
- Systems (3-4)
- Theory (3)
- Specializations (6)
- Electives (15)
I. Survey
Students must complete the following course:
- CSCI 600 - Big Ideas in Computer Science Credits: 1
CSCI 600 - Big Ideas in Computer Science
Lectures and discussions of current research and technical developments in computer science for beginning graduate research students. Topics will emphasize open problems and recent scientific advances. Content may vary to reflect research advances in areas such as data analytics, scientific computing, graphics and visualization. S/U grading.
Prerequisites & Notes
PRQ: Admission to the graduate program in computer science or consent of department.
Credits: 1
II. Programming
Students must complete one course from the following or substitute another course with departmental approval.
- CSCI 501 - Programming Principles in C++ Credits: 3
- CSCI 502 - Programming Principles in Java Credits: 3
- CSCI 503 - Programming Principles in Python Credits: 3
CSCI 501 - Programming Principles in C++
Fundamental elements of the object-oriented model. Techniques for object-oriented design studied with an opportunity to synthesize these concepts and apply the methodology through the object-oriented programming language C++.
Prerequisites & Notes
PRQ: Admission to the graduate program in computer science or consent of department.
Credits: 3
CSCI 502 - Programming Principles in Java
Object-oriented programming in Java, including class definitions, collections, streams, I/O, multi-threading, graphical applets, and Internet-based distributed client-server database applications. Implementation using an editor (on Linux) and an IDE (e.g., NetBeans on Windows). Extensive laboratory work. May not be taken by students with undergraduate credit for CSCI 470.
Prerequisites & Notes
PRQ: Admission to the graduate program in computer science or consent of department.
Credits: 3
CSCI 503 - Programming Principles in Python
Application of programming principles using the Python language. Covers fundamental elements of the object-oriented model, briefly introduces the functional programming paradigm, and illustrates concepts with a Python workflow including IPython Notebooks. Extensive laboratory work.
Prerequisites & Notes
PRQ: Admission to the graduate program in computer science or consent of department.
Credits: 3
III. Systems
Students must complete one course from the following:
- CSCI 511 - Database Concepts Credits: 3
- CSCI 512 - Computer Networks Credits: 3
- CSCI 513 - Software Development and Engineering Credits: 4
- CSCI 514 - Operating Systems Credits: 3
- CSCI 515 - Principles of Compilers Credits: 3
CSCI 511 - Database Concepts
Principles of database design. Comparison of the features of currently available database systems, as well as an introduction to current research in database technology. Role of database systems in both batch and on-line environments.
Prerequisites & Notes
PRQ: Admission to the graduate program in computer science or consent of department.
Credits: 3
CSCI 512 - Computer Networks
Basic principles and topics of fundamental importance in the technology and architecture of data and computer communications. Focus on key topics in principles, design approaches, and standards. Compares and contrasts the applications of these topics in specific areas of current technology.
Prerequisites & Notes
PRQ: Admission to the graduate program in computer science or consent of department.
Credits: 3
CSCI 513 - Software Development and Engineering
Engineering principles to develop dependable software systems. Software life cycle models and process including requirements gathering, architectural patterns and tactics, design patterns, various test granularity, and automated techniques for testing. Agile process in teams using collaborative environments. Extensive laboratory work.
Prerequisites & Notes
CRQ: CSCI 501 or CSCI 502; and consent of department.
Credits: 4
CSCI 514 - Operating Systems
Basic operating system abstractions, mechanisms, and their implementations. Operating system support for concurrent processes and threads and their synchronization. Resource management for CPU, memory, and I/O. Distributed services, including communications across a network; and the client-server model, and distributed operating systems.
Prerequisites & Notes
CRQ: CSCI 501 or consent of department.
Credits: 3
CSCI 515 - Principles of Compilers
Introduction to parser and compiler construction. Topics include formal languages and grammars, lexical analyzers, and parsers, including stack-based, bottom-up, top-down, recursive descent, and table driven approaches. Code generation for arithmetic expressions, basic variables, decisions, loops, functions, symbol tables, error checking, register allocation techniques, arrays and records, recursion, scope, object-oriented issues, I/O, exception handling, and optimization techniques. Extensive laboratory work with a focus on compiler development.
Prerequisites & Notes
CRQ: CSCI 501 or CSCI 502 or consent of department.
Credits: 3
IV. Theory
Students must complete one course from the following:
- CSCI 601 - Theory of Computation Credits: 3
- CSCI 602 - Design and Analysis of Algorithms Credits: 3
CSCI 601 - Theory of Computation
Introduction to automata theory, formal languages, and computability theory with an emphasis on how these topics relate to computer and computer programs. May not be taken by students with undergraduate credit for CSCI 401.
Credits: 3
CSCI 602 - Design and Analysis of Algorithms
Advanced techniques for the design and analysis of algorithms with emphasis on computational problems that are central to both theory and practice. Techniques include divide-and-conquer recurrences, dynamic programming, greedy algorithms and other computational strategies. Concepts will be illustrated in pseudocode or a higher-level programming language.
Prerequisites & Notes
PRQ: Admission to the graduate program in computer science or consent of department.
Credits: 3
V. Specializations
Students must complete two courses from the following:
Data Analytics and Artificial Intelligence
- CSCI 636 - Pattern Recognition and Data Mining I Credits: 3
- CSCI 639 - Network Theory Credits: 3
- CSCI 640 - Advanced Data Management Credits: 3
- CSCI 641 - Big Data Analytics Credits: 3
- CSCI 642 - Information Storage and Retrieval Credits: 3
- CSCI 644 - Applied Machine Learning Credits: 3
- CSCI 646 - Modeling and Simulation Credits: 3
- CSCI 656 - Artificial Intelligence Credits: 3
- CSCI 657 - Natural Language Processing I Credits: 3
CSCI 636 - Pattern Recognition and Data Mining I
Concepts, and algorithms in pattern recognition, and machine learning. Topics include pattern clustering and classification, feature extraction, and selection. Data mining applications in various domains will be considered. PRQ: Admission to the graduate program in computer science or consent of department.
Prerequisites & Notes
CRQ: CSCI 501 or CSCI 502 or CSCI 503 or consent of department.
Credits: 3
CSCI 639 - Network Theory
Covers recent research on the structure and analysis of networks, and on models and algorithms that abstract their key properties. Three main topics are network analysis and mining (e.g., community detection, degree distribution), design of networks (e.g., small-world and scale-free models), and networks as computational models (e.g., disease spread, fuzzy cognitive maps). Application of research tools in network theory to work on open problems (e.g. in social networks, biological networks or telecommunication networks), and extensive programming through research experience. Extensive laboratory work.
Prerequisites & Notes
CRQ: CSCI 503 or consent of department.
Credits: 3
CSCI 640 - Advanced Data Management
Efficient management of large-scale data for effective use in areas like machine learning and data visualization. Modern data management including data ingest, data cleaning, data curation, provenance, and cloud storage.
Prerequisites & Notes
CRQ: CSCI 503 or consent of department.
Credits: 3
CSCI 641 - Big Data Analytics
Surveys the foundations of big data analytics, reviews relevant research, and introduces the algorithms and methods used to derive valuable predictions and insights from data. Merging theory with practice, it covers foundational topics while providing hands-on practical experience with useful languages, toolkits, and frameworks. Topics include, but are not limited to: big data management and processing techniques, algorithms for big data analytics, social media mining, recommendation systems, statistical methods, and models. Extensive laboratory work.
Prerequisites & Notes
CRQ: CSCI 503 or consent of department.
Credits: 3
CSCI 642 - Information Storage and Retrieval
Theory, design, implementation and evaluation of information retrieval systems and techniques. Covers web crawlers, link-based ranking algorithms, retrieval models, relevance feedback, text indexing, text categorization, digital libraries, search engines, and web search. Extensive laboratory work.
Prerequisites & Notes
CRQ: CSCI 503 or consent of department.
Credits: 3
CSCI 644 - Applied Machine Learning
Hands-on approach to state-of-the-art machine learning algorithms with primary focus on their practical aspects. Topics include data preparation, data visualization, model selection, model interpretation and model evaluation. Assignments will cover training, evaluation, interpretation and debugging of machine learning algorithms.
Prerequisites & Notes
PRQ: CSCI 503 or consent of department.
Credits: 3
CSCI 646 - Modeling and Simulation
Introduction to computational techniques for the design and analysis of computer simulations. Modeling paradigms (continuous models such as system dynamics and discrete models such as agent-based models), their implementation in a general purpose modeling environment, and the design and analysis of computer experiments (e.g., factorial design, Latin hypercube sampling). Extensive programming and team-based research projects.
Prerequisites & Notes
CRQ: CSCI 503 or consent of department.
Credits: 3
CSCI 656 - Artificial Intelligence
Heuristic algorithms for solving real-world problems and approximating human intelligence. Basic concepts and methods for knowledge representation, heuristic problem solving and automated learning. Exposure to a variety of domains in which artificial intelligence is used. Extensive laboratory work.
Prerequisites & Notes
CRQ: CSCI 503 or consent of department.
Credits: 3
CSCI 657 - Natural Language Processing I
Methods for computer processing of human language at the character, word and sentence level. Basic algorithms for spell checking, part of speech tagging and parsing. Approaches to research in NLP, including selection of machine learning algorithms and statistics. Extensive laboratory work.
Prerequisites & Notes
CRQ: CSCI 503 or consent of department.
Credits: 3
- CSCI 626 - Human Computer Interaction Credits: 3
- CSCI 627 - Data Visualization Credits: 3
- CSCI 630 - Computer Graphics: Modeling Credits: 3
- CSCI 631 - Computer Graphics: Rendering Credits: 3
- CSCI 633 - Digital Image Processing and Analysis Credits: 3
CSCI 626 - Human Computer Interaction
Introduction to the study of human-computer interaction, presenting historical information and abstract knowledge and how to apply it in the everyday world. Understanding of the term user and how to construct an incredible user experience. Exposure to the cognitive components that influence the experience, how to design for these components given a desired outcome, and how to evaluate the final product.
Prerequisites & Notes
PRQ: Admission to the graduate program in computer science or consent of department.
Credits: 3
CSCI 627 - Data Visualization
Introduction to data visualization with a focus on computer-based design approaches and techniques for manipulating and visualizing data. A variety of data sources and corresponding visualization techniques will be examined as an introduction to data analytics with topics including but not limited to scientific, social sciences, and medical data. Tools at all levels will be used, ranging from off-the-shelf desktop software to homegrown solutions. Extensive laboratory work.
Prerequisites & Notes
CRQ: CSCI 501 or CSCI 502 or CSCI 503 or CSCI 504 or CSCI 505 or consent of department.
Credits: 3
CSCI 630 - Computer Graphics: Modeling
Introduction to algorithms for creating high level computer graphics models from low level primitives. Topics include hierarchical primitive composition, linear and non-linear transformations, superquadrics, particle systems, fractal modeling, L-systems and graftals. Curves and surfaces including Bezier, rational Bezier, B-splines, NURBS, subdivision surfaces. Implicit surface generation, constructive solid geometry, volume modeling, image-based modeling. Strong programming component with a focus on algorithm implementation. Extensive laboratory work.
Prerequisites & Notes
CRQ: CSCI 501 or CSCI 502 or consent of department.
Credits: 3
CSCI 631 - Computer Graphics: Rendering
Introduction to fundamental algorithms of rendering computer graphical images. Emphasis on scan conversion approaches. Topics include color systems, basic primitive rendering techniques, 2D and 3D projective transformations, the graphics pipeline, clipping, scan conversion techniques, depth effects, lighting models, material properties, attribute mapping, image-based rendering. Strong programming component with a focus on algorithm implementation. Extensive laboratory work.
Prerequisites & Notes
CRQ: CSCI 501 or CSCI 502 or consent of department.
Credits: 3
CSCI 633 - Digital Image Processing and Analysis
Introduction to general principles and algorithms on digital image processing. Topics include concepts and algorithms of image enhancement, image segmentation, morphological image processing, image transforms, image registration and image feature extraction, algorithms on 3D and higher dimension image processing and analysis. Application of materials by implementing and investigating image processing algorithms. Extensive programming and team-based research projects. Extensive laboratory work.
Prerequisites & Notes
CRQ: CSCI 501 or CSCI 502 or consent of department.
Credits: 3
- CSCI 661 - Parallel and Distributed Programming Models Credits: 3
- CSCI 662 - Programming Non-traditional Architectures Credits: 3
CSCI 661 - Parallel and Distributed Programming Models
Topics will include message passing on distributed memory architectures and multithreading. Includes extensive programming and laboratory work. May not be taken by students with undergraduate credit for CSCI 490K.
Prerequisites & Notes
CRQ: CSCI 501 or consent of department.
Credits: 3
CSCI 662 - Programming Non-traditional Architectures
Topics include programming hardware accelerators like general purpose graphic processing units and field programmable gate arrays with an emphasis on applying these architectures to computer applications in modeling, simulation, and computational sciences. Includes extensive programming and laboratory work. May not be taken by students with undergraduate credit for CSCI 490E.
Prerequisites & Notes
CRQ: CSCI 501 or consent of department.
Credits: 3
- CSCI 651 - Applications of Graph Theory Credits: 3
- CSCI 652 - Algorithmic Bioinformatics I Credits: 3
CSCI 651 - Applications of Graph Theory
Graph theory is introduced with emphasis on its applications in sciences. Topics include basic graph concepts, algorithms, complexity analysis, and modeling real-life problems using graphs.
Prerequisites & Notes
PRQ: Admission to the graduate program in computer science or consent of department.
Credits: 3
CSCI 652 - Algorithmic Bioinformatics I
Comprehensive introduction to methodologies and applications of computational problems in bioinformatics, especially in comparative genomics. Topics include sequence alignment at genome-wide, genome comparison without alignment, genome rearrangements, detection of genomic signals, repeat analysis, and other computational problems. Introduction to molecular biology and algorithm design and analysis will be included. Course projects involve high-level programming languages. Extensive laboratory work.
Prerequisites & Notes
CRQ: CSCI 501 or CSCI 502 or CSCI 503 or CSCI 504 or CSCI 505 or consent of department.
Credits: 3
- CSCI 671 - Software Testing and Quality Assurance Credits: 3
CSCI 671 - Software Testing and Quality Assurance
Principles of software testing and analysis. Students will become familiar with various levels of testing such as unit, integration, system, performance, acceptance and stress testing. They will develop an understanding of test lifecycle planning, test design and coverage analysis, test case selection, and complexity measurements.
Credits: 3
VI. Electives
Students must complete electives courses to fill out their program. Elective course work includes CSCI courses in the range 500-798 that have not been used to satisfy another requirement.
Students who are planning to continue through the department’s doctoral program should take CSCI 701 - Research Methods in Computer Science, as one of their electives of the M.S. in Computer Science, preferably as early as possible.
Requirements (with degree specialization in Cybersecurity) (30)
Students must complete the required number of hours in each of the following areas:
- Core (18)
- Electives (6-9)
- Culminating (3-6)
Graduate-level courses for which there exists an undergraduate equivalent (typically courses that are offered as 400/500 courses) shall not constitute more than 50% of the hours applied toward a master’s degree.
No more than 2 courses receiving grades of C or C+ can be applied to degree program requirements.
Details for each degree program category are listed below.
I. Core
Students must complete the following courses:
- CYBR 511 - Cybersecurity Foundations Credits: 3
- CYBR 521 - Data Communications Credits: 3
- CYBR 531 - Computer Security and Penetration Testing Credits: 3
- CYBR 541 - Network Security Credits: 3
- CYBR 543 - Networks and Secure Protocols Credits: 3
- CYBR 598 - Cybersecurity Research Methodology and Scientific Writing Credits: 3
CYBR 511 - Cybersecurity Foundations
Introduction to the information assurance field with a focus on management issues; defining cybersecurity principles, analyze common security failures, and identify specific design principles that have been violated and the design principles involved or needed. It also defines potential system attacks and the actors that might perform them and describes cyber defense tools and methods.
Prerequisites & Notes
PRQ: Admission to the graduate program in computer science with a specialization in cybersecurity or consent of department.
Credits: 3
CYBR 521 - Data Communications
Discussion of the fundamentals of network communication. Topics include basic networking concepts, principles, and tools. These topics are covered in lectures, individual exercises, team exercises, and interactive competitive team projects that provide a thorough grounding in data communication, protocols, and networking principles.
Prerequisites & Notes
PRQ: Admission to the graduate program in computer science with a specialization in cybersecurity or consent of department.
Credits: 3
CYBR 531 - Computer Security and Penetration Testing
Introduction to a detailed study of computer security principles, mechanisms, and implementations to ensure data protection and security of computer systems. Focus on computer security issues in both UNIX and Windows operating systems, database security, understanding the systems issues in building secure computing platforms, computer security threats and attacks, including vulnerabilities in the password authentication system, file system, virtual memory system, and learn how to respond to potential violations. Also introduces students to the client-side penetration testing, web application penetration testing, and social engineering testing. Students will learn about the entire penetration testing process including planning, reconnaissance, scanning, exploitation, post-exploitation, and result reporting.
Prerequisites & Notes
PRQ: Admission to the graduate program in computer science with a specialization in cybersecurity or consent of department.
Credits: 3
CYBR 541 - Network Security
An introduction to the field of network security. Specific topics to be examined include threats and vulnerabilities to network architectures and protocols, Botnets, email security, IP security, network attack propagation modeling (traffic analysis, traceback mechanisms), network security management, security controls, and defense techniques.
Prerequisites & Notes
PRQ: CYBR 511 or CSCI 609, and CYBR 521 or CSCI 610; or consent of department.
Credits: 3
CYBR 543 - Networks and Secure Protocols
Advanced study of network protocols such as switching (Ethernet) ARP and RARP, routing and addressing in IPv4 and IPv6, network naming using DNS and NetBIOS, and network analysis/troubleshooting. Introduction to the cryptographic security protocols that provide TCP/IP security at various layers of the network protocol stack. Topics also include protocols for network authentication, key exchange, key management, link layer security, routing security (IPSec), and an overview of security protocols in wireless networks.
Prerequisites & Notes
PRQ: CYBR 541 or consent of department.
Credits: 3
CYBR 598 - Cybersecurity Research Methodology and Scientific Writing
Review of the major considerations and tasks involved in designing and conducting a thesis or research paper in cybersecurity. The goal is for students who successfully complete the course to be able to produce and defend the methodology of their proposed research and to be ready to carry out the various tasks involved in doing research. Offers an overview of research methodology including basic concepts employed in quantitative and qualitative research methods. Includes computer applications for cybersecurity research.
Prerequisites & Notes
PRQ: Admission to the graduate program in computer science with a specialization in cybersecurity or consent of department.
Credits: 3
II. Electives
Students must complete two to three of the following courses.
- CSCI 503 - Programming Principles in Python Credits: 3
- CSCI 602 - Design and Analysis of Algorithms Credits: 3
- CYBR 522 - Network Security Administration Credits: 3
- CYBR 532 - Intrusion Detection and Hacking Techniques Credits: 3
- CYBR 542 - Advanced Network Protocols and Standards Credits: 3
- CYBR 552 - 5G, VoIP, and Multimedia Security Credits: 3
- CYBR 562 - Wireless and Mobile Technologies Credits: 3
- CYBR 563 - Wireless Security Credits: 3
- CYBR 590 - Advanced Cybersecurity Topics Credits: 3
- Cybersecurity Ethics
- Device and Digital Forensics
- Formal Security Methods
- Hardware/Firmware Security
- Reverse Engineering
- Supply Chain Security
- Other, Emerging Topics in Cyber Security
CSCI 503 - Programming Principles in Python
Application of programming principles using the Python language. Covers fundamental elements of the object-oriented model, briefly introduces the functional programming paradigm, and illustrates concepts with a Python workflow including IPython Notebooks. Extensive laboratory work.
Prerequisites & Notes
PRQ: Admission to the graduate program in computer science or consent of department.
Credits: 3
CSCI 602 - Design and Analysis of Algorithms
Advanced techniques for the design and analysis of algorithms with emphasis on computational problems that are central to both theory and practice. Techniques include divide-and-conquer recurrences, dynamic programming, greedy algorithms and other computational strategies. Concepts will be illustrated in pseudocode or a higher-level programming language.
Prerequisites & Notes
PRQ: Admission to the graduate program in computer science or consent of department.
Credits: 3
CYBR 522 - Network Security Administration
Provides the foundations, advanced level knowledge, and skills in system administration in the UNIX and MS Windows server environments. Students will gain an understanding of core system administration topics and techniques and acquire the ability to identify major tasks in administering server systems, manage primary services on the system, employ basic security and performance tuning techniques, and troubleshoot common system problems.
Prerequisites & Notes
PRQ: Admission to the graduate program in computer science with a specialization in cybersecurity or consent of department.
Credits: 3
CYBR 532 - Intrusion Detection and Hacking Techniques
Fast-paced examination of the specialized security field of firewalls and intrusion detection systems (IDS). Provides a more detailed background and the need for firewalls and IDS, and examines the various kinds of threats that may be faced by an IDS and basic designs for IDS. Specific topics to be covered include firewall designs/architectures, configuring PIX, VPN, Host-based and Network-based IDS.
Prerequisites & Notes
CRQ: CYBR 511, CSCI 609, or consent of department.
Credits: 3
CYBR 542 - Advanced Network Protocols and Standards
A rigorous study of the principles, standards, and practices of data communications protocols with emphasis on the TCP/IP protocol suite. Topics will include reference models, network access layer protocols, internet layer protocols, transport layer protocols, and application layer protocols. These topics are covered in lectures, individual assignments, online assignments, and an interactive competitive team project.
Prerequisites & Notes
PRQ: CYBR 521, CSCI 610, or consent of department.
Credits: 3
CYBR 552 - 5G, VoIP, and Multimedia Security
Advanced-level course on multimedia traffic as well as 5G and beyond network security. Review of the general knowledge and techniques for streaming data traffic, such as VoIP and multimedia and introduces the architecture of the 5G network, SDN, and NFV. The security challenges unique to such traffic and technologies will be covered in detail, including disruption of service, QoS, theft of service, and violation of confidentiality. Relevant data encryption and authentication techniques will also be covered in detail.
Prerequisites & Notes
PRQ: Admission to the graduate program in computer science with a specialization in cybersecurity or consent of department.
Credits: 3
CYBR 562 - Wireless and Mobile Technologies
A rigorous study of the principles, standards, and practices of wireless telecommunications and mobile technologies. Topics include fundamentals of radio, wireless data communications and wireless telephony, GSM and CDMA, smartphone devices and operating systems, the regulatory compliance associated with mobile technology, and evaluation of the impact of IoT and mobile technology on global commerce. These topics are covered in lectures, individual assignments, online assignments, and a team project.
Prerequisites & Notes
PRQ: Admission to the graduate program in computer science with a specialization in cybersecurity or consent of department.
Credits: 3
CYBR 563 - Wireless Security
Provides advanced coverage of wireless networks and the special security problems they pose. Topics include measures taken to secure wireless personal area networks (PANs), wireless local area networks (WLANs), cellular wireless networks, and ad-hoc wireless networks. Threats, vulnerabilities and countermeasures specific to each type of network will be enumerated and studied in detail. Ad-hoc wireless network security will cover secure routing protocols and intrusion detection systems.
Prerequisites & Notes
Prerequisites: CYBR 562 or consent of department.
Credits: 3
CYBR 590 - Advanced Cybersecurity Topics
A thorough study of recent advancements in the cybersecurity field; a deeper dive into technical details than are often taught in regular courses; or topics not typically included in the MS-CYBR program. The following are examples of these topics that are offered subject to the availability of the resources:
Each topic may be repeated to a maximum of 9 semester hours when subject changes. Students may repeat multiple topics, each to its maximum.
Prerequisites & Notes
PRQ: Admission to the graduate program in computer science with a specialization in cybersecurity or consent of department.
Credits: 3
III. Culminating
Students must complete:
- CYBR 697 - Research Project Credits: 1-3
- CYBR 699 - Master's Thesis Credits: 1-6
CYBR 697 - Research Project
With approval of the program advisor, students will research, design, solve and implement a graduate project. Students select a cybersecurity research topic and prepare a research report in a format that conforms to normal academic/industry procedures. Students gather information on a cybersecurity research topic, which is later to be presented to an intended audience (a class, seminar, advisor, etc). May be repeated to a maximum of 3 semester hours. No more than 3 semester hours in CYBR 697 may be included in the master's degree.
Prerequisites & Notes
CRQ: CYBR 598 and consent of department; or consent of department.
Credits: 1-3
CYBR 699 - Master's Thesis
Upon approval of the program advisor, the student must complete a large research project spanning over at least two semesters. Students are expected to conduct original research on a specific topic under a faculty advisor's guidance, culminating in a thesis likely to be published. With the help of the advisor, students select a significant cybersecurity research topic to research and write an original work in a format that conforms to normal academic/industry procedures, which is later to be presented to an intended audience (a class, seminar, advisor, etc). May be repeated to a maximum of 6 semester hours.
Prerequisites & Notes
CRQ: CYBR 598 and consent of department; or consent of department.
Credits: 1-6
Apply for Admission
Explore Campus
Request Information
Contact Us
Graduate AdvisingaskCSCIgrad@niu.edu Graduate Admissions
askCSCIgrad@niu.edu Department Office
Psychology-Computer Science Bldg. Rm. 460, DeKalb, IL 60115
815-753-0378