180 likes | 268 Views
AOM Core Discussion. UML/Models 2005 Workshop 7: “Aspect Oriented Modeling” Jörn Guy Süß, Research Officer 9/7/2014. AOM Core. What is an aspect?. You don no t really know what aspects do. “Solves one problem, but in another situation creates craps”.
E N D
AOM Core Discussion UML/Models 2005Workshop 7: “Aspect Oriented Modeling” Jörn Guy Süß,Research Officer 9/7/2014
You don not really know what aspects do • “Solves one problem, but in another situation creates craps”
Trivial examples... • Logging standard example – yawn… • Easily scalable for a large application • Real program models • Not available • Functional crosscuting concerns hard to find • Different granularities you can look at aspects
Works in the small only • Conflicting aspects • “Would not like to log confidential information” • Composition is problematic because of interrelations between aspects easy to break the structure by removing aspect • Analyse and verify agasint requirements • Impacts on other aspects • Order of aspects
Common Core Metamodel needed to scale • Something as base to compare different models • Should UML be base notation or something more simpler? • UML is missing possibilities to express relationships between the models • One needs AML • Unified type space to have one tool for UML and aspects • UML ->CWM; CWM -> UML • Class based models should be base • MOF is just class diagrams • You draw your class diagram • Generate your stuff • Glue GUI on top of generated • Allows to define structure, signatures of operations • No way to specify how to execute it • Methods, and then text for what methods actually do
Assembly process of aspects required • Takes care of fact that we are not using the same definition of aspect • Integration of approaches wont work as people wont agree what aspect is • Not the problem different terminology but lack of catalogue • For reasons of traceability • People wont useone megalanguage • Reuse • So far case studies dont show reuse as you need more • Need to educate students from very first days • Root commonality required • For example benefits of design patters • Doest happen on the abstract, metamodel required
Tool vendors lock you in. • Need to get stuff out of modelling tool and do it externally • Hard to extend tools
Work with single model at a time • Need to look at aspect and primary model at the same time. Relationships between models required. • Lot of mental work still needed
Tools for defining model transformations exist • Tefkat – The engine formerly known as Tarzan(a DSTC eclipse plugin) • For example from class model to ERM • Target model as the view of the source model • Those things have very little publicity
What decisions are human decisions and where can you start automatic choices?
Components vs. Aspects • Components did promise"Buy your facility to have concern X managed“ Failed • Will Aspects deliver? • Yes! Aspects are very flexible • No! Aspects are so flexible as too be useless in application
The Two sides "(Gregor Kiczales) • Yes! • Teaching students • Distributing work • Runtime Properties, NFPs • No!What happens "when tomorrow comes