Teilprojekt C4

zum übergeordneten Forschungsbereich

Inhaltsverzeichnis

Modellkopplung und Test

Im beantragten Graduiertenkolleg werden auf der Infrastrukturebene verschiedene sehr unterschiedliche Dienste und Informationssysteme miteinander gekoppelt (siehe C2, E1 und E4). Im Graduiertenkolleg wird dafür durchgehend ein modellbasierter Ansatz verfolgt. Eine offene Frage bei solchen gekoppelten Modellen ist, wie man dabei zu Testsuiten kommt, die eine gewisse Überdeckung garantieren können. Auf der Ebene einzelner Modelle gibt es inzwischen eine Reihe von Arbeiten, die sich mit der automatischen Generierung und Ausführung von Tests aus Modellen beschäftigen. Im vorliegenden Fall geht es jetzt darum, mehrere höchst unterschiedliche Modelle miteinander zu koppeln und auf dieser Grundlage Tests abzuleiten und auszuführen. Für diese Abstraktionsebene gibt es bislang nur sehr wenige relevante Ergebnisse. Es ist nicht klar, welche Kombinationsmöglichkeiten der Modelle sich für eine Testgenerierung eignen, wie eine Auswahl von Testdaten für gekoppelte Modelle auszusehen hat, und wie die verteilte Ausführung der Testfälle geschehen soll. In der geplanten Dissertation soll daher untersucht werden, wie für heterogene gekoppelte Modelle in Geo-Informationssystemen automatisch Testfälle generiert und ausgeführt werden können.

Stand des Wissens

Die automatische Erzeugung von Testfällen aus Klassen- und GUI-Beschreibungen gehört inzwischen zum Stand der Technik. Die wesentlichen Forschungsarbeiten im Bereich modellbasierter Testgenerierung befassen sich mit der Erzeugung von Testfällen aus Transitionssystemen [1]. Es existieren bereits erste kommerzielle Werkzeuge, die diese Vorgehensweise unterstützen [2]. Ein aktuelles Forschungsgebiet ist dabei die Einbeziehung von Realzeit, wie sie z. B. in der evolutionären Testgenerierung erfolgt [3]. Bei der Modellkopplung gibt es Ergebnisse zur Integration verschiedener Modellierungen im Bereich der Geo-Informatik, Simulationstechnik und Mechatronik [4]. Zur Testgenerierung für gekoppelte Modelle existieren bislang jedoch keine wesentlichen Resultate.

Vorarbeiten der beteiligten Wissenschaftler

In der Arbeitsgruppe von H. Schlingloff bei Fraunhofer FIRST werden schwerpunktmäßig Projekte zum Test eingebetteter Systeme in Automobil- und Bahnanwendungen durchgeführt. Ein wesentliches Forschungsthema ist dabei auch die modellbasierte Testfallermittlung. In [5] und [6] wird der modellbasierte Testprozess im Bereich automobiler Steuergeräteentwicklung beschrieben. Die Arbeiten [7] und [8] beschreiben den Aufbau einer spezifikationsbasierten Testumgebung für kommunizierende Systeme. In [9], [10] werden Algorithmen für die Generierung von Tests aus Ablaufmodellen und Anwendungsfallbeschreibungen entwickelt. Modellkopplung wird in der Arbeitsgruppe von H. Schlingloff am Fraunhofer Institut FIRST im Rahmen des Projektes „GenSim“ [11] untersucht. Die Arbeitsgruppe von J. Fischer beschäftigt sich mit der Modellierung und Simulation zeitdiskreter, zeitkontinuierlicher und gemischter Systeme. Es wurden wesentliche Beiträge zu Modellierungsformalismen wie SDL und eODL geliefert. In der Arbeit [12] wird eine Kombination dieser beiden Formalismen für Komponenten vorgeschlagen. Im Rahmen eines europäischen Projektes wurden von Fischer und Holz darüber hinaus simulative Verfahren zur Analyse und Ausführung gekoppelter Modelle – hier Hardware und Softwaremodelle – erforscht und konkrete Lösungen dafür erarbeitet [13]. Die Kombination verschiedener Modellierungstechniken in [14] kann ein weiterer Ausgangspunkt für die geplante Dissertation sein.

Geplante Arbeiten

