CPSC - Computer Science

CPSC - Computer Science

CPSC 1105  Introduction to Computing Principles and Technology  (3-0-3)  
This course explores foundational computing principles and computational thinking, focusing on emerging technologies like AI, data management and analysis, and security, and their impact on modern professional environments.
CPSC 1107  Introduction to Application Programming  (3-0-3)  
This course introduces Python programming, emphasizing practical problem-solving across diverse fields. It covers core programming concepts, object-oriented design, algorithmic thinking, and methods for processing and analyzing data.
Restriction(s):

Enrollment is limited to Undergraduate Level level students.

CPSC 1301K  Computer Science I  (3-3-4)  
This course introduces an overview of programming and computational problem solving. It includes a lab component with hands-on activities to apply and reinforce topics covered in real-world contexts.
CPSC 1302K  Computer Science II  (3-3-4)  
Prerequisite(s): (CPSC 1301 with a minimum grade of C or CPSC 1301H with a minimum grade of C or CPSC 1301K with a minimum grade of C or CSCI 1301K with a minimum grade of C or CPSC 1301I with a minimum grade of C) and MATH 1113 (may be taken concurrently) with a minimum grade of C
A continuation of CPSC 1301K. 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 1305  Introduction to Computing Principles and Technology Lab  (0-3-1)  
This course provides hands-on experience with core information technology applications aligned to industry standards, digital literacy, and emerging AI tools, while building career-ready skills. By the end of the course, students will possess the foundational knowledge and skills required to pursue industry-recognized certification or earn a verified digital badge. **This course can be taken with or without CPSC 1105.
CPSC 1555  Selected Topics in Computer Science  ((1-3)-0-(1-3))  
Study of introductory topics of special interest, independent study, or directed experience in the field of computing. Course may be taken three times. A maximum of three credit hours may be applied to the degree program.
Repeatability: Repeatable for credit up to 2 times or 3 hours.
CPSC 2105  Computer Organization  (3-0-3)  
Prerequisite(s): (CPSC 1301 with a minimum grade of C or CPSC 1301H with a minimum grade of C or CPSC 1301K with a minimum grade of C or CPSC 1301I with a minimum grade of C) and MATH 2125 (may be taken concurrently) with a minimum grade of C
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 2108  Data Structures  (3-0-3)  
Prerequisite(s): (CPSC 1302 with a minimum grade of C or CPSC 1302H with a minimum grade of C or CPSC 1302K with a minimum grade of C) and MATH 2125 with a minimum grade of C
This course delves into problem-solving and algorithm analysis through recursion and abstract data types. Emphasis is placed on the design, implementation, and performance analysis of various algorithms.
CPSC 2115  Information Technology Fundamentals  (3-0-3)  
This course provides students with a foundation in the fundamentals of Information Technology to include the fundamental knowledge of the hardware, software and skills necessary to set up and securely use a computer, keep it in good working order and perform basic support for PCs and simple computer networks. The lessons include practical setup guides, as well as hands-on labs for the student to practice their new skills before deploying these technologies and strategies in a production network. Upon completion, a student will be prepared to take and pass the CompTIA IT Fundamentals+ industry certification exam.
CPSC 2125  Internet Programming  (3-0-3)  
Prerequisite(s): CPSC 1301 with a minimum grade of C or CPSC 1301H with a minimum grade of C or CPSC 1301K with a minimum grade of C or CPSC 1301I with a minimum grade of C
This course introduces Internet programming and front-end web development, covering essential concepts, techniques, and tools used in creating interactive, responsive websites, and multimedia content.
CPSC 2555  Selected Topics in Computer Science  ((1-3)-0-(1-3))  
Prerequisite(s): CPSC 1301K with a minimum grade of C or CPSC 1301 with a minimum grade of C or CPSC 1301H with a minimum grade of C or CPSC 1301I with a minimum grade of C or CPSC 1301X with a minimum grade of C
Study of topics of special interest, independent study, or directed experience in the field of computing.
Repeatability: Repeatable for credit up to 2 times or 6 hours.
CPSC 3105  Digital Multimedia Development  (3-0-3)  
Prerequisite(s): CPSC 2125 with a minimum grade of C or CPSC 2125H with a minimum grade of C
This course teaches the student digital design principles and techniques. Students will learn how to create digital multimedia that can be used in software applications and Web sites. As part of this, students will develop an understanding of digital image theories, develop an understanding of how to create digital multimedia, analyze the needs associated with creating this multimedia, become familiar with the digital multimedia development process and available tools, and then implement this process while applying their knowledge to create a working, digital multimedia application or Web site.
CPSC 3107  Introduction to Cloud Computing  (3-0-3)  
Cloud Computing (CC) has disruptively joined the mainstream of Information & Communication Technology as a paradigm shifting computing from being a product to becoming a utility/service. This course introduces students to the fundamentals of CC, by first inspecting its evolving through computing history, how it evolved to becoming a paradigm, then investigating its principles, services, models, and the enabling technologies behind, e.g., virtualization and distributed systems. The course exposes students to Openstack, as the most renowned open-source CC infrastructure. Therefore, it provides them with real-world skills to deploy their own private cloud. The course concludes with Edge Computing as the next step in CC evolution.
CPSC 3111  COBOL Programming  (3-0-3)  
Prerequisite(s): CPSC 1302 with a minimum grade of C or CPSC 1302H with a minimum grade of C or CPSC 1302K with a minimum grade of C
Introduction to programming in COBOL. Emphasis on structured design techniques. Computer assignments required.
CPSC 3116  z/OS and JCL  (3-0-3)  
Prerequisite(s): CPSC 1302 with a minimum grade of C or CPSC 1302H with a minimum grade of C or CPSC 1302K with a minimum grade of C
This course presents an overview of IBM mainframe operating systems currently in use in the area. It includes common terminology, the most used JCL features, and an introduction to the scripting language REXX and its variants.
CPSC 3118  Introduction to Human-Computer Interaction  (3-0-3)  
Prerequisite(s): CPSC 1302 with a minimum grade of C or CPSC 1302H with a minimum grade of C or CPSC 1302K with a minimum grade of C
This course examines the intersection of design, psychology, and computing through the lens of Human-Computer Interaction (HCI). Students explore how people engage with technology and apply these insights to the design and development of interactive systems that emphasize usability, accessibility, and user experience.
CPSC 3121  Assembly Language Programming I  (3-0-3)  
Prerequisite(s): (CPSC 2105 with a minimum grade of C or CPSC 2105H with a minimum grade of C) and (CPSC 1302 with a minimum grade of C or CPSC 1302H with a minimum grade of C or CPSC 1302K with a minimum grade of C)
An introduction to assembly language for mainframes or PC's. Topics include machine architecture (registers, memory, instruction formats), character data processing, decimal arithmetic, binary arithmetic, subroutine and program linkage.
CPSC 3125  Operating Systems  (3-0-3)  
Prerequisite(s): (CPSC 2105 with a minimum grade of C or CPSC 2105H with a minimum grade of C) and CPSC 2108 with a minimum grade of C
An introduction to basic operating system level software concepts. Course topics include processes, threads, symmetric multi-processing, thread synchronization and memory management techniques.
CPSC 3126  Programming for Data Science  (3-0-3)  
Prerequisite(s): CPSC 1301 with a minimum grade of C or CPSC 1301H with a minimum grade of C or CPSC 1301K with a minimum grade of C
This course introduces programming techniques for data manipulation, covering data import from various formats. It also explores foundational data visualization methods and basic applications of AI and statistical analysis for data insights.
CPSC 3131   Database Systems I  (3-0-3)  
Prerequisite(s): CPSC 1302 with a minimum grade of C or CPSC 1302K with a minimum grade of C or CPSC 1302H with a minimum grade of C
This course covers the fundamental principles of database systems, with a focus on design, implementation, and application development using SQL. It explores database models, data integrity, normalization, and the management of data within file systems.
CPSC 3137  Natural Language Processing and Text Mining  (3-0-3)  
Prerequisite(s): CPSC 1301K with a minimum grade of C
This course focuses on programming techniques for mining and analyzing text to discover patterns, extract meaningful information, and support decision-making in real-world problems.
CPSC 3156  Transaction Processing  (3-0-3)  
Prerequisite(s): CPSC 3111 with a minimum grade of C
An introduction to interactive processing in a transaction-based computer system. Topics include multitasking, multi threading, maps, pseudo conversational programming and large system design. Standard tools, such as CICS and REXX for CICS will be discussed. The course will include an introduction to SOA (Service Oriented Architecture).
CPSC 3165  Professionalism in Computing  (2-0-2)  
The social impact, implications and effects of computers on society, and the responsibilities of computer professionals in directing the emerging technology. Includes the examinations of reliable,risk-free technologies, and systems which provide user friendly processes. Specific topics include an overview of the history of computing, computer applications and their impact, the computing profession, and the legal and ethical responsibilities of professionals.
Restriction(s):

