CSCI 3710 Introduction to Discrete Structures 3 s.h.
Basic set theory, including functions and relations. Boolean algebra, propositional logic, regular expressions, and finite automata.
Prereq.: CSIS 2610 and MATH 1571 or MATH 1585H, or Math Placement Level 9 or 90.
CSCI 3750 Advanced UNIX and C Programming 3 s.h.
Use of UNIX programming environment and associated tools and utilities. Command language programming. Systems programming with ANSI C. May include UNIX internals and system administration.
Prereq.: CSIS 3700.
CSCI 3770 Concepts of Programming Languages 3 s.h.
Comparative survey of programming language paradigms, including imperative, object-oriented, event-driven, functional, logic-based, and concurrent programming languages. Design and tradeoffs of programming language features and implementation, including syntax, control structures, types, memory management, and security.
Prereq.: CSIS 3701.
CSCI 4850 Advanced Database Design and Administration 3 s.h.
Design, development, implementation, and administration of large database systems at the enterprise level, including logical data models, data security and assurance, concurrent processing, data distribution, data marts, data warehouses, data mining, and data extraction, cleansing, and loading.
Prereq.: CSIS 3722 with a grade of C or better.
Cross-Listed: CSCI 6950.
CSCI 4851 Data Science and Machine Learning 3 s.h.
Basic methodologies for the data science pipeline: data acquisition and cleaning, handling missing data, exploratory data analysis, visualization, feature engineering, modeling, interpretation, and presentation in the context of real-world datasets. Classical models and techniques for classification, clustering, anomaly detection, deep learning, and collaborative filtering.
Prereq.: CSIS 3722 with a grade of C or better.
Cross-Listed: CSCI 6951.
CSCI 4852 Deep Learning 3 s.h.
Foundations of neural networks and deep learning. Master the practical aspects of implementing deep learning solutions, using a hands-on approach to understanding both theory and practice. Key architectures in deep learning are covered, including feedforward networks, convolution neural networks, recurrent neural networks, long short-term memory networks, autoencoders and generative adversarial networks. Apply deep learning to real world problems.
Prereq.: CSIS 3722.
Cross-Listed: CSCI 6952.
CSCI 4855 Transformers: Large Language and Vision Models 3 s.h.
A comprehensive course about Transformer-based models. This course covers the inner workings of large language models such as GPT and BERT, and vision transformers such as ViT. Learn their architectures, applications, and how they revolutionize AI in language understanding and image processing. Hands-on projects and case studies will deepen your practical knowledge of these cutting-edge technologies.
Prereq.: CSCI 4852 with a grade of C.
Cross-Listed: CSCI 6955.
CSCI 4862 Server-Side Web Development and Programming 3 s.h.
Configuration of web server software and the use of server-side programming. Server-side scripting. Database access and drivers. Security issues, including access control and secured transmissions.
Prereq.: CSIS 3700 or CSIS 3701.
CSCI 4870 Biometrics 3 s.h.
Major biometric techniques, including face, fingerprint, voice and iris. Biometric methods with roots in computer vision, image processing, pattern recognition and machine learning.
Prereq.: CSIS 3700 or FSCI 3716/L or permission of instructor.
CSCI 4871 Cloud Computing and Big Data 3 s.h.
Fundamental knowledge of cloud computing and big data. Advances in cloud computing and data intensive computing environment across multiple disciplines. Students will build, manage, and program on popular cloud and big data platforms.
Prereq.: At least 3 semester hours of upper division CSIS or CSCI courses.
CSCI 4890 Computer Projects 2-4 s.h.
Individualized study of a topic in computer science culminating in a written report and an oral presentation. May be repeated up to 8 s.h.h. of upper-division CSCI courses) applicable to the minimum requirements of a computer science major, and formal project proposal.
Prereq.: 24 s.h. of computer science (including at least 3 s.
Gen Ed: Capstone.
CSCI 5801 Software Engineering 3 s.h.
Developing and maintaining complex software systems. Process and life-cycle models, and tools for software development (such as CASE). Specification methods, prototyping, validation and verification strategies, and version maintenance. Management of the system development process. A group project is required.
Prereq.: CSIS 3701 or graduate standing.
CSCI 5802 Software Tools and Practices 3 s.h.
A course that focuses on the different tools and techniques that software engineers typically use while developing software. Topics include current software engineering tools and practices, software testing, software architecture, version control systems, build and make systems, debuggers, static analysis tools, dynamic analysis tools, and design patterns. Students gain experience in multiple environments (Windows and a UNIX-based environment).
Prereq.: Junior standing and CSIS 3700 or CSCI 6901.
CSCI 5806 Operating Systems 3 s.h.
Study of the various components of operating systems including kernels and monitors, currency and parallel processing, processor management, storage management, device management, I/O processing and file management.
Prereq.: CSIS 3700 and CSIS 3740.
CSCI 5807 Compiler Design 3 s.h.
Study of compiler design and construction, including context-free languages, lexical analysis, parsing, code generation and optimization.
Prereq.: CSIS 3700 and CSIS 3740, CSCI 3710.
CSCI 5814 Computer Architecture 3 s.h.
Study of high-performance sequential computer architecture. Topics include performance evaluation, instruction set design, processor implementation techniques, pipelining, vector processing, memory hierarchy design, and parallel architecture.
Prereq.: CSIS 3700 and CSIS 3740.
CSCI 5820 Simulation 3 s.h.
Methods for modeling discrete event systems by algorithmic approaches using simulation languages.
Prereq.: CSIS 3700 and STAT 3743.
CSCI 5835 Artificial Intelligence 3 s.h.
Study of the theory and applications of intelligent systems. Topics may include general problem-solving techniques, knowledge representation and expert systems, vision and perception, and natural language processing. AI systems and languages.
Prereq.: CSIS 3700 or CSIS 3701.
CSCI 5840 Automata Theory 3 s.h.
Abstract models of computers, and the languages they generate or recognize. Finite state automata and regular expressions; Context-free grammars and pushdown automata; Turing machines. Limits of each model, including decidability and undecidability of computing-related problems. Applications of these models to areas such as input validation, security, language design, and compilers.
Prereq.: CSCI 3710.
CSCI 5849 Computational Methods for problems in the Physical Sciences 3 s.h.
CSCI 5849: Computational Methods for the Physical Sciences 3 s.h.
Provides application of the techniques discussed in the class to real world situations. Cross-Listed: MATH 5849 and PHYS 5849.
CSCI 5849: Computational Methods for the Physical Sciences 3 s.h.
Prereq.: MATH 3705 and PHYS 2610.
CSCI 5857 Encoding and Encryption 3 s.h.
Securing computer and information systems through encoding and/or encryption. Private and public cryptographic methods, digital certificates and signatures, cryptovariable techniques, key management, and database security issues.
Prereq.: CSIS 2605 or CSIS 2610; MATH 1513 or MATH 1552 or Math Placement Test of 4 or 40 or higher; and at least 3 s.h. of upper-division departmental courses.
CSCI 5858 Blockchain and Cryptocurrency Technologies 3 s.h.
This course introduces the fundamentals and mechanics of blockchain and cryptocurrency. Topics include an introduction to basic cryptography and cryptocurrencies, decentralization and mechanism of bitcoin, storage and transactions of bitcoin, mining of bitcoin, and regulation, platforms, and applications of bitcoin.
Prereq.: Senior standing or graduate student status.
CSCI 5870 Data Structures and Algorithms 3 s.h.
Study and application of analysis and design techniques to nonnumerical algorithms. Topics selected from algorithms acting on sets, trees, graphs; memory management; notions of complexity and related areas..
Prereq.: CSIS 3700 and CSCI 3710 or graduate standing.
CSCI 5895 Special Topics 2-4 s.h.
A study of special topics in computer science. Subject matter and credit hours will be announced in advance. May be repeated multiple times if topic is different.
Prereq.: At least 3 s.h. of upper-division departmental courses, and permission of chair.
CSCI 6901 Principles of Computer Programming 3 s.h.
Significant features of several computer programming languages to fit the needs of graduate students with no previous computer science experience. Programming techniques and problem analysis. Students will do programming projects appropriate for their needs.
CSCI 6905 Information Structures 3 s.h.
Basic concepts of information: modeling structures, machine level implementation, storage management, programming, language implementation, run-time structures, sorting, and searching.
Prereq.: CSCI 3710 and CSIS 3740, or permission of chair.
CSCI 6920 Theory and Practice of Information Systems 3 s.h.
A study of the relationship of information systems to individuals, organizations, and society. A detailed study of the principles, methodologies, and issues associated with designing, implementing, and administering information systems as a resource in a networked, data-driven organization.
CSCI 6930 Formal Languages and Syntactic Analysis 3 s.h.
Study of formal languages, especially context-free languages, and their applications to parsing and syntactic analysis.
Prereq.: CSCI 3710 or CSCI 6905.
CSCI 6940 Advanced Network Design and Administration 3 s.h.
Advanced network design, implementation, and administration. Topics include infrastructure and architecture, VLSM, logical and physical designs, security issues, voice over IP, client/server networks, and VLANs.
Prereq.: CSIS 3723 or CSIS 3783.
CSCI 6950 Advanced Database Design and Administration 3 s.h.
Advanced concepts in database design, development, and administration. Database query languages, transactions, and data warehousing. Relational calculus. System analysis; concurrency; backup and recovery, and security issues; advanced models, including distributed, object-oriented, and online databases.
Prereq.: graduate standing.
CSCI 6951 Data Science and Machine Learning 3 s.h.
Basic methodologies for the data science pipeline: data acquisition and cleaning, handling missing data, exploratory data analysis, visualization, feature engineering, modeling, interpretation, and presentation in the context of real-world datasets. Classical models and techniques for classification, clustering, anomaly detection, deep learning, and collaborative filtering.
Cross-Listed: CSCI 4851.
CSCI 6952 Deep Learning 3 s.h.
Foundations of neural networks and deep learning. Master the practical aspects of implementing deep learning solutions, using a hands-on approach to understanding both theory and practice. Key architectures in deep learning are covered, including feedforward networks, convolution neural networks, recurrent neural networks, long short-term memory networks, autoencoders and generative adversarial networks. Apply deep learning to real world problems.
Cross-Listed: CSCI 4852.
CSCI 6955 Transformers: Large Language and Vision Models 3 s.h.
A comprehensive course about Transformer-based models. This course covers the inner workings of large language models such as GPT and BERT, and vision transformers such as ViT. Learn their architectures, applications, and how they revolutionize AI in language understanding and image processing. Hands-on projects and case studies will deepen your practical knowledge of these cutting-edge technologies. Cross-Listed: CSCI 4855.
CSCI 6961 Client-Side Web Development and Programming 3 s.h.
Design and development of interactive, multimedia webpages. Effective uses of forms, graphics, and animation. Client-side programming tools, such as dynamic HTML, document object model, and JavaScript for graphics and form validation. Storyboarding techniques and user interface design principles.
Prereq.: CSIS 2617 or CSCI 6901.
CSCI 6962 Server-Side Web Development and Programming 3 s.h.
Configuration of web server software and the use of server-side programming. Server-side scripting in languages such as PHP and JavaServer Pages. Database access and drivers. Security issues, including access control and secured transmissions.
Prereq.: CSCI 6901 and graduate standing.
CSCI 6970 Biometrics 3 s.h.
Biometrics is an emerging and fast growing field that has found applications in a wide range of areas. This course will introduce major biometric techniques (face, fingerprint, voice and iris), focusing on the methods that have roots in computer vision, image processing, pattern recognition and machine learning. The course is designed to be project oriented. Student can choose a topic and develop it into a full project. Students who are interested in writing C++ codes and doing tests with OpenCV libraries are particularly encouraged to do so.
Prereq.: graduate standing.
CSCI 6971 Cloud Computing and Big Data 3 s.h.
The objective of this course is to provide an introduction of cloud computing and big data, including the background knowledge and embracing technologies. This course addresses the latest advances in hardware and software, cluster architecture, programming paradigms that emphasize in system performance, scalability, security, and energy efficiency. We also include hands-on experiences for students to practice on building, managing, and programming on contemporary cloud and big data systems. Research directions in cloud and big data will be introduced for graduate level study.
Prereq.: CSCI 6901 or graduate standing.
CSCI 6990 Computer Science Project 1-3 s.h.
Report and discussion of individual topics or research projects in computer science.
Prereq.: Nine semester hours of computer science courses numbered above 5000.
CSCI 6991 Data Engineering Capstone 3 s.h.
This capstone project is designed so students in the MCIS program get the chance to apply and demonstrate their skills and knowledge in SQL, NoSQL, RDBMS, Bash, Python, ETL, Data Warehousing, Machine and Deep Learning, BI tools, Big Data, Cloud and Distributed Computing, Networking and Security and Software Engineering. To be taken during the last semester of studies.
Prereq.: Nine semester hours of computer science courses numbered above 5000 and graduate standing.
CSCI 6993 Computing and Information Systems Graduate Internship 1-3 s.h.
An industrial/academic experience in information systems/technology. Employment for 15 to 20 hours per week. May be repeated once with the permission of graduate internship supervisor.
Prereq.: CSCI 6920 and permission of graduate internship supervisor.
CSCI 6995 Special Topics in Computer Science 1-4 s.h.
Special topics in computer science selected by the staff.
Prereq.: Permission of chair.
CSCI 6996 Independent Study 1-4 s.h.
Study under the supervision of a faculty member.
Prereq.: Permission of chair.
CSCI 6997 Seminar in Computer and Information Systems 1 s.h.
Overview of research methods and presentation techniques (written and oral) for advanced work in computer science and information systems. Will include presentations of current student/faculty research. Students will be required to deliver at least one conference-style presentation of their own in an area related to their research.
CSCI 6999 Thesis 3-6 s.h.
A student may register for six semester hours in one semester or for three semester hours in each of two semesters.