This paper describes how a small team of software engineers used model driven software engineering techniques to develop a large, complex software system that is both reliable and robust, and in doing so achieved a productivity 2.5 times higher than the industry average for conventional software development. Using Verum’s software specification, design and verification tools, in five years (an average of) four engineers realized the entire control and application software for the Liteq 500, a lithographic, advanced packaging production system for semiconductors from Kulicke & Soffa.
Clear long-term results
This case is unique because, for the first time, it clearly provides a holistic view of the long-term results of the large-scale application of model driven software engineering, from architecture and design through to integration and system testing. And consequentially it points to the future of software development.
Related: Reengineering legacy software with Dezyne
Model driven software engineering for designing complicated systems
The Liteq 500 is a typical, inherently complex embedded system. Michael van de Ven, presenter of the case at Verum’s Community Meeting, points out that, conceptually, such systems have three architectural layers: the device (control) layer, the process (control) layer and the application control layer. Design complexity arises dramatically as devices woven together into processes, and processes into the overall application. Marco Hounjet, Co-Presenter of the Liteq case, says,
“[Verum tools] help you realize just how complicated the design of the system can become. But by using Verum’s tools you get it right in the end.”
Related: Learn how an Agile development process can benefit from Component Based and Model Driven technologies
Factor 2.5 times as productive
The Liteq story makes a compelling case for the adoption of model driven software engineering. The Liteq team have achieved a x5 improvement in productivity for that portion of their code (80%) developed using model driven techniques in general and Verum’s tools in particular. Not only have they realized a large software system that is both complex, reliable and robust. They also dealt with the uncertainties of 3rd party software, coped with requirements that evolved over time, decreased the amount of testing they performed and consider themselves to have become better engineers as a consequence. Amazingly, they accomplished all this while sustaining in excess of a factor 2.5 times productivity improvement over an entire product development cycle.
Like to know more? Download the full paper here!