Software-Architekturen für Onboardsystem

Fachausschuss Software Engineering T6.4

Workshop

"Software-Architekturen für Onboardsysteme in der Luft- und Raumfahrt"

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

Programm

Begrüßung der Teilnehmer

Prof. Dr. Kau
Institut für Luft- und Raumfahrt

Migration einer Echtzeitanwendung auf eine Integrierte Modulare Avionik (IMA)

Thomas Brixel
EADS - Military Air Systems

Trennung von Applikationen unterschiedlicher Kritikalität in der Luftfahrt durch Software Partitionen am Beispiel des Real-time Operating Systems PikeOS

Dr. Bert Feldmann
EADS - Military Air Systems

Industry progress towards an IMA software solution

Joachim Hampp
Wind River - Avionics and Aircraft Systems

NH90 Helicopter Avionics Systems from the 1990s to 2010 and beyond

Richard Bridges
Eurocopter Deutschland - ETDWN

Safety Critical Java: Sprachstandard und Analyseverfahren für Java in sicherheitskritischen Systemen

Dr. James J. Hunt
aicas Allerton Interworks Computer Automated Systems GmbH

Softwarearchitektur für kognitive Systeme zur wissensbasierten Flugführung

Alexander Matzner
Universität der Bundeswehr München - Institut für Systemdynamik und Flugmechanik

Erfahrungsbericht: Einsatz objektorientierter Methoden in Flugkörper-Software

Michael Erskine
LFK-Lenkflugkörpersysteme GmbH - Systems Software

Schlußwort

Richard Seitz
DGLR T6.4

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

Kurzfassung der Vorträge

Thomas Brixel: Migration einer Echtzeitanwendung auf eine Integrierte Modulare Avionik (IMA)

Der Vortrag beschreibt die Migration einer Echtzeitanwendung von einem Mehrprozessor- rechner auf eine neue und leistungsfähigere Hardware in Verbindung mit einem Software Stack nach Vorgaben der Integrated Modular Avionik (IMA). Hierbei kommt ein Echtzeitbe- triebssystem (RTOS) zum Einsatz. Der Missionsrechner verfügt über I/O für Diskrete Signale und zwei doppelt redundante Datenbusse (electrical and optical) nach MIL bzw. Eurofighter Standard.

Für den Attack Computer des Eurofighter wurde die Einführung einer neuen Hardware ebenso aus Obsoleszenzgründen nötig, wie auch für die Abdeckung des ansteigenden Performancebedarf zukünftiger Funktionalitäten. Zur Risikominimierung sollte die Anwendungs- software (möglichst) ohne Änderungen auf die neue HW-Architektur migriert werden. Als Echtzeitbetriebssystem wurde INTEGRITY von GreenHills gewählt. Ein Software Stack nach Vorgabe des Allied Standard Avionics Architecture Council (ASAAC) wurde dafür entwickelt und umgesetzt.

Die Anwendungssoftware wurde in Ada entwickelt und verfolgt einen modularen Aufbau. Die Module kommunizieren über einen nachrichtenbasierten Mechanismus miteinander. Die Software Architektur wird beschrieben und es wird dargelegt, wie die Kommunikation auf ASAAC Standards abgebildet wurde. Weiterhin wird erläutert welche funktionalen Änderungen der Anwendungssoftware zusätzlich notwendig waren, um sie in eine Architektur nach ASAAC zu integrieren. Ein besonderer Schwerpunkt war hierbei die Einbindung des MIL Bus und EFA Bus, die sich nicht ohne weiteres auf den ASAAC Standard abbilden ließen.

Dr. Bert Feldmann: Trennung von Applikationen unterschiedlicher Kritikalität in der Luftfahrt durch Software Partitionen am Beispiel des Real-time Operating Systems PikeOS

In Luftfahrzeugen spielt es vor allem auch im Rahmen der Zertifizierung eine wichtige Rolle, dass flugkritische Anwendungen von anderen, weniger kritischen Anwendungen getrennt ablaufen, um zu gewährleisten, dass bei auftretenden Fehlern die Flugsicherheit nicht gefährdet ist.

