Agile Software-Entwicklung in der Luft- und Raumfahrt

Der Fachausschuss Q3.4 Softwareengineering der DGLR veranstalten am 10. Oktober 2018 einen eintägigen Workshop zum Thema

"Agile Softwareentwicklung in der Luft- und Raumfahrt".

Ort: Institut für Luft- und Raumfahrt, TU München, Garching bei München

Call for Paper

Mitte der 1990er Jahre erarbeiteten Kurt Beck, Ward Cunningham und Ron Jeffries bei Chrysler die Methoden des Extreme Programming und der agile Softwareentwicklung, um ein IT-System zu entwickeln (diese Entwicklung wurde 2000 eingestellt). 2001 wurde aufgrund der Erfahrungen aus den 90ern das „Agile Manifest“ unterzeichnet, das das Fundament der Agilen Entwicklung kurz und prägnant zusammenfasst.

Seit mehreren Jahren gibt es Versuche, das agile Vorgehensmodell auf sicherheitskritische eingebettete Realzeitsysteme zu übertragen. Jedoch widersprechen die Prinzipien und Praktiken des Agilen Manifests in einigen Punkten den Forderungen der Entwicklungsrichtlinien für sicherheitskritische Software. Diese Entwicklungsrichtlinien fordern zum Beispiel die Befolgung von Plänen, während das Agile Manifest Änderungen in späten Entwicklungsphasen den Vorrang gibt. In der Raumfahrt wiederum ist es schwierig das Prinzip der Auslieferung von Teillösungen umzusetzen.

Um also das agile Vorgehensmodell in der Luft- und Raumfahrt einsetzen zu können, sind Anpassungen und Ergänzungen sowohl beim Vorgehensmodell als auch bei den technischen und vertragsrechtlichen Regelungen notwendig. Der geplante Workshop soll beleuchten, unter welchen Voraussetzungen agile Vorgehensweisen in der Luft- und Raumfahrt eingesetzt und welche Vorteile daraus gezogen werden können.

Für den Workshop suchen wir Vorträge und Erfahrungsberichte aus der industriellen Praxis oder der industrienahen Forschung. Aufgrund der branchenübergreifenden Bedeutung des Themas sind auch Vorträge aus Fachrichtungen außerhalb der Luft- und Raumfahrt willkommen. 

Jeder Vortrag sollte ca. 30 Minuten dauern, anschließend sind 15 Minuten Diskussion vorgesehen. Zwecks Vorbereitung des Workshops wird um die Zusendung einer Kurzfassung des Vortrags bis spätestens zum 27. Juli 2018 gebeten. Der Workshop findet am 10. Oktober 2018 an der Technischen Universität München in Garching statt. Die Teilnahme ist kostenlos.

Für weitere Informationen und zur Vortragsanmeldung steht Ihnen die Leitung des Fachausschusses Q3.4 zur Verfügung.

Programm

Beginn: 9:00

 

Obleute des Fachausschusses
Q3.4 der DGLR

Begrüßung der Teilnehmer 

 

 

Markus Hochstrasser, Stephan Myschik, Florian Holzapfel
Technische Universität München

A modular, model-based DO-178C software life cycle – planning, realization, and preservation

 

Manfred Reisner
AVQ GmbH

 

Agile Entwicklung und Software Safety – Disziplinen, Prozesse und Abhängigkeiten

Michael Erskine
MBDA Deutschland GmbH

 

Agile und schwergewichtige Prozesse – wie paßt das zusammen

 

John Marsden
Airbus Defence and Space

ED-12C / DO-178C vs. Agile Manifesto

 

 

Sebastian Benders
Deutsches Zentrum für Luft- und Raumfahrt (DLR)

Agile Softwareentwicklung für einen Prototypen zur Technologiedemonstration des unbemannten Luftfrachttransports - Ein Erfahrungsbericht

 

 

Dr. Roland Kempter
HENSOLDT Sensors GmbH

OPTARION®: Agile Product Development - A single Version of the Truth [Die Vortragsmaterialien sind auf Nachfrage bei roland.kempter[at]hensoldt.net erhältlich]

 

 

 

Adam Whitmill
Mathworks GmbH

 

An Insight into varied industry applications of Agile & key enabling verification technologies

 

 

Stefan Wertheimer
Konzept Informationssysteme GmbH

