Begin Your Journey Take the Next Step

This track requires completion of 30 credit hours (10 courses) of graduate-level coursework.

Core Foundation Courses | 9 credits

A student may test out of CS 500 and/or CS 504. Tests are administered during program orientation.

This is an introductory course in computer programming using a structured programming language. Representative topics include iteration, selection, procedures, functions, arrays, and classes.

A continuation of CS 500, utilizing a structured programming language and classes to further implement multidimensional arrays and other data structures including linked lists, stacks, queues, trees, and more. This course also provides introduction to recursion and data abstraction.
Prerequisite: Take CS-500

This hands-on course will introduce programming using Python on Windows and Linux platforms. Topics covered include basic programming concepts, regular expressions, basic data structures and algorithms, Boolean operations, and basic programming constructs including variables and types, string, arrays, sequential and parallel execution, assignments, decision and branching, loops, functions, procedures and calls, and basic debugging techniques.

Language Courses | 3-6 credits

Choose one or two courses. If two courses are taken from the language section below, one of them also counts as an elective.

Provides an introduction to the fundamental concepts of object-oriented analysis (OOA), design (OOD), and programming (OOP), and how object-oriented languages differ from procedural languages. Notation is used to teach the concepts of abstraction, encapsulation, modularity, hierarchy, and polymorphism. This course is designed for both programmers and analysts. Both C++ and Java are used to implement these objected-oriented concepts.

This course introduces the fundamentals of writing Windows applications, event-driven programming, and the GUI. Topics include dialogues, menus, controls, data types, scope and life of variables, objects and instances, fonts and graphics, simple file I/O, and other DLL procedures. VB.net is used in implementing various Windows applications.
Prerequisite: Take CS-500;

Introduces the .NET platform using C#, which is a modern object-oriented language to build interfaces with applications for both windows and the web. OLE Automation and Database (ADO.net) development will be introduced.
Prerequisite: Take CS-501

An object-oriented approach to programming digital objects using Flash and Action Script 3.0. These programming techniques will be applied to both arcade and adventure games.

Database Course | 3 credits

This course discusses goals and techniques in the design, implementation, and maintenance of large database management systems: physical and logical organization; file structures; indexing; entity relationship models; hierarchical, network, and relational models; normalization; query languages; and database logic.

Elective Courses | 9 credits

Choose three

This course provides an understanding of machine learning techniques. It offers the concepts and the tools the students need to implement programs capable of learning from data.

Addresses foundational principles making computers learn, plan, and solve problems autonomously; and driving modern intelligent agents on real-world applications for contemporary problems, such as deep learning, and data flows.

This course provides a theoretical and a practical understanding of machine learning focused exclusively on deep learning. The course will cover how deep learning can be used for unsupervised, classification, regression, and reinforcement learning across real world use cases, such as fraud detection, text classification, image processing, healthcare, and gaming. This course will use hands-on materials to supplement theoretical knowledge.

This laboratory-based course will focus on network defense concepts, tools and techniques. Topics such as defense in depth, network attacks, network hardening, firewalls, DMZ, VPN, proxy server, honeypots, secure network design, Data Loss Prevention, network forensics, and intrusion detection, prevention and response will be studied. This course will also cover network administration, network operations, and network security policies as they relate to network defense.
Prerequisite: Take CS-504 and CS-505

This course presents a number of cloud computing tools and technologies, including virtualization, web services, data analysis, and integration.

This course will provide advanced concepts of Python script programming. Topics covered include Functions, Design with classes, Multithreading, Networks, Client/server programming, Searching, Sorting and Complexity analysis.
Prerequisite: Take CS-504

Big Data Analytics is about harnessing the power of data for new insights. The course covers the breadth of activities, methods and tools that Data Scientists use. The content focuses on concepts, principles and practical applications that are applicable to any industry.

Project Courses | 6 credits

Discusses the design, analysis, and management of information systems: system lifecycle management, hardware and software selection and evaluation, the role of information systems in decision support and other functional areas of business, project management, systems development and analysis, module design, and techniques to reduce system complexity.

Required for students pursuing the nonthesis option in their program of study, the student works with a faculty advisor in defining a short research or implementation project. For a research project, the student surveys relevant literature, critically analyzes the state of the art, and possibly synthesizes improvements. For an implementation project, the student implements and tests a solution to the chosen problem; the project could involve a combination of research and implementation. At the end of the project, the student writes a report approved by the faculty member and makes a public presentation of the work.
Prerequisite: Take CS-620 or CS-604

Begin Your Journey Take the Next Step