Artikel - Pressenotizen

Komplexität und Modell

Software als Rohstoff der Industrie 4.0. Ein Pfeiler der Zukunftstauglichkeit deutscher Ingenieurskunst ist das Software-Engineering. Auch hier vollzieht sich ein Wandel, denn das Thema Komplexität hat einen Paradigmenwechsel notwendig gemacht: vom Programmieren zur Modellieren.

Die strategische Entscheidung, diesen Paradigmenwechsel beim Software-Engineering auch im eigenen Unternehmen zu vollziehen, wird für viele Unternehmen existenziell sein. Doch häufig wissen die Manager der obersten Führungsebene wenig von den Softwareentwicklungsmethoden der Zukunft. Sie überschätzen die Kosten für die Einführung neuer Tools und Methoden und unterschätzen den Return-on-Invest.
Dabei geht es um nicht weniger als das sichere Wissen, für die nächste Generation des Software-Engineerings – und für die Industrie 4.0 – zukunftssicher gewappnet zu sein. Andreas Willert, CEO bei Willert Software Tools, diskutiert die Herausforderungen, welche Ingenieure, Softwareentwickler und Manager künftig gemeinsam meistern müssen.

eli: Die Komplexität und Dynamik elektronischer Systeme wächst; sie lassen sich nicht mehr ohne Weiteres durchschauen. Welche Strategien gibt es, um sie dennoch zu beherrschen?

Willert: Eine der am häufigsten eingesetzten Methoden, um ein kompliziertes System zu verstehen, ist die Zerteilung. Teile und herrsche – dieses Instrument ist bis heute erfolgreich, bei komplexen Systemen jedoch mit immer weniger Erfolg.

eli: Kompliziert ist also nicht gleich komplex?

Willert: Nein, und darin liegt das Problem. Die Zerteilung wird so lange fortgeführt, bis die Teilsysteme in ihrer Kompliziertheit beherrschbar erscheinen. Allerdings erzeugt das Zerteilen Schnittstellen, und zwar mit steigender Zahl der Teilsysteme überproportional viele, sodass auf der Ebene dieser Schnittstellen eine neue Kompliziertheit entsteht. Wir bilden mit dieser Methode nur eine von vielen Ebenen des Verstehens ab. In realen Softwareprojekten sind aber immer mehr Ebenen – wie Zeit, Versionen, Varianten und Betriebsmodi – zu berücksichtigen. Hier entsteht eine Komplexität, die sich mit der Teile-und- Herrsche-Methode nicht mehr vollständig verstehen lässt.

eli: Und das ist ein schwerwiegendes Problem für Softwareentwickler.

Willert: So ist es. Der Grad der Vernetzung über mehrere Ebenen macht es nahezu unmöglich, die dynamische Auswirkung einer Änderung in einer statischen, eindimensionalen Betrachtung vorherzusagen.
Genau das möchten wir aber gern: beherrschbare, vorhersagbare Systeme, auch und gerade bei der Software. Die herkömmliche Entwicklung von Software auf der Basis von Hochsprachen, dazu noch
in verteilten Teams, erreicht die Leistungsgrenzen unserer Gehirne. Immer häufiger kommen Systeme in Situationen, in denen die Kombination von Zusammenhängen und deren Auswirkungen bei der Entwick-
lung nicht mehr zu überblicken sind. Fachlich sprechen wir hier von einer Emergenz – von unvorhersehbaren Zuständen, die im schlimmsten Fall zu gravierenden Fehlfunktionen führen. Ein tragisches Beispiel war der Absturz eines A400-Transportflugzeugs im Mai 2015, den Softwarefehler verursacht hatten.

eli: Komplexe Software wird wegen ihrer Funktionen gebraucht, ihre Komplexität behindert jedoch gleichzeitig das Verstehen. Gibt es einen Weg aus diesem Dilemma?

Willert: Den gibt es durchaus, und es stehen uns drei Mechanismen dafür zur Verfügung: Musterbildung, vertragsbasierte Programmierung und Abstraktion. Alle drei hängen eng miteinander zusammen und bedingen sich gegenseitig.