Surf ‘n’ Turf – Scrum und ECSS-E-ST-40C

 

 

  

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

Bericht

„Agile Softwareentwicklung in der Luft- und Raumfahrt – Wie steht es um Agile Methoden 15 Jahre nach dem Agilen Manifest?“ – Zu diesem Thema trafen sich am 10. Oktober 2018 rund 70 Workshopteilnehmer aus Forschung, Industrie und von der Bundeswehr. Anlass war der jährliche Workshop des Fachausschusses Q3.4 Softwareengineering der Deutschen Gesellschaft für Luft- und Raumfahrt (DGLR) der am Institut für Luft- und Raumfahrt der Technischen Universität München in Garching stattfand.

Nach der Begrüßung durch die Fachausschussleiter Q3.4 Richard Seitz und Frank Dordowsky führte  Markus Hochstrasser von Institut für Flugsystemdynamik an der TU München in den Vortragsteil der Veranstaltung ein. Er zeigte die agile Softwareentwicklung anhand seines  modellbasierten Ansatzes vermittels Modularisierung von Simulink-Modellen. Die Modellkomponenten werden mit separaten Sublevel-Prozessen weitgehend unabhängig entwickelt und anschließend zu einem Gesamtprodukt zusammengeführt.

Im Anschluss berichtete Manfred Reisner von der AVQ GmbH über das Vorhaben der Europäischen Weltraumorganisation (ESA), ihre normalen schwergewichtigen Entwicklungsprozesse mit der agilen Vorgehensweise zu verbinden. Die Erfahrungen, die die ESA mit einigen agilen Referenzprojekten machte und die Schwierigkeiten, die sich ergaben, flossen in deren Handbuch ECSS-E-HB-40-01A "Agile software development handbook" ein.

Michael Erskine von der MBDA Deutschland GmbH knüpfte in seiner Präsentation  an seinen Vortrag auf dem DGLR-Workshop 2003 an, in dem er damals über das V-Modell berichtete und vorausschauend auf agile Vorgehensweisen blickte. Im heutigen Geschäftsprozessmodell der Firma MBDA ist diese Möglichkeit vorgesehen, wobei eine projektspezifische Anpassung der Vorgehensweise zu Projektbeginn erfolgt. Diese Anpassung der agilen Verfahren ist nach seiner  Erfahrung notwendig, denn ein dogmatisches Festhalten an den agilen Prinzipien kann zum Projektfehlschlag führen.

John Marsden von Airbus berichtete in seinem Vortrag von der Erfahrung, die Airbus mit der agilen Vorgehensweise in vier Luftfahrtprojekten machte. Er beschrieb die in den Projekten verfolgte Vorgehensweise sowie deren Vorteile und Schwierigkeiten und schloss seinen Vortrag mit der quantitativen Bewertung der Projekte hinsichtlich Projektdauer und Produktivität.

Sebastian Benders vom Deutschen Zentrum für Luft- und Raumfahrt (DLR) schilderte in seinem Vortrag  seine Erfahrung mit der agilen Vorgehensweise Scrum bei der Software-Entwicklung für den Demonstrator ALAADy (Automated Low Altitude Air Delivery). Die größten Schwierigkeiten ergaben sich durch das Fehlen eines erfahrenen Scrum-Masters, aus der teilweisen Nichtverfügbarkeit von parallel entwickelter Hardware, der Tatsache, dass Projektmitarbeiter mehreren Projekten zugeordnet waren, sowie die Abstimmung mit Projektpartnern, die nicht agil entwickelten.

Dr. Roland Kempter von der HENSOLDT Sensors GmbH berichtete von der Transformation der Entwicklung der Produktlinie OPTARION von einem Wasserfallprozess zu einen holistischen Ansatz, der mit MOPTI (Miteinander, Organisation, Prozess, Tooling, Information) bezeichnet wird. Die Geschäftsführung von HENSOLDT beauftragte die Transformation kurz vor dem Scheitern des Projektes. Als Ergebnis konnten innerhalb von 15 Monaten 11 Produktvarianten ausgeliefert werden. Der Erfolg führt dazu, dass das agile Vorgehensmodell in der ganzen Firma ausgerollt werden soll.

