Course Number
Primary Program
Course Format
In-person, Synchronous Online

This course provides an introduction to autonomic and self-aware computing. It concentrates on the self-managing and self-awareness properties of computing systems, their architecture, adaptation, and decision making needed for system resiliency by continuingly adapting to changing environments. The vision for autonomic computing is described, how autonomic computing differs from automated and autonomous systems, as well the self-awareness properties and biological inspiration for autonomic systems. Architectures of autonomic systems are covered, which includes autonomic managers that provide the self-management for autonomic systems. Adaptive technology is also covered as well as what makes an autonomic system self-aware. Applications of autonomic computing are discussed, including security and resiliency applications, and how autonomic computing is used and is applied to cloud computing. Hands-on programming assignments as well as a project that provides autonomic capabilities to an IoT device, industrial control system, or other system of the student’s choosing will be ongoing throughout the course that provides application of the theories and concepts from the lectures. There will be weekly readings and discussions, with bi-weekly assignments that go into depth on selected topics that also contribute to the projects. With the help of the instructors, students will be encouraged to submit the project write-ups to a conference.

Course Offerings

There are no sections currently offered, however you can view a sample syllabus from a prior section of this course.