De

Model Driven Development als Treiber für Continuous Integration

“Now the advantages of our solid foundation work will have a large impact. A model is easy to adapt and maintain and new functions can be integrated very fast. In combination with the automatic code generation and testing we now will be strikingly faster… with a consistent high quality. Today we save time and money – not least thanks to IBM Rational Rhapsody!“

Modelgetriebene Entwicklung treibt Continuous Integration

Jahr

2016

Produkte zum Thema

IBM Rational Rhapsody

Verbesserung im Bereich Embedded Systems Entwicklung – am Beispiel der Mettler Toledo AG

Komplette Codegenerierung aus UML Modellen, fokussierte Testautomatisierung sowie kontinuierliche Integration kennzeichnen das Engineering der Mettler Toledo. Bei der Entwicklung der Präzisionsinstrumente verlässt sich das Unternehmen auf das Model Driven Development Tool IBM Rational® Rhapsody®. Wolfgang Boos, Leiter Embedded Software Entwicklung bei der Mettler Toledo AG, berichtet Mettler Toledo ist ein weltweit führender Hersteller von Präzisionsinstrumenten für Labors, industrielle Anwendungen sowie für das Frischwarenmanagement im Lebensmitteleinzelhandel. Dies umfasst unter anderem Waagen, Pipetten und PH-Messgeräte, Lösungen für das Rohmaterial-Handling, für die Prozess- und Verpackungskontrolle in der Industrie sowie Produkte zur Datenverwaltung und -auswertung im Einzelhandel.

Moderne Entwicklungsumgebung

Wolfgang Boos leitet die SW Entwicklung der Abteilung Laboratory & Weighing Technologies (LabTec), in welcher unter anderem der HX204 ExcellentMoistureAnalyser (siehe Abbildung) entwickelt wurde. Er initiierte 2007 die Einführung von IBM Rational Rhapsody. „Ich persönlich arbeite schon seit 2000 mit Rhapsody. IBM Rational Rose, welches beim LabTec vor Rhapsody im Einsatz war, entsprach nicht mehr unseren Anforderungen. Trotzdem wollten wir weiter modellgetrieben arbeiten. So war der Wechsel zu Rhapsody ein logischer Schritt im Ausbau unserer Infrastruktur“, erklärt Boos. „Eine moderne Entwicklungsumgebung und eine Plattform, welche alle Möglichkeiten offen lässt, waren uns extrem wichtig.“

Unabhängigkeit dank IBM Rational Rhapsody

Ausschlaggebend für IBM Rational Rhapsody waren die automatische Codegenerierung für die komplette Software sowie die Möglichkeit, verschiedene Plattformen anzusprechen. „Das User Interface und die Modellierungsmöglichkeiten mit IBM Rational Rhapsody sind extrem gut, die Visualisierung ist deutlich besser als bei vergleichbaren Produkten. Gleichzeitig war die automatische Codegenerierung bei Rhapsody schon immer überzeugend. Wir checken nur noch Modelle ein“, führt Wolfgang Boos weiter aus. „Dass wir die komplette Business Logik inklusive den dynamischen Aspekten automatisch generieren können ist einzigartig!“

Vorgehen

Für eine effiziente Einführung der neuen Entwicklungsumgebung nahmen die Teammitglieder an IBM Rational Schulungen von EVOCEAN teil. Mit der Unterstützung externer Spezialisten wurden an Vorprodukten die Funktionalitäten des Tools evaluiert, bis anschliessend die Entwicklung des HX204 in Angriff genommen wurde. Gemäss Wolfgang Boos waren neben dem Tool Know-how zwei Punkte zent-ral. „Wir mussten das Ganze so aufsetzen, dass die Strukturen, Prozesse und eingesetzten Methoden nachhaltig sind. Gleichzeitig wollten wir weg von der Fokussierung auf den SourceCode, hin zu einem Denken in Modellen… was für die involvierten Mitarbeiter teilweise eine markante Veränderung bedeutete.“

Continuous Integration

Neben automatisierter Codegenerierung und Agilität dank Modellierung ist für Wolfgang Boos die kontinuierliche Integration erfolgs-entscheidend: „Bei Continuous Integration ist es wichtig, dass alle Prozessschritte der Software Entwicklung automatisiert sind, damit Fehler möglichst früh gefunden werden. Dies stellt auch ein schnelles Feedback an die Entwickler bei Änderungen sicher.“ In der Software Entwicklung des LabTec sind rund 80% der Tests automatisiert und weit möglichst integriert. Dabei kommt ein vierstufiges Testsystem zum Einsatz – von statischen Modell- und Codeanalysen über Unit Tests und Component- bzw. Integration-/System-Tests bis hin zu den automatischen GUI Tests wird die Qualität bei jeder Änderung sichergestellt. IBM Rational Rhapsody als Entwicklungstool sowie das von Rhapsody zur Verfügung gestellte Framework bleiben dabei zentral.

Ziele erreicht?

„Ja, wir haben heute eine moderne, stabile Infrastruktur, mit der wir uns weiterentwickeln können“. Zwar wurden gemäss Boos beim ersten Entwicklungsprojekt mit Rhapsody weder Kosten noch Zeit eingespart. Zurzeit stehe jedoch die Entwicklung weiterer Produktlinien an, welche auf der gleichen SW basieren. „Die Vorteile unserer guten Basis kommen nun zum Tragen. Ein Modell ist einfacher anpass- und wartbar und neue Funktionen können schnell integriert werden. In Kombination mit dem automatischen Testen werden wir nun markant schneller sein… bei einer konstant hohen Qualität. Jetzt sparen wir Geld – nicht zuletzt dank IBM Rational Rhapsody!“

Herausforderung Collaboration

Die nächste Herausforderung liegt gemäss Wolfgang Boos in der Zusammenarbeit von geografisch verteilten Teams. Und wenn er einen Wunsch frei hätte? „Toll wäre, wenn Rhapsody die Entwicklung von Produktlinien, das Variantenhandling, noch besser unterstützen würde!“ Die Weiterentwicklung Richtung graphischer DSL’s mit Rhapsody brächte eine neue Dimension der SW Entwicklung.

Verwendete Technologien

Vor dem Projekt

UML

IBM Rational Rose

IDE

CodeWright und ARM Compiler

Echtzeitbetriebssystem

OSE

Zielplattform

kundentspezifisch

Programmiersprache

C++

Nach dem Projekt

UML

IBM Rational Rhapsody

IDE

Visual Studio

Echtzeitbetriebssystem

Windows CE, Linux

Zielplattform

Trade Board Colibri

Programmiersprache

C++

Verwendete Technologien

Vor dem Projekt Nach dem Projekt
UML IBM Rational Rose IBM Rational Rhapsody
IDE CodeWright und ARM Compiler Visual Studio
Echtzeitbetriebssystem OSE Windows CE, Linux
Zielplattform kundentspezifisch Trade Board Colibri
Programmiersprache C++ C++

Kunden über unsere Leistungen

Mettler Toledo AG

„Now the advantages of our solid foundation work will have a large impact. A model is easy to adapt and maintain and new functions can be integrated very fast. In combination with the automatic code generation and testing we now will be strikingly faster… with a consistent high quality. Today we save time and money – not least thanks to IBM Rational Rhapsody!"

Wolfgang Boos

Head of Software

Mettler Toledo AG

„Development in the embedded area should be platform independent and the used tools should support this!“

Wolfgang Boos

Head Software Development