eli: Würden Sie das bitte erklären?

Willert: Die Musterbildung bringt Routinen in die Softwareentwicklung. Sind die Muster einmal gelernt, funktionieren sie wie Blaupausen. Die vertragsbasierte Programmierung sichert das reibungslose Zusammenspiel einzelner Programmmodule anhand formaler Verträge zur Verwendung von Schnittstellen. Und Abstraktionsmechanismen beschreiben anhand von Modellen komplexe Zusammenhänge auf eine einfachere Art und Weise. Die Sprache, die wir dazu nutzen heißt UML: Unified Modeling Language. Aus solchen Modellen, in UML beschrieben, lässt sich dann der benötigte Code generieren. Im Software-
Engineering ist ein Paradigmenwechsel von der Programmierung zur Modellierung nötig, um mit der Komplexität adäquat umgehen zu können. Dies ist ein entscheidender Schritt in der Bewältigung von Komplexität, weil das Abstraktionsniveau eines Modells das Verstehen erleichtert.

eli: Meinen Sie ein Modell im klassischen Sinn?

Willert: In gewisser Weise, ja. Modelle werden im Engineering seit Jahrzehnten sehr erfolgreich genutzt. Anhand von Modellen ist die Absicherung von Theorien nicht nur sehr preiswert, sondern auch sehr früh im
Entwicklungsprozess möglich. Das verringert neben den Kosten vor allem das Risiko von Fehlentwicklungen und verkürzt die Entwicklungszeit.

eli: Wie wir es aus der klassischen Hardwareentwicklung kennen.

Willert: Aber dort werden Modelle ausschließlich bis zur Serienreife genutzt. Im Software-Engineering sind Modelle noch viel vorteilhafter: Denn es entstehen keine Materialkosten, Software ist frei von Verschleiß, und sie wird in Versuchen nicht zerstört wie Materie bei einem Crashtest. Im Software-Engineering werden Modelle für die Entwicklung des Serienprodukts verwendet. Das setzt voraus, dass die Qualitätsattribute des Modells denen des Seriencodes entsprechen. Programmiersprachen wie UML ermöglichen es, auf hohem Abstraktionsniveau zu arbeiten und dabei hochwertigen Produktionscode aus den Modellen zu
erzeugen. Die Modellierung mithilfe moderner Modellierungssprachen und geeigneter Werkzeugen ist Real-Time-Engineering in der Softwareentwicklung. Mit Modellen ist zum Beispiel die Absicherung von Theorien nicht nur sehr viel preiswerter, sondern auch sehr viel früher im Entwicklungsprozess möglich als ohne sie. Das verringert neben den Kosten vor allem das Risiko fehlerhafter Entwicklungen und verkürzt die Entwicklungszeit.

eli: Was bedeutet die Einführung von Modellierung für die Entwicklungsabteilungen?

Willert: Sie bedeutet ein Umdenken – in allen Prozessen der Softwareentwicklung, aber auch in der Zusammenarbeit im Team. Ein spannender Weg, der ohne die Bereitschaft aller zur Veränderung nicht gegangen werden kann. Mit dem Wechsel zur Softwaremodellierung entstehen neue Arbeitsmodi auf einem aktuellen, zukunftsweisenden Kompetenzniveau.

eli: Die Entscheidung für einen solchen Paradigmenwechsel liegt aber nicht in der Verantwortung der Entwickler, sondern eher beim Management.

Willert: Ingenieure können aber das Management darauf hinweisen, dass die gegebenen Arbeitsmittel der Komplexität nicht mehr gewachsen sind. Und sie können Empfehlungen für notwendige Schritte
aussprechen. Ist dann die Entscheidung pro Modellierung gefallen, sind Pilotprojekte sinnvoll. Die Kosten für die Einführung dieses neuen Vorgehens einschließlich der Werkzeuge und Schulung entsprechen, bei solider Ausführung, in etwa denen von zwei Mann-Monaten. Kunden, die diesen Schritt vor fünf bis zehn Jahren konsequent gemacht haben, berichten uns heute von Effizienzsteigerungen auf das Zwei- bis
Dreifache. Danke für das Gespräch.