Freshman or Sophomore students may not enroll.

CPSC 3175  Object-Oriented Design  (3-0-3)  
Prerequisite(s): CPSC 2108 with a minimum grade of C
This course explores object-oriented software design patterns, highlighting the use of the Object-Oriented Paradigm for problem-solving and software development to effectively design, model, and implement software solutions.
CPSC 3415  Information Technology (IT) Practicum  (0-5-1)  
The course is designed for Information Technology (IT) majors, offering them the chance to enhance their IT skills through hands-on practical experiences. It can be taken for credit up to three times, provided that each repetition explores different IT units or experimentation with a different IT domain and industrial tool(s).
Repeatability: Repeatable for credit up to 2 times or 3 hours.
Restriction(s):

Freshman students may not enroll.

CPSC 3555  Selected Topics in Computer Science  ((1-3)-0-(1-3))  
Prerequisite(s): CPSC 1302 with a minimum grade of C or CPSC 1302K with a minimum grade of C or CPSC 1302H with a minimum grade of C
This course explores special topics in computer science, offering an in-depth study of emerging technologies and contemporary IT trends not covered in the standard curriculum. It provides flexibility to examine rapidly evolving areas, highlighting cutting-edge developments and their practical applications.
Repeatability: Repeatable for credit up to 2 times or 6 hours.
Restriction(s):