Adam Whitmill von Mathworks stellte in seinem Vortrag  einige agile Ansätze vor, die von seinen Kunden, u. a. SAAB, verwendet werden. Aus seiner Sicht sind die Schlüsseltechnologien für die Umsetzung von agilen Vorgehensmodellen im sicherheitskritischen Umfeld die Code Generierung aus Modellen, die frühzeitige Validierung und Verifikation, sowie kontinuierliche Integration.

In seinem Erfahrungsbericht  berichtete Stefan Wertheimer von der Konzept Informationssysteme GmbH über die Scrum-basierte Entwicklung des Produkts PERIGEE, ein Design-Tool für die Entwicklung von Raumfahrtsystemen. Dabei wurde die Flexibilität von Scrum mit den Qualitätsanforderungen des ESA-Standards ECSS-E-ST-40C kombiniert und das Ziel verfolgt, alle im Standard geforderten Ergebnisdokumente zur erstellen.

Anhand der Vorträge zeigte sich, dass die agile Vorgehensweise in der Luft- und Raumfahrt angekommen ist. Allerdings dürfen die agilen Prinzipien nicht dogmatisch angewendet werden. Es sind einige Einschränkungen zu beachten, die in den Erfahrungsberichten klar herausgearbeitet wurden. Wichtig für eine erfolgreiche Umsetzung ist, dass die schrittweise Verbesserung der Software möglichst unabhängige Features beinhaltet und der Automatisierungsgrad bei Dokumentenerzeugung, Test, sowie Code- und Modellprüfungen im Projekt sehr hoch ist.

Alle 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.

Termine

Vortragsanmeldung: 27. Juli 2018

Programm und Benachrichtigung der Vortragenden: 17. August 2018

Anmeldung: 5. Oktober 2018

Workshop: 10. Oktober 2018

Allgemeine Informationen

Termin:

10. Oktober 2018

Ort:

TU München
Boltzmannstr. 15
85748 Garching
Institut für Luft- und Raumfahrt
Raum MW0250 (Maschinenwesen, Erdgeschoss)

Anfahrt:

Beschreibung

Teilnahmegebühr:

entfällt

Übernachtung:

Zimmerreservierungen können über das Fremdenverkehrsamt München vorgenommen werden (Tel. 089-2330-300).

  

Anmeldung:

Bis 5. Oktober 2017

Kurzfassung der Vorträge

Markus Hochstrasser, Stephan Myschik, Florian Holzapfel: A modular, model-based DO-178C software life cycle – planning, realization, and preservation

The interest in agile software development has steadily been increasing for the last years. However, stringent development processes like DO-178C are still rarely enriched with the spirit of agile development, even though DO-178C does not explicitly prescribe a software life cycle.

One reason is that incremental and concurrent development as well as shorter cycles, make it difficult to ensure that all DO-178C objectives are satisfied and to maintain a consistent set of artifacts. In addition, time-consuming manual reviews are still an important part of verification and are not easily manageable in continuous integration.

The contribution of the authors presents a two-step approach in order to ease the application of agile methods and overcome the above-mentioned challenges for a safety-critical, model-based software development process:

  • Adoption and tailoring of a modular, model-based DO-178C/DO-331 process  upporting independent, concurrent workflows.
  • Realization and compliance preservation of the process using a process-oriented build tool

The first part affects the planning of a DO-178C/DO-331 process. The best-case scenario would be that software modules can separately and interpedently be developed and verified from requirements over code to object code. However, such a breakdown raises various challenges concerning modeling, code generation, traceability, and verification objectives. For example, only a subset of activities concerning reachability is assessable at module-level. To be comprehensive, they require a holistic view of the software application. Presented is the chosen tailored process breakdown and with discovered challenges as well as developed solutions.

Since a modular process is more complex, the management of artifacts and the verification of correctness, compliance, consistency, or “cleanliness” becomes more challenging. A specialized build tool developed at the Institute of Flight System Dynamics, in which the modular process can be represented with high process coverage, is demonstrated in the second part. In contrast to existing build and continuous integration tools, the tool tracks fine-grained dependency and traceability information (also at the model-level), and thereby enables impact analysis, detection of deprecated artifacts, or incremental build instead of “brute-force” continuous integration. Beyond automatic task execution, it also supports incremental review workflows. In the light of agile methods, it helps to manage and show compliance to the process in a concurrent, fast changing environment and counteracts corrosion of the process.

Manfred Reisner: Agile Entwicklung und Software Safety – Disziplinen, Prozesse und Abhängigkeiten

