The Bachelor of Science program in Computer Science is accredited by the Computing Accreditation Commission of ABET, , under the General Criteria and the Computer Science and Similarly Named Computing Programs Program Criteria. In keeping with the mission statement of Watson College, the program strives to provide its graduates with a firm grounding in the fundamentals of computer science, elements of practical application and an appreciation for liberal learning.
At its core, the degree program aims to provide all graduates with an understanding of the theory and practice of automating the representation, storage and processing of information. With the understanding that CS graduates will pursue a wide variety of career paths upon graduation, it is the program’s goal to also provide students with the opportunity to pursue specific interests within computer science and/or interests in other disciplines.
Program Educational Objectives
Graduates of our program will be:
- Successful in their profession in leadership or supporting positions, in which they exercise and apply their technical computer science background. These positions will use their skills in problem-solving and software or systems development.
- Capable of working well in teams, communicating effectively and meeting the social and ethical responsibilities of their profession.
- Engaged in lifelong learning relevant to their profession, including earning advanced degrees based on their computer science background or completing professional training.
The department encourages students to earn an international studies certificate in parallel with the BS in computer science. Students interested in this program should seek advice from the Watson College Advising Office prior to initial registration.
Requirements
To receive the BSCS degree students must earn a minimum of 126 credit hours, including transfer credits, with a minimum 2.0 (C) grade-point average in computer science major courses, and a minimum cumulative grade-point average of 2.0. Tracks in Artificial Intelligence and in Cybersecurity are available. A minimum of 40 credits must be earned in courses taught in Watson College. All courses must be taken for the normal letter grade, unless a course is only offered Pass/Fail; an exception is made for a maximum of four free-elective credits in liberal arts and science. A grade of C- or better in required computer science courses is needed to satisfy prerequisites for computer science courses, except for CS 301. All °®¶¹´«Ã½ students must also meet the General Education requirements; for more details, refer to the General Education section of this publication or consult with the Watson College Advising Office.
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 courses taught in Watson College.
- A minimum of 45 credits must be completed at the 300-level or above.
Area requirements
1. Communications (8 credits): One course that meets the °®¶¹´«Ã½ General Education composition requirement and CS 301 Ethical, Social and Global Issues in Computing.
2. Humanities/Social Science Electives (20 credits): A single course cannot be counted in both Block 1 (Communications) and Block 2 (Humanities/Social Science Electives).
3. Science (8 or 10* credits): One of the following two-course or three-course sequences: PHYS 131 and 132, BIOL 113, 114 and 115, CHEM 104, 105 and 106.
4. Mathematics (20 credits):
- MATH 224 Differential Calculus
- MATH 225 Integral Calculus
- MATH 226 Integration Techniques and Applications
- MATH 227 Infinite Series
- MATH 314 Discrete Mathematics
- 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
5. Math or Science Elective (4 credits): MATH 323 Calculus III or a science elective chosen from courses that meet the General Education Laboratory Science requirement
6. Free Electives (12 or 14* 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, two credits of activity/wellness may be used as free elective credit.
7. Computer Science (52 credits):
- CS 101 Professional Skills, Ethics, and CS Trends
- CS 120 Programming and Hardware Fundamentals
- CS 210 Programming with Objects and Data Structures
- CS 220 Architecture from a Programmer's Perspective
- CS 310 Data Structures and Algorithms
- CS 320 Advanced Computer Architecture
- CS 350 Operating Systems
- CS 373 Automata Theory and Formal Languages
- CS 375 Design and Analysis of Algorithms
- CS 471 Programming Languages
Computer Science electives (at least 15 credits) chosen from areas A, B, C, D and E below. At least one course must be chosen from each of the areas A, B and C, and courses with multiple areas count as meeting all the areas indicated. Courses from areas D and E are optional. At most, one can be taken from E**.
A: Networking and Communications; B: Large Software Development; C: Data and Information Management; D: Other courses; E: Internship, Co-op, Research
- CS 402 Software and Engineering Project Management (D)
- CS 415 Social Media Data Science Pipeline (C)
- CS 424 Intelligent Mobile Robotics (D)
- CS 426 Internet of Things (A)
- CS 427 Mobile Systems Security (A)
- CS 428 Computer Networks (A, B)
- CS 432 Database Systems (B, C)
- CS 433 Information Retrieval (B, C)
- CS 435 Introduction to Data Mining (C)
- CS 436 Introduction to Machine Learning (C)
- CS 440 Advanced Topics in Object-Oriented Programming (A, B)
- CS 441 Game Development for Mobile Platforms (D)
- CS 442 Design Patterns (A, B)
- CS 444 Programming for the Web (A, B)
- CS 445 Software Engineering (D)
- CS 447 High Performance Computing (A, B)
- CS 451 Systems Programming (A, B)
- CS 452 Introduction to Cloud Computing (A)
- CS 453 Software Security (D)
- CS 455 Introduction to Visual Information Processing (B, C)
- CS 456 Introduction to Computer Vision (D)
- CS 457 Introduction to Distributed Systems (A, B)
- CS 458 Introduction to Computer Security (A)
- CS 459 Science of Cyber Security (D)
- CS 460 Computer Graphics (B)
- CS 465 Introduction to Artificial Intelligence (C)
- CS 472 Compiler Design (B)
- CS 476 Programming Models for Emerging Platforms (B)
- CS 480 Any approved CS topics course and any future-approved CS 400-level course (D, others as appropriate)
E. To count as a CS elective, Area E courses must be taken for at least three credits
- CS 395 Computer Science Internship. Prerequisites: CS 220, CS 310, junior or senior standing, and CS department approval
- CS 396 Computer Science Co-op. Prerequisites: CS 220, CS 310, junior or senior standing, and CS department approval
- CS 499 Undergraduate Research. Prerequisites vary by research area. Requires junior or senior standing, supervision by a computer science faculty member, and completion of CS department approval form
Total Credits: 126
* The total of the Science and Free Elective credits (Blocks 3 and 6) should be 22 credits.
**For students conditionally admitted to the BS CS/MBA 4+1 program, MGMT 501 Accounting counts as a CS elective in area E.
Requirements-BSCS with Artificial Intelligence Track
To complete the artificial intelligence track in the BSCS, students must replace four electives with the following:
- Two required artificial Intelligence courses:
- CS 436 Introduction to Machine Learning (C)
- CS 465 Introduction to Artificial Intelligence (C)
- Two artificial intelligence electives chosen from the following list:
- CS 415 Social Media Data Science Pipeline (C)
- CS 424 Intelligent Mobile Robotics (D)
- CS 435 Introduction to Data Mining (C)
- CS 455 Introduction to Visual Information Processing (B,C)
- CS 456 Introduction to Computer Vision (C)
- CS 480 Certain approved CS topics course in areas such as Computational Social Science, Deep Learning, and Natural Language Processing. The Computer Science web-page will maintain a current listing.
Students select their fifth CS elective from the CS Department list of CS Electives.
Note: Some courses in this track also satisfy the requirements for computer science electives in one or more areas (A,B,C). For convenience, we place the area(s) for each course in parentheses following the course. Students must still complete at least one course from each of the areas A, B, and C and at most, one course can be taken from area E.
Requirements-BSCS with Cybersecurity Track
To complete the cybersecurity track in the BSCS, students must replace four electives with the following:
- Two required cybersecurity courses:
- CS 458 Introduction to Computer Security (A)
- CS 459 Science of Cyber Security (D)
- Two cybersecurity electives chosen from the following list:
- CS 427 Mobile Systems Security (A)
- CS 428 Computer Networks (A,B)
- CS 436 Introduction to Machine Learning (C)
- CS 453 Software Security (D)
- CS 480 Certain approved CS topics course in areas such as Hardware and Systems Security and Data Privacy. The Computer Science web-page will maintain a current listing.
Students select their fifth CS elective from the CS Department list of CS Electives.
Note: Some courses in this track also satisfy the requirements for computer science electives in one or more areas (A, B, C). For convenience, we place the area(s) for each course in parentheses following the course. Students must still complete at least one course from each of the areas A, B and C and at most, one course can be taken from area E.
General Education Requirements
Students must fulfill the General Education requirements for computer science. Please consult the Academic Guide (Formerly Bulletin), the Watson College Advising Office or your faculty advisor for information about these requirements. Students normally complete these requirements within the 126-credit program described above.
Required Course Prerequisites
The following courses, or their equivalent(s), are required prerequisites for courses in the major:
If a student does not have sufficient programming experience to place into CS 120 and CS 210, then CS 110 is required.
If students do not place into MATH 224, then MATH 223 (or its equivalent) and, if needed, MATH 108 (or its equivalent) and, if needed, MATH 107 (or its equivalent) and, if needed, MATH 106 (or its equivalent) are required prerequisites for completion of the major.
Students who have not had adequate course preparation may need to take CHEM 100 prior to taking CHEM 104, CHEM 105, and CHEM 106.
Students who take MATH 448 to meet the BSCS degree requirement must take MATH 323 and MATH 447 as prerequisites.
Computer Science Minor
The computer science minor consists of seven courses, all taken at °®¶¹´«Ã½ (CS 120, CS 210, CS 220, CS 310, MATH 314 or MATH 330 and two CS courses at the 300- level or above, not including CS 395, CS 396, CS 397, CS 499). CS 110 is a prerequisite for CS 120 and CS 210. MATH 225 is a prerequisite for CS 110 and MATH 226 is a prerequisite for CS 310. Before students apply, they must have completed the four specified CS courses and the MATH course with at least a 2.7 GPA in those courses. More information is available from the Department of Computer Science.
Artificial Intelligence Micro-Credential
Undergraduate CS seniors are eligible to earn this micro-credential by completing four graduate courses specified in the AI Micro-Credential Program. Details are found in the graduate section of the Bulletin.
Dual-Diploma in Information Systems
°®¶¹´«Ã½, in partnership with Istanbul Technical University (ITU), the oldest and one of the most prestigious universities in Turkey, offers a dual-diploma bachelor's degree in information systems. This innovative program prepares students from ITU with high-level substantive knowledge and analytical skills for careers in high-technology areas that require global perspectives. This four-year program includes full-time enrollment for the second year and the fourth year at °®¶¹´«Ã½. Dual-diploma students take computer science, general education, management and other courses alongside °®¶¹´«Ã½ students. Students must earn a C- or better in any course used as a prerequisite for CS courses taken at °®¶¹´«Ã½. Graduates of the program receive two diplomas, a bachelor of science degree from the Thomas J. Watson College of Engineering and Applied Science and a Lisans in Information Systems Engineering from Istanbul Technical University.
Information concerning the courses taken in the first and third years at the Students also do eight weeks of summer practice.
Second year
-
- CS 101 Prof Skills Ethics & CS Trends
- CS 120 Programming and Hardware Fundamentals
- CS 210 Programming with Objects and Data Structures
- CS 220 Architecture from a Programmer's Perspective
- CS 310 Data Structures and Algorithms
- MATH 327 Probability with Statistical Methods
- MIS 311 Information Systems and Application
- OPM 311 Operations Management
- WRIT 111 Research and Writing (Rhetorically) (Gen Ed J)
- General Education Activity and Wellness (Gen Ed B)
Total Credits for Second Year: 33
Fourth year
-
- CS 402 Software and Engineering Project Management
- CS 485/486 Senior Project I/II
- CS 397 (2 cr.) Independent Study (taken twice)
- CS technical elective**
- CS technical elective
- CS technical elective
- General Education elective*
- General Education elective*
Total Credits for Fourth Year 31
* Students must take at least two Gen. Ed. courses to fulfill the A, D, I, and T categories.
** Must take a security-related elective at either °®¶¹´«Ã½ or ITU.