Experience Embedded

Professionelle Schulungen, Beratung und Projektunterstützung

Embedded Software Engineering - Fachwissen

Der Embedded Software Engineering Kongress - kurz ESE Kongress - wurde 2008 ins Leben gerufen und ist die einzige deutschsprachige Veranstaltung, die sich tiefgehend den Themen und Herausforderungen bei der Entwicklung von Geräte- und Systemsoftware für Industrieanwendungen, Kfz-Elektronik, Telekom sowie Consumer- und Medizintechnik widmet. MicroConsult ist Mitbegründer und Veranstalter dieses Events.

Der Kongress zeichnet sich besonders durch ein hochkaratiges Vortragsprogramm aus. An dieser Stelle veröffentlichen wir ab sofort für Sie Abstracts zu diversen Fachbeiträgen.

MicroConsult bietet das ganze Jahr zu den auf dem Kongress besprochenen Themen Weiterbildungen, Kurse und Seminare sowie Coaching an.


 

Vortragsreihe: Architektur

Adaptive Software-Architekturen für automatisierte Systeme

Fail-Operational: Wie hochautomatisierte Funktionen trotz Fehler funktionieren

Autoren: Gereon Weiß und Philipp Schleiß, Fraunhofer ESK (ESE Kongress 2016)

Die zunehmende Automatisierung von Systemen erfordert neue Ansätze zur Steigerung deren Verlässlichkeit und Flexibilität. In zukünftig hochautomatisierten Fahrzeugen kann der Fahrer die Kontrolle über das Fahrzeug vollständig abgeben und muss erst nach 10 Sekunden wieder übernehmen können. Hierfür müssen die hochautomatisierten Fahrfunktionen auch im Fehlerfall weiter funktionieren, d.h. fail-operational sein. Der Beitrag stellt ein neues Konzept und Lösung für zukünftige adaptive Fahrzeugsoftware-Architekturen vor.

Wie treibt man die Herde wieder sicher zusammen?

Architekturanalyse für Software-Varianten

Autoren: Professor Dr. Rainer Koschke, Universität Bremen & Thomas Eisenbarth, Axivion GmbH (ESE Kongress 2016)

Wenn man sehr variantenintensive Software-Produkte zu betreuen hat, bietet sich eine Entwicklung in einer sogenannten Software-Produktlinie (SPL) an. Eine Produktlinie ist eine Familie von Programmen, die eine große Anzahl gleicher Anforderungen erfüllt, von denen aber jedes einzelne Programm nicht genau das Gleiche tut wie die anderen – sei es weil es etwas andere funktionale Anforderungen hat oder weil es etwas andere nicht-funktionale Eigenschaften aufweist (z.B. andere Algorithmen mit unterschiedlichem Ressourcenbedarf implementiert). Manche Autoren bezeichnen SPL deshalb auch als Software-Produktfamilien.


 

Vortragsreihe: Implementierung

Anpassbare Software geschickt umgesetzt?!

Implementierungsmechanismen anpassbarer Software im Vergleich

Autoren: Martin Becker und Bo Zhang, Fraunhofer Institut für Experimentelles Software Engineering (IESE)

Bei der erfolgreichen Realisierung von wiederverwendbaren und konfigurierbaren Softwaremodulen ist einer der wichtigsten Schritte die Auswahl von geeigneten Variabilitätsmechanismen. Prominente Vertreter sind hier die bedingte Kompilierung mit dem Präprozessor, die Modulauswahl oder die Parametrierung in Verbindung mit bedingter Ausführung. Der Blick in den Entwicklungsalltag zeigt, dass die Mechanismen oftmals leichtfertig ausgewählt und willkürlich eingesetzt werden. Die Konsequenz sind dann oftmals schlecht verständliche und wartbare Software-Ungetüme. Der Beitrag gibt einen Überblick über gängige Variabilitätsmechanismen, zeigt Stolperfallen und Best-Practices anhand von Praxisbeispielen auf.

Nutzen Sie die Macht der Sprache

Programmieren einmal anders

Autor: Andreas Fertig, Philips Medizin Systeme Böblingen (ESE Kongress 2016)

