• CS 4610

    Programming Languages
     Rating

    3.33

     Difficulty

    3.44

     GPA

    3.48

    Last Taught

    Fall 2025

    Presents the fundamental concepts of programming language design and implementation. Emphasizes language paradigms and implementation issues. Develops working programs in languages representing different language paradigms. Many programs oriented toward language implementation issues. Prerequisite: CS 2150 or (CS 2120 and 3140) with a grade of C- or better

  • CS 4630

    Defense Against the Dark Arts
     Rating

    3.23

     Difficulty

    3.31

     GPA

    3.32

    Last Taught

    Fall 2025

    Viruses, worms, and other malicious software are an ever-increasing threat to computer systems. There is an escalating battle between computer security specialists and the designers of malicious software. This course provides an essential understanding of the techniques used by both sides of the computer security battle. Prerequisite: CS 3710 with a grade of C- or better

  • CS 4710

    Artificial Intelligence
     Rating

    3.38

     Difficulty

    3.20

     GPA

    3.63

    Last Taught

    Fall 2025

    Introduces artificial intelligence. Covers fundamental concepts and techniques and surveys selected application areas. Core material includes state space search, logic, and resolution theorem proving. Application areas may include expert systems, natural language understanding, planning, machine learning, or machine perception. Provides exposure to AI implementation methods, emphasizing programming in Common LISP. Prerequisite: CS 2150 or CS 3100 with a grade of C- or better

  • CS 4720

    Mobile Application Development
     Rating

    3.05

     Difficulty

    3.14

     GPA

    3.67

    Last Taught

    Fall 2025

    Mobile computing devices have become ubiquitous in our communities. In this course, we focus on the creation of mobile solutions for various modern platforms, including major mobile operating systems. Topics include mobile device architecture, programming languages, software engineering, user interface design, and app distribution. Prerequisite: CS 2150 or CS 3140 with a grade of C- or better

  • CS 4740

    Cloud Computing
     Rating

    2.88

     Difficulty

    2.24

     GPA

    3.61

    Last Taught

    Fall 2025

    Investigates the architectural foundations of the various cloud platforms, as well as examining both current cloud computing platforms and modern cloud research. Student assignments utilize the major cloud platforms. Prerequisite: CS 2150 or CS 3140 with a grade of C- or better

  • CS 4750

    Database Systems
     Rating

    3.47

     Difficulty

    2.29

     GPA

    3.74

    Last Taught

    Fall 2025

    Introduces the fundamental concepts for design and development of database systems. Emphasizes relational data model and conceptual schema design using ER model, practical issues in commercial database systems, database design using functional dependencies, and other data models. Develops a working relational database for a realistic application. Prerequisite: CS 2150 or (CS 2120 and 3140) with a grade of C- or better

  • CS 4774

    Machine Learning
     Rating

    3.35

     Difficulty

    3.06

     GPA

    3.75

    Last Taught

    Fall 2025

    An introduction to machine learning: the study of algorithms that improve their performance through experience. Covers both machine learning theory and algorithms. Introduces algorithms, theory, and applications related to both supervised and unsupervised learning, including regression, classification, and optimization and major algorithm families for each.Prerequisites: CS 2150 or CS 3100 with a grade of C- or better; APMA 3100, APMA 3110, MATH 3100, or equivalent and Math 3350 or APMA 3080 or equivalent

  • CS 4971

    Capstone Practicum II
     Rating

    4.00

     Difficulty

    2.50

     GPA

    3.45

    Last Taught

    Fall 2025

    This course is one option in the CS fourth-year thesis track and is the continuation from CS 4970. Under the practicum track, students will take two 3-credit courses, CS 4970 and CS 4971. These courses would form a year-long group-based and project-based practicum class. There would be an actual customer, which could be either internal (the course instructor, other CS professors, etc.) or external (local companies, local non-profits, etc.).Prerequisite: CS 4970

  • CS 4980

    Capstone Research
     Rating

     Difficulty

     GPA

    3.91

    Last Taught

    Fall 2025

    This course is one option in the CS fourth-year thesis track. Students will seek out a faculty member as an advisor, and do an independent project with said advisor. Instructors can give the 3 credits across multiple semesters, if desired. This course is designed for students who are doing research, and want to use that research for their senior thesis. Note that this track could also be an implementation project, including a group-based project. Prerequisite: CS 3140 with a grade of C- or higher, and BSCS major.

  • CS 4991

    Capstone Technical Report
     Rating

    3.33

     Difficulty

    1.00

     GPA

    Last Taught

    Fall 2025

    Supports the writing of the technical report component of the fourth-year thesis, credit for which is given in STS 4600. Students will write the report assuming a non-technical audience. The course is part of the CS 4XXX elective option in the fourth-year CS thesis track. BS CS 4th years (both first & second majors) and pre- or co-requisite STS 4500