Teststrategien und -techniken für Onboardsysteme

Fachausschuss Software Engineering T6.4

Workshop

"Teststrategien und -techniken für Onboardsysteme in der Luft- und Raumfahrt"

7. Oktober 2008 - Institut für Luft- und Raumfahrt, TU München, Garching bei München

Programm

Begrüßung der Teilnehmer

Dr. Erhard
Institut für Luft- und Raumfahrt

Validation&Verification of Safety Critical Systems in the Aerospace Domain

Jörg Hofmann
T-Systems Enterprise Services GmbH

Modellierung und Simulation als Schlüssel zu effektiverem Testen

Stefan Schwabe
Berner & Mattner

Automated Requirements-based Testing

Dr. Marc Segelken
Mathworks

Automated Formal Qualification für die NH90 Avionik Software

Olivier Engelkes
Eurocopter Deutschland

Neue Wege im Avioniksystemtest des Eurofighter

Frank Westerbuhr
EADS Military Air Systems

Advanced Validation Strategies for On.Board Satellite Software practised for the Gallileo IOV Programme

Olivier Croatto, Michael Uemminghaus
EADS Astrium GmbH

Database-Centric Test and Verification Approach for Embedded Systems in Space Applications

Dr. Hans-Jürgen Herpel
EADS Astrium GmbH

Schlußwort

Richard Seitz

Bei Bedarf können die Dokumente zu den jeweiligen Vorträgen bei den Obleuten des Fachausschuss angefordert werden.

Kurzfassung der Vorträge

Stefan Schwabe: Modellierung und Simulation als Schlüssel zu effektiverem Testen

Onboard-Systeme für die Luft- und Raumfahrt sind besonders sorgfältig zu qualifizierende Komponenten, da sie missionskritische Aufgaben durchführen. Da auch bei diesen Systemen mit den wachsenden technischen Möglichkeiten die Komplexität ansteigt, muss insbesondere im Testbereich für Verbesserungen gesorgt werden, damit die Kosten nicht explodieren. Besonderes Augenmerk sollte darauf gelegt werden, Fehler früh zu finden, da auch bei Onboard-Systemen gilt, dass die Kosten für Fehlerbereinigungen stark ansteigen, je später ein Problem gefunden wird.

Im vorgeschlagenen Vortrag wird gezeigt, wie der Einsatz von Modellen in der Spezifikationsphase dazu betragen kann, frühzeitig Fehler in der Spezifikation zu finden. Durch eine Vernetzung der Informationen in einem Modell können bei richtiger Verwendung Inkonsistenzen verhindert werden. Die Arbeit am Modell kann zudem "blinde Flecke" offenbaren und als Grundlage für Tests dienen, die schon am Modell vorbereitet und ausgeführt werden können.

Zum anderen wird gezeigt, wie host-based Simulation (d.h. die Ausführung der embedded Software auf einem PC System) und Model/Software-in-the-Loop Tests eingesetzt werden können, um Tests frühzeitig und stark fokussiert durchzuführen. Insbesondere wird darauf eingegangen, welche Teile der Software in welchem Szenario getestet werden können, wie die erstellten Tests in späteren Phasen wiederverwendet werden können und was es heißt, wenn ein vorher erfolgreich durchgeführter Test beim Übergang in das Folgeszenario plötzlich fehlschlägt.

Beide Verfahren, modellbasierte Spezifikation und host-based Simulation, ob sie nun einzeln oder in Kombination eingesetzt werden, sollen im Wesentlichen folgenden Zielen dienen:

  • Wie kann ich so früh wie möglich testen, was als Ergebnis vorhanden ist?
  • Wie kann ich vorhandene Tests in späteren Phasen nachnutzen?
  • Wie kann ich die Anzahl der Fehler in späten Phasen reduzieren?

Die Arbeit basiert zum einen auf den modellbasierten Ansätzen, die Berner&Mattner schon seit langer Zeit erfolgreich anwendet, zum anderen werden Techniken beschrieben, die in der Industrie eingesetzt werden, z.B. um Systeme aus dem Bereiche der Schutz- und Steuertechnik zu entwickeln.

Dr. Marc Segelken: Automated Requirements-based Testing

Das Aufsetzen von Testfällen sowie die Auswertung der resultierenden Testläufe für Onboardsysteme in Luft- und Raumfahrt sind bei manueller Durchführung dieser Aufgaben mit erheblichem Aufwand verbunden. Dienen die Tests dem Vergleich verschiedener Modellversionen oder Implementierungen, so ist die Testlaufauswertung trivial. Auch bei der Erstellung von Testfällen gibt es effektive Unterstützung durch auf formale Methoden basierende Werkzeuge zur automatischen Erzeugung von Testfällen mit hoher bzw. vollständiger struktureller Abdeckung bzgl. Standardabdeckungskriterien wie MC/DC, welche für diesen Anwendungsfall gut geeignet sind.