Programmieren ist heute ein Leichtes. Es gibt dutzende Programmiersprachen und viele Möglichkeiten, sie zu erlernen. Ein wichtiger Teil des Wortes Programmiersprache: die Sprache. Meist konzentrieren wir uns darauf, den Teil "Programmieren" zu erledigen. Im Embedded Umfeld haben Programme eine Lebensdauer von vielen Jahren. Das fehlerfreie Programmieren ist deshalb eine wichtige Aufgabe. Oft vernachlässigt wird, dass es beim Programmieren noch ein weiteres wichtiges Ziel gibt, und zwar die Kommunikation mit den anderen Entwicklern. Mithilfe der Sprache können wir unsere Intention über Jahre hinweg kommunizieren. Durch Sprache wird die Fehlersuche unterstützt, und das bestehende Programm lässt sich leichter erweitern. Mit der Weiterentwicklung des C++ Standards zu C++11 und 14 ergeben sich neue Möglichkeiten, unsere Ausdrucksweise weiter zu verbessern.

Virtualisierung im industriellen Umfeld

Grundlagen, Lösungen, Erfahrungen

Autoren: Frank Erdrich und Jan von Wiarda, emtrion (ESE Kongress 2016)

Virtualisierung bietet eine Lösung, um mehrere Softwareinstanzen, etwa Betriebssysteme, auf einem System zu betreiben. Dabei laufen die einzelnen Systeme getrennt voneinander ab, ohne zu wissen, dass andere Instanzen auf demselben physikalischen System ausgeführt werden. Durch diese Trennung kann eine gewisse Sicherheit erreicht werden, da beispielsweise eine komprommitierte Instanz nicht auf die Ressourcen, etwa den Hauptspeicher, anderer Instanzen zugreifen kann.


 

Vortragsreihe: Safety und Security

Technik trifft Recht

Produktqualität und Wettbewerbsvorteil durch Kenntnis der rechtlichen Haftungssystematik

Autorin: Susanne Meiners, NewTec GmbH (ESE Kongress 2016)

Technische Innovationen prägen unseren Alltag. Diese müssen mit dem bestehenden Recht in Einklang gebracht werden, um die Rechte der Betroffenen zu schützen. Aktuell sind viele Fragen offen, vor allem, wenn es um autonome oder sich selbst entwickelnde Systeme geht. Ebenso, wenn Datenschutz und Datensicherheit betroffen sind. "Industrie 4.0" ist geprägt von Unsicherheit und Hoffnung: Medien berichten von Hackerangriffen und Unfällen mit autonomen Fahrzeugen, aber auch von technischen Erfindungen, die unseren Alltag erleichtern und unseren Wirtschaftsstandort stärken. Ziel ist es, mit Einblick in das rechtliche Haftungssystem weiter mit Innovationskraft voran zu schreiten und sichere technische Systeme zu entwickeln.


 

Vortragsreihe: Multicore

Software Design Automation für effiziente Multicore-Nutzung

Software-Verteilung under Leistungs- und Energieeinschränkungen

Autor: Maximilian Odendahl, CEO, Silexica GmbH (ESE Kongress 2016)

Die Entwicklung von Software für neuartige Multicore-Systeme stellt zahlreiche Industrien im Embedded High Performance Bereich vor neuartige Herausforderungen. Im Vergleich zu bestehenden Singlecore-Systemen erfordert der Einsatz moderner Multicore-Systeme neben der funktionalen Verifikation und Singlecore-Optimierung eine optimale Verteilung der Software auf die verschiedenen Prozessorkerne der Zielplattform. Dabei gilt es nicht nur, zeitliche und funktionale Vorgaben zu berücksichtigen, sondern idealerweise auch den Leistungs- und Energieverbrauch zu minimieren. Selbst für kleine Anwendungen und Zielsysteme ergibt sich daher eine Vielzahl von möglichen Lösungen, deren Entwicklung und Bewertung bisherige, hauptsächlich manuelle, Entwicklungsansätze an ihre Grenzen bringen. Abhilfe können neuartige Algorithmen und Tools aus dem Bereich der Software Design Automation schaffen. Im Folgenden werden hierzu ein neuartiger Tool-basierter Lösungsansatz näher vorgestellt und die Vorteile anhand eines Anwendungsbeispiels aus der drahtlosen Telekommunikation demonstriert.

 


Vortragsreihe: Agil & Scrum