Freshman students may not enroll.

CPSC 4000  Baccalaureate Survey  (0-0-0)  
This is a zero-credit hour course that must be taken in the last semester prior to graduation. It includes an outcomes assessment for the major and an exit survey. (S/U grading)
CPSC 4111  Game and Simulation Programming I  (3-0-3)  
Prerequisite(s): (CPSC 3118 with a minimum grade of C and CPSC 3175 with a minimum grade of C)
This course introduces game programming and emphasizes the complete development process, guiding the creation of a fully functional 2D game using a modern game engine.
CPSC 4112  Game and Simulation Programming II  (3-0-3)  
Prerequisite(s): (CPSC 4111 with a minimum grade of C and CPSC 4113 (may be taken concurrently) with a minimum grade of C)
This course explores the principles of 3D game development and advanced concepts in multiplayer and Massively Multiplayer Online Games (MMOGs), culminating in the creation of a fully functional 3D game using a game engine.
CPSC 4113  Game Jam  (0-3-1)  
Prerequisite(s): (CPSC 4111 with a minimum grade of C and CPSC 4112 (may be taken concurrently) with a minimum grade of C)
This course is designed for students in CPSC 4112 to collaborate in teams and develop a functional video game prototype within 48 hours. Students will apply their skills to design, implement, and deliver a complete game based on a theme provided at the start of the course, emphasizing creativity, teamwork, and rapid problem-solving.
CPSC 4115  Algorithms  (3-0-3)  
Prerequisite(s): CPSC 2108 with a minimum grade of C and MATH 5125U with a minimum grade of C
This course emphasizes the analytical study of data structures and algorithms, focusing on the evaluation of algorithms in terms of time and space complexity. It explores multiple algorithm design techniques in depth and examines the classification of problems into complexity classes.
CPSC 4121  Robotics Programming I  (3-0-3)  
Prerequisite(s): CPSC 1302 with a minimum grade of C or CPSC 1302H with a minimum grade of C or CPSC 1302K with a minimum grade of C
In this course the basic principles of Robotics programming will be introduced. Various types of robots will be programmed to accomplish a series of tasks. Topics include: Design and construction of robotic bases, Design and construction of attachments for specific tasks, Microcontroller architecture and programming, and Programming of robots to carry out assigned tasks.
Restriction(s):

Freshman students may not enroll.

