It can be
speci?¬?ed by its direction, multiplicity, n-ary, parallelism, or cyclic structures. Each
may have further speci?¬?cation of details, like the maximum and minimum values for
multiplicity; n-ary relationships can be further speci?¬?ed by the number of different,
possibly optional, roles they have; cyclic relationships can further be de?¬?ned to
differentiate between direct and indirect cyclic structure; and so on. Communication
?¬‚ows can further be seen to be synchronous or asynchronous and have different
policies, such as balking, timeout, or blocking. It is the numerous small extensions to
the basic models of computation that make a modeling language domain-speci?¬?c.
Multiple Languages and MOCs A single language and MOC may not be
enough to carry out speci?¬?cation work. The domain can have multiple aspects each
requiring separate views, there can be different roles among modelers or different
levels of detail on which to focus, or putting everything into one language is simply not
possible. We have not found strict rules on when to add new languages rather than
continue adding newconcepts to current languages. For example, in one telecom case,
language developers had de?¬?ned just two languages for a relatively large domain: one
for static UI and another for the rest. The second language showed multiple aspects,
such as data access, process, real time, and events, all in the same model.
Pages:
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432