The Foundation of Delta’s Successful Software Generator Products
Delta Software Technology is a leader in advanced software generators. Apart from pure automation, generators are especially useful to implement different levels of abstraction. For this reason the implementation of software product lines and domain-oriented interfaces is definitely a subject at the centre of current discussions. In practice, there is no alternative to a model-based approach to achieving more economic software development.
Delta has a 30-year track record of successfully delivering advanced software generator technology to Europe’s leading organisations. Building on this experience, Cord Giese and Rüdiger Schilling have written an article called “Model-Driven Generator Development” that provides a comprehensive overview of the subject.
The article is published in the 03/2005 issue of the German-language professional journal OBJEKTspektrum. As a real-world example for the support of model-driven generator development, it presents the HyperSenses technology developed by Delta.
But first things first – what exactly is the motivation for the model-driven development of generators?
Why Model-Driven Development of Generators?
Within the area of software development, generators are used to automate programming tasks and to implement higher levels of abstraction. While “automation” is the core task of any generator, it is at the implementation of higher, domain-oriented abstraction levels that the wheat is separated from the chaff!
Such generators no longer are simple filters or converters, but are adapted for an application domain or – in the ideal case – are adaptable. The increased level of adaptability is accompanied by an extension of the potential usage area – therefore, a maximum of adaptability is the goal.
Another goal is the reduction in the effort for a generator’s implementation. The ideal case would to avoid entirely manual programming. Therefore, tool support is necessary, support that also provides a platform for the required domain orientation.
A clean definition of the variabilities implemented by a generator is a pre-requisite. This is usually defined by variability models, which can be constructed using a range of techniques. The FODA (Feature-Oriented Domain Analysis) method or the OMG UML may be used for this task, for example.
If a variability model has been defined, it could serve as a platform for the definition of configuration elements as well as for the definition (not programming!) of fragments of source code that are to be generated. At this point it is quite important that several views for the configuration data of a generation are provided – the source code to be generated is only one, among many others. In particular, the required domain-oriented views may also be implemented.
HyperSenses™ Technology
At the centre of these concepts is the clean separation of the variability model, the configuration data and the different views on them. This approach leads to a strictly model-based process, which is outlined in detail in the article by means of an example of Delta’s HyperSenses technology.
HyperSenses implements the concepts of Intentional Programming where a domain specific language is used to specify the problem to be solved. Instead of storing this program as syntax in a text file it is stored as a model in a repository. A number of different views are then available to define, maintain and understand the specification. Such views include textual, semi-graphic and graphical.
Altogether it is notable that the development of generators has become a subject area in its own right in the meantime. The appropriate techniques are continually advancing. Model-based concepts mark the summit of this trend for the present. To get more detailed information please read the article.
Download article on "Model-Driven Generator Development" (PDF) ![]()
The implementation of software product lines and domain-oriented interfaces is definitely a subject at the centre of current discussions. In practice, there is no alternative to a model-based approach to achieving more economic software development.
Further Information
You will find in-depth information about our advanced generator technology, HyperSenses and related Generative Programming research on our dedicated Delta GP Web site.


