16.01.2015 Views

CS2013-final-report

CS2013-final-report

CS2013-final-report

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

• Biocomputation<br />

• Unspecialized (this track provides extensive breadth rather than depth)<br />

The additional CS elective courses that students may choose come from a list of over 50 upper<br />

division courses offered in the CS department. Also, each track area provides a list of “track<br />

electives” which are additional choices for elective courses specific to that track area, and may<br />

include relevant courses from outside CS. For example, the Artificial Intelligence track-specific<br />

elective course list includes classes from both the Psychology and Statistics departments.<br />

Additionally, all CS undergraduates are required to take a capstone course (Senior Project) as<br />

well as a course in the area of “Science, Technology, and Society”. While students have several<br />

options for the latter requirement, the vast majority of students complete this requirement by<br />

taking a course taught in the CS department entitled “Computers, Ethics, and Public Policy”.<br />

Curricular Analysis<br />

While the multitude of options through our CS major makes it impossible to map all the paths<br />

through our curriculum, we consider below a very typical (and minimal) program though our<br />

undergraduate program. In this program, a student begins in CS106A (our CS1 class), completes<br />

the CS “core” and chooses the “Systems” track—one of the most popular undergraduate tracks<br />

at Stanford—for the depth area. The additional CS electives in this exemplar program represent<br />

a minimal set of courses used to satisfy the elective requirement, sampled from among the most<br />

popular elective courses that were not already part of the student’s program. Finally, the<br />

program includes the required senior capstone course and a course satisfying the “Science,<br />

Technology, and Society” requirement. The program is composed of the specific courses listed<br />

below. Note that we do not include the additional mathematics and science courses required as a<br />

result of our major being housed in the School of Engineering since these courses do not include<br />

CS-specific content.<br />

Background (CS1)<br />

• CS 106A – Programming Methodology<br />

CS Core<br />

• CS103 – Mathematical Foundations of Computing<br />

• CS106B – Programming Abstractions<br />

• CS107 – Computer Organization and Systems<br />

• CS109 – Introduction to Probability for Computer Scientists<br />

• CS110 – Principles of Computer Systems<br />

• CS161 – Design and Analysis of Algorithms<br />

Systems Track<br />

• CS140 – Operating Systems and Systems Programming<br />

• CS144 – Introduction to Computer Networking<br />

• CS145 – Introduction to Databases<br />

• EE108B – Digital Systems II<br />

- 493 -

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!