CS Requirements 2012-13
Major: Computer Science (CS)
College of Letters and Science
Degree: Bachelor of Science
| PREPARATORY SUBJECT MATTER | UNITS | |
|---|---|---|
| MAT 21A, B, C | Calculus | 4-4-4 |
| MAT 22A or MAT 67 | Linear Algebra | 3-4 |
| STA 32 | Statistical Analysis | 3 |
| ECS 20 | Discrete Mathematics for Computer Science | 4 |
| ECS 30 | Programming and Problem Solving | 4 |
| ECS 40 | Software Development | 4 |
| ECS 50 or EEC 70 |
Computer Organization and Machine-Dependent Programming Computer Structure and Assembly Language |
4 |
| ECS 60 | Data Structures and Programming | 4 |
| One series from the following four: | ||
| CHE 2 A, B, C | General Chemistry | 5-5-5 |
| CHE 2 A, B and BIS 2A |
General Chemistry Introductory Biology |
5-5 4 |
| CHE 2 AH, BH, CH | General Chemistry | 5-5-5 |
| PHY 9A, B, C MAT 21D |
Classical Physics and Vector Analysis |
5-5-5 4 |
| TOTAL PREPARATORY UNITS | 52-58 | |
| COMPUTER SCIENCE CORE | UNITS | |
|---|---|---|
| ECS 120* or 122B* |
Introduction to Theory of Computation Algorithm Design and Analysis |
4 |
| ECS 122A | Algorithm Design and Analysis | 4 |
| ECS 140A | Programming Languages | 4 |
| ECS 150 | Operating Systems and System Programming | 4 |
| ECS 154A | Computer Architecture | 4 |
| TOTAL COMPUTER SCIENCE CORE UNITS | 20 | |
| * Completion of only 120 or 122B will satisfy the core requirement, but not a computer science elective simultaneously. | ||
| COMPUTER SCIENCE ELECTIVES | UNITS | |
|---|---|---|
| Minimum of seven courses including at least one mathematics or statistics course from: | ||
| ECS 120* | Introduction to the Theory of Computation | 4 |
| ECS 122B* | Algorithm Design and Analysis | 4 |
| ECS 124 | Theory and Practice of Bioinformatics | 4 |
| ECS 129 | Computational Structural Bioinformatics | 4 |
| ECS 130 | Scientific Computation | 4 |
| ECS 132 | Probability and Statistical Modeling | 4 |
| ECS 140B | Programming Languages | 4 |
| ECS 142 | Compilers | 4 |
| ECS 145 | Scripting Languages | 4 |
| ECS 152A | Computer Networks | 4 |
| ECS 152B | Computer Networks | 4 |
| ECS 152C | Design Projects Communication Networks | 4 |
| ECS 153 | Introduction to Computer Security | 4 |
| ECS 154B | Computer Architecture | 4 |
| ECS 156 | Discrete Event Simulation | 4 |
| ECS 158 | Programming on Parallel Architectures | 4 |
| ECS 160 | Introduction to Software Engineering | 4 |
| ECS 163 | User/Computer Interfaces | 4 |
| ECS 165A | Database Systems | 4 |
| ECS 165B | Database Systems | 4 |
| ECS 170 | Introduction to Artificial Intelligence | 4 |
| ECS 173 | Image Processing and Analysis | 4 |
| ECS 175 | Computer Graphics | 4 |
| ECS 177 | Introduction to Visualization | 4 |
| ECS 178 | Introduction to Geometric Modeling | 4 |
| ECS 188 | Ethics in an Age of Technology | 4 |
| ECS 189 | Special Topics in Computer Science | 1-4 |
| ECS 192 or 199 | Internship/Special Study (3 units from one course (192 or 199); Dept. approval) |
3 |
| ECS 193 A & B | Senior Design Course | 2, 2 |
| EEC 180A | Digital Systems I | 5 |
| EEC 180B | Digital Systems II | 5 |
| STA 131A | Introduction to Probability Theory | 4 |
| MAT 25 | Advanced Calculus | 4 |
| MAT 108 | Abstract Mathematics | 4 |
| MAT 115A, B | Number Theory | 4-4 |
| MAT 125A, B | Real Analysis | 4-4 |
| MAT 135A | Probability | 4 |
| MAT 141 | Euclidean Geometry | 4 |
| MAT 145 | Combinatorics | 4 |
| MAT 147 | Topology | 4 |
| MAT 148 | Discrete Mathematics | 4 |
| MAT 150A, B, C | Modern Algebra | 4-4-4 |
| MAT 160** | Database Theory, Design and Performance | 4 |
| TOTAL COMPUTER SCIENCE ELECTIVE UNITS | 26-30 | |
| TOTAL UNITS: | 98-108 | |
| * Completion of only 120 or 122B will satisfy the core requirement, but not a computer science elective simultaneously. | ||