11.2. One modeling language, here theWatch DSM language, may have several
generators (e.g., for different languages): the black arrows indicate the ?¬‚ow of
information from the models in that language to those generators. Changes to the
modeling language must be propagated to the generators, shown here by the thicker
lines: information and change propagation ?¬‚ow in the same direction.
The situation on the framework side is more complex. One generator may produce
output that works with several frameworks, but changes are propagated from the
frameworks to the generator. In fact, the framework changes that must be propagated
are those that change the interface between the framework and the generated code.
Keeping generators together with the modeling language??”in the same tools and
same ?¬?les??”ensures that when a generator is applied to a model, their versions are in
sync and they share a consistent viewof things. Building generators in the same tool as
the modeling language also allows the generator editor to offer context-sensitive help
and syntax checking on the many references to modeling language concepts. A tool
could even update generators automatically if the name of a modeling language
concept is changed.
Awell-architected tool can thus ensure version synchronization between modeling
language and generators.
Pages:
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575