Undergraduate 2020-2021

College of Natural and Health Sciences

School of Mathematical Sciences

CS 101 Introduction to Computer Science

Breadth-first study of computer science concepts. Topics include machine architecture, programming, problemsolving techniques, algorithms, operating systems, networking, security, computations, graphics, GUIs, Al, databases, software engineering, and social issues.
3

Course Attribute

Liberal Arts Core Elective

CS 120 Introduction to Programming

Become familiar with designing and writing programs in a high-level language. Programs will involve some technical applications in science and mathematics.
3

CS 160 Structured Programming

Study the structured programming development methods; the data types, operators, expressions, control flow, and input and output of a specific structured programming language; and some elementary data structures and algorithms.
3

CS 200 Object-Oriented Analysis, Design, and Programming

Study the software development life cycle; elements of the object model; object-oriented data types and functions; object-oriented enhancements to structured programming; and additional data structures and algorithms.
3

Prerequisites

CS 160 with a minimum grade of C

CS 301 Algorithms and Data Structures

Internal representation and applications of lists, trees, graphs, sorting, searching, and hashing. Focus on the interactions among algorithm, data structures, and storage structures for the processing of data.
3

Prerequisites

CS 160 with a minimum grade of C

CS 302 Programming Languages

Basic components of programming languages. Specification of syntax and semantics. Description of programming languages features. Examine a wide variety of languages with an emphasis on their structure, design, and use.

3

Prerequisites

CS 301 with a minimum grade of C

CS 350 Software Engineering I

Study concepts of engineering software systems. Design and implement a software system project using the team approach.
3

Prerequisites

CS 200 with a minimum grade of C

CS 395 Special Topics in Computer Science

Topics in computer science that reflect the specific interests of available instructors and the specific needs of the students
1- 3

Course Attribute

Variable Title Course

Repeatable Status

ST - Repeatable under different subtitles with no limits on the number of times it can be repeated

CS 422 Directed Studies

A plan should be submitted and approved by all computer science faculty. Individualized investigation under the direct supervision of a faculty member. (Minimum of 37.5 clock hours required per credit hour.)
1- 4

Special Notes

Maximum concurrent enrollment is two times.

Course Attribute

Variable Title Course

Repeatable Status

Course may be repeated 1 times

CS 440 Operating Systems

Study operating systems history, concepts/structure and design; process, processor, memory, file system and input/output management; and representative operating systems.

3

Prerequisites

CS 301 with a minimum grade of C

CS 442 Networking

Study data communications; network structure, design and architectures; network services and standardization; and respective networks all in the framework of the OSI model.
3

Prerequisites

CS 301 with a minimum grade of C

CS 454 Data Mining and Knowledge Discovery

This course considers the use of machine learning and data mining algorithms to discover knowledge embedded in datasets. Topics include techniques such as classification, clustering, predictive and statistical modeling.

3

Prerequisites

(MATH 311 or STAT 411 with a minimum grade of C)

CS 456 Neural Networks and Deep Learning

This course examines state-of-the-art AI approaches to deep learning using neural networks. Students will learn to design neural network architectures and training procedures via hands-on assignments and projects.

3

Prerequisites

(MATH 311 with a minimum grade of C or (CS 120 and MATH 221 and MATH 233 with a minimum grade of C))

CS 460 Problem Solving with Supercomputers

Basics of Linux administration and scripting in an HPC environment. Utilizing an HPC cluster to carry out a significant research project.
3

Prerequisites

CS 120 with a minimum grade of B

CS 480 Graphics

Study graphics theory and applications including the description and transformation of world, viewpoint, eye and screen coordinates, two and three dimensional graphics and hidden line algorithms.

3

Prerequisites

CS 301 with a minimum grade of C

CS 489 Project in Data Science

This is a project course in data science and related fields. Interdisciplinary teams will analyze a new data science problem, develop a model, and control for error and overfitting.

2

Prerequisites

STAT 411 with a minimum grade of C

Mutually Exclusive Course

Credit allowed for only one of these courses: CS 489 and STAT 489

CS 497 Senior Project

A significant computer project will be developed and implemented under the guidance of a computer science professor. A project proposal should be submitted and approved by all computer science faculty.
1- 8

Class Restriction

Include Senior

Repeatable Status

Course is repeatable with a maximum of 8 credit hours