next up previous
Next: 2.2 Attempts to achieve Up: 2.1 A lack of Previous: 2.1.3 Excess requirement of

2.1.4 Strict distinction between design and implementation

Another defect of this solution to modelling software is that because there is an intrinsic separation of implementation from the prototype design [RFBLO01], modelers are not allowed to test the model until the code is finally generated. Only after the design of the whole model is finished can those statements written in C++ be executed correctly. Before that time, test on a specific region is difficult (if not impossible) because it strongly relies on the other parts, which are still under construction.

To separate design and implementation to such a degree, of course, is not a good idea. Errors are often found in the implementation phase. Correcting those errors, which could have been found if people considered implementation and tested their prototypes in the design phase, requires far more effort. Furthermore, maintaining such a piece of software, whose implementation obscures its original design, possibly full of patches, is a nightmare!



Thomas Feng 2003-04-18