Softwaresicherheit, Teil 3

Zukunftssicherheit von Embedded-Software

Seite: 2/2

Anbieter zum Thema

Die Lebenszyklen von Software

Die Zukunftssicherheit einer Software endet nicht mit dem erfolgreichen Abschließen des "Lebensabschnitts" Implementierung oder Test. Die Zukunft beginnt quasi erst in der Zukunft, das Urteil lautet demnach: Lebenslänglich! Zu dem Schluss kamen Dr. Michael Sturm und Carolin Eckl von der Berner und Mattner Systemtechnik GmbH bei ihrem Vortrag über "Architecture Lifecycle-Optimierung mit Embedded Design Pattern".

Der Fokus darauf ist einem Wandel unterworfen, der sich gerade in der letzten Zeit immer stärker bemerkbar macht. Wo früher aufgrund limitierter Leistungsfähigkeit und Kapazität der Hardware jeder Entwickler einer embedded Software in der Gestaltung seines Produkts massiv eingeschränkt war, nähert sich die Embedded-Programmierung der für PCs an.

Wartbarkeit und Flexibilität sind heute wichtiger denn je. Und die Beherrschung einer zunehmenden Variantenvielfalt, die Forderung nach gut und ansprechend gestalteten Nutzeroberflächen sowie die umfassende Vernetzung von Systemen ergänzen den Katalog der aktuellen Anforderungen. Die Entwicklung von Embedded-Software ist daher heute viel komplexer als noch vor nicht allzu langer Zeit.

Aus dem Grund sind umfangreichere Maßnahmen erforderlich, die beispielsweise die Verwendung neuester, objektorientierter Programmiersprachen oder Modellierungsmethoden erfordern. Darüber hinaus sind auch neue Rollen und Aufgaben, wie die des Softwarearchitekten sowie des Konfigurations-, Versions- und Variantenmanagements, notwendig.

Offene Codes und wem gehört die Software?

Open-Source-Software mit ihren vielen Entwickler, die daran arbeiten, es weiterentwickeln und voranbringen, gewährleisten die Sicherheit, Aktualität und hohe Qualität des Systems, auch für die Zukunft. Projekte und Produkte aus dem Open-Source-Umfeld weisen eine Besonderheit auf: Jeder der in der Lage ist, kann ein vorhandenes System verändern und verbessern. Die dafür erforderlichen Dateien stehen öffentlich zur Verfügung. Sie unterliegen der sogenannten GNU General Public License (GPL) und dem "Copyleft" der GPL.

Alle Änderungen, die vorgenommen werden, müssen anschließend ebenfalls veröffentlicht werden, um erneut weiterentwickelt oder verbessert werden zu können. Allerdings kann dies dem Interesse, sein geistiges Eigentum zu schützen, entgegenstehen. Dr. Carsten Emde, Open Source Automation Development Lab (OSADL), referierte auf dem ESE Kongress über das Thema, ob man nun seinen Code tatsächlich offenlegen muss oder nicht. Er räumt in diesem Zusammenhang dem Begriff der Ableitung eine zentrale Bedeutung ein.

Die Frage, ob eine Software abgeleitet wurde, ist entscheidend dafür, wem die Software letztlich tatsächlich gehört. Wer vom Geben-und-Nehmen-Prinzip der Open-Source-Gemeinde profitieren will ohne Schlüsselkowhow preisgeben zu müssen, sollte sich an dieser Stelle rechtzeitig über die lizenzrechtlichen Implikationen informieren.

Warum Sie ab und an auf die Nase fallen sollten

Die sprichwörtliche Aussage, dass man den Wald vor lauter Bäumen nicht sieht, erfüllt sich leider auch hinsichtlich der Entwicklung von Software für Embedded-Systeme. Anforderungen aus Lasten- und Pflichtenheften, gesetzliche Vorgaben, Normen und Richtlinien geben die Marschrichtung vor. Das klingt wenig verlockend, weil umständlich und schwierig, ist aber zumindest ein sicherer Weg.

Die Chancen, aber auch Risiken neuer Wege zeigen sich meist erst dann, wenn diese begangen werden. Von Woody Allen stammt hierzu das treffende Zitat: "Wenn Sie nicht von Zeit zu Zeit auf die Nase fallen, ist das ein Zeichen, dass Sie nichts wirklich Innovatives tun".

Das mag wie eine Binsenweisheit erscheinen, doch die Frage ist, wo die Kreativität ansetzen soll. Bekannt sind heute Kreativitätstechniken, wie die Osborn-Checkliste, die einem Entwickler die Möglichkeit gibt, eine definierte Aufgabe nicht nur einfach kreativ zu lösen, sondern schon die Definition der Aufgabe kreativ anzugehen. Jean-Philippe Hagmann von Denkmotor erklärte dazu, dass Kreativität gemäß der Wortherkunft ja nichts anderes als "Denken" bedeutet; Denken allerdings, das zu neuen Lösungen führt.

Eine zentrale Aussage ist, dass Kreativität für den Fortschritt und somit für die Zukunft von großer Bedeutung ist. Hat ein Entwickler die Aufgabe, eine Embedded-Software zu entwerfen, so ist er gut beraten, das momentan nur Wägbare dennoch so gut es geht zu berücksichtigen. Dazu gehört auch Mut, denn das heute Unbekannte kann auch Risiken bergen. Die Osborn-Checkliste liefert gerade in der Ideenphase hilfreiche Impulse für alternative Verwendungen, Anpassungen oder Abwandlungen.

Der Blick über den Tellerrand gehört dazu

Die Zukunftssicherheit von Software spiegelt sich in besonderem Maße in der Zukunftsfähigkeit ihrer Produktmanager, Architekten und Entwickler wider. Wer heute Software entwickelt, sollte seinen Blick in die Zukunft richten. Dabei lohnt sich der Blick über den embedded Tellerrand in die große, weite Welt der IT. Welche Methoden und Tools werden dort heute eingesetzt, und welche Bedeutung könnten sie für die Embedded-Welt von Morgen haben?

Hellseherei ist dabei gar nicht nötig; es genügt meist, vor die Tür zu treten und die Augen zu öffnen. In jedem Falle ist es empfehlenswert, sich nach Technologien und Darstellungsmöglichkeiten umzusehen, die von Programmiersprachen unabhängig sind. Solche Ansätze erleichtern es, Architektur, Ideen und Prinzipien einer Software ohne aufwändige Sourcecode-Sezieranstrengungen in die Zukunft mitzunehmen. //heh

* * Peter Siwon ist Business Development Manager beim Schulungs- und Consulting-Spezialist MicroConsult in München und Alexander Sedlak ist als freier Autor tätig.

Jetzt Newsletter abonnieren

Verpassen Sie nicht unsere besten Inhalte

Mit Klick auf „Newsletter abonnieren“ erkläre ich mich mit der Verarbeitung und Nutzung meiner Daten gemäß Einwilligungserklärung (bitte aufklappen für Details) einverstanden und akzeptiere die Nutzungsbedingungen. Weitere Informationen finde ich in unserer Datenschutzerklärung.

Aufklappen für Details zu Ihrer Einwilligung

(ID:34878320)