iX Developer Embedded Software

12,90 €*

Derzeit nicht verfügbar

Highlights dieser Ausgabe:
  • Systementwicklung mit SysML u. UML
  • Arduino, Raspberry Pi und BeagleBone
  • Industrie 4.0
  • Wichtige Tools
  • Debugging von Multicore-Systemen
  • Software auf der Heft-DVD
Format
Inhaltsverzeichnis

Embedded Software

Aufgrund langer Produktzyklen und hoher Fehlschlagsrisiken erwies sich die Embedded-Softwareentwicklung lange Zeit als vergleichsweise innovationsscheu. Das ändert sich nun mit Industrie 4.0 und Internet der Dinge – die Branche ist darauf gut präpariert.


Programmiersprachen

Am meisten ist in der Embedded-Programmierung nach wie vor C verbreitet, aber Ada, C++ und Java kommen ebenfalls zum Zug – teilweise deutlich zunehmend. Das liegt an neuartigen Anforderungen, für die sich das „klassische“ C nicht eignet.


Qualitätssicherung

Dass bei Embedded-Systemen andere Maßstäbe bei der Qualitätssicherung angesetzt werden müssen, ist eine Binsenweisheit. Umso wichtiger ist es, dass Domänen wie Requirements Engineering, Testing oder funktionale Sicherheit mit neuen Werkzeugen und Prozessen reagieren.


Embedded im Umbruch

Die Vernetzung von Gegenständen aller Art zu einem Internet der Dinge schreitet fort. Unter dem Schlagwort Industrie 4.0 fließen die Erkenntnisse daraus in „intelligente Produktionseinheiten“ ein. Doch auch abseits davon ist die hardwarenahe Embedded-Entwicklung en vogue.


  • Embedded Software

      Embedded heute
    • 8 Die wichtigsten Trends
    • Effizienz vs. Kreativität
    • 12 Embedded-Programmierung im Umbruch
    • Tools
    • 16 Werkzeuge und Methoden für die Embedded-Softwareentwicklung mit Open Source
    • Betriebssysteme
    • 21 Echtzeit-Features beim Embedded Computing
    • Simulation und Emulation
    • 26 Gründe für die Virtualisierung eingebetteter Systeme
    • Design Patterns
    • 33 Architekturmuster in sicherheitsgerichteten Systemen

  • Programmiersprachen

    • 38 Embedded-Programmierung mit Ada
    • 42 Zeitgemäßer Sprachstandard C11
    • 48 Schlanke Embedded-Entwicklung mit Small C++
    • 54 MISRA C: Quasi-Standard, nicht nur für Automotive
    • 56 Java und OSGi in Embedded-Systemen für das Internet der Dinge

  • Qualitätssicherung

      Anforderungs-Management
    • 62 Requirements Engineering für eingebettete Systeme
    • 66 ReqIF in der Systementwicklung mit Eclipse
    • Softwaretests
    • 71 Warum man Embedded-Software anders testen und verifizieren muss
    • 74 Kriterien für das Testen sicherheitskritischer Systeme
    • 77 Debugging von Embedded-Multicore-Systemen
    • Funktionale Sicherheit
    • 80 Automotive-Embedded-Systeme für ISO 26262 fit machen
    • Modellierung
    • 86 System- und Softwareentwicklung mit SysML und UML für eingebettete Systeme

  • Praxis

      Modeling
    • 92 Embedded-Entwicklung mit erweiterbarem C
    • 98 Modellgetriebene Absicherung von Softwareschnittstellen für vernetzte eingebettete Systeme
    • 104 Domänenspezifische Sprachen im Automobil
    • Verschlüsselung
    • 109 Advanced Encryption Standard auf 8-Bit-Microcontrollern
    • Energieeffizienz
    • 116 Realisierung von Low-Power-Applikationen
    • 124 Spezielle Anforderungen bei der Messdatenerfassung mit Batteriebetrieb

  • Embedded im Umbruch

      Industrie 4.0
    • 130 Standardisierte Interoperabilität mit OPC-UA
    • 136 Betriebssysteme für eingebettete Systeme im Internet der Dinge
    • Heimautomatisierung
    • 141 Offene Plattformen verhelfen Smart Home zum Erfolg
    • Neue Entwicklungsplattformen
    • 146 Veränderung der Embedded-Landschaft durch Arduino, Raspberry Pi und BeagleBone
    • 151 Softwareentwicklung mit Raspberry Pi: Wiedergeburt eines Stücks C64

  • Diverses

      Prozessmodelle
    • 158 Scrum, Kanban und Co.: Starke Teams ersetzen starre Prozesse
    • 164 Cyber-Physical Systems Embedded-Softwareentwicklung für Cyber-Physical Systems

  • Sonstiges

    • 3 Editorial
    • 6 DVD-Inhalt
    • 170 Inserentenverzeichnis
    • 170 Impressum

