Difference between revisions of "CS Curriculum Revisions 2019-2020"

From Computer Science
Jump to: navigation, search
(Undergraduate Degree - CS BS)
Line 10: Line 10:
 
= Undergraduate Degree - CS BS =
 
= Undergraduate Degree - CS BS =
 
Note that the [https://catalog.indstate.edu/preview_program.php?catoid=36&poid=5351&returnto=1058 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.   
 
Note that the [https://catalog.indstate.edu/preview_program.php?catoid=36&poid=5351&returnto=1058 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.   
 +
 +
==CS Majors/Minor Overview==
 +
6 semester plan for the undergrad major
 +
{| class="wikitable"
 +
|-
 +
! Term !! All/Minor !! CS !! IS !! DS
 +
|-
 +
| Fall 1 ||            || 151                || 101              || 151, Math 131
 +
|-
 +
| Spring 1 ||          || 201, Math 131      || 151, CSS 210      || 201, Math 132
 +
|-
 +
| Fall 2 || stats, 251 || 202, Math 132, 203 || 170, CSS 211      || 202, Math 231
 +
|-
 +
| Spring 2 ||          || 456                || 201, 203, CSS 331 || Math 313, 401
 +
|-
 +
| Fall 3 || 499        || 458, 471          || 457, 479          || 457, 475
 +
|-
 +
| Spring 3 || 470, 499 || 473                || 469              ||
 +
|}
 +
Names of courses
 +
{| class="wikitable"
 +
|-
 +
! All !! CS !! IS !! DS
 +
|-
 +
|
 +
Stats - Math 241 or 341<br>
 +
151 Intro to CS<br>
 +
201 Data Structures?<br>
 +
203 Discrete Structures / Intro Theory<br>
 +
251 Intro Systems<br>
 +
470 PL<br>
 +
499 Senior Design<br>
 +
Culminating Exam<br>
 +
||
 +
202 Algorithms I?<br>
 +
458 Algorithms II?<br>
 +
456 Systems<br>
 +
471 Op Sys<br>
 +
473 Networking<br>
 +
||
 +
101 Fundamentals of Computing<br>
 +
CSS 210 Intro to Networking<br>
 +
CSS 211 Intro to Security<br>
 +
CSS 331 Files and DB<br>
 +
170 Web Prog I<br>
 +
457 DB<br>
 +
469 Unix/Linux Adm/Net<br>
 +
479 Web Prog II<br>
 +
||
 +
Math 131, 132, 231 Calc I, II, III<br>
 +
Math 313 Elem Lin Alg<br>
 +
202 CS II<br>
 +
401 Prog for DS<br>
 +
457 DB<br>
 +
475 AI<br>
 +
|}
 +
Prereqs
 +
* 101 or 151 -> CSS 210, CSS 211, CSS 311
 +
* 151 -> 201, 203, 251, 170
 +
* 201 -> 202, 470, 499, 457
 +
* 202 -> 458, 456, 475
 +
* 456 -> 471, 473
 +
* 251 -> 456, 469
 +
* 203 -> 458, 457
 +
* 170 -> 479
 +
* Math 313 -> 401, 475
 +
* Math 231 ->
  
 
== Required for all CS Majors ==
 
== Required for all CS Majors ==

Revision as of 02:21, 8 May 2019

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.

The learning outcomes for the courses are given in CS learning outcomes.

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.

CS Majors/Minor Overview

6 semester plan for the undergrad major

Term All/Minor CS IS DS
Fall 1 151 101 151, Math 131
Spring 1 201, Math 131 151, CSS 210 201, Math 132
Fall 2 stats, 251 202, Math 132, 203 170, CSS 211 202, Math 231
Spring 2 456 201, 203, CSS 331 Math 313, 401
Fall 3 499 458, 471 457, 479 457, 475
Spring 3 470, 499 473 469

Names of courses

All CS IS DS

Stats - Math 241 or 341
151 Intro to CS
201 Data Structures?
203 Discrete Structures / Intro Theory
251 Intro Systems
470 PL
499 Senior Design
Culminating Exam

202 Algorithms I?
458 Algorithms II?
456 Systems
471 Op Sys
473 Networking

101 Fundamentals of Computing
CSS 210 Intro to Networking
CSS 211 Intro to Security
CSS 331 Files and DB
170 Web Prog I
457 DB
469 Unix/Linux Adm/Net
479 Web Prog II

Math 131, 132, 231 Calc I, II, III
Math 313 Elem Lin Alg
202 CS II
401 Prog for DS
457 DB
475 AI

Prereqs

  • 101 or 151 -> CSS 210, CSS 211, CSS 311
  • 151 -> 201, 203, 251, 170
  • 201 -> 202, 470, 499, 457
  • 202 -> 458, 456, 475
  • 456 -> 471, 473
  • 251 -> 456, 469
  • 203 -> 458, 457
  • 170 -> 479
  • Math 313 -> 401, 475
  • Math 231 ->

Required for all CS Majors

  • CS 151 - Introduction to Computer Science (3)
  • CS 201 - Computer Science I (4) moved to required for CS concentration only
  • CS 202 - Computer Science II (4) moved to required for CS concentration only
  • CS 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 language
  • CS 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, 658
  • Systems Core - take 1 of 670, 671, 673
  • Core 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

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