Goldene Regeln für die methodische Softwarentwicklung mit grafischer Programmiersoftware

Verbundene Funktionsbausteine

Die Software wird so modelliert, das ein Maximum an selbst dokumentierenden Strukturen entsteht, wobei immer ein direkter Bezug zum konkreten Anwendungskontext hergestellt werden sollte.

Verwenden Sie so viele Informationen aus dem Pflichtenheft wie möglich. Wenn im Pflichtenheft Diagramme und Blockschaltbilder mit aussagekräftigen Symbolen verwendet werden, versuchen Sie diese Diagramme und die Symbole in der Programmiersoftware wiederzuverwenden.

Tipp: Anwendungsspezifische Symbole besitzen einen hohen impliziten Informationsgehalt. Nehmen Sie sich die Zeit, diese Symbole in der Programmiersoftware zu nutzen. Wenn Sie einige Jahre später die Software ändern müssen, werden Sie über jede Information dankbar sein, die Sie bekommen können.

Im vorliegenden HDA10-Projekt bot das Pflichtenheft ideale Voraussetzungen, um die goldene Regel anzuwenden. Die Diagramme geben den Kontext der Anwendung klar und deutlich wieder. Zudem unterstützen die Diagramme die Anwendung des TopDown-Entwurfsverfahrens.

Rohstoff Software richtig nutzen

Grafisches Programmieren mit Funktionsbausteinen

Die Entwicklung und Wartung technischer Systeme wird durch die Einbettung komplexer Mikroprozessoreinheiten einem Wandel unterzogen, der in dieser Größenordnung kaum Vorbilder hat. Dabei stoßen die klassischen Ingenieurdisziplinen Maschinenbau, Verfahrenstechnik und Elektrotechnik mit ihren gewachsenen Entwicklungsprozessmodellen und Qualitätsstandards auf die individualisierte Welt der Softwareentwicklung. Während in den klassischen Ingenieurwissenschaften darauf geachtet wird, dass Ideen, Verfahren, Konstruktionen oder Rezepturen genau dokumentiert und damit wieder verwendbar sind, gehen viele Unternehmen mit aufwändig entwickelten Softwarelösungen äußerst nachlässig um. Dabei ist schon lange bekannt, dass das Wertschöpfungspotenzial technischer Systeme durch die Effizienz bei der Softwareentwicklung bestimmt wird.

Obwohl viele Projekte an Softwareproblemen scheitern, wird der Wert guter Softwarelösungen allzu oft nicht erkannt und wegen Zeit- und Projektdruck nur unzureichend spezifiziert dokumentiert und damit  kaum wiederverwendbar gestaltet.

Verbindung zwischen Software und Hardware

Während Verfahrenstechniker, Elektroingenieure und Maschinenbauer viele Jahre Zeit hatten, sich auf definierte Schnittstellen zu einigen, verdrängen nun Softwarelösungen in rasanter Geschwindigkeit gewachsene Entwicklungsprozesse. Dabei werden Softwareprojekte oft ohne grundlegende Prinzipien und methodische Verfahren realisiert. Insbesondere im sensiblen Bereich der Embedded-Systeme ist in so manchem Unternehmen die Entwicklung durch individuelle, trickreiche Soloprogrammierung geprägt. Der Grund hierfür liegt häufig nicht im fehlenden Problembewusstsein der Mitarbeiter, sondern im Fehlen geeigneter Werkzeuge. Während im Maschinen- und Anlagenbau die Hardwarelösungen aus katalogisierten, CAD-gestützten Standardbaugruppen zusammengestellt werden und nur für spezifische Teile Sonderentwicklungen stattfinden, kann es bei der Softwareentwicklung passieren, dass die selben Funktionen mehrfach programmiert werden, weil eine sinnvolle Katalogisierung und Präsentation der entwickelten Softwarefunktionen fehlt. Flexibilität und Individualität sind zwar die Gründe für das erfolgreiche Eindringen von Software in fast alle technischen Bereiche, sie stellen aber zugleich auch eine enorme Herausforderung für die Beherrschung der Systeme dar. Nie zuvor ist eine Technologie so umfassend und tiefgreifend in Wechselbeziehung zu anderen technologischen Disziplinen getreten.

Technische Software als wertvolles Gut zu verstehen und entsprechend verantwortungsvoll zu entwickeln und zu dokumentieren, wird eines der wichtigsten Wettbewerbskriterien der Zukunft sein.

ProSign Logo

Die Firma ProSign hat es sich zur Aufgabe gemacht, für die Entwicklung von Embedded Softwarelösungen Werkzeuge bereitzustellen, mit denen grundlegende Verfahren für eine methodische Softwareentwicklung praxisorientiert umgesetzt werden können. Das Verhalten technischer Prozesse wird seit Jahren mittels grafischer Methoden modelliert. Insbesondere bei der Systemanalyse und in der Designphase können grafische Verfahren ein besseres Verständnis über die Struktur eines Prozesses vermitteln. Daher existiert gerade für Analyse und Design eine Vielzahl von Werkzeugen. An die Programmierung und Wartung von Embedded-Systemen werden jedoch höhere Anforderungen gestellt.

Nur wenn durchgängige und einfach anwendbare Werkzeugketten existieren, die eine Entwicklung von der Analyse über das Design bis hin zur Implementierung, Inbetriebnahme und Wartung unterstützen, werden methodische Verfahren für das Software-Engineering genutzt.

Softwareprojekte für Embedded Systeme stehen zunehmend unter extremem Zeitdruck. Weil es bei vielen heutigen Software-Engineering-Prozessen zu einem tiefen Bruch zwischen Design und Implementierung kommt, die Entwicklung aber immer ein iterativer Prozess zwischen den einzelnen Phasen ist, werden methodische Verfahren nur rudimentär umgesetzt. Mit dem grafischen Programmiersystem wird eine Systemlösung bereitgestellt, die eine durchgängige Plattform für alle Phasen der Softwareentwicklung bietet. Mit der Programmiersoftware wird die Anwendungssoftware grafisch über das Verschalten fertiger Funktionsbausteine erzeugt. Ähnlich wie in der CAD-gestützten Konstruktion liegen die Funktionsbausteine als katalogisierte, dokumentierte und getestete Bauelemente vor. Erst wenn ein Bauelement (Funktionsbaustein) nicht vorhanden ist, wird ein neuer Baustein entwickelt und sorgfältig getestet, dokumentiert und katalogisiert. Durch die einfache Bausteinprogrammierung bleibt die Flexibilität und die Individualität von Softwarelösungen erhalten, gleichzeitig wird der Weg für eine arbeitsteilige, ingenieurmäßige Entwicklung, Anwendung und Wartung von Software-Systemen geebnet.