Hasso-Plattner-Institut
  
Hasso-Plattner-Institut
Prof. Dr. Holger Giese
  
 

Forschung

Forschungsgebiet

Heutzutage wird in fortschrittlichen technologischen Produkten oft Informations- und Kommunikationstechnologie eingesetzt, um die Funktionalität und Qualität des Produktes zu steigern. Deswegen spielt Software heutzutage eine immer wichtigere Rolle bei der Steuerung vieler technischer Systeme wie elektrischer oder mechanischer Geräte, technischer Prozesse in der Industrie oder moderner Automobile. Dieser Trend in Richtung softwareintensiver und eingebetteter Systeme resultiert in so erstaunlichen Beobachtungen wie der, dass der Technologiekonzern Siemens mehr Softwareentwickler beschäftigt als Microsoft (siehe Reinhold E. Achatz, Keynote: Optimierung der Softwareentwicklung in einem Industrieunternehmen am Beispiel Siemens. Peter Liggesmeyer, Klaus Pohl, Michael Goedicke (Eds.): Software Engineering 2005, 8.-11.3.2005 in Essen. LNI 64 GI 2005.).

Zusätzlich kann man beobachten, dass besonders fortschrittliche Industriesektoren wie die Automobilindustrie in groß angelegten Initiativen versuchen, Softwarequalität und den Aspekt der Softwareintegration besser zu adressieren (siehe die AUTOSAR Initiative unter http://www.autosar.org).

In Zukunft wird erwartet, dass softwareintensive Systeme hochgradig verteilt sein werden und mittels adaptivem und antizipatorischem Verhalten erfolgreich in dynamischen informationstechnischen und physikalischen Umwelten agieren werden. (siehe M. Wirsing (Ed.), Report on the EU/NSF Strategic Workshop on Engineering Software-Intensive Systems, in conjunction with the ICSE05, Edinburgh, UK, 2004.), Deswegen sind geeignete Modellierungs- und Analysetechniken für solche softwareintensiven Systeme von großer Bedeutung. (NSF Workshop on Modeling and Simulation For Design of Large Software-Intensive Systems: Toward a New Paradigm Recognizing Networked, Distributed and Diffuse-Control Software, Tucson, Arizona, USA, 2003). Diese Techniken müssen dabei in geeigneter Weise eine ganze Reihe von Modellen der verschiedenen Disziplinen wie Softwaretechnik, Regelungstechik und Geschäftsprozessmodellierung vereinen.

Eigene Forschung

Visuelle Modellierungstechniken für die Softwarearchitektur verteilter Systeme und ein Ansatz für die konsistente Integration verschiedener architektureller Sichten mit Hilfe von Synthese sind entwickelt worden, um Architekturentscheidungen systematisch untersuchen und entsprechende Probleme frühzeitig erkennen zu können.

Softwareintensive Systeme sind oft nicht nur verteilte Systeme, sondern beinhalten auch eingebettete Systeme, die hartes Echtzeitverhalten garantieren müssen. Um auch die Anforderungen solcher Systeme adressieren zu können, wurde ein Ansatz zu deren Modellierung als Multi-Agenten System mit autonom agierenden, selbst-adaptiven Agenten entwickelt , der auf UML-Komponenten und Mustern mit Echtzeitverhalten aufbaut.

Um in der Lage zu sein, die Modelle der Disziplinen Regelungstechnik und Geschäftsprozessmodellierung, die häufig auch bei der Entwicklung softwareintensiver Systeme beteiligt sind, in das Softwaremodell zu integrieren, wurde eine Integration von Workflowmodellen und UML-Modellen und eine Integration von regelungstechnischen quasi-kontinuierlichen Modellen in hierarchische UML-Komponenten und Statecharts entwickelt. Die präsentierten Konzepte können darüber hinaus dazu verwendet werden, selbstadaptives Verhalten in Form von hierarchischer Rekonfiguration zu beschreiben oder auch eine Entkoppelung zwischen weicher und harter Echtzeit auf Ebene der Architektur zu erreichen.

Da softwareintensive Systeme häufig sicherheitskritische Systeme sind, werden hinreichende Mittel zur Identifikation und Analyse geeigneter Gefahren benötigt. So wurde zum einen ein Ansatz für die kompositionale Gefahrenanalyse entwickelt, der die Verbindungsstruktur und Kapselung zwischen den Komponenten ausnutzt. Um auch eine Analyse zu ermöglichen, wurde ein Ansatz für die voll automatische kompositionale Verifikation von eingebetteten Echtzeitsystemen erfunden , der auf der Modellierung mittels Komponenten und Muster aufsetzt, und ein weiterer Ansatz zur voll automatischen modularen Verifikation von hierarchischen hybriden Systemen mit Rekonfiguration erarbeitet. Diese beiden Ansätze zu Verifikation werden vervollständigt durch eine Verifikationstechnik für strukturelle Sicherheitseigenschaften von Modellen mit Strukturadaption zur Laufzeit.

Darüber hinaus sind für harte Echtzeitsysteme Konzepte zur Code-Generierung entwickelt worden, die sicherstellen, dass die verifizierten Echtzeiteigenschaften der Modelle auch für das finale System garantiert werden können.

Die entwickelten Ergebnisse für die Modellierung, Analyse, Synthese und Code-Generierung wurden prototypisch in der Fujaba Real-Time Tool Suite umgesetzt. Diese Version des UML-CASE-Werkzeugs Fujaba Tool Suite für Echtzeitsysteme bietet somit eine durchgängige Werkzeugunterstützung für die modellbasierte Entwicklung der Software selbstoptimierender mechatronischer Systeme.

Im Kontext der modellgetriebenen Entwicklung von Software sind darüber hinaus auch einige allgemeine Ergebnisse zur Integration verschiedener Modelle auf Basis der Meta-Modelle sowie Arbeiten zur effizienten Modellsynchronisation entstanden.

Projekte

Mehr Informationen können auf den Webseiten zu den einzelnen Forschungsprojekten gefunden werden.