Computer Science Minor
The minor in computer science allows students to combine their study of software development with majors in their desired areas of application, preparing the students for various professional positions that involve computer programming as a component.
Students interested in graduate school in computer science are encouraged to complete a minor in mathematics, including linear algebra and differential equations. Graduate study in analysis of algorithms and the study of computability theory require an advanced understanding of mathematics.
The computer science minor requires a minimum of 20 credit hours.
All prerequisites must be completed prior to enrollment in the following courses.
Prerequisite: Two years of high school algebra.
An introduction to computer science through applications such as media. A major component is programming design and development using a language such as Python or Java. A disciplined approach to problem solving methods and algorithm development will be stressed using top-down design and stepwise refinement. Topics included are syntax and semantics, I/O, control structures, modularity, data types, and object-oriented programming.
Prerequisite: CSCI 251. Students must receive a grade of C or better in the prerequisites.
An in-depth study of data structures, including arrays, records, stacks, queues, lists, trees, heaps and hash tables. The study includes the definition, specification, and implementation of these structures, as well as examples of their uses. Also included is an introduction to the internal representation of information.
Prerequisite: CSCI 251.
An examination of both web-based and mobile applications. The course covers the design of client-server architectures, client side scripting, user interface design, and application and database interaction.
Prerequisites: CSCI 261 and CSCI 277.
A detailed examination of the use of database management systems. Topics include conceptual design, logical design, physical design, normalization, relational algebra, SQL queries, and an introduction to transaction processing.
Prerequisite: CSCI 262.
Systems engineering concepts for the design and implementation of computing projects. Project life cycle studies include rapid prototyping paradigms as well as the classical cycle of requirements, design and implementation phases. Project management is discussed, including considerations in selecting hardware platforms. The methodologies are reinforced through a group project. Must be taken in the junior year.