Voneinander lernen


Softwareentwicklung für eingebettete Systeme war lange Zeit nur bedingt mit klassischer Softwareentwicklung zu vergleichen. Denn die anderen Anforderungen bei Embedded verlangten und verlangen auch heute noch besondere Lösungsansätze. Doch gerade in den letzten Jahren ist einiges passiert, was Embedded- und traditionelle Softwareentwicklung zusammenrücken lässt. Vor einigen Jahren wurde das beim Besuch der Embedded World in Nürnberg durch Werbebotschaften zur Modellierung und zum Einsatz von Open-Source-Techniken à la Linux und Eclipse deutlich. Beides hatte zuvor schon in der klassischen Softwareentwicklung seinen Durchbruch. Etwas später folgte die Erfolgsgeschichte der Apps – streng genommen ist die allerdings stark von Usability-Aspekten geprägte Programmierung für mobile Betriebssysteme ja Embedded-Entwicklung. Den Siegeszug der Apps kann man als neueste Entwicklung im Auto-Infotainment beobachten.


Die Etablierung von Multicore-Architekturen ist ein weiterer Punkt. Parallelprogrammierung ist selbstverständlich auch in Embedded-Systemen angekommen und hier mancherorts besonders wichtig, da sich erst dadurch für eingebettete Systeme Anforderungen wie Echtzeit realisieren lassen. (Auf der parallel 2014, unserer Konferenz zur Parallelprogrammierung, haben wir auch deshalb einen Embedded-Schwerpunkt.)

Über die Jahre hinweg haben zudem vermehrt agile Prozessmodelle in die sich ansonsten dem Wasserfall-Modell verpflichtet fühlende Branche Einzug gehalten. Das sind nahezu alles Themen, die auch dieses Sonderheft zur Entwicklung eingebetteter Systeme beleuchtet. Der neueste Trend – manche werde es Hype nennen – ist die Vernetzung unterschiedlichster Geräte, die in den Schlagwörtern „Industrie?4.0“, „Internet der Dinge“, „Smart Home“ und „(Cyber-)Physical Systems“ ihre Entsprechung haben. Quasi alle großen Software- oder Dienstleistungsanbieter, aber auch viele kleine setzen derzeit auf das dort gesehene Potenzial. Und so werden auf der diesjährigen Embedded World, aber auch auf der kurz darauf folgenden CeBIT und nicht zuletzt auf der HMI interessierte Besucher nicht darum herumkommen, sich mit einigen der damit verbundenen Techniken konfrontiert zu sehen. Selbst durch dieses Sonderheft ziehen sich diese Themen wie ein roter Faden.


Bei allen Ausnahmen, die Regeln bestätigen, mögen mir die Leser die Aussage verzeihen, dass diesen Entwicklungen mehr oder minder gemein ist, dass die Impulse von der klassischen Softwareentwicklung ausgingen. Das bedeutet nun aber nicht, dass die Embedded-Entwickler nur die Epigonen ihrer Kollegen aus der klassischen Softwareentwicklung sind. Gerade durch die Entwicklung nativer Apps und den Hype um Einplatinencomputer wie Arduino und Raspberry Pi wird das Interesse einer breiten Masse an hardwarenaher Microcontroller-Programmierung deutlich. Und viele Programmierer sind sicherlich fasziniert vom Kampf ihrer Embedded-Kollegen um weniger Bits und Bytes, die die Software auf einem Kleinstsystem erst möglich machen. Ganz zu schweigen davon, dass die Ideen und Erfahrungen von in der Embedded-Entwicklung gesetzten Disziplinen wie Requirements-Management, Software-Testing und funktionale Sicherheit für die klassische Softwareentwicklung lehrreich sein können. Lehrreich wollen wir auch mit diesem iX Developer-Sonderheft sein. Wir wünschen Ihnen viel Spaß bei der Lektüre.

Alexander Neumann

Auf der Heft-DVD


Sponsored Software

Enterprise Architect 10

Das von SparxSystems hergestellte Softwaremodellierungswerkzeug Enterprise Architect ist ein sich auf UML?2.4.1 stützendes CASE-Tool für den Entwurf und zur Herstellung von Softwaresystemen, Geschäftsprozessmodellierung und zur Modellierung beliebiger Prozesse oder Systeme. Es deckt alle Teile des Entwicklungszyklus ab und ermöglicht die Nachvollziehbarkeit von Softwareprojekten. Die Enterprise Architect Trial Edition auf der Heft-DVD entspricht dem vollen Funktionsumfang und kann 30 Tage getestet werden.