Derzeitige Flugsysteme gewährleisten diesen Aspekt dadurch, dass Applikationen unterschiedlicher Kritikalität auf verschiedenen Hardware Plattformen ablaufen und nur ganz bestimmte Interface Module für die Kommunikation zwischen den Subsystemen zugelassen sind.

Durch den Einsatz Integrierter Modularer Avionik ergeben sich für zukünftige Flugsysteme Software Architekturen, die es ermöglichen, Anwendungen unterschiedlicher Kritikalität auf einer Hardware Plattform auszuführen. Dabei erfolgt die strikte Trennung durch einen Microkernel.

Am Beispiel des Real-time Operating Systems PikeOS werden Aufbau und Funktionsweise des Microkernels, der System Software, der Partitionierung von Ressourcen und Zeit, der Inter-Partition und externen Kommunikation erläutert.

Es handelt sich bei der Architektur des PikeOS um eine Paravirtualisierung. Den jeweiligen Applikationen stehen innerhalb einer Resource Partition sogenannte Personalities mit entsprechenden Betriebssystemaufrufen zur Verfügung. Wichtig in diesem Zusammenhang ist, dass Betriebssystemanteile in den Partitionen ausschließlich im User Mode laufen.

Das Gesamtsystem wird durch Tabellen beschrieben und während der Startphase initialisiert. Die Steuerung des Systemverhaltens kann während der Laufzeit durch privilegierte Partitionen erfolgen. Damit wird auch PikeOS den Kriterien einer möglichen Rekonfiguration gerecht.

Joachim Hampp: Industry progress towards an IMA software solution

A key to competitiveness and survival for major Aerospace & Defence contractors is to control costs and operate efficiently. Central to this theme is the ability to efficiently and effectively create value added applications, create the required safety certification evidence, test and certify the system, and have a cost-effective process to implement application modifications and certification updates.

RTCA standard DO-178B is the de facto standard by which software development processes can be measured to ensure an appropriate level of safety . In order to achieve Level A , these Aerospace & Defence contractor must spend huge sums of money certifying system; it is estimated that each line of source code costs $100 to certify to Level A.

These two elements seem to contradict each other - the goal to reduce costs and the goal to increase safety. This paper looks at standard involved in Safety Certification from the perspective of re-use of code and safety evidence in order to reduce these costs and still maintain a safe system.

It looks into the ARINC653-1 goals and objectives and examines emerging standards such as DO-297 and how that can achieve a sharp reduction in the initial cost of configuring an ARINC 653 system, the initial certification cost, and especially the re-certification cost (cost of change).

5 Objectives:

  • Discuss the requirement to use a Safety Standard such as DO-178B
  • Discuss the trend towards IMA
  • Discuss the ARINC 653-1 Goals and implementation
  • Discuss the issues of IMA design and the need for DO-297
  • Summarize industry progress towards an IMA solution

Richard Bridges: NH90 Helicopter Avionics Systems from the 1990s to 2010 and beyond

The presentation describes the avionics application framework that was developed for the NH90 programme.

PAST: Experience gained on the Tiger Programme was used to develop NH90 System Software (NSS) for the main computers of the NH90 Core (Basic) and Mission Avionics Systems.

PRESENT: Success of the NH90 in export campaigns and obsolescence of some 1980s vintage components of the main computers has driven Eurocopter to evolve the avionics software design to support multiple HW/SW platforms for more than 12 national customers in over 20 different basic helicopter configurations.

FUTURE: General acceptance of industry standards such as Integrated Modular Avionics platform ARINC653, and the wish to leverage the investment in the developed avionics applications requires migration from a Eurocopter proprietary application framework to one based upon open industry standards.

Dr. James J. Hunt: Safety Critical Java: Sprachstandard und Analyseverfahren für Java in sicherheitskritischen Systemen

