Smarte IoT-Systeme, kurz SIS, schaffen neue Automatisierungsmöglichkeiten, z.B. für intelligente Gebäude, digitale Gesundheitsanwendungen und effiziente Transportsysteme. Hier interagieren sie mit anderen Geräten oder Menschen – die Entwicklung hat dementsprechend hohe Anforderungen an Sicherheit, Zuverlässigkeit und Datenschutz zu erfüllen. Hinzu kommt, dass SIS in sehr dynamischen Umgebungen zurechtkommen müssen, deren Bedingungen zum Zeitpunkt der Entwicklung nur schwer vorhersehbar sind. Treten während des Betriebs z.B. Bedrohungen für die Datensicherheit auf, müssen sich die SIS selbständig an solche Umgebungsänderungen anpassen können. Das erfordert neue Ansätze für die Erstellung und den Betrieb der Systeme.
Im EU-Projekt ENACT hat die paluno-Arbeitsgruppe von Prof. Pohl mit europäischen Forschungspartnern den Prozessverbesserungsansatz „DevOps“ speziell für SIS weiterentwickelt. Der Begriff DevOps setzt sich aus den Worten Development und IT-Operations zusammen und hat das Ziel, eben diese, eigentlich getrennt arbeitenden Bereiche, zu verzahnen. Dazu wurden von den Projektpartnern für alle Phasen des DevOps-Lebenszyklus (siehe Grafik) geeignete Software-Werkzeuge konzipiert.
Künstliche Intelligenz kann DevOps unterstützen
Die Arbeitsgruppe von Prof. Pohl war für das Design und die prototypische Implementierung des „Online Learning Enablers“ verantwortlich, der die „Operate“-Phase durch automatisierte Werkzeuge unterstützt. „Wir haben untersucht, wie Künstliche Intelligenz die Laufzeitadaption von IoT-Systemen ermöglicht und dazu verschiedene, neuartige Lernalgorithmen getestet,“ erläutert Projektkoordinator Dr. Andreas Metzger. „Die besten Ergebnisse hinsichtlich der Automatisierbarkeit konnten wir mit Policy-based Reinforcement Learning erzielen. Mit diesen Algorithmen ist die IoT-Software in der Lage, für unterschiedliche und sich verändernde Umgebungssituationen jeweils geeignete Anpassungen zu lernen.“
Doch was passiert, wenn die Funktionalitäten des SIS bei einer manuellen Weiterentwicklung oder Wartung der Software verändert werden? „Die Lernalgorithmen sind zunächst blind gegenüber solchen Veränderungen,“ erklärt Dr. Metzger. „Damit sie dennoch durch eine Weiterentwicklung neu eingeführte Adaptionsmöglichkeiten berücksichtigen können, setzen wir Variabilitätsmodelle ein. Diese, aus der Software-Produktlinienentwicklung bekannten Modelle erlauben auch Adaptationen in kompakter und maschinenlesbarer Form darzustellen und zu analysieren.“
Die Arbeiten der ENACT-Partner ergänzen sich zu einem integrierten DevOps-Framework für gängige IoT-Plattformen. Das Projekt wurde von der Europäischen Union für drei Jahre mit insgesamt 4,93 Mio Euro gefördert. 420.000 Euro flossen davon an die UDE. Die Ergebnisse sind im jüngst erschienenen, frei zugänglichen Buch „DevOps for Trustworthy Smart IoT Systems“ zusammengefasst.
Weitere Infos zum Projekt
Literatur
Nicolas Ferry (ed.), Hui Song (ed.), Andreas Metzger (ed.), Erkuden Rios (ed.) (2021): DevOps for Trustworthy Smart IoT Systems, Boston-Delft: now publishers, http://dx.doi.org/10.1561/9781680838251
Andreas Metzger, Clément Quinton, Zoltán Ádám Mann, Luciano Baresi and Klaus Pohl: Feature Model-Guided Online Reinforcement Learning for Self-Adaptive Services. In: Eleana Kafeza, Boualem Benatallah, Fabio Martinelli, Hakim Hacid, Athman Bouguettaya and Hamid Motahari (eds.): 18th Int'l Conference on Service-Oriented Computing (ICSOC 2020), Dubai, UAE, December 14-17, 2020 , Volume 12571 of LNCS , Springer , 2020 .
Alexander Palm, Andreas Metzger and Klaus Pohl: Online Reinforcement Learning for Self-Adaptive Information Systems. In: Schahram Dustdar, Eric Yu, Camille Salinesi, Dominique Rieu and Vik Pant (eds.): 32nd Int'l Conference on Advanced Information Systems Engineering (CAiSE 2020), Grenoble, France, June 8-12, 2020 , Volume 12127 of LNCS , Springer , 2020 , 169-184.
Kontakt
Name | Kontakt |
---|---|
Software Systems Engineering (SSE) | +49 201 18-34650 andreas.metzger@paluno.uni-due.de |
Presse- und Öffentlichkeitsarbeit | +49 201 18-34655 birgit.kremer@paluno.uni-due.de |