It makes life easier for modelers
since they have just one language and one model. There is no round-trip
synchronization hassle or need to manage different models, their sharing, and
versioning. It also makes life easier for the creator of theDSMsolution: one language,
a single one-way nonupdating transformation. Additionally, you normally ?¬?nd a way
to record the information into signi?¬?cantly fewer data elements in the higher-level
language.
10.5.3 Reuse with Models
Reuse of models and model elements can be recognized as ?¬?rst class citizens by the
modeling language. This means that the metamodel knows when and where to ?¬?nd
reusable model elements instead of creating them again. Reuse at the model level is
naturally desirable as reuse can then happen at a higher level of abstraction rather than
at the code level, and it can happen at modeling time. This means that reuse is built in
to the metamodel.
The ?¬?rst approach to reuse is simple string matching: referring to a model or model
element by typing its name in another model. This approach is possible in every
language, but such reuse is not guided or enforced. Modelers need to enter particular
values, usually following some naming conventions, and the generator makes the
mapping and ?¬?nds the reusable elements to be included in the generated output.
Pages:
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467