Skip to main content

COMPUTER SCIENCE (CS)


CS 101 - LOGIC AND COMPUTING

Prerequisite: 2 years high school algebra

Beginning with the building blocks of circuits and advancing through a collection of language abstractions, students use logic at several levels to gain a deep insight into how modern digital computers actually work. This course assumes no computer hardware or programming experience.

Credit: 3


CS 121 - COMPUTER PROGRAMMING I

Prerequisite: CS 101

An introduction to the design and development of object-oriented programs using the Java programming language.

Credit: 3


CS 122 - COMPUTER PROGRAMMING II

Prerequisite: CS 121

A continuation of CS 121. A further exploration of the principles, methods, tools and practices of object-oriented programming, including inheritance, recursion, object-oriented design, and GUI applications.

Credit: 3


CS 175 - WEB DESIGN

Prerequisite: None

An introduction to the World Wide Web, the creation of Web sites, Web page markup and styling languages, and client side programming.

Credit: 3


CS 221 - THE LINUX OPERATING SYSTEM

Prerequisite: CS 101

A study of Linux concepts, usage, and programming.

Credit: 3


CS 230 - DATA STRUCTURES

Prerequisite: CS 122; MATH 223

Formal specification of abstract data types using an object-oriented language with examples of their uses in computer science: records, stacks, queues, linked lists, hash table, heaps, and trees.

Credit: 3


CS 260 - TOPICS IN COMPUTER SCIENCE

Prerequisite: None

This course is offered subject to student need, faculty availability, and with the approval of the department chair and college dean. Topics may include Advanced Java Programming, and Introduction to UNIX. Repeatable for different topics.

Credit: 3


CS 275 - WEB PROGRAMMING

Prerequisite: CS 101 and CS 175

A continuation of CS 175, with emphasis on Web services and server-side programming using PHP.

Credit: 3


CS 293 - INTERNSHIP

Prerequisite: Approved Learning Contract

Credit will be granted for field experience in computer studies relevant to the student's educational development and career goals. This work may be done on campus by providing technical assistance to faculty. Examples include Unix administration, maintaining the hardware lab, and preparing and running formal class laboratories for the introductory programming classes. Alternatively, this work may be done off campus. Prior approval of a CS faculty member is required. Does not count toward science electives. Internships range from 1 to 3 credits. The number of credits that may be earned directly correlates to the number of hours on site (1 credit per 40 hours with a minimum of 1 credit and a maximum of 3 credits).

Credit: 1-3


CS 301 - COMPUTER ARCHITECTURE

Prerequisite: CS 122

An introduction to the characteristics of computer systems at the digital logic and organization levels.

Credit: 3


CS 302 - THEORY OF COMPUTATION

Prerequisite: MATH 224 and MATH 250

An introduction to the logical and mathematical foundations of computer science. Topics discussed include models of computation, grammars and parsing, solvable and unsolvable problems, and P/NP complexity classes.

Credit: 3


CS 303 - COMPUTER ALGORITHMS

Prerequisite: CS 230 and MATH 224

An introduction to the design and efficiency of algorithms from both sequential and parallel perspectives, including identifying characteristics of sequential algorithms which are easily parallelizable and different parallel computing paradigms.

Credit: 3


CS 304 - THEORY OF PROGRAMMING LANGUAGES

Prerequisite: CS 230 and MATH 224

Issues in the design and implementation of a programming language including type models, control models, parameter passing, and storage management. Formalisms to describe the syntax and semantics of a programming language.

Credit: 3


CS 321 - ADVANCED PROGRAMMING

Prerequisite: CS 230

Presents concepts and hands-on experience for designing and writing programs using a contemporary programming language in solving real-world problems. Intended for junior/senior undergraduate computer science majors.

Credit: 3


CS 325 - MOBILE APPLICATIONS DEVELOPMENT

Prerequisite: CS 122

An introduction to the design and implementation of mobile applications for Android-driven hand-held devices.

Credit: 3


CS 393 - INTERNSHIP

Prerequisite: CS 230 and Approved Learning Contract

Credit will be granted for work experience in businesses, industries, research, and governmental organizations, providing the student with computer science programming and technology experience under the supervision of the on-site coordinator and a faculty advisor. An oral presentation and final internship project report are required. Does not count toward science electives.  Internships range from 1 to 3 credits. The number of credits that may be earned directly correlates to the number of hours on site (1 credit per 40 hours with a minimum of 1 credit and a maximum of 3 credits).

Credit: 1-3


CS 421 - PRINCIPLES OF OPERATING SYSTEMS

Prerequisite: CS 230 and CS 301

Introduction to the design and implementation of modern operating systems. Topics include processes, interprocess communication, I/O management, memory management, file systems, and security.

Credit: 3


CS 427 - COMPUTER GRAPHICS

Prerequisite: CS 303 and MATH 307

An introduction to computer graphics concepts. Several graphics algorithms will be presented and implemented. Graphics theory in clipping, rotation, three-dimensional graphics and other related topics will be explored.

Credit: 3


CS 433 - COMPUTER NETWORKS

Prerequisite: CS 230 and CS 301

Presents computer networks and internets from the lowest level of data transmission over hardware to the highest level of communication between software applications.

Credit: 3


CS 460 - ADVANCED TOPICS IN COMPUTER SCIENCE

Prerequisite: CS 230

This course is offered subject to student need, faculty availability, and with the approval of the department chair and college dean. Topics may include Neural Networks, and System Programming. Repeatable for different topics.

Credit: 1-3


CS 493 - INTERNSHIP

Prerequisite: Approved Learning Contract, CS 230, MIS 470 and either MIS 372 or SDD 241.

Credits will be granted for positions with participating companies/research organizations/governmental sectors that provide students with proficient application of computer science and software engineering knowledge and practices, exploration of real-world problems and developing solutions, creativity and innovation, and evaluation of the outcomes under the supervision of the on-site coordinator and a faculty advisor. Requirements include two on-site consultations, two university consultations, completion of progress reports, oral presentation, and a final internship project report. Internships range from 1 to 3 credits. The number of credits that may be earned directly correlates to the number of hours on site (1 credit per 40 hours with a minimum of 1 credit and a maximum of 3 credits). It may be counted as 400-level CS electives if taken for 3 credits.

Credit: 1-3


CS 499 - SOFTWARE DEVELOPMENT

Prerequisite: SDD 241 or MIS 372

Application of product engineering methods to the design and development of software - quality assurance, project management, requirements analysis, specifications, design, development, testing, production and maintenance.

Credit: 3