Software-Engineering statt Programmierung

In modernen elektronischen Systemen - egal ob sog. Consumer Produkts oder komplexe industrielle Geräte - nimmt Software im Vergleich zur Hardware einen immer größeren Anteil ein. Viele Funktionen, die vor einigen Jahren noch komplexe Hardware-Aufbauten benötigten, lassen sich heute dank immer leistungsfähigeren Prozessoren sehr flexibel und kostengünstig in Software realisieren. Leider erweisen sich Softwarelösungen oft als fehlerbehafteter.

Einen der wesentlichen Gründe hierfür sehen wir darin, dass nach wie vor im Bereich Embedded Software eher Programmierung statt Software-Engineering stattfindet. Im Gegensatz zur Programmierung, bei der es lediglich darum geht eine Funktionalität in Quellende abzubilden, verstehen wir unter Software-Engineering eine ganzheitliche Methode, unter anderem bestehend aus: Problemspezifikation / Pflichtenheft, Programmierrichtlinien, dynamische Dokumentation, Quellcodeverwaltung, Testspezifikation und Konfigurationsmanagement.