CS Curriculum Revisions 2019-2020
Below are proposed revisions to the CS BS and MS degrees. A few guiding principals...
- BS - widen the split between the computing science and information science concentrations - making the IS concentration more doable/attractive to more students, firming up the foundations in the CS concentration, adding a data science concentration.
- MS - new data science concentration, streamline academic concentration
- BS and MS - shift some key courses to be 4-5 hour courses, ensuring a stronger foundation for more students.
The # of credits for each course is in (). Existing requirements that are being eliminated are in strikethrough.
Undergraduate Degree - CS BS
Note that the current major includes 10 courses required of all majors, 5 additional courses required for information science, 3 CS courses required of computing science, and 2 math courses required for computing science.
Required for all CS Majors
- CS 151 - Introduction to Computer Science (3)
CS 201 - Computer Science I (4)moved to required for CS concentration onlyCS 202 - Computer Science II (4)moved to required for CS concentration onlyCS 303 - Discrete Structures (3)CS 203 - Intro to Theory of Computation (4) - focus more on fundamentals, reduce total number of different topics (some topics are moved to CS 201, 202, 458 instead)CS 451 - Computer Architecture (3)CS 351 - Intro to Systems (5) - programming, a bit of architecture and assembly languageCS 452 - Software Engineering (3)CS 456 - Systems Programming (3)- CS 470 - Programming Languages (3)
CS 471 - Operating Systems (3)- CS 499 - Senior Seminar
(1)(4) (2 credits/term last 2 terms) 6 credits of CS electives- New requirements
- CS 260 Object-Oriented Programming (3) - focus on important OO concepts, program design
- MATH 241 or 341 Statistics (3)
- Pass Comprehensive Exam
- Total - 25 credits
Information Science Concentration
- CS 170 - Web Programming (3)
CS 457 - Data Base Processing (3)moved to data science concentration- CS 469 - Unix/Linux Administration and Networking (3)
CS 473 - Computer Networks (3)- CS 479 - Web Programming II (3)
- 6 credits of electives in CS courses
- New requirements
- CS 101 Fundamentals of Computing (3)
- CSS 211 Intro to Computer Security (3)
- CSS 331 Files and Database Systems (3)
- CSS 210 Intro to Networking (3)
- Total - 27 credits
Computing Science Concentration
- MATH 131 - Calculus I (4)
- MATH 132 - Calculus II (4)
CS 420 - Theory of Computation (3)CS 421 - Formal Methods (3)- some of the content that was in 421 is in 201/202/203, 458 instead- CS 458 - Algorithms
(3)(5) - some of the content that was in 303 and 420 is put into 458 instead - Moved from "required for all CS majors" to required for CS concentration
- CS 201 Computer Science I (4)
- CS 202 Computer Science II (4)
- CS 456 Systems Programming
(3)(4) - some of the content that was in 471, 473 is put into 456
- New requirements
- Math 313 Elementary Linear Algebra (3)
- Total - 28 credits
Data Science Concentration
New concentration - subject to discussion with the rest of the Math & CS department (there was a thought to do a standalone BS in DS as its own program).
- CS 457 Database Processing (3)
- CS 475 Aritificial Intelligence (3)
- MATH 313 Elementary Linear Algebra (3)
- MATH 131 Calculus I (4)
- MATH 132 Calculus II (4)
- MATH 231 Calculus III (4)
- New courses
- CS 401 Programming for Data Science I (3)
- MATH 403 Linear Algebra and Modeling for Data Science and Analytics (3)
- MATH 440 Statistics for Data Science & Analytics (3)
- Total - 30 credits
No Longer Required
Courses that are no longer required in any concentration. Can be banked if we don't plan to offer, or offered as electives
- CS 452 Software Engineering, CS 471 Operating Systems, CS 420 Theory of Computation, CS 421 Formal Methods, CS 473 Computer Networks
- Total - 5 courses, 15 credits
Minor/Certificate
current minor, current certificate
CS Minor
- CS 151 - Introduction to Computer Science (3)
CS 201 - Computer Science I (4)CS 202 - Computer Science II (4)6 credits of CS electives- New requirements
- CS 260 Object Oriented Programming (3)
- CS 203 Intro to Theory of Computation (4)
- CS 351 Intro to Systems (5)
- Total - 15 credits
CS Certificate
- CS 151 - Introduction to Computer Science (3)
- CS 170 - Web Programming (3)
CS 201 - Computer Science I (4)- 6 credits of CS electives
- New Requirements
- CS 260 Object Oriented Programming (3)
Graduate Degree - CS MS
Current requirements are at - [1]
Required for all CS Majors
- Culminating Experience (no change) - choose one of
- CS 699 - Computer Science Internship (0-3)
- CS 685 - Software Project (3-6)
- CS 695 - Computer Science Research (3-6)
- BIO 692 - Research in Biology (1-10) (bioinformatics concentration only)
- BIO 699 - Master’s Thesis (6) (bioinformatics concentration only)
- New Requirement
- Pass Comprehensive Exam
- Culminating experience - give incomplete when insufficient work done
Academic Concentration
Theory Core - take 1 of CS 620, 621, 658Systems Core - take 1 of 670, 671, 673Core elective - additional theory/systems course- CS 658 Algorithms II
(3)(5) - includes some content that was in 620, offer 658 once per year, stop offering 620 - CS 671 Systems II
(3)(5) - includes some of the content that was in 670/673, offer 671 once per year, stop offering 670/673 - New Requirements
- CS 558 Algorithms and Theory of Computation
(3)(5) - required if 458 not taken as undergrad - CS 556 Systems Programming
(3)(4) - required if 456 not taken as undergrad
- CS 558 Algorithms and Theory of Computation
Professional Concentration
- Retain current requirements - CS 500, CS 600, 1 course from 602-609, 1 course from 610-618, 1 additional course 602-618
- New requirements
- CS 501 Programming for Data Science & Analytics (3) - required (in addition to current requirements)
Bioinformatics Concentration
- Retain everything from current requirements
- Modifications of current requirements
- CS 500 Programming Fundamentals - allow either CS 500 or CS 501 to count
Data Science - New Concentration
Admissions
To declare the data science concentration, students must demonstrate competency (through coursework/transcript or otherwise) in the following - basic programming and data structures, multivariate calculus, matrix algebra. To be prepared for the DS MS, an undergraduate at ISU should complete the following - CS 151 Intro to Computer Science, CS 260 Object Oriented Programming, MATH 131/132/231 Calculus I/II/III, MATH 313 Elementary Linear Algebra.
Curriculum
- CS 501 Programming for Data Science & Analytics I (3)
- CS 557 Database Processing (3) (if 457 not taken as undergrad)
- CS 575 Artificial Intelligence (3) (if 475 not taken as undergrad)
- CS 601 Programming for Data Science & Analytics II (3)
- CS 617 Databases, Data Mining, and Big Data (3)
- MATH 503 Linear Algebra and Modeling for Data Science and Analytics (3)
- MATH 540 Statistics for Data Science & Analytics (3)
This is 7 required courses. Adding the 3 credit culminating experience then gives 8 courses, and 3 courses of 600-level electives (need all 3 to be 600 level so the total is 18 credits of 600 level).
Accelerated MS Program
An accelerated MS program is a chance for an ISU undergrad to finish the BS and MS in 4+1 years. The university-wide policies are - policies. An example program is - accelerated Math MS
- Students must have 3.0 GPA and have completed 80% of their required credits by the start of their 4th year.
- Students must finish their BS with 3.0 GPA.
- Can take up to 9 credits of 500 level courses and 6 credits of 600 level courses in final year of BS. Up to 9 credits of 500 level can count for both BS and MS. Note that 600 level courses don't count towards being full time for financial aid.
Teaching Schedule
When these changes are in effect (2020-2021), the CS teaching schedule could be ...
- Fall and Spring (52) - 101, 151, 151, 151, 170, 201 (4), 202 (4), 203 (4), 256, 256, 260, 351 (5), 499 (2), 500, 401/501, 685/695/699
- Fall (30) - 479, CSS 210, CSS 331, 458 (4), 457, 470, 671 (5), 600, 603/611, 617
- Spring (30) - 469, CSS 211, 456 (4), 475, 658 (5), 601, 602/610, 618/619, 609
- Total - 52*2+30+30 - 164 credit hours,
And taught by ...
- Abhyankar - fall CSS 210, 603/611, 470, 256 | spring 256, 256, CSS 211, 602/610
- Baker - fall 457, 479, 351(5) | spring 351(5), 456(4), 469
- Exoo - fall 617, 401/501, 671(5) | spring 475, 601, 401/501
- Kinne - fall 151, GH 101 | spring 151, BD4ISU
- Rafiey - fall 458(4), 600, 256 | spring 658(5), 618/619
- Sternfeld - fall 500, 499(2), 170, 203(4) | spring 203(4), 500, 609, 499(2)
- New CS Faculty Member - fall 202(4), 685, CSS 331 | spring 202(4), 685, 170
- Boulware - fall 260 | spring 260
- May - fall 101, 201(4) | spring 101, 201(4)
- GAs - fall 151, 151, 260 | spring 151, 151, 260
- not offered with current staffing - [420], [473], [452], [421], [471]
Note - this assumes that Math is able to offer MATH 403/503, 440/540