Dsl classification
Download
1 / 14

DSL Classification - PowerPoint PPT Presentation


  • 99 Views
  • Uploaded on

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?.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'DSL Classification' - lucie


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.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
Dsl classification

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


Issue

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


Agenda
Agenda structure?

  • Issue

  • DSL Feature Model

  • Future Work & Issue


Covered aspects
Covered Aspects structure?

DSL

Language

Transformation

Tool

Process

Notation (FODA)

Alternative Features

Mandatory Feature

Optional Feature

Inclusive-or Features


Language features

Concrete Syntax structure?

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


Transformation features

Operational structure?

Transformation

Target Asset

Specification

Transformation Features

DSL

Language

Transformation

Tool

Process

Transformation


Specification features

Operational structure?

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


Target asset features

Software Artifact, result of the transformation structure?

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


Operational transformation features

Transformation structure?

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


Tool features

Quality Factor structure?

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


Process features

Guidance structure?

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


Agenda1
Agenda structure?

  • Issue

  • DSL Feature Model

  • Future Work & Issue


Future work
Future Work structure?

  • 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.


Conclusion
Conclusion structure?

  • 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.


ad