Das Interview führte Annette Menzel,
Flowmedia.

 


AUGUST 2016 - Konferenz für modellbasierte Softwareentwicklung

Der Tagungsort der MESCONF ist der Infineon-Campus in Neubiberg bei München.
Der Tagungsort der MESCONF ist der Infineon-Campus in Neubiberg bei München. (Bild: Infineon)

Am 6. Oktober 2016 findet zum zweiten Mal die MESCONF (Modeling of Embedded Systems Conference) in Neubiberg bei München statt. Auf dem Infineon-Campus werden Experten und Anwender über Modellierungstechniken zur Entwicklung eingebetteter Systeme diskutieren.

Die MESCONF konzentriert sich auf die Modellierung für die Entwicklung eingebetteter Systeme. Die Veranstalter der Konferenz sind davon überzeugt, dass Modellierungstechniken dabei helfen können, schnell und flexibel auf sich ändernde Anforderungen des Marktes reagieren zu können. Der Kongress richtet sich deshalb an alle Entwickler und Projektleiter, die beruflich mit eingebetteten Systemen und Systems Engineering zu tun haben und sich für modellgetriebene Entwicklungsansätze interessieren.

Für einen ungewöhnlichen Programmablauf haben sich die Veranstalter der MESCONF entschieden. Bis zur Mittagspause folgen drei klassische Fachvorträge. Danach diskutieren die Teilnehmer in zwei Open-Space-Sessions über ihre Erfahrungen mit modellbasierten und modellgetriebenen Techniken. Danach folgt eine Poster-Session, bei der die Resultate der Open-Space-Sessions präsentiert und diskutiert werden. Mit einer Podiumsdiskussion, bei der sich auch die Zuhörer einbringen können, schließt das Programm.

Den Vortragsreigen des Vormittags eröffnet der Berater und Interims-Manager Henning Butz, der das Problem der Softwarequalität genau kennt, unter anderem aus seiner früheren Tätigkeit bei Airbus. Butz spricht darüber, dass sich die Grenzen modellbasierter Entwicklung beim Entwurf und der Validierung komplexer Systeme durch sogenanntes „Component Contract Based Design“ überwinden lassen. Dieser Ansatz reduziert die Eigenschaften und Betriebszustände der beteiligten Systemkomponenten auf ein überschaubares Maß und macht die Systementwicklung somit besser handhabbar.

 Zweiter Redner auf der Liste ist der Softwarearchitekt Markus Völter. Er spricht über die Rolle von Modellen im Embedded Software Engineering. Den dritten Fachvortrag hält Baris Güldali, Senior Researcher des Software Quality Lab der Universität Paderborn. Güldali vergleicht das modellbasierte Testen, bei dem Testfälle aus Softwaremodellen abgeleitet werden, mit der testgetriebenen Modellierung, bei der Modelle aus Testfällen abgeleitet werden. Weiter beschäftigt sich der Vortrag mit der Frage, inwieweit Modelle testbar sein können und müssen.

Während der Konferenz soll auch das Manifest der modellgetriebenen Entwicklung eingebetteter Systeme diskutiert werden. Dieses Manifest ist das Ergebnis von intensiven fachlichen Diskussionen, die seit Jahresbeginn unter Experten geführt werden. Die Zielrichtung lautet, dass die wachsende Komplexität eingebetteter Systeme nach neuen Methoden verlangt; modellgetriebene Ansätze sind demnach ein Weg, diese Komplexität in den Griff zu bekommen.

Auch bei dem Entgelt für die Konferenz beschreitet die MESCONF neue Wege. Die Teilnahmegebühr bestimmen die Teilnehmer selbst, je nachdem, was ihnen die Veranstaltung wert ist. In der von den Teilnehmern entrichteten Gebühr sind auch die Verpflegung und Getränke während des Kongresstages enthalten. Die Anmeldung für die Konferenz ist auf der MESCONF-Seite möglich.

 

 


