C/C++

Bringing Academic Insights to the Software Industry

, July 30, 2010

Model-based testing at an industrial scale offers a time-saving and cost-effective approach to software development. Results of a European research project are already enabling a wide arrange of European industries to improve their productivity and global competitiveness.

The ITEA D-MINT project has turned the academic discipline of model-based testing into an industrial reality to cut the cost of producing complex software-based systems. Demonstrators in a wide range of industrial domains from street lighting and process control to mobile communications and automotive electronic control units clearly show how such an approach allows the cost-effective development of high quality software. The resulting techniques are already being exploited in their product development by several major European companies.

Quality is crucial to continuing European competitiveness. Cost-effective and efficient development of complex software systems is essential for future European success in many key industrial sectors. A wide range of industries across many sectors must invest in and be the best at the development of complex software systems. For example, half the components in modern cars rely on software, while software is the main differentiator between increasingly standard off-the-shelf hardware in telecommunications.

“To be competitive in the future, we need to invest in and be the best in the development of such systems,” says Colin Willcock of Nokia Siemens Networks in Germany, coordinator of the D-MINT project. “However 40 to 60% of the overall costs of developing software systems are in testing.” D-MINT sought to find out how to test complex software systems more effectively. This was important to a wide range of industries as represented in a consortium that included ABB industrial systems, Nokia mobile phones and automotive manufacturer Daimler.

Model-based testing potentialModel-based testing appeared to offer a technology with a lot of promise but no-one seemed to have achieved that potential on an industrial scale. “We decided on a EUREKA project as it offered the advantage of low overheads, which we find attractive, and it is nearer products,” explains Willcock. “This project had an industrial focus and was driven by the industrial partners that all have same problem and are all desperately searching for a solution.”

In classical software testing, the software and the tests for the software are written in parallel, involving the same level of complexity on the product and test sides. But, working at higher levels of abstraction and using models rather than actual code offers the potential for reuse as the models are in more general terms.

After a knotty early phase, “much time and effort is saved later because errors are detected rapidly” says Willcock. Effectively, the classic advantages of model-based software development are brought across to the testing side.

While model-based testing has been around for 20 to 30 years in academic circles, practically no-one had used this approach in industry. “There is a gap between the academic work and industrial reality,” explains Willcock. “D-MINT was put in place to solve that problem — to make an academic discipline into an industrial reality.”

Model-based testing was applied at an industrial scale with industrial quality across eight separate domains — unusual for an ITEA project. Applications ranged from street lighting to video-conference units, from telecommunications to cars, and from industrial engineering to machine tools. “Trying to make a common project was a struggle but we came out with surprisingly homogeneous results and comments,” he adds.

Fast exploitation possibleWhile productivity figures may have appeared modest in some applications, they could be backed up in real industrial cases with real figures and are more than sufficient to justify use of model-based testing. One result is that three test-tool vendors have already put their products on the market: iXtronics Toolbox, Testing Tech TTmodeler, and Conformiq Qtronic.

Moreover, several of the industrial partners are already starting to use the D-MINT techniques in their product development. Major industrial engineering company ABB is using D-MINT results for the next version of its Softstarter control products. Carmaker Daimler will use D-Mint technology for electronic control unit software testing.

Most impressively perhaps, information and communication technology specialist ELIKO has already used the D-MINT approach for a street-lighting control card which is now widely employed in Estonia. The hardware had already been developed and the software tested when the customer completely revised the specifications to avoid the high cost of regular battery replacement. Classical testing would have required three man-months of effort to re-establish the current situation. Use of model-based testing enabled the company to generate the new test cases needed with only ten days of effort.

Moreover, while classical and model-based software development took the same time because of the initial training required, subsequent use would eliminate this learning phase – exactly what happened with the radical redesign of the board. “The ELIKO case validated that model-based testing is not just more efficient, but the greater the change, the more the improvement obtained,” concludes Willcock.

Dr. Dobb's encourages readers to engage in spirited, healthy debate, including taking us to task.
However, Dr. Dobb's moderates all comments posted to our site, and reserves the right to modify or remove any content that it determines to be derogatory, offensive, inflammatory, vulgar, irrelevant/off-topic, racist or obvious marketing or spam. Dr. Dobb's further reserves the right to disable the profile of any commenter participating in said activities.

Video

This month's Dr. Dobb's Journal

This month,
Dr. Dobb's Journal is devoted to mobile programming. We introduce you to Apple's new Swift programming language, discuss the perils of being the third-most-popular mobile platform, revisit SQLite on Android
, and much more!