Skip to main contentSkip to main navigationSkip to footer content

Course Descriptions

Computer Science

Course # Course Title Attributes Credits
COSC101 Fundamentals of Computer Science 3 Credits

This course presents a broad overview of the main areas of study in computer Science. Topics include computer organization, information processing, algorithms, and programming. The main ideas behind the theory and designs of Operating Systems, Databases, and Computer Networks, along with current views on the theory and practice of Software Engineering, and the basics of Artificial Intelligence are explored.

COSC123 Introduction to Data Science 3 Credits

This course introduces students to Data Science and Big Data. Topics include: visualizing data, linear algebra, statistics, probability, hypothesis and inference, gradient descent, collecting data, working with data, machine learning, k-nearest neighbors, naive Bayes simple linear regression, multiple regression, logistic regression, decision trees, neural networks, deep learning, clustering, natural language processing, network analysis, recommender systems, databases/SQL, MapReduce, and data ethics. 

COSC129 Data Science Programming I 4 Credits

This course introduces students to the programming language Python and the use of Python in Data Science. Students create programs using sequence, selection, repetition, functions, lists, tuples, dictionaries, sets, arrays, strings, files, and exceptions. Pre/Corequisites: COSC123-Introduction to Data Science and MATH158-Intro Statistics, and MATH217-Precalculus; or departmental approval.

COSC140 Data Science Programming II 4 Credits

This course is a continuation of COSC 129 Data Science Programming I. Students create programs using classes, recursion, searching, sorting natural language processing, data mining cognitive computing, machine learning, deep learning, and big data.
Prerequisites: COSC 129 Data Science Programming I; with a minimum grade of "C-" and MATH158-Intro Statistics, with a minimum grade of "C-"; or department approval. Pre/Corequisites MATH218-Discrete Math and MATH221-Calculus I; or departmental approval.

COSC157 Introduction to Java Programming 4 Credits

This course introduces students to the object-oriented, general-purpose programming language Java. Students create programs using sequence, selection, repetition, methods, classes, and arrays. Pre/Corequisites: COSC101-Fundamentals of Computer Science, and MATH217-Precalculus or higher; or departmental approval.

COSC168 Advanced Java Programming 4 Credits

This course is a continuation of COSC 157 Introduction to Java Programming. Students create programs using arrays, inheritance, interfaces, exception handling, file input, file output, recursion, and dynamic data structures.
Prerequisite: COSC157-Introduction to Java Programming with a minimum grade of "C-". Pre/Corequisites: MATH221- Calculus I and MATH218-Discrete Math; or departmental approval.

COSC170 C ++ for Engineers 4 Credits

This course introduces programing concepts and tools used to solve engineering problems. Programming fundamentals including branching and loops, functions, file handling, arrays, and data structures will be taught using the C++ programing language. Emphasis is placed on applications within engineering disciplines.
Prerequisite: MATH 203 College Algebra or higher; waiver by placement testing results; or permission of instructor.

COSC236 Computer Architecture 3 Credits

Description: This course presents the fundamentals of computer architecture through the use of the assembly language, the interface between hardware and software. Students are introduced to binary and hexadecimal number systems, machine language, and machine architecture. Assembly language topics presented include the assembly process, computer arithmetic, logical building blocks, comparison, addressing modes, input/output, branching, repetition, and processor implementation.
Prerequisite: COSC168-Advanced Java Programming with a minimum grade of "C-". Pre/Corequisite MATH222-Calculus II; or departmental approval.

COSC237 Data Structures and Algorithms 3 Credits

This course introduces students to the development and use of various data structures designed to solve problems with computers. The connection between algorithms and data structures is also considered. Data structures examined include arrays, strings, lists, stacks, queues, trees, graphs, linked lists, and tables as well as sorting, searching, and hashing algorithms. Students are given the opportunity, through laboratory projects, to implement these data structures and algorithms.
Prerequisite: COSC168-Advanced Java Programming with a minimum grade of "C-". Pre/Corequisite MATH222-Calculus II; or departmental approval.

COSC240 Data Visualization 3 Credits

This course introduces students to data visualization. Topics included in this course include: mapping data onto aesthetics, coordinate systems and axes, color scales, visualizations, visualizing; amounts, distributions, many distributions at once, proportions, nested proportions, associations among two or more quantitative variables, time series and other functions of an independent variable, trends, geospatial data, uncertainty and the principles of feature design; proportional ink, overlapping points, color use pitfalls, redundant coding, multi-panel figures, titles, captions, tables, balancing data and content, larger axis labels, line drawings 3D visualizations.
Prerequisite: COSC 140 Data Science Programming II; OCT24-36 with a minimum grade of "C-" or departmental approval. Pre/Corequisite: MATH222-Calculus II; or departmental approval.

View elective and attribute information