CS Core Requirements
CS Requirements - 47 hours; 2.3 GPA
| CS 152 | 3 |
| CS 241 | 3 |
| CS 261 | 3 |
| EECE 238L | 4 |
| CS 251 | 3 |
| CS 257 | 3 |
| CS 293 | 1 |
| CS 341 | 3 |
| CS 351 | 3 |
| CS 361L | 3 |
| CS 362 | 3 |
| CS 451 | 3 |
| CS 460 | 3 |
| CS 481 | 3 |
Math Requirements - 17 hours
| Math 162 | 4 |
| Math 163 | 4 |
| Math 314 | 3 |
| Math 345 | 3 |
| Math 375 | 3 |
Writing and Speaking Requirements - 9 hours
| English 101 | 3 |
| English 102 | 3 |
and ONE of the following:
| C&J 130 | 3 |
| English 219 | 3 |
| English 220 | 3 |
Social and Behavioral Sciences Requirements - 6 hours
| American Studies | 182, 185 |
| Anthropology | 101, 130 |
| Economics | 105, 106 |
| Engineering | 200 |
| Geography | 102 |
| Linguistics | 101 |
| Political Science | 110, 200 |
| Psychology | 105 |
| Sociology | 101 |
Humanities Requirements - 6 hours
| American Studies | 186 |
| Classics | 107, 204, 205 |
| Comparitive Literature | 223, 224 |
| English | 150, 292, 293 |
| Modern Languages | 101 |
| History | 101, 102, 161, 162 |
| Philosophy | 101, 201, 202 |
| Religious Studies | 107 |
Foreign Language Requirements - 3 hours
Any lower division non-English course in Linguistics, Spanish, Portuguese, or Foreign Languages & Literature.Fine Arts Requirements - 3 hours
| Art History | 101, 201, 202 |
| Dance | 105 |
| Media Arts | 210 |
| Music | 139, 140 |
| Theatre | 122 |
The Fine Arts requirement must be fulfilled with a 3-credit studio in Art, Music, Theatre, Dance, Media Arts. Three 1-credit studio courses do not satisfy the requirement.
Lab Science Requirements - 14 hours
One of the following sequences of laboratory science must be included in the 14 hours:
| Astronomy | 270, 271-272L, 273L |
| Biology | 121L, 122L |
| Chemistry | 121L, 122L |
| Geo | 101-105L and 261L |
| EnvSi | 101-102L and 201L. |
| Physics | 160, 160L, 161; 161L Physics is recommended. |
The two remaining laboratory science classes can be more advanced courses in the discipline chosen for the sequence or they can be introductory laboratory science hours taken from this list.
Laboratory science courses other than those above are subject to the approval of the CS advisor. They must be, at least, at a level such that majors in that discipline earn credit in the course and must have substantial laboratory content.
Content Area Sequences
CS 152L Computer Programming Fundamentals (3)
CS 251L Intermediate Programming (3)
CS 351L Design of Large Programs (3)
The sequence CS 152L-251L-351L involves a comprehensive study of the fundamentals of computer programming. The language Java will be mastered and techniques and ideas of algorithmic program design, recursion, programmer team organization, structured programming, correctness, program specification, program testing, maintenance and modification and the use and implementation of various data structures and files will be covered. CS 152 and CS 251 are taught only in Java.
CS241 - Data Organization
CS341 - Introduction to Computing Systems
The sequence CS241-341 introduces students to the memory organization of data storage, comupter architecture and design, and assembly language programming. CS 241 is taught only in C.
CS 261 Mathematical Foundations of Computer Science (3)
CS 361L Data Structures and Algorithms I (3)
CS 362 Data Structures and Algorithms II (3)
The sequence CS 261-361Lintroduces the student to data structures and algorithms and the mathematics needed to analyze their time and space complexity. Topics include 0( ) notation, recurrence relations and their solution, sorting, hash tables, priority queues, search trees ( including, at least, one balanced tree structure), and basic graph representation and search. CS 362 introduces sophisticated data structures, algorithms that use them, and techniques for analyzing their performance. CS 361 is taught only in C.
EECE 238L Computer Logic Design (4)
Students are provided with basic hardware literacy through EECE 238L, and the study of computer architecture included in CS 341L and CS 481.
CS 259L Data Structures with Java (5)
CS 259L is an accelerated course designed for potential CS students with some programming experience or education. It involves the same material as the normal undergraduate sequence CS 152L-251L. It requires a minimum of one year experience or instruction in a high level programming language and associated methodology.
CS 293 Social and Ethical Issues in Computing (1)
CS 293 gives an overview of philosophical ethics, privacy and databases, intellectual property, computer security, computer crime, safety and reliability, professional resposibility and codes, electronic communities and the Internet, and social inpact of computers.
CS 341L Introduction to Computing Systems (3)
CS 341L introduces the student to basic computer architecture and assembly language programming.
CS 257L Nonimperative Programming (3) CS 451 Programming Paradigms (3)
The sequence CS 257L-451 provides an examination of several classes of programming languages.
CS 460 Software Engineering (3)
CS 460 is a capstone design course involving a large team-oriented programming project.
CS 481 Operating Systems Principles (3)
CS 481 introduces the student to the principles of operating systems and provides further instruction on computer architecture. Technical electives taken from a wide variety of courses permit the student to specialize (numerical analysis, operations research, artificial intelligence, architecture and systems, etc.) or to acquire additional breadth.