MAI  2015 - Rhapsody und DOORS - Toolanwendung verbessert in nur 2 Tagen

Effizienzsteigerung ist heute eines der wichtigsten Ziele von Unternehmen. Aber warum wird das Potential der Effizienzsteigerung nur so wenig ausgenutzt?
Im Schnitt liegt die Nutzung der Möglichkeiten einer Methode mit zugehörigem Werkzeug deutlich unter 50%.
Um Sie aus Ihrem Alltagstrott einmal heraus zu reißen und Ihnen die Möglichkeiten zur besseren Nutzung Ihres Tools zu zeigen haben wir die Anwenderkonferenz

Rhapsody & DOORS User Group Summit

RUGS & DUGS

vor einigen Jahren ins Leben gerufen.
Immer wieder sind Experten und Anwender überrascht, wie viel man gegenseitig voneinander lernen kann.
In den Diskussionsgruppen werden nur Themen behandelt, die die Anwender selbst vorschlagen (OpenSpace-Verfahren), das heißt: Der ehrliche Austausch und das gemeinsame Lösen von vielen Problemen in der Anwendung der Tools Rhapsody und DOORS steht hier im Vordergrund.
Qualifizierte Referenten und aktuelle Neuigkeiten zum Thema Rhapsody und DOORS runden die Veranstaltung ab.

Lesen Sie im Flyer, welch informative und spannende Veranstaltung Sie erwartet
http://www.willert.de/assets/Flyer/RUGS-DUGS-Flyer-2015-SW.pdf

Anmeldungen bis zum 24.04.  erhalten noch den Frühbucherrabatt von 349,- € statt 469,- €

 

 


MÄRZ 2015 - Echtzeitfähige UML-Codegenerierung - Codegröße um bis zu 60% verringern

Das von LieberLieber und Willert gemeinsam entwickelte Lösungspaket kombiniert 
„LieberLieber Embedded Engineer“ mit dem „Embedded UML Framework RXF“ von
Willert. Durch die Kombination dieser beiden Produkte ergibt sich basierend auf 
Enterprise Architect von Sparx Systems eine sehr leistungsfähige Entwicklungsumgebung für die modellbasierte Entwicklung von Embedded Systemen.
Angesichts der weiter steigenden Anforderungen, besonders im Umfeld der Embedded
 Softwareentwicklung, soll die neue Lösung Entwicklern dabei helfen, echtzeitkritische Systeme mit hoher Komplexität unter Einhaltung einschlägiger Normen zu entwickeln.
Entstanden ist eine leistungsfähige Plug & Play-Lösung, die in neue Projekte eine bisher unbekannte Einfachheit und Schnelligkeit bringen wird. Ganz bewusst werden damit auch Entwickler adressiert, die im UML-Umfeld noch nicht so viel Erfahrung sammeln konnten und bisher den Schritt in die modellbasierte Entwicklung nicht konsequent verfolgt haben.


Günstiger Preis, hohe Leistungsfähigkeit.
Die Attraktivität der neuen Lösung liegt auch in ihrem hervorragenden Preis-/Leistungsverhältnis: 
Für unter 1.000 Euro wird damit dem Markt ein effizientes Werkzeug zur Verfügung gestellt. Gleichzeitig konnte die Zahl der eingesetzten Werkzeuge deutlich verringert und die Leistungsfähigkeit um ein Vielfaches erhöht werden. Wer die neue Lösung nutzt, erspart sich damit viel Zeit und braucht keinen händischen Code mehr schreiben!
Das Willert Framework bildet in der Lösung das Bindeglied zwischen UML und Hardware, das die Konfigurierbarkeit, sowie den Ressourcenbedarf weiter optimiert. So konnte in einzelnen Umgebungen die Codegröße um bis zu 60% auf wenige kB verringert werden.