From Computer Science
Jump to: navigation, search

This page gives basic information for CS courses - when offered, normal content, sequencing, etc. You should also see the information linked from the information on CS programs

CS Courses

The table below lists all currently offered CS courses, when they are normally offered, which programming languages are normally used, and links to the most recent syllabus for each faculty member who has recently taught the course.

A spreadsheet shows the normal sequencing of courses for the BS and MS degrees, and which terms the courses are normally offered in - course sequencing spreadsheet. Below there is also an indication given whether each course is normally offered in the fall, spring, summer, or some combination. If there are no "Y" for a course, it is offered as needed. For courses listed as "even" or "odd", the course is offered only in even (or odd) numbered years. Most CS courses are offered via distance. By default, each CS course is offered in a face to face section and a simultaneous online synchronous section (over Zoom). Some courses are offered asynchronously (no fixed meeting times, lectures by video); these are marked "Y/D" in the table below. All courses are 3 credit hours unless otherwise noted. A few 400 level undergraduate courses have lab sections that are taken with the course (401, 456, 457, 458); the 500 level courses do /not/ have lab sections that are taken (so undergraduates take CS 401 and 401L, while graduates would take just CS 501).

If you want to look up a syllabus for a particular term (for recent years), see

For links to class websites for the current term (for those that use class websites), see

Course Name Fall Spring Summer Syllabus Language(s)
SH 199 Summer Honors (for high school students) Y summer honors
CSS 210 Introduction to Networking Y/D Abhyankar
CSS 211 Introduction to Computer Security Y/D Abhyankar
CSS 331 Files and Databases Y/D May
CS 101 Fundamentals of Computing Y/D Y/D May, Kinne, Sternfeld, model pseudocode, python
CS 110 Fast Track Programming (1-3 hrs) model C or Python
CS 151 Introduction to Computer Science Y/D Y/D Y/D Kinne D & Schnabel, Kinne J et al., May, Schotter, Baker, Rafiey, Sternfeld python
CS 170 Web Programming Y/D Y/D May, Sternfeld, Baker,Kinne html/css, javascript
CS 201 Programming Structures (4 hrs) Y/D Y May Sternfeld, Exoo,Kinne python
CS 203 (formerly 303) Discrete Structures (4 hrs) Y Y Sternfeld, Egri (python/sage optional)
CS 256 Principles of Structured Design Y/D Abhyankar Baker, Golish, Schotter, Basavaraj C
CS 260 Object Oriented Programming D.Kinne, Boulware, Baker, Carrillo,Sternfeld Processing/Java
CS 302 (formerly 202) Data Structures and Algorithms (4 hrs) Y Y/D Kinne , Golish, Schotter, Exoo C, C++
CS 305 Computer Science Teaching Methods model
CS 351 Computer Organization (4 hrs) Y Y/D

Baker, model || assembly

CS 399 Cooperative Professional Experience
CS 401/501 Programming for Data Science (+ 1hr 401L) Y/D Y May, Exoo Python, R
CS 417 Machine Learning Y Python, R
CS 420/520 Theory of Computation Kinne, Exoo (python/sage optional)
CS 421/521 Formal Methods Abhyankar ACL2, Clausal Logic, Haskell, Prolog
CS 440/540 Graphics Programming Exoo, Kinne C/C++
CS 452/552 Software Engineering Abhyankar UML, C++/Java
CS 456/556 Systems Programming (+ 1hr 456L) Y Baker, Exoo C/C++, assembly
CS 457/557 Database Systems (+ 1hr 457L) Y Exoo, Schotter, Kinne SQL, some noSQL, some high level
CS 458/558 Algorithms (+ 1hr 458L) Y Kinne, Exoo, Rafiey C/C++
CS 459/559 Topics in Computer Science (1-3 hrs) Y Abhyankar, Exoo (data science), Kinne (R, BD4ISU), Abhyankar (CSS 211), Schotter (Python)
CS 469/569 Unix/Linux Administration and Networking Y Baker C/C++/Bash
CS 470/570 Programming Languages Y Abhyankar Prolog, Haskell, Smalltalk/Squeak
CS 471/571 Operating Systems Y Baker, Kinne, Exoo C/C++
CS 473/573 Computer Networks Y Baker, Exoo, Kinne C/C++
CS 475/575 Artificial Intelligence Y Abhyankar, Exoo, Baker, Kinne C/C++
CS 479/579 Web Programming II Y Baker, Exoo php, SQL, XML, javascript, SPARQL
CS 499 Senior Seminar (2 hr) Y Y Baker, Kinne
CS 500 Programming Fundamentals Y/D Y Sternfeld, Basavaraj, Exoo, Kinne, model C/C++
CS 510 Introduction to CS and Programming Y Y model Python
CS 551 Computer Architecture Abhyankar assembly
CS 600 Concrete Mathematics Y Zhao, Egri, model
CS 601 Machine Learning Y Exoo Python, R
CS 602 Mobile and Cloud Computing odd Abhyankar, model
CS 603 Networking and Security odd Abhyankar, Kinne, model C/C++
CS 609 Web Programming and Applications Y Sternfeld, Kinne, model html/css/javascript/php/SQL
CS 610 Survey of Programming Languages even Abhyankar, model
CS 611 Software Specification and Design even [1], model VDM-SL
CS 617 Data Mining Y Exoo, Kinne python, R, sql, noSQL, tensorFlow
CS 618 Computational Biology even Kinne, Rafiey, model Python
CS 619 Trends in Computer Science even model
CS 620 Theory of Computation II even Kinne
CS 621 Discrete Structures II Rafiey
CS 650 Topics in Computer Science
CS 652 Software Engineering II Eiffel, Ruby, C++
CS 658 Algorithms II odd Rafiey, Exoo, Kinne
CS 670 Concurrent Programming odd Exoo, Kinne C/C++
CS 671 Operating Systems II odd Kinne C/C++
CS 673 Networking II even Exoo, model C/C++
CS 680 Readings in Computer Science
CS 685 Software Project (3-6 hrs) Y Y
CS 695 Computer Science Research (3-6 hrs) Y Y Exoo, Kinne LaTeX
CS 699 Computer Science Internship (0-3 hrs) Y Y Kinne, model

Normal Content

For each course, the most recent syllabus linked above is the best place to see what is currently in the course. You can also check these...