CPSC 4125  Server-Side Web Development  (3-0-3)  
Prerequisite(s): (CPSC 2125 with a minimum grade of C and CPSC 3131 with a minimum grade of C)
This course covers the foundations of server-side full-stack web development, focusing on designing, implementing, and maintaining dynamic web applications.
CPSC 4131  Full Stack Web Development  (3-0-3)  
Prerequisite(s): CPSC 4125 with a minimum grade of C
This course introduces full-stack web development, emphasizing modern front-end and back-end frameworks, APIs, and related technologies. It also addresses security, accessibility, UI/UX design, and unit testing in web applications.
CPSC 4132  Web Development Projects  (3-0-3)  
Prerequisite(s): CPSC 4125 with a minimum grade of C or CPSC 4131 with a minimum grade of C
This course is a continuation of CPSC 4131, Introduction to Server-Side Web Development. This is a project-based class. Teams consisting of 3-4 students will develop working prototypes of large-scale web applications. Teams and their individual members will be required to make presentations reflecting progress through each stage of the project development: task formulation, analysis, prototyping and design, coding, debugging and testing. The final report will include a demonstration of the fully functional project.
CPSC 4135  Programming Languages  (3-0-3)  
Prerequisite(s): CPSC 3175 with a minimum grade of C
This course provides a basis for the understanding of complex modern programming languages including their foundation, implementation, and formal description.
CPSC 4145  Computer Graphics  (3-0-3)  
Prerequisite(s): CPSC 3175 with a minimum grade of C
This course introduces the input, construction, storage, retrieval, manipulation, alternation, and analysis of computer graphics objects, as well as graphics computer hardware, graphics primitives, two-dimensional and three-dimensional viewing and transformations, and basic modeling.
CPSC 4148  Theory of Computation  (3-0-3)  
Prerequisite(s): CPSC 4115 with a minimum grade of C or CPSC 5115U with a minimum grade of C
This course explores the foundations of computation, including formal languages, automata, and computational models, emphasizing the principles, limits, and complexity of what can be computed.
CPSC 4155  Computer Architecture  (3-0-3)  
Prerequisite(s): (CPSC 1302 with a minimum grade of C or CPSC 1302H with a minimum grade of C or CPSC 1302K with a minimum grade of C) and CPSC 2105 with a minimum grade of C
This course examines computer hardware, system software, and data concepts from a security perspective, emphasizing the design, organization, and operation of modern computing systems. It provides a foundation for understanding hardware-software interactions, memory and data management, and the principles behind emerging architectures.
CPSC 4157  Computer Networks  (3-0-3)  
Prerequisite(s): CPSC 2108 with a minimum grade of C
This course explores advanced networking concepts and skills, with an emphasis on the design, implementation, and management of modern network technologies. It also addresses network reliability, routing and forwarding, mobility, security, and emerging trends in the field.
CPSC 4175  Software Engineering  (3-0-3)  
Prerequisite(s): CPSC 3175 with a minimum grade of C
This course covers the fundamental principles of software engineering, emphasizing the methods, tools, and best practices used throughout the software development life cycle to create, maintain, and evolve reliable software systems.
CPSC 4176  Senior Software Engineering Project  (3-0-3)  
Prerequisite(s): CPSC 4175 with a minimum grade of C
This course emphasizes a team-based approach to developing complex, real-world projects, guiding students through all phases of the software development life cycle with a focus on teamwork, collaboration, and effective communication.
CPSC 4185  Artificial Intelligence and Machine Learning  (3-0-3)  
Prerequisite(s): CPSC 2108 with a minimum grade of C
This course introduces the fundamental concepts and techniques of artificial intelligence, emphasizing the design and application of intelligent systems to solve complex, real-world problems. It covers both the theoretical foundations and practical methodologies used to create AI solutions across diverse domains.
CPSC 4205  IT Senior Capstone  (3-0-3)  
This capstone course for IT majors, taken in the final semester, focuses on a team project integrating knowledge and skills from prior IT courses.
Restriction(s):

Enrollment limited to Senior students.

CPSC 4505  Undergraduate Research  (0-0-(1-6))  
Prerequisite(s): CPSC 2108 with a minimum grade of C
Students work in conjunction with a faculty member to select a research topic, complete a written research proposal and execute a research plan. Students will prepare both written and oral presentations of their work and present their work at one or more local, regional or professional meetings, or submit their work for publication.
Repeatability: Repeatable for credit up to 5 times or 6 hours.
Restriction(s):

