Title: Toward Families of QVT DSL and Tool Benot Langlois, Daniel Exertier, Ghanshyamsihn Devda
1Toward Families of QVT DSL and ToolBenoît
Langlois, Daniel Exertier, Ghanshyamsihn Devda
6th OOPSLA Workshop on Domain-Specific
Modeling 22 October 2006Portland, Oregon, USA
2Agenda
- Issue
- Case Study of View DSL Diagram DSL
- Families of QVT DSL and Tool
- Conclusion and Future Work
3Agenda
- Issue
- Case Study of View DSL Diagram DSL
- Families of QVT DSL and Tool
- Conclusion and Future Work
4Issue
QVT core technology for development MDD
Tools ? Having techniques for improving
productivity
Interest of DSL offering higher level
languages ? Encapsulating complexity ? Faster
and safer development
Product Line
5Agenda
- Issue
- Case Study of View DSL Diagram DSL
- Families of QVT DSL and Tool
- Conclusion and Future Work
6Software Factory Context
MDD Tools
MDSysE
MDD Tool
MDSoFa
MDSoftE
Software Factory Tool
MDD Tool
MDD Core Assets
Reuse
MDCorE
Metamodels (domain, standard), Core MDD Tools,
DSL, Patterns, Platform description, Execution
framework
MDD Core Assets
73-Level Architecture
DSL applied to the Diagram Domain
Diagram DSL
D2
conforms to
Diagram DSL instance
D1
conforms to
Diagram
D0
- Tested on more than 50 types of diagrams
8Diagram DSL and Diagram DSL Tool
Model Editor
Diagram DSL Tool
implements
implements
MOF
Diagram DSL
Edition
Edition
conforms to
conforms to
Diagram DSL instance
Domain model
Generation with MDSoFa
Generation with MDSoFa
Domain Tool Infrastructure
Tool Generating Model Diagrams
9Diagram DSL Lifecycle
10Agenda
- Issue
- Case Study of View DSL Diagram DSL
- Families of QVT DSL and Tool
- Conclusion and Future Work
11Need of QVT DSL and Tool Families
- N1 Functionality viewpoint variation on QVT
DSL properties by project. - N2 Process viewpoint variation on processes by
project, by methodology. - N3 Language viewpoint Variation of abstract
to concrete syntax transformation, for low and
level languages. - N4 Design and implementation viewpoints,
variation in function of architectural or
non-functional decisions. - N5 Capitalization viewpoint, managing platform
variability (standards, languages, frameworks,
tools). - N6 Reusability viewpoint, different QVT DSLs
can share common features. Managing common assets
which can be reused in different QVT DSL contexts.
? Complex but mandatory for meeting QVT DSL
variations expected from project requirements
12A QVT DSL a Domain
- A QVT DSL is a Domain
- Reusing product line experience
- Managing QVT DSL domains
- Managing QVT DSL core assets
- Having a production method
- Strength of this reflexivity auto-consistency
- End-products are built in the same way than
development tools
13Core Asset Management
- Kinds of core asset
- QVT DSL domain at the D2, D1 levels
- QVT DSL tool description
- Patterns, generators, frameworks, tools
- QVT environment (QVT M2, platform descriptions)
- Managing core asset evolutions
- On domain
- On Feature model
- On Architecture
- Production Plan
14Product Production
- Production Plan describes how to manage
production of product from core assets. - Takes into consideration production method of
each asset, linkage among core assets, product
line constraints - Declaring how to fit into product production
contexts
15Issues
- Unified architecture of QVT DSL and Tool
- Adopting a reduced number of QVT DSLs, a
tree-organization with few bridges, and
reflexivity according to the 3-level architecture
principle. - Building flexible and consistent QVT DSL
workbench - Same ergonomics and logic of action in function
of the selected features. - Maximizing automation of product production
- Required at a managed maturity model level
- No standard for product line
- Variability restricted to company usage
16Agenda
- Issue
- Case Study of View DSL Diagram DSL
- Families of QVT DSL and Tool
- Conclusion and Future Work
17Conclusion Future Work
- Conclusion
- Proof of concept Production improvement with
Diagram DSL - Need of families of QVT DSL and Tool
- Considering QVT DSL as a domain and reusing
product line experience - Next step?
- Emergence of customized QVT workbenches with DSLs
- Future Work
- Development of a QVT DSL factory integrating
variability
18