Seit den 2000er Jahren werden die agilen Methoden in der Softwareentwicklung eingesetzt. Der Erfolg und die hohe Ausbreitung der agilen Methoden sprechen für sich. Bei der Betrachtung der Entstehung der agilen Methoden fällt die zeitliche Nähe zum DotCom-Boom der Jahrtausendwende auf. Diese war in der IT insbesondere durch Webseitengestaltung und gemäß des Client-Server-Modells durch Grafische Benutzerschnittstellen (GUI) für Datenbank-orientierte Anwendungen geprägt. Der Autor stellt im Beitrag seine Sichtweise und seine Erfahrungen aus der Welt der Software-Safety im Wirkbereich der funktionalen Sicherheit nach IEC 61508 und abgeleiteten Normen in verschiedenen Branchen dar. Die Frage, ob agile Methoden entsprechende Organisationen weiterbringen können, wird in vielen Branchen diskutiert.

Der Beitrag untersucht verschiedene Anwendungsgebiete von Software, entsprechende Branchen und deren “Produkte”auf ihre Zusammenarbeit von verschiedenen Disziplinen und betrachtet insbesondere deren Abhängigkeiten.

Die verschiedenen Vorgehensmodelle (V-Modell und agile Methodik) werden anhand ihrer Prämissen und Zielsetzungen gegeneinander verglichen. Während das V-Modell in die Detailtiefe geht, um Abhängigkeiten und verschiedene Aspekte der Entwicklung (z.B. Performance, Reliability, Availability, Maintainability , Safety) zu beleuchten, zielt die agile Methodik hauptsächlich auf die schnelle Verfügbarkeit von (Teil-)Ergebnissen, ohne entsprechende Abhängigkeiten erschöpfend zu betrachten und ohne sich um verschiedene Aspekte des Designs kümmern zu müssen. Diese Vorgehensweise kulminiert im “Contininouos Delivery”, was für einige Branchen möglich ist, für andere sich deutlich schwieriger darstellt.

Die Frage, ob Software Safety mit agilen Methoden erreichbar ist, wird anhand der Abhängigkeiten beleuchtet. Zusätzlich wird versucht, die Wahrscheinlichkeit einer realen erfolgreichen Umsetzung des agilen Ansatzes im Feld der Software Safety anhand der Voraussetzungen zu ermitteln.

Die europäische Raumfahrtbehörde ESA/ESTEC, konkret die Software-Qualitätsabteilung ist darauf vorbereitet Agile Software in Projekten mit DAL D und DAL C zu genehmigen. Dazu hat die ESA Referenzprojekte durchgeführt und erarbeitet ein “Agile software development handbook” ECSS-E-HB-40-01A DIR1. In diesem Beitrag wird der Bezug zu Software Citicality und zu den Prozessen zur Vermeidung von systematischen Fehlern dargestellt.

Michael Erskine: Agile und schwergewichtige Prozesse – wie paßt das zusammen

Agile SW-Entwicklung und schwergewichtige Prozesse werden im allgemeinen als Gegensätze betrachtet. Die MBDA Deutschland GmbH arbeitet nach Prozessen, die ihren Ursprung im Handbuch Technik der MBB und im V-Modell '92 und '97 haben. Die Prozesse  müssen diverse Normen und Standards erfüllen, wie ISO 9100, AQAP 2210, aber auch DIN EN 61508 und DO178C für sicherheitskritische Software. Das Business Management System (BMS) der Firma bietet einen stabilen Rahmen mit Freiheitsgraden. Diese Freiheitsgrade sind notwendig, um auf unterschiedliche Projektsituationen reagieren zu können.

Der Vortrag betrachtet, wie Agilität allgemein zu einem Entwicklungsprozeß beiträgt: mit Werten, Prinzipien, Rollen, Artefakten und Praktiken. Anschließend wird analysiert, inwieweit das BMS der MBDA-Deutschland GmbH Agilität zuläßt - und welche Bedeutung Agilität im Projektalltag hat.

John Marsden: ED-12C / DO-178C vs. Agile Manifesto

This paper shows how apparent contradictions between agile practices and avionics software certification objectives have been resolved in a number of Airbus projects. It is demonstrated that significant improvements in quality, schedule and cost have been achieved in the development of highly-complex, high-integrity, embedded real-time software. Moreover, several use cases prove that, when carefully deployed, agile techniques are not only compatible with ED-12C / DO-178C, but through greater visibility and openness actually simplify it.