Von seiner starken Position in Desktop- und Serversystemen aus hat Java seinen Weg längst auch in Embedded Systems gefunden. Ein wesentlicher Grund dafür ist die Sicherheit der Sprache, die viele, mit anderen Sprachen häufig auftretende, Fehlerarten gänzlich verhindert.

Aus dem gleichen Grund möchte man jetzt diese Technologie auch für sicherheitskritische Systeme verwenden. Ein neuer Sprachstandard, Safety Critical Java, und neue Analyseverfahren, machen die Verwendung von Java in sicherheitskritischen Systemen attraktiv. Mit Hilfe von Datenflussanalyse und deduktiver Verifikation kann bewiesen werden, dass bestimmte Fehlerarten wie beispielsweise Deadlocks in einer Anwendung nicht auftreten können.

Alexander Matzner: Softwarearchitektur für kognitive Systeme zur wissensbasierten Flugführung

Das Konzept der Kognitiven Automation hat sich als ein vielversprechender Ansatz erwiesen, um mit der Komplexität moderner Automation umzugehen. Das Institut für Flugmechanik und Flugführung an der Universität der Bundeswehr in München hat einen allgemeinen Ansatz für eine Softwarearchitektur zur Erzielung kognitiver Funktionen entwickelt und arbeitet seit geraumer Zeit an der Anwendung dieser Methode im Bereich der Flugführung von Semi-Autonomen Systemen. Der Nutzen dieser Methode wurde bereits in einigen Projekten erfolgreich unter Beweis gestellt. Um mit unserem Ansatz in einem erweiterten Anwendungskatalog auch Echtzeitanforderungen auf embedded Rechnern erfüllen zu können, entwickeln wir die Methode derzeit weiter.

Der Vortrag erläutert das Prinzip der Kognitiven Automation - speziell das Funktionsprinzip einer Artificial Cognitive Unit (ACU) - anhand des Modells des Kognitiven Prozesses, dass unserer Realisierung zugrunde liegt. Wir beleuchten kurz die verwendeten Ansätze und Technologien in der bestehenden Architektur COSA, sowie die Weiterentwicklung im Hinblick auf embedded-Pattformen und erläutern am Beispiel von aktuellen und zukünftigen Forschungsarbeiten den Einsatz in der Praxis.

Michael Erskine: Erfahrungsbericht: Einsatz objektorientierter Methoden in Flugköper-Software

Objektorientierung ist heute Standard in der Softwareentwicklung. Das trifft mit einiger zeitlicher Verzöerung mittlerweile auch auf eingebettete Echtzeit-Software zu. Objektorientierte Analyse mit UML gilt als etabliert, Werkzeuge fr die Modellierung gelten als ausgereift.

Der Vortrag präentiert die Erfahrungen, die beim Einsatz objektorientierter Analyse- und Entwurfsmethoden gewonnen wurden. Als Beispiel dient ein aktuelles Projekt, in dem Flugköper-Software fr eine Kommunikationskarte entwickelt wird, die den Up- und Downlink steuert.

Der Vortrag stellt Methoden vor, die sich bewärt haben: die patternorientierte Anforderungsanalyse, CRC-Karten, Anwendungsfall-Schablonen. Die so gefundene Softwarearchitektur wird verglichen mit früheren Projekten, die unter einem anderen Paradigma entwickelt wurden.

Auch das eingesetzte Werkzeug - in diesem Fall die Rational Suite mit Rose RT und RequisitePro - wird betrachtet. Durch die Art der untersttzten Diagramme beeinflußt es die Darstellungsmölichkeiten und damit auch die Methode.

Zum Schluß werden die Erwartungen an die objektorientierte Vorgehensweise den Erfahrungen gegenbergestellt. Bei den Methoden werden die Gemeinsamkeiten dargestellt, die sich als hilfreich erwiesen haben.

Workshopbericht

