Seite wählen

Softwareentwicklung – Fachwissen

Dauerbrenner Python: Eine Einführung in die beliebte Multiparadigmen-Sprache

Unter den vielen Programmiersprachen, die bei Entwicklern beliebt sind, gibt es eine, die sich wie ein Chamäleon an die unterschiedlichsten Anforderungen anpassen kann: Python. Schon lange ist Python als eine der am weitesten verbreiteten Programmiersprachen bekannt. Doch was macht das Coden mit Python so besonders? Werfen wir einen Blick darauf, warum es sich lohnt, Python in Projekten einzusetzen.

Beitrag: Dauerbrenner Python: Eine Einführung in die beliebte Multiparadigmen-Sprache

Requirements Engineering und Management für Embedded-Systeme

Embedded-Systeme sind ein wichtiger Bestandteil heutiger Technologien und ermöglichen eine Vielzahl von Applikationen in verschiedenen Bereichen, wie beispielsweise Industrie, Automatisierung, Medizintechnik, Automotive oder Luft- und Raumfahrt. Diese Systeme sind für die Ausführung spezifischer Funktionen unter Einhaltung der geforderten Qualitäten ausgelegt und werden häufig in größere Systeme oder Produkte integriert. Für den Erfolg eines Embedded-System-Projekts ist es entscheidend, effektive Prozesse für die Anforderungserhebung und das Anforderungsmanagement zu etablieren.

Beitrag: Requirements Engineering und Management für Embedded-Systeme

C++ Programmierung: Dynamische oder statische Polymorphie?

Mit steigender Komplexität von Embedded-Software erlangt die Erfüllung von Qualitätsmerkmalen, wie Änderbarkeit, Erweiterbarkeit, Anpassbarkeit und Wiederverwendbarkeit, eine immer größere Bedeutung. Ein wichtiges Mittel, um diese Software-Qualitätsanforderungen zu erfüllen, ist die Anwendung von polymorphen Strukturen in der Architektur, im Design und in der Implementierung. Die Softwareentwicklung unterscheidet dynamische und statische Polymorphie.

Beitrag: C++ Programmierung: Dynamische oder statische Polymorphie?

Design for Test und Design for Safety – Software-Architektur nach Maß

Unser Alltag ist heute wie selbstverständlich von miteinander vernetzten Geräten und Systemen geprägt. Ob man mit dem Smartphone unterwegs den schnellsten Weg zum Ziel findet, auf dem Sofa mit dem Tablet die Zeitung liest oder die smarte Heizung über eine App auf dem Smartphone steuert, diese Systeme machen unser Leben komfortabler. Der Gewinn an Komfort erfordert jedoch auch strengere Security- und Safety-Anforderungen, mit denen die Entwickler solcher Systeme Schritt halten müssen. Dies gilt besonders für das autonome Fahren – hier haben schlüssige Safety-Konzepte oberste Priorität.

Beitrag: Design for Test und Design for Safety

Embedded-Software-Redesign Guide

Manchmal ist es nicht mehr damit getan, alten Code zu erweitern: Eine Rundumerneuerung muss her. Diese Beitragsreihe beschreibt Vorgehen rund um das Embedded-Software-Redesign und erläutert dabei die Begriffe Reverse-Engineering, Refactoring und Reengineering.

Beitrag: Embedded-Software-Redesign Guide

Design Patterns in der Praxis richtig anwenden

Design Patterns sind Lösungen für häufig wiederkehrende Aufgabenstellungen des objektorientierten Softwareentwurfs. So gesehen spielen sie eine ähnliche Rolle wie das kleine Einmaleins, das man auswendig lernt, um die Ergebnisse für häufig vorkommende Rechenaufgaben nicht immer wieder neu berechnen zu müssen.

Beitrag: Design Patterns in der Praxis richtig anwenden

Programmierrichtlinien – Fluch oder Segen?

In Vorträgen, Artikeln und Büchern wird immer darauf hingewiesen, dass die Qualität des Codes ein entscheidender Faktor für den Erfolg des Projektes ist. Deshalb wird immer wieder versucht, Regularien einzuführen, die die Codequalität verbessern. Doch der Code, der von vielen Entwicklern abgeliefert wird, sieht alles andere als schön aus. Ein Ansatz, um die Qualität des Codes zu sichern, ist das Verwenden von Programmierrichtlinien.

Beitrag: Programmierrichtlinien – Fluch oder Segen?

Entwicklungsprozesse als Basis moderner Softwareentwicklung

Im professionellen Software Engineering sind die Entwicklungs- und Prozess-Schritte vor der Software-Implementierung essentiell. Begriffe wie Softwareanalyse und Softwaredesign bzw. Software-Grobdesign und Software-Feindesign aus den Entwicklungsprozessen (beispielsweise dem V-Modell XT oder dem branchenspezifischen V-Modell Automotive) stehen genau dafür.

Beitrag: Entwicklungsprozesse als Basis moderner Softwareentwicklung

Requirements Engineering und Management