IDE für Raspberry Pi

linutronix stellt eine auf Eclipse basierende IDE zur Entwicklung für Raspberry PI zur Verfügung. Sie ist auf Windows?7 getestet und installiert sich dort selbstständig. Diese auf der DVD bereitgestellte Version enthält alle Features, die für eine effiziente Arbeit notwendig sind. Leser können hiermit ein Projekt anlegen beziehungsweise verwalten (mit dem voreingestellten Namen „linutronix“).


IDEs Code::Blocks 13.12

Die freie, quelloffene Entwicklungsumgebung ist für die Entwicklung mit C, C++, D und Fortran gedacht. Die IDE ist leicht zu konfigurieren und erweiterbar – zum Beispiel mit Autovervollständigung, Importfunktionen, Projekt-Vorlagen, Workspaces, Klassenbrowser und Quellcode-Faltung.


CodeLite 5.4

Die freie, quelloffene und plattformunabhängige Entwicklungsumgebung eignet sich für die Entwicklung mit C und C++. Sie bietet Projektverwaltung, Autovervollständigung, Restrukturierung, Syntaxhervorhebung, Code-Faltung, Subversion-Unterstützung, Integration des GNU Debuggers und ist über Plug-ins erweiterbar.


Eclipse

Auf der Heft-DVD finden Leser die weitverbreitete Entwicklungsumgebung in den Kepler-Distributionen für Java-, C/C++- und Automotive-Entwickler.


mbeddr

mbeddr nutzt JetBrains’ Language Workbench MPS (Meta Programming System), die die notwendigen Mechanismen für inkrementelle, domänenspezifische Spracherweiterungen zur Verfügung stellt. Das Tool besteht aus einer IDE für C sowie Erweiterungen und stellt außerdem einen erweiterbaren Debugger zur Verfügung.


Visual Studio Premium 2013 + Visual C++ Redistributable
Microsofts integrierte Entwicklungsumgebung als ISO-Image.
Die für 30 Tage gültige Testversion enthält Tools zum Planen, Entwickeln und Testen sowie für die Diagnose und die Ausführung von Anwendungen.

Tools

AVR Libc, GCC, GNAT GPL, GNU Binutils, MAST, openHAB, ProjectLibre, Valgrind

Testversionen

Cantata

Das Tool von QA Systems automatisiert und verwaltet komplexe Aufgaben beim Testen sicherheitskritischer Anwendungen. Die Automatisierung umfasst das Erstellen der kompletten Testumgebung, die Instrumentierung für Code-Coverage-Analysen, die Generierung eines Testfallgerüsts und die Ausführung von Testcases.


Intel System Studio 2014 Beta Die Werkzeug-Suite zum Entwickeln eingebetteter und mobiler Linux-Anwendungen enthält Werkzeuge zum Analysieren, Debuggen und Kompilieren. Die Beta-Version auf der Heft-DVD ist bis zum 30. April 2014 lauffähig. Zu der Zeit liegt die um zum Beispiel Android-Unterstützung erweiterte fertige Test-Version vor, die dann 30 Tage lauffähig ist.

Literatur

Testen von Software und Embedded Systems

Der Autor des hier vollständig als PDF-Datei gebrachten Buches (dpunkt.verlag 2010 (2. Aufl.), stellt auf pragmatische Weise klassische und moderne Testverfahren vor. Dabei zeigt er auf 359? Seiten Lösungen für technische, analytische und methodische Probleme auf, die sich in der täglichen Arbeit umsetzen lassen.

Software-Test für Embedded Systems

Das Buch von Stephan Grünfelder (dpunkt.verlag 2013) beschreibt alle wichtigen praxistauglichen Methoden des Software-Tests für eingebettete Systeme. Auf der Heft-DVD finden Leser rund 140? Seiten Auszüge aus dem ansonsten 390?Seiten schweren Buch.

Listings und Lizenzen

Die Listings zu den Heftartikeln und die Lizenzen zu den Softwarepaketen auf der Heft-DVD.




Hinweis für Käufer der digitalen Ausgaben
• PDF- und iPad-Version: In der iX-App finden Sie einen Button zum Download des DVD-Images.

• PDF-E-Book: Folgen Sie im Browser der unter„Alle Links“ angegebenen URL zum DVD-Image.
Artikel-Details
Anbieter:
Heise Medien GmbH & Co. KG
EAN:
4018837005514
Veröffentlicht:
13.02.14