Undergraduate
Advising center
Undergraduate
Undergraduate Study Plans
Unofficial Study Plan Forms
Study plan forms by major and year of entry | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Major | 23 | 22 | 21 | 20 | 19 | 18 | 17 | ||||||
CS | 2023 | 2022 | 2021 | 2020 | 2019 | 2018 | 2017 | ||||||
Cybersecurity | CyS 2023 | CyS 2022 | CyS 2021 | CyS 2020 | CyS 2019 | CyS 2018 | CyS 2017 |
Additional Stevens Resources
Office of Undergraduate Academics
Office of International Programs (Study Abroad)
Undergraduate Forms
All Undergraduate forms can be found on WorkDay: WorkDay Student Help Guide
AP Credit
Minors
The courses for the Computer Science minor are:
CS 115 Introduction to Computer Science CS 135 Discrete Structures or MA 134 Discrete Mathematics CS 284 Data Structures CS 385 Algorithms
- Plus, any two 3-credit CS courses numbered 300 or higher, except any course that duplicates another. Students may not count CS 501, CS 570, or CS 590. Also, students may not count both courses in each of the following pairs: CS 383 and CS 550, CS 492 and CS 520, CS 496 and CS 510, CS 442 and CS 561.
There are 6 courses in total that are required for the Computer Science minor. For minors within SES, at least 2 applicable courses must count towards the minor alone, and cannot double-count for both major requirements and minor requirements.
The courses for the Cybersecurity minor are:
CS 115 Introduction to Computer Science CS 135 Discrete Structures CS 284 Data Structures CS 385 Algorithms
Plus one of the following tracks:
CS 503 Discrete Mathematics for Cryptography MA 232 Linear Algebra or MA 236 Mathematical Reasoning CS 579 Foundations of Cryptography *This is the required track for CS students*
Or:
CS 306 Introduction to IT Security CS 392 Systems Programming CS 576 Systems Security
There are 7 courses in total that are required for the Cybersecurity minor. The Cybersecurity minor is available to Computer Science majors who can only take the CS 503, CS 579 and MA 232/236 option, and at least 2 applicable courses must count towards the minor alone, and cannot double-count for both major requirements and minor requirements.
For more information about minors visit Stevens Academic Catalog.
Undergraduate Courses
For Graduate Courses, click here Graduate Courses.
Course Number | Course Name | Prereqs | Coreqs | Course Coordinator | Typically Offered: Classroom | Typically Offered: Webcampus |
---|---|---|---|---|---|---|
CS 101 | Research and Entrepreneurship in Computing Outcomes / Syllabus |
Fall | ||||
CS 105 | Introduction to Scientific Computing Outcomes Outcomes / Syllabus |
Fall, Spring | ||||
CS 110 | Creative Problem Solving with Computing Outcomes / Syllabus |
Fall | ||||
CS 115 | Introduction to Computer Science Outcomes / Syllabus |
Fall, Spring | ||||
CS 135 | Discrete Structures Outcomes / Syllabus |
Sandeep Bhatt | Fall, Spring | |||
CS 146 | Introduction to Web Programming and Project Development Outcomes / Syllabus |
Fall | ||||
CS 188 | Seminar in Computer Science Outcomes / Syllabus |
Philippos Mordohai | Fall, Spring | |||
CS 284 | Data Structures Outcomes / Syllabus |
CS 115 | CS 135 | Tegan Brennan | Fall, Spring | |
CS 306 | Introduction to IT Security Outcomes / Syllabus |
CS 135 or MA 134 | Antonio Nicolosi | Fall | ||
CS 334 | Automata and Computation Outcomes / Syllabus |
CS 115 and CS 135 | Sandeep Bhatt | Fall | ||
CS 347 | Software Development Process Outcomes / Syllabus |
CS 284, CS 135 | Spring | |||
CS 382 | Computer Architecture and Organization Outcomes / Syllabus |
CS 284 | Shudong Hao | |||
CS 383* | Computer Organization and Programming Outcomes / Syllabus |
CS 115 | Fall | |||
CS 385 | Algorithms Outcomes / Syllabus |
CS 284 | Philippe Meunier | Fall, Spring, Summer 1 | ||
CS 392 | Systems Programming Outcomes / Syllabus |
CS 385 | Shudong Hao | Spring | ||
CS 396 | Security, Privacy, and Society Outcomes / Syllabus |
CS 392 | ||||
CS 397 | Outreach Participation Outcomes / Syllabus |
Depends on subject | As needed | |||
CS 423 | Senior Design I Outcomes / Syllabus |
CS 385, CS 347 | David Klappholz | Fall | ||
CS 424 | Senior Design II Outcomes / Syllabus |
CS 423 | David Klappholz | Spring | ||
CS 442 | Database Management Systems Outcomes / Syllabus |
CS 385 | Hui (Wendy) Wang | Fall | ||
CS 485 | Societal Impact of Information Technologies Outcomes / Syllabus |
Depends on subject | Eric Koskinen | Fall | ||
CS 488 | Computer Architecture Outcomes / Syllabus |
CS 383 | MA 222 | Spring | ||
CS 492 | Operating Systems Outcomes / Syllabus |
CS 383, CS 392 | Spring | |||
CS 496 | Principles of Programming Languages Outcomes / Syllabus |
CS 334 | CS 385 | Eduardo Bonelli | Spring | |
CS 497 | Independent Study Outcomes |
On demand | ||||
CS 498 | Senior Research I Outcomes |
On demand | ||||
CS 499 | Senior Research II Outcomes |
On demand |
* Students need to submit a course substitution form.
Frequently Asked Questions (undergraduate level)
- What undergraduate majors does Stevens Computer Science offer?
- I received AP or IB credit in high school. How does my credit apply toward graduation?
- Who is my advisor?
- What is a study plan?
- How do I complete my Study Plan correctly?
- What humanities courses must I take?
- What management courses must I take?
- What science courses must I take?
- What free/general electives do I have to take?
- Which courses may I take as technical electives?
- Which courses may I take as the software development elective?
- Which courses may I take as a science or mathematics elective?
- Can I take graduate courses?
- Can any graduate courses be used in place of a CS undergraduate course?
- Can I take both an undergraduate course and an equivalent graduate course?
- Can I take CS 501 or CS 570 for credit?
- Can I use my BS courses towards a graduate certificate?
- What if I am working on both a BS and an MS?
- What constitutes a concentration area?
- Must I have a concentration area?
- How do I know which CS courses will be offered which semesters?
- Can I take a WebCampus course?
- How can I find out more about research?
- How do I transfer credits?
What undergraduate majors does Stevens Computer Science offer?
The Computer Science Department offers two majors:
- Computer Science offers the flexibility for students to "drill down" to specific subject areas, such as graphics, computer games, networks, financial computing, and enterprise computing.
- Cybersecurity focuses on the technical and managerial aspects of securing the nation's IT infrastructure. In addition to a strong Computer Science background, it provides in-depth studies in cryptography, privacy and building secure systems.
Both programs share a strong technical "spine" and a two-semester senior project course that emphasizes client interaction and project management.
I received AP or IB credit in high school. What is the first programming course I should take?
For students entering Fall 2018 or later:
Computer Science students who receive a 4 or 5 on the advanced placement computer science exam receive credit for one technical elective. Cybersecurity students who earn the same score will receive credit for one computer science elective. Students who receive a score of 6 or 7 on the International Baccalaureate (IB) computer science exam, Standard Level, are treated similarly. Students who receive a score of 6 or 7 on the IB computer science exam, High Level, receive credit for one free elective course, are exempted from CS 115 and CS 284, and start in CS 385.
For students entering before Fall 2018:
Students who received a grade of 4 or 5 on the Computer Science AP examination will receive credit for a CS elective and will be encouraged to choose CS 181 (Introduction to Computer Science – Honors) for the first semester. Students who received a grade of 6 or 7 on the IB Computer Science exam (Standard Level) will either (1) receive credit for a CS elective and will be placed in CS 181, or (2) will receive credit for CS 115 and will be placed in CS 284. Students who received a grade of 6 or 7 on the IB Computer Science exam (High Level) will either (1) receive credit for a free elective and CS 181 and will be placed in CS 182 in the second semester, or (2) will receive credit for CS 115 and CS 284 and will be placed in CS 385.
Who is my advisor?
For advising-related questions, you should start by reaching out to Academic Advisors Maritza Swepson, Sara Elmiligi, and Shannon Ritchie in the Undergraduate Advising Center. The department assigns faculty advisors based on a student’s undergraduate degree program. Please look up your assigned advisor in your WorkDay account.
What is a Study Plan?
A Study Plan is an unofficial form that contains the list of the courses you will take to fulfill the requirements for a Bachelor of Science in Computer Science, Cybersecurity. They are used to assist students with mapping out remaining requirements as they progress through their program.
Without using a Study Plan as a guide, you might accidentally take a course that doesn't satisfy a requirement you think it meets. You may also take a course that is not valid toward your degree, which may delay your graduation.
Use the recommended course sequence from the Stevens Catalog to develop your study plan. You should do this in consultation with your Faculty Advisor, who must eventually sign off on your Academic Plan in WorkDay.
You may go to the collection of Study Plan forms available on this site. You should follow the catalog of the semester and year you entered Stevens, independent of expected graduation date. For example if you entered Stevens in the Fall of 2019, you should follow the 2019-2020 academic catalog. If you switched to a major in the Computer Science department from another department, you may choose the catalog when you entered Stevens or the catalog in place when you switched into the department.
Therefore, different students may have different requirements. You can not necessarily trust the advice of your friends.
You may modify your Study Plan with your advisor who will make sure that your modified course plan satisfies degree requirements. If not, you risk taking courses which may not count towards your Computer Science degree.
You should specify on the Study Plan when you will take the required courses and you may show electives as TBD (To Be Determined). A better approach is to use the recommended Study Plan, fill in dates for all courses and deviate from it if necessary. This approach makes discussions with your advisor easier and avoids misunderstandings.
How do I complete my Study Plan correctly?
Here is a sample study plan. Some points of interest are:
Term Specification
Semesters should be numbered using the last 2 digits of the year followed by the Semester letter.
For example for the academic year 2019-2020 use:
19F for the fall semester of 2019
20W for the intersession of 2020
20S for the spring semester of 2020
20A for the first summer session of 2020
20B for the second summer session of 2020
This numbering scheme is recommended by the registrar's office and required on the Application for Candidacy Form according to the registrar's office. Listing the semester you plan to take each course helps you determine that you can graduate in your desired number of semesters.
If you have transfer (TR) or advanced placement (AP) credit for a course, list the semester and grade as 'TR' or 'AP’ respectively.
What science courses must I take?
Choose one of the following rows.
Science I | Science II | Science Lab | |
---|---|---|---|
Physics | PEP 111 Mechanics | PEP 112 Electricity and Magnetism | PEP 221 |
Chemistry | CH 115 General Chemistry I | CH 116 General Chemistry II | CH 117 |
Chemistry & Biology | CH 115 General Chemistry I | BIO 281 Biology & Biotechnology | CH 117 |
Chemistry & Biology | CH 115 General Chemistry I | BIO 281 Biology & Biotechnology | BIO 282 |
Physics & Biology | PEP 111 Mechanics | BIO 281 Biology & Biotechnology | BIO 282 |
Physics & Chemistry | PEP 111 Mechanics | CH 115 General Chemistry I | CH 117 |
What free/general electives do I have to take?
Free electives are not unconstrained. Courses to be taken as a "free" elective must be approved by your advisor on a signed study plan before you enroll. You can count any 3-credit course, except
Any course that is required for your academic plan. Any course that is equivalent to another course counted towards the degree.
If you have doubt about whether a course can be counted as a free elective, please review the Academic Catalog or consult your advisor.
Which courses may I take as technical electives?
You can count as a technical elective any 300-level or 400-level CS course that will not be used to satisfy the requirements of any degree.
You can count as a technical elective any 600-level or higher level CS course if your GPA is at least 3.0. (To take courses at this level you must submit a permission form signed by the instructor, your advisor, and the Dean of Graduate Studies.)
For students entering in 2020F and beyond - there is a list of additional courses that can count towards the Technical Elective Requirement. Note that only 3 courses from this list can be counted, the other 8 required Technical Electives must be Computer Science courses. Please review the lists in your Academic catalog for your entry year here - https://www.stevens.edu/academics/academic-catalog.
CS 146 Intro Web Programming and Project Development CS 347 Software Development Process CS 370 Creative Problem Solving and Team Programming CS 442 Database Management Systems CS 488 Computer Architecture CS 492 Operating Systems CS 503 Discrete Math for Cryptography CS 513 Knowledge Dis & Data Mining CS 516 Compiler Design CS 521 TCP/IP Networking CS 522 Mobile Systems and Applications CS 523 Programming the Internet of Things using iOS CS 524 Intro to Cloud Computing CS 526 Enterprise & Cloud Computing CS 541 Artificial Intelligence CS 545 Human-Computer Interaction CS 546 Web Programming CS 548 Enterprise Software Archi & Dgn CS 549 Distrib Sys & Cloud Computing CS 553 Intro Text Mining/Nat. Lang Proc CS 554 Web Programming II CS 557 Intro to Natural Language Proc CS 558 Computer Vision CS 559 Machine Learning: Fund & Apps CS 562 Database Management Systems II CS 573 Fundamentals of CyberSecurity CS 574 Object-Oriented Anal. & Dsng. CS 576 Systems Security CS 577 Reverse Engineering and Application Analysis CS 578 Privacy in a Networked World CS 581 Online Social Networks CS 582 Causal Inference CS 583 Deep Learning CS 584 Natural Language Processing CS 600 Adv. Algorithm Dsgn & Implement CS 615 Systems Administration CS 631 Adv Programming in a Unix Env CS 643 Formal Verif of Software
The following Graduate courses are equivalent to Undergraduate courses. Students can take EITHER of these courses, but CANNOT take both.
CS 510 Programing Languages CS 496 CS 514 Computer Architecture CS 488 CS 520 Introduction to Operating Sys. CS 492 CS 525 Systems Programming CS 392 CS 550 Comp Organization & Prog CS 382 CS 561 Database Management Systems I CS 442 SSW 540 Fundamentals of Software Eng CS 347
The following Graduate courses CANNOT be taken at all.
CS 501 Intro to JAVA Programming CS 515 Fundamentals of Computing CS 556 Mathematical Foundations of ML CS 570 Intro to Programming, Data Structures, and Algorithms CS 590 Algorithms
- CS 306 (Introduction to IT Security) Cybersecurity Students only, and may not be taken by Computer Science Students for elective credit. Likewise, CS 396 (Security, Privacy, and Society) is for Computer Science Students only, and may not be taken by Cybersecurity Students for elective credit.
Which courses may I take as the software development elective?
Any of the following*:
CS 516 Compiler Design CS 521 TCP/IP Networking CS 522 Mobile Systems and Applications CS 523 Programming the Internet of Things using iOS CS 526 Enterprise and Cloud Computing CS 537 Interactive Computer Graphics CS 541 Artificial Intelligence CS 546 Web Programming CS 548 Enterprise Software Architecture and Design CS 549 Distributed Systems and Cloud Computing CS 554 Web Programming II CS 555 Agile Methods for Software Development CS 558 Computer Vision
* For students entering prior to Fall 2020 Back to Top
Which courses may I take as a science or mathematics elective?
Courses to be taken as a science or math elective must be approved by your advisor on a signed study plan before you enroll. You can count any 3-credit physics, chemistry, biology, or mathematics course, except
Any course that is required for your study plan. Any course that is equivalent to another course counted towards the degree. For example, MA 117, MA 118, MA 119, MA 134, MA 502, and MA 540 may not be counted.
EN 250, CE 240, and NANO 200 counts as science elective.
Can any graduate courses be used in place of a CS undergraduate course?
With your advisor's permission -- and only with permission -- certain substitutions may be permitted in order to solve a scheduling problem. Contact your advisor.
Can I take both an undergraduate course and an equivalent graduate course?
No. If you take both courses only one of them may count toward a degree. You cannot count one toward a BS and one toward an MS.
Can I take CS 501 or CS 570 for credit?
For many years undergraduates were prohibited from taking CS 501 for credit because it teaches Java at an elementary level. Undergraduates received adequate education in Java programming via required courses CS 115 and CS 284 (for honors students: CS 181).
However, starting in Fall 2012 Python was adopted as the language for CS 115, thereby reducing required undergraduate Java education to only CS 284 or CS 181. The department felt that some students might wish to improve their Java skills following CS 284 or CS 181 and they should be allowed the chance. Similar reasoning applied to C++ education: the language is taught in the required course CS 385 or 182, but CS 570 exists as an elementary C++ course and it might be beneficial to some. Since both CS 501 and CS 570 are elementary courses, students who started in Fall 2012 or later are allowed to take these courses as free electives, but NOT as technical electives.
Therefore, the department has adopted the following policy about CS 501 and CS 570:
Undergrads who started Fall 2012 or later: may take either or both of CS 501 and CS 570 as a free elective, NOT as a tech elective. MS students who have or are pursuing a Stevens BS in CS or CyS: may take neither CS 501 not CS 570 for credit in their MS program. MS students whose BS is not from Stevens may take either or both of CS 501 and CS 570 for credit in their MS program.
The policies regarding CS 501 and CS 570 are inconsistent for students enrolling before Fall 2012 for the historical reasons outlined above.
Can I use my BS courses towards a graduate certificate?
Yes, this is the only time where "double dipping" is allowed. You may use a course for both an undergraduate degree and graduate certificate.
You may not use a course for both an undergraduate degree and a Master's degree.
What if I am working on both a BS and an MS?
Some of the possible core courses for the MS are equivalent to courses required for the BS. You can't get credit for taking this material a second time, so you must take other core courses in your MS degree. Likewise, if you took some core MS courses as electives for your BS degree then you cannot apply these courses to your MS degree.
What constitutes a concentration area?
You may choose one of the Concentration Areas listed in the catalog. A Concentration Area is no more than a suggestion for a useful collection of CS electives. It does not show up on your transcript.
For many but not all concentration areas, there is a corresponding graduate certificate program with the same or almost the same content. You may follow a graduate certificate program if you have the necessary GPA and the prerequisites. A graduate certificate does appear on your transcript.
Must I have a concentration area?
No. You may choose to take either a concentration area, or ad hoc CS electives. A concentration area is just advice in your choice of CS electives. Your concentration area may simultaneously earn you a graduate certificate, subject to the requirements of the computer science department.
How do I know which CS courses will be offered which semesters?
You can review the Academic Catalog or WorkDay to review the most official and updated information. To help with planning, this website lists when CS courses are usually offered: undergraduate courses and graduate courses. This information is merely a guide, not a promise to offer.
Can I take a WebCampus course?
If you are an international student, please contact the International Student and Scholar Services Office (ISSS) for additional clarification on WebCampus courses. You can read more on their website about enrolling full-time and the requirements for both F1 Students and J1 Students.
How can I find out more about research?
Stevens Computer Science is home to world-class research in cybersecurity, visual computing (graphics/vision/visualization), programming languages, machine learning, and computational biology. There are concrete things you can do to get involved in this research:
Attend the computer science research seminars, where researchers come to describe their latest results. These talks are announced on cs-announce, and you can also see a list of the talks at the CS Seminar web page. Take a course with a faculty member whose research interests you, and talk to him/her.
How do I transfer credits?
The undergraduate students can transfer credits following this instruction.