En

Model Driven Development driving 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!“

Model Driven Development driving Continuous Integration

Improving Embedded Systems development – an example at Mettler Toledo AG

Complete code generation from UML models, focused test automation as well as continuous in-tegration are key engineering practices driving improvement at Mettler Toledo. For the development of the precision instruments the company relies on the model driven development tool IBM Rational® Rhapsody®. Wolfgang Boos, Head of Embedded Software Development, reports. Mettler Toledo is a worldwide leading manufacturer of precision instruments for labs, industrial applications as well as for the fresh goods management in the food retail. Among others, this covers scales, pipettes and PH measuring instruments, solutions for the handling of raw materials, for the process and packaging control in the industry as well as solutions for the data management and evaluation in retail areas.

Modern Development Environment

Wolfgang Boos heads the SW development of the Laboratory & Weighing Technologies department (LabTec). His team is responsible – among others – for the development of the HX204 ExcellentMoistureAnalyser (see picture). In 2007, he initiated the introduction of IBM Rational Rhapsody at Mettler-Toledo. „I personally have been working with Rhapsody since 2000. IBM Rational Rose, which was in use before Rhapsody here at Mettler Toledo, did not correspond any more to our needs. However, we wanted to keep on working model driven. Thus the change to Rhapsody was a logical step forwards in the further improvement of our development infrastructure“, explains Wolfgang Boos. „A modern development environment and a platform which opens up all possibilities were extremely important to us.“

Independency thanks to IBM Rational Rhapsody

Deciding factors for IBM Rational Rhapsody were the automatic code generation for the complete software as well as the possibility to address different target platforms. „The user interface and the modeling possibilities of IBM Rational Rhapsody are extremely effective, the visualization is clearly better than with comparable products. At the same time the automatic code generation was always persuasive with Rhapsody. We check-in only models“, explains Wolfgang Boos further. „The fact that we are able to automatically generate the complete application software including dynamic aspects is unique!“

Approach taken

For an effective introduction to the new developing environment the team members participated in Rhapsody trainings at EVOCEAN. With the support of external specialists the functionalities of the tool were evaluated in prototypes, followed by the HX204 development. Besides the tool know-how, two further points were very important according to Wolfgang Boos. „We had to set up the project in a way that the structures, processes and methods were sustainable. At the same time we wanted to move from focusing on Source Code towards a thinking in models… which was for some of the involved employees a striking change.“

Continuous Integration

Besides automated code generation, agility and fast feedback thanks to modeling, another factor is crucial for success for Wolfgang Boos: continuous integration! „With continuous integration it is important that all process steps of the software development are automated, in order that mistakes are found as early as possible. This also guarantees a fast feedback to the developers when changes are done.“ In the software development of LabTec, about 80% of the tests are automated. A 4-stage test system is used for quality assurance applied automatically at every change: from static model and code analyses to unit tests, components respectively integration and system tests up to automatic GUI tests. IBM Rational Rhapsody as the development tool as well as the framework provided by Rhapsody remain central in this approach.

Targets achieved?

„Yes! Today we work with a modern, stable development infrastructure“. In fact, neither costs nor time were saved in the first development project with Rhapsody according to Boos. Nevertheless, at the moment the development of other product variants which are based on the same SW stand in the queue. „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!“

Challenge Collaboration

According to Wolfgang Boos, his next challenge lies in the collabo-ration with a geographically distributed team. If he would have a free wish? „It would be great if Rhapsody would support the development of product lines and the handling of variants even better!“ Further the development in the direction of graphic Domain Specific Languages (DSL’s) with Rhapsody would bring a new dimension into the software development.

SaveSave

SaveSave

SaveSave

SaveSave

SaveSave

SaveSave

Used technologies

Before Project

UML

IBM Rational Rose

Integrated Development Environment

CodeWright and ARM Compiler

Real Time Operation System

OSE

Target Platform

Customer specific

Programming Language

C++

After Project

UML

IBM Rational Rhapsody

Integrated Development Environment

Visual Studio

Real Time Operation System

Windows CE, Linux

Target Platform

Trade Board Colibri

Programming Language

C++

Used technologies

Before Project After Project
UML IBM Rational Rose IBM Rational Rhapsody
Integrated Development Environment CodeWright and ARM Compiler Visual Studio
Real Time Operation System OSE Windows CE, Linux
Target Platform Customer specific Trade Board Colibri
Programming Language C++ C++

Customers about our services

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