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, and firming up the foundations in the CS concentration.
- MS - new Data Science concentration, streamline academic concentration
- BS and MS - shift some key courses to be 4-5 hour courses
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 credits
CS 201 - Computer Science I 4 creditsCS 202 - Computer Science II 4 creditsCS 303 - Discrete Structures 3 creditsCS 203 - Intro to Theory of Computation 4 credits - 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 creditsCS 351 - Intro to Systems 5 credits - programming, a bit of architecture and assembly languageCS 452 - Software Engineering 3 creditsCS 456 - Systems Programming 3 credits- CS 470 - Programming Languages 3 credits
CS 471 - Operating Systems 3 credits- CS 499 - Senior Seminar
14 credits (2 credits/term last 2 terms) 6 credits of CS electives- New requirements
- CS 260 Object-Oriented Programming - focus on important OO concepts, program design
- MATH 241 or 341 Statistics
- Pass Comprehensive Exam
- Total - 25 credits
Information Science Concentration
- CS 170 - Web Programming 3 credits
CS 457 - Data Base Processing 3 credits- CS 469 - Unix/Linux Administration and Networking 3 credits
CS 473 - Computer Networks 3 credits- CS 479 - Web Programming II 3 credits
- 6 credits of electives in CS courses
- New requirements
- CS 101 Fundamentals of Computing
- CSS 211 Intro to Computer Security
- CSS 331 Files and Database Systems
- CSS 210 Intro to Networking
- Total - 27 credits
Computing Science Concentration
- MATH 131 - Calculus I 4 credits
- MATH 132 - Calculus II 4 credits
CS 420 - Theory of Computation 3 creditsCS 421 - Formal Methods 3 credits- CS 458 - Algorithms
35 credits - 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 credits
- CS 202 Computer Science II 4 credits
- CS 456 Systems Programming
34 credits - some of the content that was in 471, 473 is put into 456
- New requirements
- Math 313 Elementary Linear Algebra
- Total - 28 credits
Data Science
New concentration
- Current courses
- CS 457 Database Processing
- CS 475 Aritificial Intelligence
- MATH 313 Elementary Linear Algebra
- MATH 131 Calculus I 4 credits
- MATH 132 Calculus II 4 credits
- MATH 231 Calculus III 4 credits
- New courses
- CS 401 Programming for Data Science I
- MATH 403 Linear Algebra and Modeling for Data Science and Analytics
- MATH 440 Statistics for Data Science & Analytics
- Total - 30 credits
Course sequencing for starting in the fall
- Fall 1 -
- Spring 1 - MATH 131
- Fall 2 - MATH 132
- Spring 2 - MATH 313, MATH 403
- Fall 3 - CS 401, CS 457, MATH 440
- Spring 3 - CS 475
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
- Existing requirements
- CS 151 - Introduction to Computer Science 3 credits
CS 201 - Computer Science I 4 creditsCS 202 - Computer Science II 4 credits6 credits of CS electives
- New requirements
- CS 260 Object Oriented Programming
- CS 203 Intro to Theory of Computation 4 credits
- CS 351 Intro to Systems 5 credits
- Total - 15 credits
CS Certificate
- Existing requirements
- CS 151 - Introduction to Computer Science 3 credits
- CS 170 - Web Programming 3 credits
CS 201 - Computer Science I 4 credits- 6 credits of CS electives
- New Requirements
- CS 260 Object Oriented Programming 3 credits
Graduate Degree - CS MS
Current requirements are at - [1]
Required for all CS Majors
- Retain from current requirements
- Culminating Experience - CS 685, 695, 699 (or BIO options for bioinformatics concentration)
- Note - give incomplete in 685, 695 if they haven't done enough yet.
- New Requirement
- Pass Comprehensive Exam
Academic Concentration
- Modifications of current requirements
- CS 658 Algorithms II (5) (revised 658) - includes some of the content that was in 620, offer 658 once per year, stop offering 620
- CS 671 Systems II (5) (revised 671) - includes some of the content that was in 670/673, offer 671 once per year, stop offering 670/673
- No longer require third systems/theory course
- New Requirements
- CS 558 (4) Algorithms and Theory of Computation - required if 458 not taken as undergrad
- CS 556 (4) Systems Programming - required if 456 not taken as undergrad
Professional Concentration
- Retain from current requirements - just about everything
- New requirements
- CS 501 Programming for Data Science & Analytics- required
Bioinformatics Concentration
- Retain from current requirements - just about everything
- Modifications of current requirements
- CS 500 Programming Fundamentals - allow either CS 500 or CS 501 to count
Data Science - New Concentration
- Required Coursework
- CS 501 Programming for Data Science & Analytics I
- CS 557 Database Processing (if 457 not taken as undergrad)
- CS 575 Artificial Intelligence (if 475 not taken as undergrad)
- CS 601 Programming for Data Science & Analytics II
- CS 617 Databases, Data Mining, and Big Data
- MATH 503 Linear Algebra and Modeling for Data Science and Analytics
- MATH 540 Statistics for Data Science & Analytics
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
- 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