Computer Science (COSC)
COSC 5050. Independent Study. 1-3 Hours.
Students work on a specific research topic under a faculty member's supervision. The specific topic or problem is chosen from current trends and future research directions, which are not covered in the current Computer Science graduate curriculum. Therefore, the course content will vary based upon the topic that both the student and the mentoring faculty member choose. Variable Credit (1 to 3).
Prerequisite: Consent of instructor.
COSC 5300. Computer Science Internship. 3 Hours.
Students engage in a supervised work environment that provides on-the-job computer science related experience within a public, non-profit, or private organization. Under the supervision of a faculty internship coordinator, students apply computing knowledge and theory learned in the classroom to real-world applications, gain practical software coding and development skills, and get professional networking opportunities for their careers in computing and data science. Students are required to complete 240 hours of internship experience in analyzing, designing, developing, testing, implementing, and maintaining software.
Prerequisite: Department Approval.
COSC 5301. Quantitative Foundations of Computer Science. 3 Hours.
Students are provided the fundamental quantitative methods needed in the area of computer science (CS). Topics may include numbering systems, propositional logic, digital logic, combinatorics, probability and statistics, and automata theory, focusing on their application to computing and information science. This course serves graduate students without an undergraduate degree in a quantitative field by providing necessary stem work. This course may not be counted toward the requirements for a graduate degree in Computer Information Science, Digital Forensics, or Information Assurance and Security.
Prerequisite: Approval by the graduate advisor.
COSC 5302. Computer Science Core Topics. 3 Hours.
Students are provided a solid foundation of Computer Science core concepts, fundamental principles, generalizations, and theories essential to pursuing the CS graduate program. Topics may include computer programming, database systems, and computer networks. This course provides stem work for those graduate students whose undergraduate degrees are not in CS and thus have little exposure to core CS topics. This course may not be counted toward the requirements for a graduate degree in Computer Information Science, Digital Forensics, or Information Assurance and Security.
Prerequisite: Approval by the graduate advisor.
COSC 5310. Cryptography & Steganography. 3 Hours.
This course is designed to cover the theoretical and practical aspects of cryptography and steganography including specification, design, and programming. Topics may include digital signatures, symmetric and asymmetric (public key) algorithms, hash functions, cryptographic algorithms, cost to break algorithms including key safety, Diffie-Hellmann, RSA, key stores, Secure Socket Layers, Virtual Private Networks (VPN), Certificate Authorities, and important cryptanalysis and stegananalysis strategies.
COSC 5313. Artificial Intelligence. 3 Hours.
Students engage in a survey of topics in artificial intelligence. Topics may include: history of AI, knowledge representation, knowledge acquisition, search techniques, control strategies, and AI languages. Applications include natural language processing, neural nets, and expert systems.
COSC 5314. Programming for Artificial Intelligence. 3 Hours.
Students gain essential programming knowledge and practical computing skills needed to explore Artificial Intelligence (AI) and its real-world applications. Topics include programming methodologies, computing techniques, and tools for matrix manipulation, data engineering, data visualization, machine learning pipelines, performance evaluation, emerging AI applications, and deployment. Through interactive learning modules and hands-on exercises, students learn to apply programming and computing methods to key AI tasks and workflows. This course provides a preparatory foundation for students from diverse academic backgrounds who intend to pursue advanced studies in AI.
COSC 5318. Database Systems. 3 Hours.
Students engage in a survey of contemporary topics in database systems. Topics may include: relational database theory, database design issues, normalization, functional dependency, transaction management, indexing, query processing, security integrity issues, data recovery, concurrency problems, optimization, distributed database systems, the client/server model, object-oriented databases, logic/knowledge based systems, and other related topics.
COSC 5319. Algorithm Design and Analysis. 3 Hours.
Students examine the fundamental principles and paradigms of algorithm design and analysis, with a focus on their correctness, efficiency, and theoretical basis. Topics may include divide-and-conquer, greedy algorithms, dynamic programming, backtracking, branch and bound, randomized algorithms, and problem reduction and transform. Core concepts in computational complexity and computability theory are also introduced.
COSC 5320. Computer Architecture & Organization. 3 Hours.
Students are introduced to Computer Architecture and Organization. Topics may include computer evolution and performance issues, the computer systems including system buses, internal and external memory, input/output, and operating system support, CPU issues including computer arithmetic, instruction sets, addressing modes, RISC and superscalar organization, control unit issues, microprogramming, and parallel organization.
COSC 5321. Parallel Computing. 3 Hours.
Students study large-scale parallel processing systems. The central themes are theoretical models, machine architecture, computer algorithms, and programming languages that model, support, describe and implement parallel processing.
Prerequisite: COSC 5319.
COSC 5322. Real-Time and Embedded Systems. 3 Hours.
Students learn the fundamentals of embedded system design using mbed and apply it to rapidly develop embedded systems. Topics may include ARM mbed system, digital and analog input/output, ARM mbed programming techniques, serial communication, wireless communication (Bluetooth and Zigbee), internet communication and control, memory and data management, hardware clocks, power supply, timers, and interrupts.
COSC 5325. Operating System Security. 3 Hours.
Students are provided the rationale and necessity for a full range of security concepts and techniques and how to apply them to multiple operating systems. Students study methodologies for the design of operating system security and forensic techniques for operating systems as well as the identification of best practices in the administration, testing, and security for operating systems.
COSC 5326. Networks & Data Communications. 3 Hours.
Students explore computer communication networks, studying network types, communication protocols, routing, wired and wireless technologies, switching, security, and other core networking concepts.
COSC 5327. Operating Systems. 3 Hours.
Students examine the design and implementation of operating systems, focusing on system architecture, operating system services, system calls, process management, storage management, parallel operations within an OS, and key networking and security issues.
COSC 5329. Mobile Application Development. 3 Hours.
Students learn to create applications for various mobile platforms. Topics may include mobile application development frameworks, software engineering, mobile interface design, programming languages, data management, and application distribution.
COSC 5330. Malware. 3 Hours.
Students are provided an in-depth approach to the identification and deconstruction of malicious software, including static and dynamic analyses, malware deconstruction, and rootkit elimination. The course requires the use of virtual machines to isolate live malware samples, and access to a high-speed internet connection.
COSC 5332. Computer Graphics. 3 Hours.
Students study modern Computer Graphics programming techniques. Topics may include: representations, transformations, and analysis of 2-dimensional and 3-dimensional objects; techniques for hidden surface/edge removal, illumination and shading models, rendering, and practical exercises, using Modern OpenGLgraphics software libraries and applications.
COSC 5335. Database Security. 3 Hours.
Database security has an immense impact on the design of today’s electronic information systems. Students are provided an overview of database security concepts and techniques and discuss new directions of database security in the context of a connected commercial world. Students are provided the information needed to develop, deploy, and maintain a secure database solution. The pitfalls of database design, their means of identification and the methods of exploiting vulnerabilities are exposed. Topics may include database authentication, accounts security, wallets, encrypting data while transit and at-rest, database auditing and virtual private database.
COSC 5340. Special Topics. 3 Hours.
Topics and courses are selected to suit individual needs of students. The course may be repeated for additional credit.
Prerequisite: Approval by the graduate advisor.
COSC 6049. Thesis. 1-3 Hours.
This course focuses on the execution of the research project outlined in Thesis 1. During the graduating semester, students will carry out their research plan, analyze data, and draw meaningful conclusions. They will also develop strong academic writing skills for the preparation of a comprehensive thesis document. This course emphasizes effective project management, data analysis, and scholarly writing to ensure students are well-prepared to present their research findings and defend their thesis successfully. Course Equivalents: COSC 6349
Prerequisite: COSC 6348.
COSC 6312. Multimedia Forensics. 3 Hours.
Students examine the theory and practice of multimedia security and forensics. Topics may include image processing, JPEG compression, audio compression (MP3, Advanced Audio Coding, and VOIP), MPEG compression, multimedia source identification, biometrics, steganography, steganalysis, multimedia forgery detection, and pattern recognition techniques for multimedia analysis, multimedia forensics software, and advances in multimedia forensics.
Prerequisite: Approval by the graduate advisor.
COSC 6313. Neural Networks. 3 Hours.
Students are introduced to Neural Networks. Topics may include discussion of variety of standard neural networks, with architecture, training algorithm, and applications; and development of neural network expert systems.
COSC 6314. Data Mining/Knowledge Discovery. 3 Hours.
Students explores the emerging techniques and methodologies in Data Mining for the automatic extraction of latent information and knowledge from ever-evolving huge data. Topics include discussion of variety of data mining and computational algorithms as well as the logic behind the data mining approaches. Students will learn a comprehensive framework to collect, clean, process, extract novel information from large-scale data, and evaluate the result. Recent trends and applications will also be discussed. Course Equivalents: COSC 6414
Prerequisite: COSC 5318.
COSC 6315. Machine Learning. 3 Hours.
Students are provided with the principles, design, and implementation of a broad range of machine learning algorithms. Topics may include computational learning theory, machine learning algorithms, and algorithm assessment techniques. Both a computational aspect (how to compute the answer) and a statistical aspect (how to ensure that future predictions are accurate) of each machine learning algorithm are discussed. Recent trends and application are covered, as well.
COSC 6318. Language and Compiler Design. 3 Hours.
Students engage in a comprehensive study of computer programming languages. Topics may include: language design principles, formal grammars, procedural operating environment, language standardization, and language support for parallel and distributed programming. Language paradigms to be discussed will include procedural programming, logical programming, functional programming, and object-oriented programming.
COSC 6319. Software Engineering. 3 Hours.
Students explore strategies, techniques, and methodologies that deal with the complexity in developing large-scale information systems. Methods for Software engineering methodologies, conventional as well as object-oriented, are discussed. Software measurement and management are discussed. Formal mechanisms for system specification, software development, and project management are introduced.
Prerequisite: Approval by the graduate advisor.
COSC 6321. Distributed Computing. 3 Hours.
Students exam the principles and theories of distributed systems, which include MapReduce, Raft Algorithm, Remote Procedure Call (RPC), etc. In addition, real distributed systems, such as Google File Systems (GFS) and Distributed Transactions, are discussed as examples of recent distributed systems. The course emphasizes both lectures and programming labs, in order to help students validate their understanding through hands-on exercises.
Prerequisite: Graduate Standing.
COSC 6323. Responsible Artificial Intelligence. 3 Hours.
Students learn principles, tools, and hands-on practices for designing and evaluating AI systems responsibly. Topics may include reliability and calibration, robustness testing, dataset and model documentation, fairness concepts and metrics with bias mitigation, explainability for technical and stakeholder review, privacy-by-design and responsible data handling, governance and risk management, lightweight red-teaming, and post-deployment monitoring. Using interactive online modules and labs with common libraries, students produce audit-ready artifacts and apply assurance workflows to machine learning and large language models use cases. This course prepares learners to translate AI models into systems that are safe, fair, transparent, and accountable in real-world settings.
Prerequisite: Approval by the instructor or the CS graduate advisor.
COSC 6331. Data Visualization. 3 Hours.
Students organize and derive meaning from data by using visual presentation tools and techniques. Topics may include cognitive science, perceptual psychology, data management, data visualization theory, visual designs, evaluations of visual designs, and visualization application programming.
Prerequisite: Graduate Standing.
COSC 6332. Computer Vision. 3 Hours.
Students learn both theoretical and practical aspects of computer vision problems and applications. Topics may include camera models, multi-view geometry, image reconstruction, image processing, image classification, object detection, computational photography, and applications of deep learning techniques to computer vision problems.
Prerequisite: Graduate Standing.
COSC 6333. Deep Learning. 3 Hours.
Students examine the architectures, platforms, tools, trends, and research directions of deep learning. Topics may include the relevant algorithms, techniques, and methodologies of convolutional neural networks, recurrent neural networks, auto-encoders, generative adversarial networks, gated recurrent units, long short-term memory networks, deep reinforcement learning, and recent new deep learning architectures. Students get hands-on practices for analyzing real-world large data with deep learning open-sourced frameworks and software tools.
Prerequisite: Graduate Standing.
COSC 6335. Big Data Analytics. 3 Hours.
Students examine sophisticated analytical methods, approaches, and technologies for handling large-scale data characterized by exceptional volume, velocity, and variety. Topics may include the categories and attributes of big data, adaptable storage solutions, cost-effective processing strategies, emerging technologies, and research directions. Through practical exercises in collecting, archiving, manipulating, visualizing, and evaluating big data, students develop big data analysis and data science skills using open-source pipeline frameworks, programming tools and libraries, and their ecosystems.
Prerequisite: Graduate Standing.
COSC 6338. Data Science Capstone. 3 Hours.
Students conduct team-based capstone projects, which require student teams to apply the knowledge and skills they gained throughout the computer science graduate programs. Particularly, students target to solve real world data science problems and demonstrate their skills in data engineering, machine learning, data mining, big data analytics, data visualization, and other data science-related subjects. Through active learning, students develop effective oral, visual, and written scientific communication skills.
Prerequisite: Approval by the Graduate Advisor.
COSC 6347. Programming Practicum. 3 Hours.
The practicum provides the student an opportunity to develop their programming and analytical skills by applying concepts and techniques learned in organized classes to real world projects under the supervision of faculty and/or supervisory Computer professionals. Prerequisite: Eighteen hours of Computer and Information Science graduate level coursework. Student must register for this course every semester the practicum is in progress but only three hours of practicum will apply to the student's degree plan.
Prerequisite: Student must register for this course every semester the practicum is in progress but only three hours of practicum will apply to the student's degree plan.
COSC 6348. Thesis. 3 Hours.
This course is designed to guide Computer Science Master's students in the initial stages of their thesis research. In the proposal semester, students will work closely with faculty advisors to identify a research topic, conduct a comprehensive literature review, and formulate a research proposal. The course will emphasize the development of strong research questions, the exploration of relevant methodologies, and the creation of a robust research plan. By the end of this course, students will have a well-defined research proposal ready for approval.