Enrollment limited to students in the Department Prerequisite college.

CPSC 4555  Selected Topics in Computer Science  ((1-3)-0-(1-3))  
Prerequisite(s): CPSC 2108 with a minimum grade of C
Study of topics of special interest in computer science, or directed experience in computer science by means of lecture, discussion, seminar, and research.
Repeatability: Repeatable for credit up to 2 times or 6 hours.
Restriction(s):

Freshman or Sophomore students may not enroll.

CPSC 4698  Internship  (0-0-(1-3))  
Work experience on an approved project supervised by a faculty member. May be repeated for a maximum of three credit hours. (S/U grading.)
Repeatability: Repeatable for credit up to 2 times or 3 hours.
Restriction(s):

Freshman or Sophomore students may not enroll.

CPSC 4899  Independent Study  (3-0-3)  
Course project approved and supervised by a faculty member. May be taken only once for credit.
Repeatability: Repeatable for credit up to 2 times or 6 hours.
Restriction(s):

Freshman or Sophomore students may not enroll.

CPSC 6000  Graduate Exit Examination in Computer Science  (0-0-0)  
This is a zero credit hour course that should be taken in the last semester prior to graduation. Students need to complete the exit exam, survey, and interview to satisfactorily complete the course. (S/U grading).
Restriction(s):

Enrollment is limited to Graduate Level level students.

CPSC 6103  Computer Science Principles for Teachers  (3-0-3)  
This course introduces the AP Computer Science Principles (AP CSP) framework as well as tools and methods to teach such curriculum. Students will be exposed to the seven Computational Thinking Practices, the 6 big ideas as delineated by the framework, assessment methodology and tools to teach this curriculum. Topics include Computational Thinking practices, Creativity, Abstraction, Data and Information, Algorithms, Programming (using block-based programming languages), the Internet, and Global Impact.
Restriction(s):

Enrollment is limited to Graduate Level level students.

CPSC 6105  Fundamental Principles of Computer Science  (3-0-3)  
Overview of basic concepts in computer science ranging from computer hardware components, interconnection network structures and communication protocols, analysis of computer algorithms to software systems and applications. May not be applied to a graduate computer science degree program. Need a B or better to show proficiency.
Restriction(s):

Enrollment is limited to Graduate Level level students.

CPSC 6106  Fundamentals of Computer Programming and Data Structures  (3-0-3)  
Computer programming, declaration of variables, definition of abstract data types, data manipulation, conditional statements, loops, functions and routines, standard input/output control, file manipulation, object-oriented programming, and data structures. May not be applied to a graduate computer science degree program. Need a B or better to show proficiency.
Restriction(s):

Enrollment is limited to Graduate Level level students.

CPSC 6107  Survey of Modeling and Simulation  (3-0-3)  
This course introduces the discipline of Modeling and Simulation by surveying its paradigms and methodologies as well as important and related disciplines. The Monte Carlo, continuous, and discrete event simulations are introduced as a foundation. Topics include input data analysis, model development, verification and validation, output data analysis, animation, and design and analysis of experiments using simulation software. The course requires knowledge of Calculus and Statistics.
Restriction(s):

Enrollment is limited to Graduate Level level students.

CPSC 6109  Algorithms Analysis and Design  (3-0-3)  
The need for efficient algorithms arises in nearly every area of computer science. This course covers the modern theory of algorithms, focusing on the themes of efficient algorithms and intractable problems. The course introduces many of the techniques that apply broadly in the design of efficient algorithms, and studies their application in a wide range of application domains and computational models. Topics include Basic Data Structuring Problems, Recursion, Computational Complexity, Graph Algorithms, Greedy Algorithms, Dynamic Data Structures, Hashing, Approximation Algorithms, Linear programming, Parallel Algorithms and Novel Approaches to NP-Complete Problems. The course requires familiarity with Java Programming Language.
Restriction(s):

Enrollment is limited to Graduate Level level students.

