5.4.5 Domain-Specific Modeling for Platform Independence

The results of this exercise are clear: domain-specific modeling has provided a near-perfect vehicle for insulating applications from surrounding platform changes. The same Watch models have survived virtually untouched through changes from Java to Java2 to MIDP, with the main changes required being made by one person to one target. Compare that with the normal scenario, where the majority of developers would have to update the majority of their features for each platform change.

In particular, think about what it means in terms of supporting a family of products across a family of platforms. In the normal scenario mentioned above, there would quickly be no hope of maintaining one code base for all platforms. The current Watch models, however, are capable of generating code for each of the three platforms, and on a variety of operating systems.

These advantages are over and above those which come from making products by visual domain-specific modeling instead of writing textual code — a change which normally increases productivity by 5 to 10 times.