Wichtiger denn je: In Systemen und Architekturen denken

Der Blick in die Gegenwart und die Zukunft zeigt deutlich, dass die Embedded-Welt und die IT-Welt miteinander verflochten sind und sich immer mehr verflechten werden. Embedded-Systeme werden zum Bestandteil des Internet of Things, das sich zu einem Internet of Everything entwickelt und Brutstätte vieler neuer Geschäftsideen sein wird. Die große Herausforderung liegt darin, in immer komplexeren und dynamischeren Systemen zu denken und die immer rasanteren technischen und unternehmerischen Aspekte zu neuen Systemen und Geschäftsideen zu kombinieren. Unsere Trainer haben sich dazu ein paar Gedanken gemacht.

Interdisziplinäre Kooperation ist gefragt“

„Klassische Embedded-Systeme wie Produktionsmaschinen interagieren schon heute mit Smartphones, Tablets, PCs und Servern“, betont Frank Listing, unser Spezialist für den Einsatz von PC- und Smartphone-Technologien im Embedded-Umfeld und  viele Jahre selbst als Softwareentwickler und Softwarearchitekt in der Kommunikationsbranche tätig. „Die Mensch-Maschine-Kommunikation läuft immer mehr über Smartphones und Tablets, die sich zu universellen Kommunikationsschnittstellen in allen Richtungen mausern.“

Doch Komfort und Vernetzung haben ihren Preis: Das Thema Security, also der Schutz gegen nicht autorisierte Zugriffe auf die Maschinen oder was immer über das Internet of Everything erreichbar sein wird, gewinnt massiv an Bedeutung. Um keine Einfallstore für Cyberkriminalität zu öffnen, ist eine sehr viel höhere Kompetenz und engere Zusammenarbeit von Embedded- und IT-Spezialisten unter dem Security-Aspekt nötig.

„Hier sind durchdachte Systemarchitekturen gefragt, die diese Sicherheit gewährleisten und gleichzeitig genügend Flexibilität für Systemerweiterungen und Innovationen bieten. Die Projektteams  müssen neben C/C++ auch C#, Java oder HTML5 mit JavaScript beherrschen, um den neuen Anforderungen gerecht zu werden. Die Gräben zwischen IT und Embedded müssen schnellstens zugeschüttet werden. Interdisziplinäre Projektarbeit ist gefragt.“

Softwarearchitektur-Design ist ein Muss“

Thomas Batt, der bei MicroConsult das Thema Software Engineering und Prozesse verantwortet, schlägt in dieselbe Kerbe: „Ich sehe, dass immer mehr Firmen zwar den Nutzen einer definierten Softwarearchitektur erkennen, doch der Weg aus dem Sumpf der Software-Altlasten ist beschwerlich. Die Art, wie Embedded-Software in der Vergangenheit häufig entwickelt (oder sollte man sagen verwickelt?) wurde, führt nachweislich nicht nur in eine Sackgasse, sondern stellt ein immer größeres Sicherheitsrisiko dar.“

Die steigende Komplexität in Verbindung mit wachsenden Anforderungen an Safety (Betriebssicherheit) und Security (Systemschutz) stellt hohe Ansprüche an die Softwarearchitekturen und die Qualität der Implementierung. Dies wiederum spricht für den Einsatz von bewährten Softwarekomponenten (Betriebssysteme, Stacks, Filesysteme, etc.) und die Anwendung objektorientierter Methoden mithilfe von Hochsprachen wie C++. Ziel muss es sein, der schleichenden Software-Erosion von Anfang an entgegenzuwirken.

Aus der Sicht von Thomas Batt, der über langjährige Projekterfahrung in der Industrie verfügt, hat diese Erkenntnis auch dazu geführt, dass dem Requirements Engineering und Requirements Management sowie der Softwaremodellierung mehr Aufmerksamkeit geschenkt wird: “Der Umstieg auf höhere Abstraktionsebenen in Kombination mit professionellem Software Engineering ist unerlässlich, um der Komplexität Herr zu werden. Ein weiteres Mittel, um Komplexität, erhöhte Sicherheitsanforderungen und schnelle Produktzyklen in den Griff zu bekommen, sind Betriebssysteme, die den Applikationen der Hersteller zuarbeiten. Es kommt nicht von ungefähr, dass sich Embedded-Linux großer Beliebtheit erfreut – nicht nur, weil die Lizenzkosten entfallen. Es wird immer wichtiger, dass die Applikationsentwickler sich von den Details der Hardware lösen und auf wichtige Services und Schnittstellen zugreifen können, ohne sie selbst zu entwickeln. Hardware muss sich durch Hardware-Abstraktion über das Betriebssystem schneller austauschen lassen.“

Hier gibt es im Bereich Multicore allerdings noch viel zu tun. Ideal wäre es, wenn dies auch für das Betriebssystem mittels eines Operating System Abstraction Layers (OSAL) möglich ist. Die System- und Softwarearchitektur sollte diese Aspekte jedenfalls berücksichtigen.

Fazit

Die rasante Entwicklung vom Internet of Things zum Internet of Everything macht eine enge Zusammenarbeit von Embedded und IT überlebenswichtig. Systeme und Software müssen den Ansprüchen dieser dynamischen Zukunft gewachsen sein, in der wir heute noch nicht wissen, welche Applikation, Funktion oder Technologie morgen wettbewerbsentscheidend sein werden.

Weiterführende Informationen – Weiterbildung

Software-Architektur-Schulung für Embedded-Systeme und Echtzeitsysteme

Embedded-Software-Design und Patterns mit C

Qualität im Programmcode – Schulungen

MicroConsult Fachwissen

Embedded- und Echtzeit-Softwareentwicklung

Veröffentlicht von

Peter Siwon

Peter Siwon

Ich bin für das Business Development bei MicroConsult verantwortlich. Die Embedded-Branche kenne ich aus vielen Perspektiven: Forschung, Entwicklung, Projektleitung, Schulung und Beratung, Vertrieb, Marketing und Geschäftsführung. Ich bin Mitgründer des Embedded Software Engineering Kongress sowie Kolumnen- und Buchautor und lehre an der University of Applied Science in Regensburg und Braunschweig.