90 likes | 266 Views
“Shiny New Languages” for AOM?. Jeff Gray. MODELS 2007 Panel The Future of Aspect Modeling: Will MDE Absorb it?. Robert Floyd – “The Paradigms of Programming * ”. “ To the designer of modeling languages, I say:
E N D
“Shiny New Languages” for AOM? Jeff Gray MODELS 2007 Panel The Future of Aspect Modeling: Will MDE Absorb it?
Robert Floyd – “The Paradigms of Programming*” “To the designer of modeling languages, I say: Unless you can support the paradigms I use when I model, or at least support my extending your language into one that does support my modeling methods, I don’t need your shiny new languages… To persuade me of the merit of your language, you must show me how to construct models in it.” 1978 Turing Award Lecture *Original focus on programming; quote modified to modeling.
Case Study:Solved with Aspect-Oriented ModelingCrosscutting Constraints in Real-Time/Embedded Models IEEE Computer, February 2006
“Doesn’t it just involve a specific kind of modeling?” • Elaborationists versus Translationists* • Some view AOM as just a bunch of notations with little or no tool support • AOM as a noun • Often interested in traceability concerns to code • Opinion: Majority view • Others view AOM as a means toward improving the modeling process itself, with model weavers integrated into a modeling tool • View aspect modeling as a form of model transformation • AOM as a verb • Opinion: Offers best opportunities for AOM • different meanings to the term *A summary of these views is presented in (Cottenier et al., MODELS AOM Workshop, 2006).
Current AOM Focus Tilted toward General-Purpose Languages • After 6 years and 11 AOM Workshops • Growth (depth) and application (breadth) unimpressive • Most papers describe a general-purpose aspect language for a general-purpose modeling language • Number of papers specific to UML and general-purpose descriptions at last four AOM workshops • 2006-AOSD: 8 of 8 • 2006-MODELS: 7 of 10 • 2007-AOSD: 7 of 8 • 2007-MODELS: 6 of 7 See: http://www.aspect-modeling.org/
Expanding the purview of AOM • At the code level, DSALs are gaining more interest (original focus of AOP) • Very little investigation into the combinations of {DSAL, GPAL}x{DSML, GPML} at modeling level • Are there benefits in expanding the general-purpose view at both levels?
“Does it just involve a special kind of model transformation?” • Consider a view that treats a transformation language/engine as “machine code” to realize higher level concern transformation in a separate language • At the code level: FOP AOP … Higher level Descriptions Code Refactoring Browser Concern Translator Program Transformation Engine (e.g., DMS, ASF+SDF, TXL) Lower level Mechanisms
“Does it just involve a special kind of model transformation?” • At the modeling level: FOM AOM … Higher level Descriptions Model Refactoring Browser Model Compositor Model Transformation Engine (e.g., ATL, VIATRA2, C-SAW, GReAT, ATOM3) Lower level Mechanisms • Some observations: • AOM is a type of MT, but most end-users would not want to use a MT engine directly • Layering an aspect modeling language on top of an MT engine provides an opportunity for improved abstraction in the intent of the aspect description
“Will MDE absorb AOSD in the end?” • May depend on which camp you live in • Elaborationist/Translationist • Robert Floyd’s Plea • Extensions to incorporate desired paradigms • If you believe “Everything is a Model” • No need for aspects and weavers at the code level - code generation from the model can generate all crosscutting concerns; i.e., aspect weaver built into codegen