Der Fachausschuss T6.4 "Software Engineering" hielt seinen diesjährigen Workshop am 9. Oktober traditionsgemäß im Institut für Luft- und Raumfahrt in Garching bei München ab. Prof. Dr.-Ing. Kau, Prodekan der Fakultät für Maschinenwesen der TU München und Ordinarius des Lehrstuhles für Flugantriebe, eröffnete die Tagung vor mehr als 50 Teilnehmern aus Forschung, Industrie, Bundeswehr und Behörden im vollbesetzten Sitzungssaal. Dabei ging Prof. Kau kurz auf die Neuerungen bei den Studiengängen im Bereich Luft- und Raumfahrt, sowie speziell auf die Ablösung des traditionellen Diploms durch Bachelor- und Mastergrade ein.

Die Schwerpunkte der insgesamt sieben Vorträge reichte von der Integrierten Modularen Avionik (IMA) über den Einsatz objekt-orientierter Techniken bis hin zu kognitiven Systemen: Thomas Brixel von der EADS beschrieb die Migration der Echtzeit-Software des Eurofighter Attack Computers auf eine neue und leistungsfähigere Hardware in Verbindung mit einer Softwarearchitektur nach Vorgabe des Allied Standard Avionics Architecture Council (ASAAC), der militärischen Variante der Integrierte Modulare Avionik (IMA).

Dr. Bert Feldmann, ebenfalls EADS, schilderte, wie es das Real-time Operating Systems PikeOS durch Paravirtualisierung ermöglicht, Anwendungen auf einer Hardware-Plattform auszuführen und dabei so voneinander zu isolieren, dass sie mit unterschiedlicher Kritikalität zugelassen werden können.

Joachim Hampp von Wind River gab einen Überblick über mögliche Strategien zur Aufwands- und Kostensenkung sowohl bei Erst- als auch bei Neuzulassung wieder verwendbarer Hardware- und Softwarekomponenten durch die Anwendung zukünftiger ziviler IMA-Standards wie ARINC653 und DO-297.

Richard Bridges von Eurocopter Deutschland beschrieb die Softwarearchitektur des Basis- und des Missionsrechners des NH90 und schlug dabei einen Bogen von der Übernahme der Architektur aus dem TIGER Projekt über die heutige Produktlinienarchitektur zur zukünftigen, auf ARINC653 basierenden Architektur, letzteres mit dem Ziel, die proprietäre Architektur durch offene Standards zu ersetzen bei gleichzeitigem Schutz der getätigten Investitionen in die operative Software.

Dr. James J. Hunt von der aicas GmbH stellte den Sprachstandard für Safety Critical Java und Analyseverfahren für Java in sicherheitskritischen Systemen vor. Dabei behandelte er besonders das Thema Garbage Collection, welches immer noch als Haupthinderungsgrund für den Einsatz von Java in sicherheitskritischen Luft- und Raumfahrtprogrammen angesehen wird.

Alexander Matzner von Universität der Bundeswehr München stellte COSA vor, eine Softwarearchitektur für kognitive Systeme zur wissensbasierten Flugführung. Kognitive Systeme werden in naher Zukunft die heutigen Missions- und Avioniksysteme in Hinblick auf autonome oder semi-autonome Flugführung ergänzen. Das kognitive System der Universität der Bundeswehr wird zur Zeit in Richtung Echtzeitanforderungen weiterentwickelt.

Michael Erskine von der LFK-Lenkflugkörpersysteme GmbH präsentierte die Erfahrungen, die beim Einsatz objektorientierter Analyse- und Entwurfsmethoden sowie der zugehörigen Werkzeuge gewonnen wurden, anhand eines aktuellen Projekts zur Entwicklung der Flugkörper-Software zur Steuerung des Up- und Downlinks. Dabei wurden die Erwartungen an die objektorientierte Vorgehensweise den Erfahrungen aus früheren Projekten gegenübergestellt, die unter einem anderen Paradigma entwickelt wurden.

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 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 besonderes Interesse, so dass diesmal leider nicht alle Interessenten berücksichtigt werden konnten. Nachdem der Trend der Besucherzahlen in den letzten Jahren steil nach oben zeigt, ist eine Verlagerung der nächsten Veranstaltung in größere Räumlichkeiten angedacht.

Danksagungen

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