CSCI 111 - Computer Science I

3-2-4
Credit Hours: 4

An introduction to algorithm development and object-oriented programming, with an overview of computers, programming languages, and professional ethics. Programming topics include algorithms and problem-solving, fundamental programming constructs, and object-oriented software design. Students will use word processing and presentation software to collaboratively document and report on programming projects within the course. The course currently uses the Java and Python programming languages.

Additional Course Fees: $85

Prerequisite

FNMT 118 or MATH 118 or higher; (or MATH 161 placement) 

Course Offered Online: Yes

General Education Fulfillment: Technological Competency



CSCI 112 - Computer Science II

3-2-4
Credit Hours: 4

An introduction to object-oriented programming and algorithm development, with an overview of computers, programming languages, and professional ethics. Programming topics include algorithms and problem-solving, fundamental programming constructs, and object-oriented software design. Students will use word processing, presentation, and social networking software to collaboratively document and report on programming projects within the course. A continuation of CSCI 111, presenting fundamental concepts in computer science and object-oriented programming using the Java and C++ programming languages. Topics include recursion, using application programming interfaces (APIs), database connectivity, software validation, fundamental sorting and searching algorithms, parallel processing, and analysis of algorithmic complexity. Instruction in the use of electronic spreadsheet software to analyze and describe the spatial and temporal complexity of algorithms is a part of the course. 

Additional Course Fees: $85

Prerequisite

CSCI 111 with a grade of "C" or better

Course Offered Online: Yes

General Education Fulfillment: Technological Competency



CSCI 118 - Foundations of Data Science

2-2-3
Credit Hours: 3

An introduction to fundamental techniques and applications in Data Science and Big Data analytics. Students learn the processes for managing data analytics projects, practices for exploratory data analysis, fundamental statistical and analytical methods, technologies that support exploratory data analysis, and ethical issues encountered in data science and the consequences of data misuse. 

Additional Course Fees: $85

Prerequisite

FNMT 118 completed with a grade of "C" or better (or placement in MATH 161 or higher) and either CSCI 111, which may be taken concurrently or CIS 106, which may be taken concurrently.



CSCI 125 - Introduction to Video Game and Simulation Development

2-2-3
Credit Hours: 3

This course introduces students to professional video game and simulation development, including the modern video game industry and its historical development, game analysis and design, game programming technology and practices, graphics and sound technology used in games and simulations, and ethical issues related to video games and simulations. Students will learn about the game development process for both serious and casual games and the roles that various professionals play in that development. They will engage in a semester-long project to design, build, and publish an entry-level computer-based video game using a game development engine.

Additional Course Fees: $85

Course Offered Online: Yes



CSCI 211 - Data Structures and Algorithms

3-2-4
Credit Hours: 4

This course covers the theory and application of commonly used data structures and related algorithms for maintaining them. Emphasis is placed on efficiency, appropriate use, and the creation of encapsulated, object-oriented data structures. Students learn to implement iterative and recursive sorting algorithms, variations of linear data structures (linked lists, stacks, queues, and hash tables), variations of non-linear data structures (trees, heaps, and graphs), and the algorithms used process each structure's data. The course uses the Java, C++, and Python programming languages.

Additional Course Fees: $85

Prerequisite

CSCI 112 with a grade of "C" or better.

Course Offered Online: Yes



CSCI 213 - Computer Organization

3-2-4
Credit Hours: 4

This course introduces the fundamentals of the hardware environment that serves as the basis for the functional components of a digital computer system. Digital logic, machine-level representation of data, instruction sets and addressing modes, I/O devices and their interconnections, processor organization, and memory architectures are among the essential topics of the course. Students further examine assembly-level machine organization to create assembly language programs, implement I/O operations and interrupts, and describe how the instructions of a high-level language maps to assembly/machine instructions.

Additional Course Fees: $85

Prerequisite

MATH 163, which may be taken concurrently, and CSCI 111 with a grade of "C" or better.



CSCI 215 - Introduction to Android Development

2-2-3
Credit Hours: 3

This course prepares students to enter the mobile computing field. Students begin to prepare for these careers in a variety of entry-level positions such as mobile app developer, software developer, programmer, and mobile game developer. The course builds on a solid foundation of programming skills and design skills and introduces the specific skills needed for developing Android mobile/wireless applications. Students gain an understanding of mobile/wireless technologies and how these technologies are utilized and integrated to meet specific business needs. Current technologies and architectures that provide the network and communications infrastructure for mobile enabled systems are also covered. Students will learn to design mobile user interfaces and apply standards to create intuitive, usable and efficient applications. 

Prerequisite

CSCI 111 with a grade of "C" or better



CSCI 218 - Statistics for Computing and Data Science

3-2-4
Credit Hours: 4

Statistics for Computing and Data Science is a study of fundamental probability and statistical methods as they apply to the fields of computer science, data science, and precursory knowledge for further study in statistical computing. Major topics include descriptive and inferential statistics, basic probability theory, discrete and continuous distributions, and an introduction to estimation and regression. Students use a statistical programming language to apply course concepts, conduct experiments, and perform simulations. 

Additional Course Fees: $85

Prerequisite

MATH 161 with a grade of "C" or better (or higher placement) and either CSCI 111 with a grade of "C" or better or CSCI 118 with a grade of "C" or better.



CSCI 221 - Machine Learning

3-2-4
Credit Hours: 4

In this introduction to the mathematical foundations of machine learning, statistical models and algorithms for supervised and unsupervised learning will be implemented to perform classification, clustering, and rule learning. This course uses the Python and R programming languages.

Additional Course Fees: $85

Prerequisite

CSCI 118 with a grade of "C" or better or CSCI 218 with a grade of "C" or better.