Undergraduate

From Computer Science Department Wiki
Jump to navigation Jump to search

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 Financial Aid

Office of the Registrar

Stevens Career Center

Office of International Programs (Study Abroad)

Accelerated Master's Program

CS/CyS Co-Op Schedule


Back to Top

Undergraduate Forms

All Undergraduate forms can be found on WorkDay: WorkDay Student Help Guide

AP Credit

Advanced Placement

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.

Back to Top

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)

  1. What undergraduate majors does Stevens Computer Science offer?
  2. I received AP or IB credit in high school. How does my credit apply toward graduation?
  3. Who is my advisor?
  4. What is a study plan?
  5. How do I complete my Study Plan correctly?
  6. What humanities courses must I take?
  7. What management courses must I take?
  8. What science courses must I take?
  9. What free/general electives do I have to take?
  10. Which courses may I take as technical electives?
  11. Which courses may I take as the software development elective?
  12. Which courses may I take as a science or mathematics elective?
  13. Can I take graduate courses?
  14. Can any graduate courses be used in place of a CS undergraduate course?
  15. Can I take both an undergraduate course and an equivalent graduate course?
  16. Can I take CS 501 or CS 570 for credit?
  17. Can I use my BS courses towards a graduate certificate?
  18. What if I am working on both a BS and an MS?
  19. What constitutes a concentration area?
  20. Must I have a concentration area?
  21. How do I know which CS courses will be offered which semesters?
  22. Can I take a WebCampus course?
  23. How can I find out more about research?
  24. 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.

Back to Top

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.

Back to Top

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.

Back to Top

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.

Back to Top

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.

Back to Top

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

Back to Top

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.

Back to Top

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.

Back to Top

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.

Back to Top

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.

Back to Top

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.

Back to Top

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.

Back to Top

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.

Back to Top

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.

Back to Top

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.

Back to Top

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.

Back to Top

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.

Back to Top

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.

Back to Top

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.

Back to Top

How do I transfer credits?

The undergraduate students can transfer credits following this instruction.

Back to Top