1 / 14

DSL Classification

The 7th OOPSLA Workshop on Domain-Specific Modeling October 21-22, 2007. DSL Classification. October 21-22, 2007 Benoît Langlois / Thales-EPM Consuela-Elena Jitia / Eric Jouenne, Thales Research & Technology. Language: tree-based DSL or a set of data without real structure?.

lucie
Download Presentation

DSL Classification

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. The 7th OOPSLA Workshop onDomain-Specific Modeling October 21-22, 2007 DSL Classification October 21-22, 2007 Benoît Langlois / Thales-EPM Consuela-Elena Jitia / Eric Jouenne, Thales Research & Technology

  2. Language: tree-based DSL or a set of data without real structure? Tooling: Assistance? Checking Process: Actor? Guidance? Notation: Graphical or textual? Style: Declarative or Imperative? Transformation: Used transformation techniques? Execution: Compilation or Interpretation? Update strategy of the produced artifacts: destructive or incremental? • Issue • Dealing With DSL & DSL Tool Variants • Resolution • DSL Feature Model  Formalizing Variations Issue • DSL+Generation  Raising the Level of Abstraction • Improving Productivity & Quality • Improving Capitalization / Reusability Reusability? Common vs. Specific DSL6 DSL1 DSL5 DSL2 DSL4 DSL3

  3. Agenda • Issue • DSL Feature Model • Future Work & Issue

  4. Covered Aspects DSL Language Transformation Tool Process Notation (FODA) Alternative Features Mandatory Feature Optional Feature Inclusive-or Features

  5. Concrete Syntax Abstract Syntax Specific Representation Representation Dependency Declarative Metamodel Imperative Graphic AS2CS Wizard Table Style ASG AST Text Composition Elements + relationships of a domain without representation consideration Specific representation of a DSL in a human-usable form Language Features DSL Language Transformation Tool Process Language

  6. Operational Transformation Target Asset Specification Transformation Features DSL Language Transformation Tool Process Transformation

  7. Operational Transformation Transcribes emerging transformation criteria AS2Solution Target Asset Transformation Viewpoints: Design, Implementation, Platform, Architectural Decisions, Non-Functional Constraints Examples: Persistence mapping, Deployment Problem Solution Specification Viewpoint Mapping Model Complete & Exhaustive Specification Specification Features DSL Language Transformation Tool Process Specification

  8. Software Artifact, result of the transformation Asset Lifecycle Specific Representation Representation Asset Update Incremental Destructive Asset Integration Graphic Binary Model Text Assembling and Packaging Target Assets DSL-to-DSL Transformation Process Specification Concrete Syntax Matching Destroyed & created at each generation Synchronization source/target Style AS2CS Declarative Imperative Representation Table Specific Representation Text Graphic Wizard Target Asset Features DSL Language Transformation Tool Process Target Asset Operational Transformation Target Asset

  9. Transformation Scheduling Transformation Execution Transformation Technique Variability Phasing Automation Level Interpretation Environment Compilation Automated Technique External External Implicit Internal Explicit Internal Manual Mode M2M Stage Form M2T T2M T2T Ordering Transformation Specification, Generation / interpretation, Compilation, Integration, Deployment, Execution Specification Techniques realizing the AS2TA transformation Location Operational Transformation Features DSL Language Transformation Tool Process Target Asset Operational Transformation Operational Transformation Model/Text Technique

  10. Quality Factor Non-Functional aspects of the DSL Tool Seamless transformation Intrusive transformation Adaptive Static Process Guidance Checking Respect of Abstraction Maintainability Completeness Functionality Consistency Assistance Reliability Portability Workflow Efficiency Usability Step Guiding the DSL Tool user during definition and transformation of domain data User has to be aware of internal transformation mechanisms & details or/and solution Transformation and solutions mechanisms & details are completely encapsulated Tool Features DSL Language Transformation Tool Process DSL Tool

  11. Guidance Work Definition Role Checklist Tool Mentor Template Concept Defines how projects with DSL technique must be executed Lifecycle Phase Iteration Activity Guideline Practice Process Features DSL Language Transformation Tool Process DSL Process

  12. Agenda • Issue • DSL Feature Model • Future Work & Issue

  13. Future Work • Interest of this study: • Project 1: The DSL feature model has been experimented with a DSL tool factory of MDSoFa, a Thales software factory tool. • Making explicit DSL tool variations which are implicit today. • Project 2: Usage of different tools including a UML modeller, GMF, Xactium XMF-MOSAIC and Microsoft DSL Tool. • Additional insight with regards to the classification provided in this paper, in a non-strictly software and code generation perspective.

  14. Conclusion • Interest of the DSL feature model: Formalizing DSL and DSL tool variants. • Applications: • Used by a DSL tool factory, which applies variations during production of DSL tools • Selection of pertinent DSL families among all possible families from the feature model • Definition of DSL tool foundations • Selection of DSL tools • Extensible Feature Model • Feature Model in the scope of domain analysis of DSLs. • Prerequisite for long-term and large-scale DSL developments.

More Related