Computer Science Courses

CS 107 - Introduction to Computer Science

(Credits: 3.00)

This course introduces students to the basic concepts of web development and computer programming through the creation of simple web pages and interactive games. No prior computer programming knowledge is required, enabling students from a variety of backgrounds and majors to benefit from this survey of the fundamentals of computer science. This course also serves as a helpful introduction to students intending to pursue a major or minor in computer science.

CS 118 - Principles of Interactive Media

(Credits: 3.00)

This course introduces students to the design and development of interactive media, including responsive web pages and games. Students will explore the roles of different participants in the development process, how technical and artistic development progress in tandem, and the particulars of game development. This course offers a design-focused introduction to computer programming suitable as an elective for computer science or graphic design students seeking software design experience. Prerequisite: Familiarity with computers.

CS 212 - Structured Programming

(Credits: 3.00)

This course is an introduction to computer programming. Students will develop applications in Java using programming concepts such as iteration, decision making, user-defined functions and arrays. Prerequisite: CS 107 or departmental approval.

CS 213 - Object-Oriented Programming

(Credits: 3.00)

This course explores object-oriented analysis, design, and programming. Data abstraction, classes, methods, exception handling, inheritance and polymorphism are studied. Prerequisite: CS 212 or departmental approval.

CS 215 - Selected Topics

(Credits: 1.00 - 4.00)

This is a study of a particular topic in the field of computer science. This course may be taken more than once but no more than a total of four credits apply toward the major. Prerequisite: CS 212 and departmental approval.

CS 230 - Web Page Creation

(Credits: 3.00)

Modern techniques in web page analysis and design are used to create, maintain, and enhance Web pages. Issues of consistency, usability, interactivity, accessibility, and uniformity in the organization of the layout design are covered in addition to mark-up languages and client scripting. This course may be used toward an advanced core certificate. Prerequisite: Sophomore standing or department consent.

CS 235 - Social Networks: Behind the Scenes

(Credits: 3.00)

Students will analyze the structure and functionality of social networks, including the importance of security and privacy of user information. The course also will explore how memes arise and spread on social media and students will design a viral meme or app. This course may be used toward an advanced core certificate. Prerequisite: Sophomore standing or department consent.

CS 240 - Visual Programming

(Credits: 3.00)

The course introduces the design process of creating effective and user-friendly graphical user interfaces (GUI). Various components and behavior of graphical user interfaces including forms, controls, object manipulation, and application flow are covered. Corequisite: CS 212.

CS 250 - Game Programming

(Credits: 3.00)

This course focuses on creating games from conceptual design to development and ongoing maintenance. Topics such as game planning, graphics, effects, motion, collision, and more will be discussed in the context of programming. Corequisite: CS 213.

CS 304 - CAD and Digital Fabrication

(Credits: 3.00)

This course focuses on concepts and tools related to the design and creation of 3D objects via CAD (Computer-Aided Design) software and rapid prototyping technology (3D Printing). Lectures and labs focus on design methodologies, fabrication processes, and technical proficiency in industry-standard tools for computer-aided design and fabrication. Over the course of the semester, students will practice solving complex design problems and will create unique objects using cutting-edge technology. Prerequisite: ART 101 or CS 107 or CS 118 or CS 212 or instructor consent.

CS 305 - Computer Architecture

(Credits: 3.00)

This course explores the design of computer systems and components, including their structure and function. Students will learn about processor and instruction set design, digital logic, computer arithmetic, data representation, caches, and computer memory. Prerequisite: CS 212 or departmental approval.

CS 306 - Data Structures

(Credits: 3.00)

Students will learn the fundamentals of abstract data types and implement data structures including lists, trees, and queues. Students will then apply these data structures to program development to improve program efficiency based on algorithm complexity analysis. Prerequisite: CS 213.

CS 315 - Discrete Mathematical Structures

(Credits: 3.00)

Topics include logical reasoning, truth tables, and Boolean algebra; modular arithmetic, mathematical induction, and properties of the integers; functions, relations, and equivalence relations; an introduction to proofs and proof writing; and an introduction to graph theory. Also listed under MT 315. Prerequisite: at least a C in MT 196 or departmental approval.

CS 330 - Advanced Web Topics

(Credits: 3.00)

Students will study Web development in a client-server environment using PHP and AJAX. The course focuses on UNIX-based server programming and MySQL database interaction. Prerequisite: CS 212, CS 230.

CS 361 - Network and Telecommunications

(Credits: 3.00)

This course deals with how information is transmitted across a network, such as the internet. The concepts and theory of network topology, layered architecture, protocols, packet switching, routing, congestion and quality of service are covered. Prerequisite: CS 107 or department approval.

CS 390 - Technology Projects

(Credits: 1.00 - 3.00)

This is a directed study or practicum in which the student designs, implements, tests, and/or maintains a technology project including software, hardware, networking, etc. The project is assigned by the directing faculty member. The course may be taken more than once, but not for more than a total of three credits. Prerequisite: CS 212 and departmental approval.

CS 400 - Independent Study

(Credits: 1.00 - 3.00)

This course involves the independent study of the particular subject under the direction of a faculty member. Students will work with a faculty member throughout the semester to plan, research, implement and report on their projects. Prerequisite: B (3.0) average in computer science courses, junior or senior standing, consent of the department head and the cooperating faculty member prior to registration for the course.

CS 401 - Seminar

(Credits: 4.00)

This is a culminating experience for majors in computer science who are near the end of their program. The objectives of this seminar are to review fundamental concepts of mathematics; provide opportunities for students to integrate, synthesize and/or extend their knowledge base in the major; develop collaborative problem-solving skills in a peer group; and explore career opportunities available to graduates in mathematics and computer science. A faculty member acting as a facilitator will provide a list of topics to be covered and some problems for class discussion. Students will be expected to play a major role in planning and carrying out activities to meet the course objectives. This course is normally taken in a student's final year of upper-division coursework in the major. Prerequisite: Senior standing, MT 210 and department approval.

CS 402 - Computer Science Internship

(Credits: 1.00 - 3.00)

This course is designed to give students an opportunity to gain practical experience in the computer science career field by working with a participating firm or organization. CS 402 may be repeated for a maximum of 6 credits applicable to the computer science major. Prerequisite: Sophomore standing or above, completion of 12 minimum hours of computer science courses and departmental approval.

CS 405 - Advanced Interactive Software Implementation

(Credits: 3.00)

In this course, students will create a comprehensive interactive game or application and can work individually or as part of a team. This is a highly interactive course which includes both learning new technologies and revisiting topics from previous computer science courses. Prerequisite: CS 212.

CS 407 - Database Management Systems

(Credits: 3.00)

This course is a study of database design, implementation, and management. Students will learn Structured Query Language (SQL) and use industry standard database products to gain hands-on experience. Prerequisite: CS 212.

CS 415 - Systems Analysis and Design

(Credits: 3.00)

Information systems are built to perform a variety of tasks. This course deals with techniques employed in the analysis, design, implementation, management, and maintenance of information systems. Students, through course projects, will participate in the software engineering process. Teamwork is emphasized. Prerequisite: CS 213.