Bei Anforderungs-basiertem Testen verhält sich die Situation anders. Aufgrund des hohen Aufwands bei der manuellen Testerstellung ist die Anforderungsabdeckung häufig ungenügend, weil zu wenige Testfälle pro Anforderung erstellt werden, welche die relevanten Grenzfälle abdecken. Da hier im Gegensatz zu strukturellen Testabdeckungskriterien wie MC/DC kein standardisiertes Qualitätsmaß zur Bestimmung einer zu fordernden Mindesttestmenge existiert, ist diese Beobachtung nicht verwunderlich. Bei der Testauswertung werden zumeist bereits automatisierte Lösungen eingesetzt, indem konkrete Erwartungswerte vorgegeben und überprüft werden. Diese sind wiederum an die dazugehörigen Testfälle gebunden und nicht auf andere übertragbar. Deutlich mehr Flexibilität erlauben hier Testauswertungen, in denen Testszenarien als abstrakte Ablaufmuster erkannt und bewertet werden, so dass beliebige Testläufe automatisch ausgewertet werden können.

Dieser Beitrag beschreibt eine in der Wissenschaft bereits bekannte Idee, wie sich letzterer Ansatz unter Zuhilfenahme formaler Methoden erweitern lässt, so dass neben der automatischen Testauswertung zum Einen eine Anforderungs-basierte Metrik der Testabdeckung eine automatische Berechnung der erzielten Anforderungsabdeckung erlaubt, und zum Anderen hierauf aufbauend Anforderungs-basierte Testfälle automatisch erstellt werden können. Erreicht wird dies durch Automaten-basierte, formalisierte Anforderungen wie sie für Anforderungsbeweise beim Model-Checking Verwendung finden, deren Abdeckung aufgrund ihrer Struktur durch Standardabdeckungskriterien quantitativ erfasst werden kann. Die hierdurch definierten Testziele können darüber hinaus für auf formale Methoden basierende Testvektorgeneratoren verwendet werden, so dass gezielt den Anforderungen zugeordnete Testfälle generiert werden. Da die formalisierten Anforderungen, durch formale Methoden bereits bzgl. ihrer Vollständigkeit abgesichert, alle Grenzfälle in Fallunterscheidungen explizit mit einschließen, besitzt sowohl die Metrik, als auch die davon abgeleiteten Testfälle eine hohe Praxisrelevanz bzgl. der Anforderungen. Durch die inzwischen am Markt verfügbaren leistungsfähigen Testgeneratorwerkzeuge wie dem Simulink Design Verifier stellt insbesondere der zweite Anwendungsfall angesichts der enormen Aufwandseinsparung gegenüber manueller Testerstellung eine erhebliche Kostenersparnis bei gleichzeitiger Steigerung der Testqualität dar.

Frank Westerbuhr: Neue Wege im Avioniksystemtest des Eurofighter

Basierend auf den Erfahrungen verschiedenster Projekte erfolgt derzeit die Einführung neuer Prozesse und Werkzeuge für die Entwicklung der Avionik des Eurofighters der Tranche 2. Ziel ist es, damit geringere Kosten, kürzere Zeiträume und eine verbesserte Qualität zu erreichen. Ein Team der vier Eurofighter Partnerfirmen Alenia, BAES, EADS-CASA und EADS-Deutschland hat dafür im Projekt "Enhanced Process / Toolset" (EP/T) untersucht, was zu verbessern oder ersetzen ist und die Neuerungen beschrieben sowie dafür notwendige Entwicklungsarbeiten oder Beschaffungen in die Wege geleitet.

Die sich aus dem EP/T ergebenden Neuerungen im Avioniksystem Test des Eurofighters beziehen sich im wesentlichen auf das Testwerkzeug "Modelling and Test Environment" welches alle Eurofighter Partnerfirmen gemeinsam entwickeln und verwenden. Es bietet eine Vielzahl von Eigenschaften, die eine erhöhte Effizienz bei den Qualifikationstests ermöglichen. Sein Einsatz erfolgt in allen Phasen des Avioniktestens wie auch in der Entwicklung von Piloten-Trainingssimulatoren – bei allen Eurofighter Partnerfirmen als auch Kunden / System- unterstützungszentren.

Für die verschiedenen Subsysteme des Eurofighter, erfolgt derzeit die Migration auf die neuen Prozesse und Werkzeuge. Dies hat Auswirkungen auf die Testdurchführung, welche in Zukunft besser strukturiert und in höherem Maße automatisiert werden kann. Die Testumgebung erhält Aktualisierungen der Hardware als auch Software. Die Rückverfolgbarkeit von Requirements auf die dazugehörigen Tests sowie die automatische Generierung von Testdokumenten wird ausgebaut. Schnittstellenbeschreibungen dieses hochkomplexen Avioniksystems erfolgen aus einer Hand für alle Partnerfirmen, mit täglichem Datenaustausch unter Verwendung kommerzieller Konfigurationsmanagement Werkzeuge, die auf die speziellen Belange des Eurofighters angepasst wurden.