Agile Entwicklungsprozesse im normativ regulierten Umfeld

Die Rolle der Qualitätssicherung auf dem Weg zur Zertifizierung

Autoren: Rosalinde Schuster & Christoph Lagat, Berner & Mattner Systemtechnik (ESE Kongress 2016)

Um in einem dynamischen, internationalen Markt wettbewerbsfähig zu bleiben, streben Unternehmen nach stets kürzeren und flexibleren Entwicklungszyklen. Im Zuge dieser Entwicklung gewinnen agile Entwicklungsmethoden zunehmend an Bedeutung. Entsprechend dem sogenannten Agilen Manifest wird dabei Individuen und deren Interaktionen, ein funktionierender Produktstand, die Zusammenarbeit mit dem Kunden und die Reaktion auf Veränderungen mehr Gewicht beigemessen als Prozessen und Werkzeugen, einer umfassenden Dokumentation und der Stabilität eines einmal erstellten Plans. Demgegenüber steht jedoch die Anforderung, spezifischen Normen für den Entwicklungsprozess und/oder Produkten zu entsprechen. Eine Norm ist dabei eine Leitlinie, welche Informationen zur Vereinheitlichung über ein Produkt oder einen Prozess enthält und einen anerkannten Stand der Technik beschreibt. Dies führt zu einem Spannungsfeld zwischen Agilität und der durch Normen geforderten durchgängigen Dokumentation qualitätssichernder Maßnahmen. Dennoch bieten einige häufig in der agilen Entwicklung eingesetzten Elemente bereits eine solide Grundlage für die Erfüllung von Normen und damit einer Zertifizierung, wenn diese geeignet genutzt und adäquat angepasst werden.

DevOps, Agile Entwicklung und Security

Passt das zusammen?

Autor: Dr. Ralf Huuck, Synopsys (ESE Kongress 2016)

Moderne Softwareprozesse sind stark von kurzen Produktzyklen, Modularität und schnellem Markteintritt angetrieben. Dieses spiegelt sich in den sogenannten DevOps Prozessen wider als auch in dem Trend zu zunehmend agileren Ansätzen, die eine flexible Antwort auf sich ändernde Anforderungen geben. Auf der anderen Seite sind die Sicherheitsanforderungen insbesondere im Embedded Software Bereich stark gestiegen. Sicherheit erfordert aber gründliches Planen, eine saubere Sicherheitsarchitektur und Spezialkenntnisse, die einem ad hoc Ansatz entgegenstehen. Dieser Vortrag beleuchtet diese scheinbaren Gegensätze und die sich daraus ergebenden Konsequenzen.


Vortragsreihe: Software Engineering Management

The V-Model is Dead. Long Live the V-Model!

Dr. Royce Recommends an Iterative and Incremental Approach

Author: Colin Hood, Colin Hood Systems Engineering (ESE Kongress 2016)

Aims of the Paper: To explain that a V-model documents relationships between information and does not restrict the sequence of creation of information.

To explain that a V-model shows that larger systems can be considered to be a number of sub-systems to aid specification, and that sub-systems can be further considered to consist of a number of components to aid specification.  A V-model also shows that components can be integrated to create sub-systems, and that sub-systems can be integrated to create systems.

Software-Analytics in komplexen Software-Projekten

Verwertbares Wissen aus Daten über Software und Entwicklung

Autor: Professor Dr. Rainer Koschke, Universität Bremen (ESE Kongress 2016)

Dieser Artikel beschreibt Techniken, Methoden und Werkzeuge der Software-Analytics. Software-Analytics ist die Wissenschaft zur Gewinnung und Auswertung von Daten über ein Software-Produkt oder dessen Entwicklung. Folgende Fragen werden geklärt: Welche verwertbaren Daten fallen im Entwicklungsprozess an? Wie identifziert man die relevanten Daten für eine gegeben Fragestellung? Wie können die Daten erhoben werden? Mit Hilfe welcher Data-Mining-Techniken lassen sich die Daten auswerten? Welche Werkzeuge gibt es für das Data-Mining? Wie können Daten sinnvoll visualisiert werden? Was sind ihre Chancen und Gefahren?

Merkzettel


Sie haben derzeit keine Trainings auf dem Merkzettel.