Practicum: Scenario-Based Testing of Cyber-Physical Systems

Description

Scenario-based testing is an effective testing methodology used to verify the behavior of autonomous cyber-physical systems. The methodology has been used to test autonomous cars for unsafe behavior and, more recently, to conduct similar tests on autonomous drones. As autonomous drones become more prevalent, interest in autonomous swarms of drones is also increasing. Scenario-based testing can be extended to verify the behavior of a group of drones operating cooperatively. This practical course teaches students how to apply scenario-based testing to a cyber-physical system, specifically using cooperating drones as the system-under-test.

Key Topics:

  • Scenario-based testing as a framework for testing the behavior of autonomous cyber-physical systems in expected operational scenarios
  • Discrete-event simulations to execute and rapidly test controllers that dictate the behavior of cyber-physical systems
  • Search-based testing and metaheuristic search methods to find challenging test cases in the form of concrete scenarios

Objective:

  • Learn about the scenario-based testing framework and the methodologies that make scenario-based testing possible.
  • Design and implement an automated scenario-based test case generation tool.
  • Evaluate the tests produced by the tool using measures of effectiveness.

Previous Knowledge Expected:

  • Prerequisite courses:
    • Advanced Topics of Software Testing (IN2084)
    • Praktikum Grundlagen der Programmierung (IN0002)
  • Programming experience (intermediate); including in Python.
  • Interest in cyber-physical systems is recommended.
  • Some familiarity with discrete-event simulations and MATLAB is beneficial.

Registration

Registration for this course is over.

Course Content

The course content, including the preliminary slides, can be found on Moodle.

Schedule

The introduction lectures of the practical course will take place in Room 00.09.038 at the following timeslots:

  • 16.10. 16:00h - 17:30h
  • 17.10. 15:00h - 16:30h
  • 23.10. 16:00h - 17:30h
  • 24.10. 15:00h - 16:30h

Please let us know if you are unable to attend any of the timeslots.