Sebastian Benders: Agile Softwareentwicklung für einen Prototypen zur Technologiedemonstration des unbemannten Luftfrachttransports - Ein Erfahrungsbericht

Das Projekt Automated Low Altitude Air Delivery (ALAADy) des Deutschen Zentrums für Luft- und Raumfahrt (DLR) betrachtet den zivilen, unbemannten Frachttransport. In dem Projekt werden konzeptionell Realisierungen zum Transport von 1 t Nutzlast mit Hilfe unbemannter Luftfahrzeuge betrachtet. Besondere Gesichtspunkte sind Aspekte der technologischen Realisierung, mögliche wirtschaftliche Anwendung und die neuartige Formen der betriebsbezogene Zulassung. Für die Bewertung dieser Konzepte wird ein unbemannter Technologiedemonstrator für etwa 200 kg Nutzlast aufgebaut und betrieben. Dieser Vortrag befasst sich mit der Entwicklung der bordseitigen Software des Demonstrators mithilfe Methoden der agilen Softwareentwicklung. Die Softwareentwicklung wurde in Anlehnung an das Vorgehen nach Scrum organisiert. Neben Erläuterungen der Anpassung von Scrum an die besonderen Gegebenheiten des Projektes im wissenschaftlichen Umfeld und für die Technologiedemonstration, werden Auswertungen zum Projektverlauf und Erfahrungsberichte präsentiert.

Dr. Roland Kempter: OPTARION®: Agile Product Development - A single Version of the Truth

The agile OPTARION process and methodology combine high product quality, cost reduction, civil certification, objective as well as flexible and reliable project planning by means of employee, company and customer satisfaction. These achievements are possible by a highly integrated development and lifecycle tool chain focused on PTC Integrity 10 providing a single version of the (project’s) truth. Consequently, customer and company confidence in the OPTARION® Product Suite could be re-established.

Adam Whitmill: An Insight into varied industry applications of Agile and key enabling verification technologies

Agile software development is a growing trend in the aerospace industry. Efficient development of engineering software calls for early prototypes (user acceptance) and can impose critical hardware decisions late in the design process.

The transition from traditional to Agile development processes poses significant challenges for large multidisciplinary teams, while potentially offering significant improvements in quality and reduction in development time and cost. This presentation aims to give a high-level overview of how Agile is being tailored & implemented for High Integrity Systems software development, compliant to safety standards across different industry applications. We would like to draw attention to the key challenges associated with ensuring the guiding principles of Agile are envisaged and how automation of best practices and key verification activities, can contribute to successful implementation of an Agile framework. Early verification and validation combined with automatic code generation seamlessly supports all phases within agile workflows, such as SCRUM and help speed up implementing and measuring your “definition of done” criteria.

We will share our insights on how Model-Based Design, code generation and test are applicable to Continuous Build and Integration workflows to automate critical verification activities, a key enabler for Agile within large scale integration projects.

Stefan Wertheimer: Surf ‘n’ Turf – Scrum und ECSS-E-ST-40C

Bei der Entwicklung des Produkts PERIGEE entschied sich die Konzept Informationssysteme GmbH für die agile Methodik „Scrum“. Da es sich bei PERIGEE um ein Design-Tool im Rahmen der Entwicklung von Raumfahrtsystemen nach ESA-Vorgaben handelt, gab es die Prämisse, die Richtlinien der „European Cooperation for Space Standardization“ (ECSS) bezüglich Softwareentwicklung (Standard „ECSS-E-ST-40C“) einzuhalten. Es galt also die Herausforderung zu meistern, die vorgeschriebenen Entwicklungspläne entsprechend so zu gestalten, dass sie einerseits den Qualitätsanforderungen der ECSS und andererseits dem „Änderungswillen“ von Scrum entsprachen. Ebenso mussten alle Ergebnisdokumente, die klassischer Weise in einem Wasserfallprozess der Reihe nach angefertigt werden, in der entsprechenden Qualität im iterativen und inkrementellen Zyklus der Scrum-Sprints erzeugt werden.

Der Vortrag stellt dar, wie das PERIGEE-Scrum-Team beide Welten erfolgreich kombiniert hat, und zeigt die Erfahrungen und Lessons Learned auf.