Breadth-first study of computer science concepts. Topics include machine architecture, programming, problem-solving techniques, algorithms, operating systems, networking, security, computations, graphics, GUIs, Al, databases, software engineering, and social issues.
Become familiar with designing and writing programs in a high-level language. Programs will involve some technical applications in science and mathematics.
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.
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.
CS 160 with a minimum grade of C
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.
CS 160 with a minimum grade of C
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.
CS 301 with a minimum grade of C
Study concepts of engineering software systems. Design and implement a software system project using the team approach.
CS 200 with a minimum grade of C
Topics in computer science that reflect the specific interests of available instructors and the specific needs of the students.
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.)
Special Notes
Maximum concurrent enrollment is two times.
Study operating systems history, concepts/structure and design; process, processor, memory, file system and input/output management; and representative operating systems.
CS 301 with a minimum grade of C
Study data communications; network structure, design and architectures; network services and standardization; and respective networks all in the framework of the OSI model.
CS 301 with a minimum grade of C
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.
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.
Basics of Linux administration and scripting in an HPC environment. Utilizing an HPC cluster to carry out a significant research project.
CS 120 with a minimum grade of B
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.
CS 301 with a minimum grade of C
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.
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.