Ein möglicher Lösungsweg für die angesprochenen Fragen ist es, einen Testgenerierungs-Monitor für gekoppelte Modelle zu konzipieren, der die Auswahl der Sequenzen an Hand der jeweiligen Einzelmodelle steuert. Für die Auswahl der Testdaten benötigt der Monitor heuristische Informationen über alle verwendeten Einzelmodelle, die zu einer geschlossenen Heuristik vereinigt werden müssen. Bei der Ausführung läuft der Monitor parallel zu den Testfällen, steuert die Erzeugung der Daten für das zu testende System, verteilt dessen Ausgaben auf die individuellen Testorakel und kombiniert die Ergebnisse für die Gesamtwertung. Zur Umsetzung dieses Lösungsvorschlags muss eine Vielzahl wissenschaftlich interessanter Fragen geklärt werden, z.B. die Frage, wie aus einer vorhandenen Kopplung von GIS und GIS-Modellen ein Metamodell für die Kopplung von Testmodellen abstrahiert werden kann. Es soll geklärt werden, wie die Steuerung der einzelnen Modelle durch den Monitor bei der Generierung von Testfällen erfolgt und wie man zu konkreten Abläufen kommt. Daran anschließend stellt sich die Frage nach für diesen Fall relevanten Testüberdeckungskriterien und nach einer geeigneten Kombination von Heuristiken für die Auswahl von Testdaten bei gekoppelten Modellen. Schließlich muss geklärt werden, wie ein übergreifendes Testorakel zu realisieren ist, welches sich konsistent auf die einzelnen Modelle abstützt. Besonders interessant werden diese Fragen in der intendierten Anwendungsdomäne GIS, da hier neben rein logischen Informationen auch graphische und numerische Daten eine Rolle spielen. Ergebnisse der geplanten Dissertation sind also einerseits abstrakte Algorithmen zur Testgenerierung und Ausführung mit gekoppelten Modellen, andererseits konkrete Testbeispiele und Testsuiten für die im Graduiertenkolleg untersuchten Systeme des Katastrophenmanagements und der Geo-Informationssysteme.

Referenzen

[1] E. Brinksma, J. Tretmans: Testing transition systems- an annotated bibliography. In: Proc. of Modeling and verification of parallel processes, Springer LNCS 2067, pp. 187-195, 2001.

[2] A. Hartman and the Agedis Consortium: Model based test generation tools. http://www.agedis.de/documents/ModelBasedTestGenerationTools_cs.pdf , 2002.

[3] P. McMinn: Search-based Software Test Data Generation- A Survey. In: Journal on Software Testing, Verification, and Reliability, www.systematic-testing.de, 2004.

[4] A. Hoheisel: Workflow Management for Loosely Coupled Simulations. In: Complexity and Integrated Resources Management, Transactions of the 2nd Biennial Meeting of the International Environmental Modelling and Software Society, 2004.

[5] H. Schlingloff, C. Sühl, H. Dörr, M. Conrad, J. Stroop, S. Sadeghipour, M. Kühl, F. Rammig, G. Engels: Eine integrierte Methodik zur modellbasierten Steuergeräteentwicklung. In: BMBF-Workshop Software Engineering 2006 Berlin, Juli 2004.

[6] H. Schlingloff, M. Conrad, H. Dörr, C. Sühl: Modellbasierte Steuergerätesoftwareentwicklung für den Automobilbereich. In: GI-Tagung Automotive Safety and Security 2004 - Sicherheit und Zuverlässigkeit für automobile Informationstechnik Stuttgart, 2004.

[7] J. Bredereke, H. Schlingloff: An Automated, Flexible Testing Environment for UMTS. In: Testing Internet Technologies and Services. Kluwer Academic Publishers, 2002.

[8] J. Bredereke, H. Schlingloff: Specification Based Testing of the UMTS Protocol Stack. In: Proc. of 14th Int. Software & Internet Quality Week - QW2001, San Francisco, Mai 2001.

[9] M. Frey, H. Schlingloff: Conformance of Distributed Systems. In: TestCom 2003 on Next Generation Testing for Next Generation Networks. 15th IFIP International Conference on Testing of Communicating Systems, Sophia Antipolis, France, May 26-28, 2003, Springer LNCS 2644, Mai 2003.

[10] M. Friske, H. Schlingloff: Von Use Cases zu Test Cases: Eine systematische Vorgehensweise. In: MBEES - Model Based Engineering of Embedded Systems Dagstuhl. T. Klein, B. Rumpe, B. Schätz (eds.), TU Braunschweig Report TUBS-SSE 2005-01; VII, 2004.

[11] GenSim: Entwicklung eines generischen Simulationswerkzeugs für heterogene technische Systeme mit Modellstrukturdynamik. Fraunhofer FIRST, http://www.first.fraunhofer.de, 2005.

[12] H. Böhme, J. Fischer: eODL and SDL in combination for components. In: Proc. of 4th International SDL and MSC Workshop SAM2004 Ottawa, Kanada, LNCS Volume 3319/2005 Springer-Verlag GmbH, Juni 2004.

[13] M. Wasowski, D. Witaszek, J. Fischer, E. Holz, S. Lau, O. Kath: Co-Simulation of Hybrid SDL and VHDL Specifications. In: Proc. of 9th ESM Prague, 1995.

[14] J. Fischer, E. Holz, A. Prinz, M. Scheidgen: Tool based Language Developmen. In: Proc. of ISSRE04 WITUL, Rennes, 2004.