Daraus läßt sich entnehmen, welche umfassende Änderungen derzeit im Bereich des Avioniksystem Testens erfolgen, worauf sie begründet sind und welche Vorteile daraus in Zukunft entstehen.

Olivier Croatto, Michael Uemminghaus: Advanced Validation Strategies for On.Board Satellite Software practised for the Gallileo IOV Programme

The presentation provides an overview on the validation of the on-board software for the Gallileo In-Orbit-Validation (IOV) programme. The IOV satellites are the first four satellites of Galileo, the new European global navigation satellite system, developed and manufactured under the primeship of EADS Astrium. The on-board software is implemented on an Integrated Control and Data Unit on each satellite, which is in charge of handling and control the flight module. Initially the goals and strategy for the software validation will be explained. Starting from the overall project plan we will describe in detail the planned activities and processes for on-board software validation according a V-model approach. Since validation is subject to external influences such as changes of requirements or changes in the target hardware, an overview will be given on typical problems during the validation phases and also approaches to mitigate their impact at management and technical level. On a technical level the applied test methodology and the tools that are used for the validation campaign will be discussed. Specific emphasis will be put on explaining the model driven validation environment approach (MDVE) used for the EADS Astrium test environment. It will be showed how changes and deviations from specifications are handled and how problems are discovered and tracked in practise such that requirement coverage can be achieved for the system.

Dr. Hans-Jürgen Herpel: Database-Centric Test and Verification Approach for Embedded Systems in Space Applications

The complexity of spacecraft avionics and payload systems increases with each new satellite development. In addition to the technical complexity, development in multi-national teams adds another level of complexity, resulting in longer iteration cycles to achieve a consistent design. Information from many different sources needs to be crosschecked until the development baseline can be frozen.

Consistent information is needed for both the development and the integration phase. Shortening the time for design iterations in the beginning and the integration phase at the end of a project would significantly reduce the overall project cost.

Thus, investing in tools supporting the generation of consistent design information and reducing the degree of freedom for interpretation of design information with the opportunity to derive test procedures from the design information will payback within short period of time.

From the problems described above its obvious that a central facility is needed to store engineering data. This central facility must be augmented by tools to enter the information, check consistency and generate information for subsequent development and integration phases.

Databases have proven their benefit as tool to support economic process control inside companies. They help users to manage huge amount of data, to perform plausibility and consistency checks on the data and generate problem specific views in order to support the assessment of the information. In the field of spacecraft engineering, databases are used for certain aspects during the development process. In the majority of applications databases are used just to store data and to generate configuration files for different applications.

The database-centric approach presented here goes one step further in the application of databases: the database will be the core element of the test environment and clients retrieve all necessary information directly from the database. The implementation of this database-centric approach is performed in four steps:

  • Definition and implementation of a prototype database structure tailored to the problem of test and verification
  • Population of the database (with information from ICDs and equipment User Manuals)
  • Generation of configuration files, test scripts, etc. in order to reuse the available resources as much as possible and to evaluate the database structure and content.
  • Prototype implementation of a test environment directly assessing the information stored in the database.

Currently, we implement step three which allows us to generate

  • the configuration files for the embedded software,
  • the harness production files and
  • test scripts for all test levels, i.e. unit tests, integration tests and functional system tests.

The generated test scripts can be executed either in interactive or batch mode. The results of a test run are again stored in the database and linked with the test procedure. The generated stimuli data can be applied to the simulated unit under test either via a LAN interface or via a highly configurable and programmable interface module directly to inputs of the real unit under test. The automatic test vector generation based on equipment states and state transitions is available in an experimental state but first tests showed that a higher test coverage could be achieved in much shorter time as compared with the operator driven approach.

Currently, a prototype client is under development retrieving all configuration data and test vectors directly from the database.

The architecture for the database-centric approach allows local installations as well as network installation where many test environments access either exactly the same information or different configuration data depending on the application.

Results of the prototype implementations for the Galileo Software Verification Facility will be presented at the workshop.

Workshopbericht

Der Fachausschuss T6.4 "Software Engineering" hielt seinen diesjährigen Workshop am 7. Oktober traditionsgemäß im Institut für Luft- und Raumfahrt in Garching bei München ab.

Dr. Erhard von der Fakultät für Maschinenwesen der TU München eröffnete den Workshop vor mehr als 50 Teilnehmern aus Forschung, Industrie, Bundeswehr und Behörden im bis zum letzten Platz gefüllten Sitzungssaal. Dr. Erhard vertrat Prof. Kau, der dieses Jahr verhindert war.

