TeSOS
Überblick
Selbstorganisierende, adaptive Systeme (SOAS) zeichnen sich dadurch aus, dass sie Entscheidungen bezüglich des Verhaltens und der Organisationsstruktur von der Entwurfs- in die Laufzeit verlagern. Sie sind somit in der Lage, sich von schlechten, ungeeigneten oder unerwünschten Zuständen, die durch eine veränderliche Umwelt bedingt sind, mittels Adaptions- und Selbstorganisationsmechanismen zu erholen. Dies wird durch eine selbständige Rekonfiguration von Agenten oder Gruppen von Agenten und die daraus resultierende Systemanpassung an neue Umweltsituationen ermöglicht. Eine Veränderung der Umwelt kann dabei vom Hinzukommen neuer Aufgaben und Agenten bis zum Wegfall von Fähigkeiten reichen.
Das Projekt TeSOS widmet sich dem Testen, d. h. der systematischen Aufdeckung von Fehlern, von SOAS. Klassischerweise liegt ein Fehler vor, wenn das Ist-Verhalten vom Soll-Verhalten abweicht; das Ziel des Testens ist es, solche Fehlerwirkungen nachzuweisen. Die adaptiven und selbstorganisierenden Systemen zugrundeliegenden Mechanismen sind nun wesentlich in das Testvorgehen einzubeziehen, da sie eine Abweichung zwischen gutem, geeignetem oder gewünschtem und tatsächlichem Verhalten registrieren können und in der Lage sind, das System danach so zu rekonfigurieren, dass wieder ein guter, geeigneter oder gewünschter Zustand vorliegt. Dazu baut TeSOS auf dem Architekturprinzip “Corridor Enforcing Infrastructure” (CEI) auf. Diese macht den Raum der Soll-Zustände als Korridor korrekten Verhaltens (“Corridor of Correct Behaviour”, CCB) explizit, der zur Laufzeit überwacht wird und bei Abweichungen Mechanismen zur Wiederherstellung eines erlaubten Zustands auslöst. TeSOS möchte zeigen, dass durch die CEI das Testen von SOAS geradezu standardisiert werden kann, indem die CEI als das grundlegende Testobjekt eingeführt und testbar gemacht wird: Die Funktionalität der einzelnen Agenten in einem SOAS, welche meist durch einfache Regeln charakterisiert ist, kann vermutlich durch klassische Methoden getestet werden. Für die Adaptivität legt dagegen die CEI klar fest, was eine fehlerhaftes Rekonfigurationverhalten ist und welchen Teil des SOAS die Adaption und Selbstorganisation betreffen, und bietet so die Möglichkeit, auf Rekonfigurations- und Adaptionsfehler zu testen. Die Einschränkungen der Systemzustände zur Beschreibung des Korridors korrekten Verhaltens bilden die Basis für eine Ableitung eines automatischen Testorakels. Ein Ansatz zur Isolation der Rekonfigurationsverfahren führt darüberhinaus auf eine generische modellbasierte Testarchitektur, in der Testfallgenerierung, Testfallausführung und Testfallevaluation zusammengeführt werden und die dazu benutzt werden kann, sowohl das Gesamt-SOAS als auch Systemteile, also Agenten oder Agentgruppen, auf der Basis der CEI zu testen.
Das Isolationsinstrument für die Rekonfiguration ist die modellbasierte Simulation der Umwelt des Adaptions- bzw. Selbstorganisationsmechanismus sowie die Simulation der Umwelt der Agenten, die von dem Mechanismus kontrolliert werden. Die Umwelt stellt sich als ein stochastischer Prozess dar, welcher die Eingabe der Tests von Rekonfigurationsverfahren oder Agentenfunktionalität generiert und diskrete oder kontinuierliche Umgebungsvariablen umfasst. Die verschiedenen Umwelttypen auf Agenten-, Agentengruppen- oder Systemebene stellen im Test dann auch das Instrument zur Dekomposition des Gesamtsystems dar. TeSOS möchte zudem zeigen, dass es für das Testen eines SOAS dennoch nicht notwendig ist, dass die CEI bereits zum Entwicklungszeitpunkt verbaut wurde; vielmehr kann sie als Leitprinzip des Testens unter Verwendung der Testarchitektur dienen. Die Ergebnisse von TeSOS werden an fünf SOAS-Fallstudien darunter an einem selbstorganisierenden Produktions- und einem adaptiven Energiesystem gezeigt.
Team
- Telefon: +49 821 598 2180
Institut für Software & Systems Engineering
Das Institut für Software & Systems Engineering, geleitet von Prof. Dr. Wolfgang Reif, ist eine wissenschaftliche Einrichtung in der Fakultät für Angewandte Informatik an der Universität Augsburg. Das Institut unterstützt sowohl Grundlagen- als auch angewandte Forschung in allen Bereichen der Software & Systems Engineering. In der Lehre ermöglicht es die weitere Entwicklung des relevanten Kursangebots von Fakultät und Universität.