Computer Science (CPSC)

CPSC 102  Spreadsheets  (1)  

This course introduces the student to an integrated spreadsheet application. Topics covered include: cell formulas and built-in functions, formatting, charting, templates, “what-if” analysis, pivot tables, macros and integration of spreadsheet data into a word processor. Graded S/U.

CPSC 103   Introduction to Computing  (2)  

This course includes a brief history of computing, uses of computers in networking and programming, and ethical issues in computing. Students learn to use a database application as they create and manipulate tables, forms, queries, reports, macros and other database objects.

CPSC 207  Computer Programming  (3)  

This course explores program development and design with objects; the designs are implemented in a commonly used, current programming language. The emphasis is on designing, writing, and correcting programs. Topics include the internal organization of the computer, procedures and functions, elementary data structures, and techniques of problem solving. No previous experience with computers is required. The course is focused around a weekly two-hour laboratory and provides in-depth programming experience.

CPSC 207L  Computer Programming Laboratory  (0)  

A weekly two-hour laboratory and provides in-depth programming experience.

CPSC 210  Introduction to Data Science  (3)  

This course is about learning from data in order to gain useful predictions and insights. Using concepts from computer science, mathematics, and statistics, students will learn the necessary skills to manage and analyze data, including exploratory data analysis, statistical inference and modeling, and machine learning. Prerequisites: CPSC 207 (or equivalent) and one semester of calculus (MATH 113 or 131 or equivalent). Includes lab.

CPSC 210L  Introduction Data Science Lab  (0)  
CPSC 307  C and Assembly Language Programming  (3)  

This course is designed to deepen a student’s understanding of how a computer works by studying the C programming language and how it interfaces with assembly language. A weekly laboratory provides experience in controlling the behavior of the computer in ways not possible in higher level languages. Topics include computer organization, assemblers, loaders, link editors, and memory management. Prerequisite: CPSC 207 or equivalent.

CPSC 308  Electronic Communications  (3)  

This introduction to data communications examines the fundamentals of network architecture including layers, protocols, client/server model, file transfers, and other low-level communications issues. Students will experience hands-on internet related programming including web page development using HTML, and CSS. Prerequisites: CPSC 207 or permission of instructor. Includes a lab.

CPSC 308L  Electronic Communications Lab  (0)  

Corequisite CPSC 308

CPSC 315  Simulation: Theory and Application  (3)  

Theory of computer simulation, including applications of discrete models of industrial and management systems. Topics include probability distributions, random number generation, queuing, design, and analysis of simulation experiments. Includes significant use of simulation software. Prerequisites: CPSC 207 and either MATH 114 or MATH 345.

CPSC 328  Data Structures  (3)  

This course introduces the concepts and techniques of structuring data for complex problems, and provides experience in accessing and processing this data. An object-oriented paradigm is used throughout the course. The course is designed especially for students who will choose a career in information technology. Prerequisite: CPSC 207. Includes a lab.

CPSC 328L  Data Structures - Lab  (0)  
CPSC 390  Special Topics  (3)  
CPSC 417  Systems Analysis and Design  (4)  

This course includes a study of systems, particularly those which lend themselves to computer representation, a study of systems analysis and design, and the completion of a major systems project done in a team environment. The project will involve the analysis of an actual system problem, the writing of a system proposal to solve the problem, the presentation of the proposal to the users of the system, and the design and construction of a prototype to implement the proposal. Prerequisite: CPSC 207 or permission of instructor.

CPSC 417L  Systems Analysis & Design lab  (0)  
CPSC 429  Database Systems  (3)  

Fundamental concepts of database development, in particular data modeling, database design, and database implementation, as well as managing, retrieving, and updating data within a relational database system. Hands-on experience includes use of the Structured Query Language (SQL) to define, construct, and query a database. Students complete a semester-long project done in a team environment. Prerequisite: CPSC 207 or permission of instructor.

CPSC 497  Independent Study  (1-3)  

Provides properly qualified students with an opportunity for independent study and careful consideration from an advanced standpoint of selected topics in computer science. Departmental approval required. May be repeated.

CPSC 499  Internship  (1-3)  

Professional work experience in computer science with a business or organization. Graded S/U. May be repeated.