oopsla workshop on domain-specific modeling (dsm’03) 1 jeff gray, juha-pekka tolvanen, matti...
TRANSCRIPT
OOPSLA workshop on Domain-Specific Modeling (DSM’03) 1
http://www.cis.uab.edu/info/OOPSLA-DSM03/
Jeff Gray, Juha-Pekka Tolvanen, Matti Rossi
OOPSLA Workshop on Domain-Specific Modeling
OOPSLA workshop on Domain-Specific Modeling (DSM’03) 2
Objectives
Intensive collaborative sessions Attempt to discuss, share and solve
challenging problems facing DSM Have something to report to OOPSLA
community Have fun!
OOPSLA workshop on Domain-Specific Modeling (DSM’03) 3
Schedule and format
8:30 Introduction
9:00 Workshop context and agenda
9:30 Presentations
10:00 Break
10:30 Presentations continue
11:30 Group work
12:00 Lunch
1:00 Group work
3:00 Break
3:30 Group reports
4:30 General discussion and wrap-up
5:00 Workshop ends
OOPSLA workshop on Domain-Specific Modeling (DSM’03) 4
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
OOPSLA workshop on Domain-Specific Modeling (DSM’03) 5
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
OOPSLA workshop on Domain-Specific Modeling (DSM’03) 6
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
Lets developers design products using domain terms Apply familiar terminology Solve the RIGHT problems! Solve problems only ONCE!
What is Domain-Specific Modeling
OOPSLA workshop on Domain-Specific Modeling (DSM’03) 7
DomainIdea
FinishedProduct
Solv
e p
roble
m in d
om
ain
term
sAssembler
Map to code, implement
UML ModelMap to UML
Generate,Add bodies
ComponentsDomainModel
Generate callsto components
No map!
CodeMap to code, implement
Framework:Modeling domain vs. modeling code
OOPSLA workshop on Domain-Specific Modeling (DSM’03) 8
DomainIdea
Featurein S60/
Symbian
FinishedProduct
Solv
e p
roble
m in d
om
ain
term
sAssembler
Map to code, implement
UML ModelMap to UML
Generate,Add bodies
CodeMap to code, implement
View, Dialog, State, ...
Components(C++)
DomainModel
Generate callsto components
No map!
Example: Symbian/S60 DSMModeling domain vs. modeling code
OOPSLA workshop on Domain-Specific Modeling (DSM’03) 9
Design in S60, Generate C++
Develop applications in the domain! .RSS
.PKG
.MMP
.INF
.HRH
....
.LOC
.CPP
.H
App Structure
App Behaviour
Data entered only once!
Multiple generation
outputs
OOPSLA workshop on Domain-Specific Modeling (DSM’03) 10
Straight from specs to testing!
App Structure
Autobuild
DocsInspection reportsChecking
App Behaviour
Design in S60, Run in Emulator
OOPSLA workshop on Domain-Specific Modeling (DSM’03) 11
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
OOPSLA workshop on Domain-Specific Modeling (DSM’03) 12
Difference to MDA?
DSM based on CIM/PSM terms?
* ObjektSpektrum Newsletter: Koch, T., Reckziegel, J., MDA - State of the Art
DSM
OOPSLA workshop on Domain-Specific Modeling (DSM’03) 13
DomainIdea
FinishedProduct
ComponentsDomainModel
Generate callsto components
Easy!
Expert(few)
Normal(many)
Done a few times before!
Codegeneration
Domainmetamodel
Componentlibrary
How to implement DSM
OOPSLA workshop on Domain-Specific Modeling (DSM’03) 14
About submissions
DSM’03 emphasizes on model integration Papers divided into three groups
1. DSM practice: Approaches for implementing DSMs2. Model management: Approaches for model
integration and transformation3. Tools for implementing and using DSMs
OOPSLA workshop on Domain-Specific Modeling (DSM’03) 15
Paper presentations
1. DSM practice: – A Visual Architecture Description Language for Embedded
Systems with Hierarchical Typed Hypergraphs, Lars Grunske
2. Model management:– Diagram Definition Facilities Based on Metamodel
Mappings, Edgars Celms, Audris Kalnins, Lelde Lace
3. Tools:– UDM: An Infrastructure for Implementing Domain-Specific
Modeling Languages, Endre Magyari, Arpad Bakay, Andras Lang, Tamas Paka, Attila Vizhanyo, Aditya Agarwal, Gabor Karsai
OOPSLA workshop on Domain-Specific Modeling (DSM’03) 16
Working groups
Focus on a specific topic Four parallel groups
1. DSM practice2. Model management3. Tools4. 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
OOPSLA workshop on Domain-Specific Modeling (DSM’03) 17
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
OOPSLA workshop on Domain-Specific Modeling (DSM’03) 18
Questions or comments?
Thank you!
Juha-Pekka TolvanenMetaCase
Ylistonmentie 31FIN-40500 Jyvaskyla,
Jeff Gray University of Alabama at
BirminghamComputer & Information
Sciences115A Campbell Hall, 1300
University Blvd.Birmingham, AL 35294-1170,
Matti RossiHelsinki School of
EconomicsFIN-00100 Helsinki,