Printer-friendly version of the guidesheet

Students with AP credit for GenEd courses and a strong CS background may take CS 120 and CS 140 in the first semester. Students without prior programming experience should take CS 110 in Fall and either CS 120 or CS 140 in the Spring. Please consult a CS advisor before attempting CS 120 and CS 140 together.

These suggested course tracks are based on undergraduate requirements from the class entering in the 2018-19 academic year. These are only suggestions, refer to the University Bulletin for the official requirements for each major.

For archived requirements refer to the University Bulletin. Select desired year in the bottom left-hand corner under, "Bulletin Archive" and then the area of study.

For more information on graduate-level requirements go here.

Take note of Pre- or Co-requisites

To receive the BS degree in computer science, the student must earn a minimum of 126 credit hours, including transfer credits, with an average of at least C (2.0 GPA), and a minimum of a C average in the major program.

## Credit Requirements

A minimum of 126 semester credits of which:

- a minimum of 60 credits must be in liberal arts and sciences courses
- a minimum of 40 credits must be earned in Watson School courses

## Area Requirements

### Communications - 4 credits

- One course that meets the Binghamton University General Education Composition requirement. CS 301. Ethical, Social and Global Issues in Computing.

### Humanities/social science electives - 20 credits

### Science - 12 or 14 credits*

*The total of the science and free elective credits should be 25 credits

- Two course science sequence: BIOL 113, BIOL 114 and BIOL 115 or CHEM 107 and CHEM 108 or PHYS 131 and PHYS 1323
- One science elective: chosen from courses that meet the General Education Laboratory Science requirement.

### Mathematics - 20 credits

- MATH 224/225. Differential/Integral Calculus
- MATH 226/227. Integration Tech. & Appl/Infinite Series
- MATH 314. Discrete Math. (or MATH 330. Number Systems)
- MATH 327. Probability with Statistical Methods (or MATH 448. Mathematical Statistics)

One elective chosen from:

- MATH 304. Linear Algebra
- MATH 371. Ordinary Differential Equations
- MATH 381. Graph Theory
- MATH 386. Combinatorics
- MATH 407. Introduction to the Theory of Numbers

### Free electives - 11 or 13 credits*

*The total of the science and free elective credits should be 25 credits

At least four credits must be in liberal arts and science. At most one free elective in liberal arts and science may be taken pass/fail instead of a letter grade. At most 2 credits of activity/wellness may be used as free elective credit.

Computer Science - 57 credits

- CS 101. Professional Skills, Ethics and CS Trends
- CS 120. Programming and Hardware Fundamentals5
- CS 140. Programming with Objects and Data Structures5
- CS 220. Architecture from Programmer's Perspective
- CS 240. Data Structures and Algorithms
- CS 320. Advanced Computer Architecture
- CS 350. Operating Systems
- CS 373. Automata Theory & Formal Languages
- CS 375. Design & Analysis of Algorithms
- CS 471. Programming Languages

**Four Computer Science electives chosen from A, B, C, and D below. At least one must
be chosen from A and at least one from B. At most one can be taken from D. **

**A. **

- CS 428. Computer Networks
- CS 451. Systems Programming
- CS 457. Introduction to Distributed Systems
- CS 476. Programming Models for Emerging Platforms

**B. **

- CS 440. Advanced Topics in OO Programming
- CS 442. Design Patterns
- CS 445. Software Engineering
- CS 472. Compiler Design

**C. **

The following courses and CS 400-level courses approved for future catalog years

- CS 338. Introduction to Multimedia Systems
- CS 402. Software and Engineering Project Management
- CS 424. Microcontrollers and Robotics
- CS 426. Wireless Sensor Networks
- CS 432. Database Systems
- CS 433. Information Retrieval
- CS 435. Introduction to Data Mining
- CS 436. Introduction to Machine Learning
- CS 441. Game Development for Mobile Platforms CS 443. Mobile Systems and Applications
- CS 455. Introduction to Visual Info. Processing
- CS 458. Introduction to Computer Security
- CS 459: Science of Cyber Security
- CS 460. Computer Graphics
- CS 480. Any approved CS topics course Prerequisites vary by course

**D. **

To count as a CS elective, must be taken for 4 credits

- CS 395. Computer Science Internship. Prerequisites: CS 220, 240, junior or senior standing and CS Department approval
- CS 396. Computer Science Co-op. Prerequisites: CS 220, 240, junior or senior standing and CS Department approval
- CS 499. Undergraduate Research. Prerequisites vary by research area. Requires junior or senior standing and CS Department approval

**General Education Requirements:** Students must fulfill the General Education Requirements for Computer Science. Students
normally complete these requirements within the 126-credit program described above.
___________________________ 1 Credits include the Communications course

## Supplemental information regarding the BSCS Degree Requirements

The following information supplements that provided in the University Bulletin. It applies to students who matriculated Fall 2016 or after.

All required Computer Science courses, except CS 101, are offered every semester. The minimum grade in a required Computer Science course must be at least a C- to be allowed to take any Computer Science course, for which it is a prerequisite.

Calculus Topics are broken down as follows:

- MATH 224. Differential Calculus
- MATH 225. Integral Calculus
- MATH 226. Integration Techniques and Applications
- MATH 227. Infinite Series

**Humanities/Social Science** – May be filled by courses offered by the Division of Humanities, the Division of
Social Sciences, the Psychology Department and HDEV courses offered by the College
of Community and Public Affairs. Many of the courses taken to meet the General Education
requirements will fulfill the Humanities/Social Science requirement.

**Mathematics -** Students who are strong in math are encouraged to take MATH 330 (Number Systems)
instead of MATH 314 (Discrete Mathematics). Students with a strong math background
may take MATH 381 (Graph Theory) as their Math elective. The following Binghamton
University course can be substituted for MATH 327: MATH 448 (Introduction to Probability
and Statistics II).

**Free Electives –** May be filled by extra courses from any of the areas listed above, SOM courses, or
additional Computer Science courses. A maximum of 2 HWS credits may be counted as
Free Elective credits. At least four of these credits must be in humanities, social
sciences, arts and other disciplines (excluding computer science) that provide breadth
of background. CS 110 counts as a free elective.

**Prerequisites for Computer Science Courses**

The MATH and CS pre-requisites must have a grade of at least C-.

Course Prerequisites

- CS 101 - None
- CS 110 - MATH 225
- CS 120 - CS 110, MATH 225
- CS 140 - CS 110, MATH 225
- CS 220 - CS 120, 140
- CS 240 - CS 120, 140, MATH 2261
- CS 301 - CS 101, Gen Ed C course, CS 220/CS 240
- CS 320 - CS 220
- CS 338 - CS 212 or CS 240
- CS 350 - CS 220, 240, 301
- CS 373 - CS 140, MATH 314/330
- CS 375 - CS 240, MATH 227, 314/330, CS 301
- CS 402 - CS 220, 240
- CS 424 - CS 350
- CS 426 - CS 350
- CS 428 - CS 350
- CS 432 - CS 375
- CS 433 - CS 375
- CS 435 - CS 375, MATH 304, 327/448
- CS 436 - CS 375, MATH 327/448
- CS 440 - CS 240, 350
- CS 441 - CS 140, 375
- CS 442 - CS 140, 375
- CS 443 - CS 320, 350
- CS 445 - CS 350/375
- CS 451 - CS 350
- CS 455 - CS 375
- CS 457 - CS 350
- CS 458 - CS 350, 375
- CS 459 - CS 375, MATH 327/4482,3
- CS 460 - CS 375
- CS 471 - CS 373, 375
- CS 472 - CS 373, 375
- CS 476 - CS 140, 320, 350