180 likes | 207 Views
OOPSLA Workshop on Domain - Specific Modeling. http://www.cis.uab.edu/info/OOPSLA-DSM03/ Jeff Gray, Juha-Pekka Tolvanen, Matti Rossi. Objectives. I ntensive collaborative sessions A ttempt to discuss, share and solve challenging problems facing DSM
E N D
OOPSLA Workshop on Domain-Specific Modeling http://www.cis.uab.edu/info/OOPSLA-DSM03/ Jeff Gray, Juha-Pekka Tolvanen, Matti Rossi
Objectives • Intensive collaborative sessions • Attempt to discuss, share and solve challenging problems facing DSM • Have something to report to OOPSLA community • Have fun!
About past workshops at OOPSLA • BOF at OOPSLA’00 • DSVL workshops at OOPSLA’01 & ’02 • Special issue “Domain-Specific Modeling with Visual Languages” • Journal of Visual Languages and Computing, 2004
Related events • Workshop on Metamodels and Schemas for Reverse Engineering • IEEE Symposium on Visual Languages and Formal Methods (VLFM '03) • Engineering Methods to Support Information Systems Evolution’ (EMSISE’03) • Workshops on Domain-Specific Visual Languages, OOPSLA’01 & ‘02 • International Workshop on Graph Transformation and Visual Modeling Techniques (GT-VMT '02) • IEEE Symposia on Human Centric Computing Languages and Environments (HCC'01, HCC '02) • International Workshop on Model Engineering, ECOOP'00
What is Domain-Specific Modeling • Captures domain knowledge (as opposed to code) • Uses domain abstractions • Applies domain concepts and rules as modeling constructs • Narrow down the design space • Focus on single range of products • Letsdevelopers design products using domain terms • Apply familiar terminology • Solve the RIGHT problems! • Solve problems only ONCE!
Framework:Modeling domain vs. modeling code Map to code, implement Assembler Map to code, implement Code Generate,Add bodies Map to UML UML Model No map! Generate callsto components DomainModel Components DomainIdea FinishedProduct Solve problem in domain terms
Example: Symbian/S60 DSMModeling domain vs. modeling code Map to code, implement Assembler Map to code, implement Code Generate,Add bodies Map to UML UML Model No map! Generate callsto components DomainModel Components (C++) DomainIdea Feature in S60/ Symbian FinishedProduct Solve problem in domain terms View, Dialog, State, ...
Design in S60, Generate C++ .RSS .LOC .CPP .H • Develop applications in the domain! Data entered only once! Multiple generation outputs App Structure App Behaviour .PKG .MMP .INF .HRH....
Design in S60, Run in Emulator Autobuild Docs Inspection reports Checking • Straight from specs to testing! App Structure App Behaviour
Some reported cases based on Domain-Specific Methods • Nokia; Mobile Phone product line • Bell Labs / AT&T / Lucent; 5ESS telecommunications switch, • Honeywell; embedded software architectures • NASA ASE group; Amphion • Pecunet; B2B E-Business: insurance • LexiFi; mlFi, financial contracts • DuPont; Activity Modeling • NASA; Architecture Definition Language • ORGA; SIM toolkit & JavaCard • USAF; Message Transformation and Validation • NASA JPL; embedded measurement systems • F.A.S.T GmbH, Bayerische Landesbank, Arcus: architectural metamodel
Difference to MDA? • DSM based on CIM/PSM terms? DSM * ObjektSpektrum Newsletter: Koch, T., Reckziegel, J., MDA - State of the Art
How to implement DSM Done a few times before! Expert (few) Domain metamodel Code generation Component library DomainIdea FinishedProduct Easy! Generate callsto components DomainModel Normal (many) Components
About submissions • DSM’03 emphasizes on model integration • Papers divided into three groups • DSM practice: Approaches for implementing DSMs • Model management: Approaches for model integration and transformation • Tools for implementing and using DSMs
Paper presentations • DSM practice: • A Visual Architecture Description Language for Embedded Systems with Hierarchical Typed Hypergraphs, Lars Grunske • Model management: • Diagram Definition Facilities Based on Metamodel Mappings,Edgars Celms, Audris Kalnins, Lelde Lace • Tools: • UDM: An Infrastructure for Implementing Domain-Specific Modeling Languages, Endre Magyari, Arpad Bakay, Andras Lang, Tamas Paka, Attila Vizhanyo, Aditya Agarwal, Gabor Karsai
Working groups • Focus on a specific topic • Four parallel groups • DSM practice • Model management • Tools • DSM in the context of MDA • The goal of those groups is to • establish theoretical background • summarise past experience • investigate most interesting approaches • identify future research topics • Groups present their results for discussion
Publishing results • Poster in OOPSLA 2003 • Spreading the word • Presented in Welcome Reception • Visible in Exhibition Hall during conference • Workshop web-site • http://www.cis.uab.edu/info/OOPSLA-DSM03/ • Papers • Workgroup results • Photos
Thank you! Questions or comments?