CPSC 6114  Applied Machine Learning  (3-0-3)  
This course offers a comprehensive introduction to machine learning, employing the Python programming language and relevant libraries. It covers a wide array of machine-learning approaches and advanced feature engineering techniques to improve data quality and interpretability for machine-learning applications. Furthermore, the course equips the students with an understanding of the far-reaching consequences and obligations associated with the advancement and utilization of AI technologies in our society.
Restriction(s):

Enrollment is limited to Graduate Level level students.

CPSC 6119  Object-Oriented Development  (3-0-3)  
This course teaches object-oriented developing techniques and how to create advanced applications using classes, components, and objects. Fundamentals of developing client applications that include database access using server-level components. Topics include creating and managing objects, creating data services, testing, deploying and maintaining a component based solution.
Restriction(s):

Enrollment is limited to Graduate Level level students.

CPSC 6121  Data Science and Big Data Analytics  (3-0-3)  
Prerequisite(s): CPSC 6114 with a minimum grade of C
This course drives the student through the different stages of the Data Science process with an emphasis on Data Analytics, and its application to Big Data in particular. The course presents the infrastructure and technology needed to carry out NoSQL and big data analytics, in terms of both storage and processing. Students will gain a solid understanding of the various NoSQL database types, distinguishing their specific use-cases and advantages in the broader data ecosystem. The course presents relevant (Big) Data Analytics tools in the Cloud and demonstrates how the Cloud constitutes a major technology enabler in the Big Data realm, for instance HDFS (Hadoop Distributed File Systems) and Spark.
Restriction(s):

Enrollment is limited to Graduate Level level students.

CPSC 6124  Deep Learning  (3-0-3)  
Prerequisite(s): CPSC 6114 with a minimum grade of C
This course provides students with a comprehensive understanding of deep learning methodologies and their practical applications. The curriculum covers a range of topics, including in-depth explorations of various deep neural network architectures, their underlying computations, and the skills needed to construct and train deep neural networks. Students will also gain hands-on experience in implementing deep learning models for diverse tasks and discuss ethics in machine learning systems.
Restriction(s):

Enrollment is limited to Graduate Level level students.

CPSC 6125  Operating Systems Design and Implementation  (3-0-3)  
This course provides an overview of the issues in the design and functioning of operating systems, including the synchronization of concurrent activity in both centralized and distributed systems. This course’s main topics are deadlocks, scheduling, performance analysis, operation system design, and memory systems including distributed file systems.
Restriction(s):

Enrollment is limited to Graduate Level level students.

CPSC 6127  Contemporary Issues in Database Management Systems  (3-0-3)  
This course provides an overview of modern database management systems and issues relating to these systems. Topics include developing a logical model, deriving the physical design, creating data services, creating a physical database, and maintaining a database in a variety of environments.
Restriction(s):

Enrollment is limited to Graduate Level level students.

CPSC 6136  Human Aspects of Cybersecurity  (3-0-3)  
Prerequisite(s): CPSC 6126 with a minimum grade of C
This course examines the human behavioral and psychological aspects that create a complex system of cybercrimes and ethical and moral violations in the Internet. Students analyze various cybercrimes and cyber incidents that impact human life, and discuss how the human factor can be controlled or manipulated in order to create a more secure cyberspace.
Restriction(s):

Enrollment limited to students major in Cybersecurity Management or Applied Computer Science.

Enrollment is limited to Graduate Level level students.

CPSC 6138  Mobile Systems and Applications  (3-0-3)  
Prerequisite(s): CPSC 6119 with a minimum grade of C
This course explores the post-desktop model of computing that makes use of mobile systems. Topics include wireless communication protocols, mobile data and power management, context awareness, privacy and security, mobile gaming, and the mobile application development process.
Restriction(s):

Enrollment is limited to Graduate Level level students.

CPSC 6147  Data Visualization and Presentation  (3-0-3)  
This course introduces the principles of computer-based visualization including data representation, scalar, and vector visualization as well as image, volume and information visualization. The large amount of data that is generated in modern systems offers an opportunity to use computer-based visualization for analysis. Students will create their own data visualizations and learn how to use data visualization tools.
Restriction(s):

Enrollment is limited to Graduate Level level students.

