Computer Science Courses

CS 107 - Introduction to Computer Science

(Credits: 3.00)

This course is an overview of current and future digital technologies and trends. Students from a variety of backgrounds and majors will find this course interesting and helpful in understanding how advances in computer science have enabled 21st century life. Basic concepts of computer programming are explored through the creation of an interactive game, but no prior computer programming knowledge is needed. Students intending to pursue a major in computer science should take CS 118 as their first computer science course.

CS 118 - Principles of Interactive Media

(Credits: 3.00)

This course introduces the different aspects of computer-based interactive media and games, the critical approaches in developing them, and the tools for analyzing them. Students will discuss the process of game development, the roles of different participants in the development process, and how the technical and the artistic development proceed in tandem. Group work is emphasized. This course offers an introduction to programming for students intending to pursue a major or minor in computer science. 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)

The concentration of this course is on object-oriented analysis, design, and programming. Data abstraction, classes, methods, inheritance, exception handling, 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 provides a conceptual tour of the inside of a computer, and a study of computer components, their structure and function. Students will learn about the central processing unit, digital logic, computer arithmetic, data representation, instruction execution, and machine assembly languages. 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 using advanced features of markup languages (in particular, EXtensible Markup Language or XML), PHP, and other server-side scripting languages. 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 have the opportunity to incorporate concepts from all previous computer science courses to create a comprehensive interactive game or software. Students will work individually as well as in project teams on given problems to identify the main goal of the problem, analyze it and select several alternative solutions. Finally, the most feasible solution will be selected. This is a highly interactive course which includes learning new technologies and revisiting topics from both general education and major 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.