Anforderungen erfassen und verwalten ist ein wesentlicher Schlüssel zu erfolgreichen Projekten. Egal ob im klassischen oder agilen Prozessumfeld – professionelles Requirements Engineering und Management für Embedded- und Echtzeitsysteme verkürzt Ihre Projektlaufzeiten und spart Entwicklungs- sowie Wartungskosten ein. Stellen Sie sich dieser Herausforderung!

Beitrag: Requirements Engineering und Management

Mit durchdachter Software-Usability Wettbewerbsvorteile erzielen

Die Qualität von industrieller Software stellt für Unternehmen einen entscheidenden Wettbewerbsfaktor dar. Der Projekterfolg steht dabei im direkten Zusammenhang mit einer hohen Bedienqualität. Die Kommunikation zwischen Mensch und Computer basiert auf Kenntnissen der Informatik, Psychologie, Ergonomie und Arbeitswissenschaft. Entwickler können auf bewährte Prozesse, Tests und Analysen zugreifen, die ihnen wertvolle Einsichten liefern.

Beitrag: Software-Usability

Hinweise auf drohende Software-Erosion und was Sie dagegen tun können

Erfolgreiche Embedded-Software wird meist über einen langen Zeitraum hinweg entwickelt. Dabei kann es passieren, dass hin und wieder Beziehungen in den Code eingebaut werden, die dort nichts zu suchen haben. Mit der Zeit weicht die Software immer stärker von der geplanten Architektur ab – die Software-Erosion befindet sich in vollem Gange.

Beitrag: Software-Erosion

Neuen Schwung ins Embedded-Projekt mit C++11

Viele Embedded-Projekte arbeiten noch mit älteren (und veralteten) Umgebungen, die den Entwicklern nicht die Möglichkeit bieten, einen neuen C++ Standard zu nutzen. Das ist ein Versäumnis. Denn damit fehlen den Programmierern nicht nur die neu hinzugefügten Features – in C++11 wurden einige Dinge grundlegend verbessert.

Beitrag: Neuen Schwung ins Embedded-Projekt mit C++11

Sensoren mit Linux ansprechen – Setzen Sie aktuelles Embedded-Linux-Knowhow direkt in Ihren Projekten ein

Ihre Aufgabe ist der erfolgreiche Einsatz des Betriebssystems Linux in Ihrem Embedded-Projekt. Die Herausforderung beim Einsatz realer Hardware unter Echtzeitbedingungen besteht darin, die korrekte Nutzung von Embedded-Linux zu verstehen und die verfügbaren Linux-Betriebssystem-Mechanismen richtig auszuwählen.

Beitrag: Sensoren mit Linux ansprechen

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.

Beitrag: In Systemen und Architekturen denken

Größer und universeller: Alles über „Modernes C++“

Mit C++11 hat vor sechs Jahren eine neue Zeitrechnung für C++ begonnen. MicroConsult bringt Licht ins Dunkel der modernen C++ Standards und bringt Sie mit einem eigens dafür entwickelten Training auf den neuesten Stand zu C++17.

Beitrag: Alles über Modernes C++

Tipp für STM32-Entwickler: Konvertieren Sie Ihr Projekt von C in C++ mit STM32CubeMX und Open System Workbench for STM32

Diesen Tipp haben wir für Entwickler zusammengestellt, die mit der Workbench for STM arbeiten und ihr Projekt mit C++ kompilieren wollen.

Beitrag: Konvertieren Sie Ihr Projekt von C in C++ mit STM32CubeMX

So binden Sie das Surface Dial in die eigene Applikation ein

Das Surface Dial ist ein neues Eingabegerät von Microsoft, das die Arbeit mit grafischen und auch technischen Applikationen erleichtern soll. Es verbindet die Funktion eines Drehknopfes mit der der Enter-Taste. Bereits im Herbst 2016 wurde es vorgestellt, jetzt ist es auch bei uns erhältlich.

Beitrag: So binden Sie das Surface Dial in die eigene Applikation ein

Entwurfsmuster – Design Pattern

Bei der objektorientierten Entwicklung der Software-Architektur, des Software-Designs und der objektorientierten Programmierung (OOP) einer strukturierten Software-Entwicklungsmethode stößt man immer wieder auf gleichartige Aufgaben und Entwurfsprobleme, die durch den Einsatz von wiederverwendbaren Entwurfsmustern (praxisbewährte Lösungs-Schablonen) einen sich wiederholenden Software-Programmieraufwand verhindern.

Fachwissen: Entwurfsmuster – Design Pattern

Wissenswertes zur Entwicklung & Programmierung von Embedded-Software

Embedded-Software-Entwicklung – Fachwissen

Embedded-Programmentwicklung – Fachwissen

Embedded-C – Fachwissen

Embedded-Programmierung – Fachwissen

Softwareentwicklung – Training & Coaching:

Softwareentwicklung (Windows, Linux) – Training & Coaching

Der MicroConsult-Newsletter

Wir informieren Sie mehrmals jährlich über Trends und Best Practices im Embedded Systems Engineering. Erhalten Sie wertvolles Fachwissen und Tipps aus erster Hand von unseren Embedded-Experten!

Jetzt abonnieren!

Veröffentlicht von

MicroConsult Academy

MicroConsult Academy