Academic Catalog

Computer Science/Programming (CSCI)

CSCI 100  Intro to Programming  (3 Credits)  
This course is an introduction to elementary programming techniques using modern programming languages. A wide range of programs will be written by the student and run on a computer. Students learn the techniques of looping, functions and sub/routines, arrays, variables and data types, user input/output, file input/output and appropriate programming practices.
CSCI 107  Joy and Beauty of Computing  (3 Credits)  
Examines the computing field and how it impacts the human condition. Introduces exciting ideas and influential people. Provides a gentle introduction to computational thinking using the Python programming language.
CSCI 111  Programming with Java I  (3 Credits)  
This course offers a thorough introduction to the concepts behind object-oriented software development, including the terminology, and methodologies utilizing the Java Programming Language. This course provides the student with the fundamentals of programming with a focus on object-oriented techniques. These skills are needed to work effectively in the area of information technology. The ability to understand the relationship between data and the algorithmic manipulation of data is crucial in IT related fields.
Pre-requisite(s): CSCI 100  
CSCI 121  Programming with Java II  (3 Credits)  
This course covers some intermediate and advanced topics of the Java programming language as well as in introduction to Data Structures and Algorithms. The course explores the implementation of lists, stacks, and queues in addition to several standard sorting and searching algorithms. Students will also build a web application that interacts with a database.
Pre-requisite(s): CSCI 111  
CSCI 172  Intro to Computer Modeling  (3 Credits)  
Problem solving with spreadsheets and databases using the computer to analyze a set of data; presentation of results of analysis.
CSCI 176  Applied Mchn Lrng/Arti Intel  (3 Credits)  
This course delves into advanced techniques for integrating and deploying AI systems within organizational contexts. Students will develop expertise in connecting AI services with existing databases and applications, fine-tuning pre-built models for specific use cases, and implementing comprehensive workflow automation solutions. The course emphasizes practical deployment scenarios, system evaluation, and troubleshooting methodologies essential for maintaining robust AI implementations.
Pre-requisite(s): CSCI 100  
CSCI 191  Special Topics  (3 Credits)  
CSCI 194  CT Seminar  (2 Credits)  
This course introduces students to the information technology industry and covers basic technology literacy skills and concepts. Students will set educational goals and begin creating their portfolio.
CSCI 205  Programming Languages w/ C/C++  (3 Credits)  
The objective of this class is to provide students the opportunity of becoming proficient in the following programming languages: C, C++.
Pre-requisite(s): CSCI 111  
CSCI 206  .NET Applications  (4 Credits)  
This course covers advanced desktop and web application features of the .NET framework. Students will learn Exception Handling, Collections, Linq, Generics, Multithreading, .NET ADO.NET, ADO.NET Entity Framework, ASP.NET MVC and Razor Pages, and Object Oriented Programming. Students will use C# language and various relational Databases for all projects.
Pre-requisite(s): CSCI 111 and CSCI 240  
Course fee will apply.
CSCI 211  Client Side Programming  (3 Credits)  
This course focuses on the concepts client-side web development including AJAX Development covering JavaScript, TypeScript, DOM, Single Page Applications, and Asynchronous page updates.
Pre-requisite(s): CSCI 100  
Course fee will apply.
CSCI 215  Social & Ethical Issues in CS  (3 Credits)  
Exploration of ethical issues in the field of computing. Skills needed to identify and analyze various ethical concerns. Standard ethical concepts and theories, methods of ethical analysis. Strong emphasis on practical application of the ethical process.
Pre-requisite(s): or WRIT 101 or WRIT 121 or WRIT 201  
CSCI 221  System Analysis & Design  (3 Credits)  
This course studies the concepts and skills needed to analyze and design information systems. The primary focus in this course is to prepare the student to understand the systems development life cycle. Special emphasis is placed on business functions, process flows, dataflow diagramming, entity relationship diagramming, and database requirements. Students will be required to complete a semester project which includes a report and presentation.
Pre-requisite(s): CSCI 240 (may be taken concurrently) and (WRIT 101 (may be taken concurrently) or WRIT 121 (may be taken concurrently))  
CSCI 232  Int Data Structures & Algrthms  (4 Credits)  
The purpose of this course is to introduce you to essential data structures and algorithms that will serve as valuable building blocks for the remainder of your career as a computer scientist. In this class, we emphasize understanding of both (i) the methods for implementing fundamental data structures and algorithms and (ii) the ways in which these data structures algorithms can be used in code you will write for the remainder of your career.
Pre-requisite(s): CSCI 121 and CSCI 246  
CSCI 240  Databases and SQL  (3 Credits)  
This course focuses on the concepts of relational databases and includes tables, records and typed fields, primary and foreign keys, and database normalization, and a through coverage of Structured Query Language "SQL". Through a variety of exercises, the student will learn how to model a business enterprise using the entity-relationship approach to relational database design. The Oracle database is used for all exercises.
Course fee will apply.
CSCI 245  Modern Database Systems  (3 Credits)  
This course is a survey of modern relational and non-relational databases and their design and implementation. Hands on experience will be gained by working several different database management systems. Database selection and tradeoffs based on problem requirements will be a major focus.
Pre-requisite(s): CSCI 111 and CSCI 240  
Course fee will apply.
CSCI 246  Discrete Structures  (3 Credits)  
This course covers logic, discrete probability, recurrence relations, Boolean algebra, sets, relations, counting, functions, maps, Big-O notation, proof techniques including induction, and proof by contradiction.
Pre-requisite(s): (M 171 or M 172) ) and CSCI 121 (may be taken concurrently)  
Co-requisite(s): CSCI 121  
CSCI 257  Web Services  (3 Credits)  
This course covers the creation, deployment, consumption and orchestration of REST and GRPC Web Services. Both the Service Oriented and Microservice Architectures will be covered. Students will create services that produce and consume both JSON and Protocol Buffer data formats.
Pre-requisite(s): CSCI 111 and CSCI 240  
Course fee will apply.
CSCI 276  Application Security  (3 Credits)  
The course studies the best practices in the development of secure software applications. Through code reviews, students will analyze and test application code for security vulnerabilities such as SQL injection, XML injection, cross site scripting, buffer overflow, and improper error handling. Students will analyze different types of security attacks and discuss countermeasures to safeguard applications and data. Security issues of particular programming languages, platforms, and application types will also be discussed.
Pre-requisite(s): CSCI 111 and CSCI 240  
Course fee will apply.
CSCI 291  Special Topics  (1-3 Credits)  
Discusses topics of current interest in computer science. Identifies and offers various special topics under this course number.
CSCI 292  Independent Study  (1-3 Credits)  
This course is designed to meet specific learning needs of students. Typically, such independent study projects focus on learning opportunities not otherwise offered in our college curriculum. The student must seek prior approval of an instructor willing to serve as faculty sponsor. The student then intiaties a proposal describing, among other things, the number of hours to be spent on the study project, specific learning outcomes, and how evaluation is to be accomplished. The approved proposal will have signatures of the student, faculty, sponsor, department chair, and the Associate Dean.
CSCI 298  Internship  (1-3 Credits)  
This course is designed for the student who takes the initiative to perform work outside of and in addition to the normal school curriculum. If done properly, it can be a highly rewarding experience and aid the student's transition from school to work. Internship plans need approval from Department Administration and HR. Contact your program advisor for paperwork and procedural information.
CSCI 299  Thesis/Capstone  (2 Credits)  
This course is a self directed, integrated, and applied learning oppotunity that integrates the coursework, knowledge, and skills gained in Computer Technology coursework. Students will be matched with an organization that needs assistance on an Information Technology project. Students will work with the organization and assigned Computer Technology Faculty to complete project. Project demonstration and required documentation will be presented at project completion.