Die sieben Vorträge spannten einen Bogen von allgemein einführenden über konzeptionellen Vorträgen bis zu Berichten aus der Projektpraxis von NH90, Eurofighter und den Gallileo In-Orbit-Validation Satelliten.

Den Anfang machte Jörg Hofmann von T-Systems. Er gab einen breiten einführenden Überblick über das Thema mit Beispielen aus Vergangenheit und Gegenwart und stellte die Elemente einer optimierten V&V-Strategie vor.

Stefan Schwabe von Berner & Mattner zeigte anhand von Beispielen aus Avionik, Automotive und Automatisierungstechnik, wie Spezifikationsmodelle in eine Simulationsumgebung für host-basierte Tests überführt werden können. Dabei dienen die Spezifikationsmodelle auch dem Test der Spezifikation selbst.

Dr. Marc Segelken von Mathworks zeigte, wie man mit Hilfe formaler Spezifikationsmethoden anforderungs-basierte Testfälle automatisch so erstellen kann, dass eine hohe und vollständige Testabdeckung erreicht werden kann.

Nach der Mittagspause folgten Vorträge, in denen Aktivitäten und Ergebnisse aus aktuellen Projekten vorgestellt wurden. Als erstes präsentierte Olivier Engelkes von Eurocopter Deutschland die zukünftigen Verfahren zur Durchführung automatisierter Tests für die formale Qualifikation der NH90 Avioniksoftware, sowie die Migrationsstrategie der schrittweisen Überführung des jetzigen Tesverfahrens in das automatisierte Verfahren.

Frank Westerbuhr, EADS Military Air Systems Avioniksystemstest für den Eurofighter, stellte das Modelling and Test Environment (MaTE) vor, welches im Rahmen des Vorhabens Enhanced Processes and Tools für den Eurofighter entwickelt und eingesetzt wird. Das System erlaubt es, einmal erstellte Test in verschiedenen komplexen Testumgebungen (host-basierten bis hin zu echtsystem-basierten Systemen) immer wieder zu verwenden.

Olivier Croatto, EADS Astrium GmbH, legte die Ziele und die Strategie für die Validierung der on-board Software der Gallileo In-Orbit-Validation Satelliten dar. Sein Kollege Michael Uemminghaus schloss diesen Vortrag mit Informationen zu den dabei eingesetzten Testmethoden und –werkzeugen ab. Zentrale Komponente ist dabei das Model Driven Validation Environment (MDVE), welches schon 2004 in einem Vortrag von Harald Eisenmann in dieser Workshopreihe vorgestellt wurde.

Dr. Hans-Jürgen Herpel, ebenfalls von EADS Astrium GmbH, beschrieb einen datenbankgestützten Ansatz für Test und Verifikation. Zusammen mit dem vorangegangenen Vortrag ergab sich ein vollständiger Überblick über die eingesetzte Testumgebung. Die zentrale Datenbank enthält neben den Testdaten auch die Schnittstellendefinitionen der beteiligen Geräte, die Testkonfigurationen und -scripts und die Testergebnisse. Die Tests und Testreports können aus den in der Datenbank abgelegten Informationen generiert werden.

Richard Seitz von Fachausschuss T6.4 der DGLR schloss die Veranstaltung. Dabei hob er den Trend zu automatisiertem Testen als durchgängiges Thema aller Vorträge hervor.

Die Vorträge wurden von umfangreichen Fragen und engagierten Diskussionen begleitet, die in den beiden Kaffeepausen und während des Mittagessens fortgesetzt wurden. Die Teilnehmer nutzten auch intensiv die Gelegenheit zu einem allgemeinen Informations- und Gedankenaustausch, welches ja ebenfalls eines der Ziele des Fachausschusses ist.

Ein herzliches Dankeschön geht an die Vortragenden für ihre hervorragenden Präsentationen, an die Mitarbeiter des Instituts für Luft- und Raumfahrt für ihre tatkräftige Unterstützung bei der Vorbereitung und Durchführung des Workshops sowie an die Firmen EADS und ESG für die Übernahme der Kosten für die Getränke in den Pausen.

Das Thema des diesjährigen Workshops stieß auf sehr starkes Interesse, so dass leider nicht alle Interessenten berücksichtigt werden konnten. Aus diesem Grund wird sich der Fachausschuss für das nächste Jahr um einen größeren Veranstaltungsraum bemühen. Geplant ist ein gemeinsamer Workshop mit T6.2 "Avionik und Sensorik" zum Thema "Brücke zwischen System- und SW-Entwicklung".

Danksagungen

Wir danken für die freundliche Unterstützung bei der Vorbereitung und Durchführung des Workshops: