Your feedback has been sent to our team.
3.05
3.14
3.67
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
3.38
3.20
3.63
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
3.43
3.27
3.26
Fall 2025
A first course in software engineering and software construction, this course focuses on bringing the programming concepts learned in a first course in data structures and algorithms together to begin to teach students how to build more complex systems. The course covers introductory topics in testing, software design principles, design patterns, functional programming, and data storage and manipulation. Completed CS 2100 with a C- or better.
3.23
3.31
3.32
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
3.33
3.44
3.48
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
3.78
3.67
3.74
Fall 2025
A survey of methods for building large-scale internet websites and mobile apps, with a focus on how theory meets practice. Topics covered include performance engineering, scaling, security, and large team software engineering. Results in students building a working scalable online application. Prerequisites: CS 3240 with a grade of C- or better
5.00
4.00
3.77
Fall 2025
In-depth study of a computer science or computer engineering problem by an individual student in close consultation with departmental faculty. The study is often either a thorough analysis of an abstract computer science problem or the design, implementation, and analysis of a computer system (software or hardware). Prerequisite: Instructor permission.
3.00
4.00
3.97
Fall 2025
This is a core Cyber Physical Systems (CPS) class. It provides fundamental core material in signal processing, machine learning, and feedback control. However, the material is not presented in a traditional manner and does not replace deep domain expertise in these topics. Rather, the principles and skills taught in this class highlight the intersection of the cyber and the physical.
3.13
4.23
3.14
Fall 2025
The goal of this course is to understand the fundamental limits on what can be efficiently computed. These limits reveal properties about information, communication, and computing, as well as practical issues about how to solve problems. Introduces computation theory including grammars, automata, and Turing machines. Prereq: CS 3100 with a grade of C- or better
3.67
4.33
3.04
Fall 2025
Introduces the student to the basics of high-performance parallel computing and application development for massively parallel processors (e.g., GPUs). The course will also introduce the internal architecture of these parallel processors and its impact on performance. Prerequisite: CS 3100 and CS 3130 with a C- or better.
No course sections viewed yet.