CPSC 6157  Network and Cloud Management  (3-0-3)  
This course is specifically designed to focus on the protocols, skills and tools needed to support the development and delivery of advanced network and cloud services over the Internet. This graduate-level course is also focused on mastering technical details in a number of areas of advanced networking through reading and hands-on activities of important research topics in the field. The topics covered in this course include 1) network and cloud basics; 2) protocols; 3) network and cloud security; 4) mobile computing; 5) software-defined networking; 6) network and cloud management; 7) data center management; 8) big data analytics and cloud.
Restriction(s):

Enrollment is limited to Graduate Level level students.

CPSC 6175  Web Engineering and Technologies  (3-0-3)  
This course teaches the fundamentals of Web technologies and Web site development. This course covers many open technologies including XML and its related standards.
Restriction(s):

Enrollment limited to students major in Applied Computer Science.

Enrollment is limited to Graduate Level level students.

CPSC 6177  Software Design and Development  (3-0-3)  
This course emphasizes the practice and quality assurance of the software engineering process. Studies and practices skills, methods, and tools adopted at each phase of the software development life cycle including requirements engineering, design, development, testing, deployment, and maintenance. Other subjects include software testing and quality assurance with an emphasis on the role of testing in the software development life cycle. It covers commonly used software testing strategies and test design techniques.
Restriction(s):

Enrollment limited to students major in Applied Computer Science.

Enrollment is limited to Graduate Level level students.

CPSC 6179  Software Project Planning and Management  (3-0-3)  
This course centers on the practice of a software engineering process and includes topics of life-cycle models for software development. It addresses issues associated with the successful management of software development including planning, scheduling, tracking, cost and size, measurement, estimating, risk management, configuration, management quality, and engineering and process improvement.
Restriction(s):

Enrollment limited to students major in Applied Computer Science.

Enrollment is limited to Graduate Level level students.

CPSC 6185  Intelligent Systems  (3-0-3)  
This course equips students with a comprehensive understanding of Artificial Intelligence (AI) and its practical applications, emphasizing the capacity to address complex real-world challenges that defy conventional algorithmic solutions. It delves into the core theories underpinning methodologies for crafting intelligent systems, encompassing the handling of uncertainty, learning from experience, and the emulation of problem-solving strategies observed in nature.
Restriction(s):

Enrollment is limited to Graduate Level level students.

CPSC 6555  Selected Topics in Computer Science  (3-0-3)  
This course covers topics of special interest in the field of computing. Course may be repeated for credit with department approval and a different topic.
Repeatability: Repeatable for credit up to 1 times or 6 hours.
Restriction(s):

Enrollment limited to students major in Applied Computer Science.

Enrollment is limited to Graduate Level level students.

CPSC 6698  Graduate Internship in Computer Science  (0-15-3)  
This course provides an opportunity to graduate students to apply knowledge gained in academic courses to the real world. Work undertaken during an internship must be relevant to the student’s program of study. The internship needs to be approved by the department chair. (S/U grading).
Repeatability: Repeatable for credit up to 1 times or 6 hours.
Restriction(s):

Enrollment is limited to Graduate Level level students.

CPSC 6899  Independent Study in Computer Science  (0-0-3)  
This is a project-based course to allow the student to explore a topic of their interest in computer science. The project has to be approved and supervised by an appropriate member of the graduate faculty.
Repeatability: Repeatable for credit up to 1 times or 6 hours.
Restriction(s):

Enrollment is limited to Graduate Level level students.

CPSC 6985  Research and Thesis  (0-0-3)  
This course is required by all students completing the thesis option of the MS in Applied Computer Science. It involves completion of a research project and defense of the project thesis in adherence to the School of Computer Science MS thesis policy. The project is to be designed in consultation with a thesis advisor who is a member of the graduate faculty of the School of Computer Science. (S/U grading)
Repeatability: Repeatable for credit up to 1 times or 6 hours.
Restriction(s):

Enrollment limited to students major in Cybersecurity Management or Applied Computer Science.

Enrollment is limited to Graduate Level level students.

CPSC 6986  Thesis Defense  (0-0-0)  
Department approval is required for this course. A satisfactory grade in the course indicates a successful oral defense of the thesis, the completion of edits and approval by the advisor or committee, and submission to the library. Degree candidates must be enrolled during the semester of their defense. S/U grading.
Repeatability: Repeatable for credit up to 2 times or 0 hours.
Restriction(s):

Enrollment limited to students in the Department Prerequisite college.