Table des matières
Objectif Programme Ressources Installation

IDM2015: Modélisation et ingénierie!

De la modélisation scientifique à la modélisation de votre code:

Créez votre propre langage

Créez votre langage spécifique de domaine (DSL) et/ou votre langage métier

http://agora.inp-toulouse.fr/limesurvey/index.php/844198/lang-fr

Inscription

Inscrivez-vous

Faites vous connaître si vous voulez contribuer, proposer votre cas d'étude, vous inscrire contact

Mots clés

langages spécifiques de domaine (DSL, DSML), créer son langage, IDM, modèle du domaine, modélisation conceptuelle, grammaire, modèle ecore, EMF, arbre syntaxique, transformation, éditeur, ingénierie, modélisation participative, simulation scientifique, génie logiciel, outils, méthode pour la recherche, programmation par langage, prototypage rapide

Comité de programme

Avec le soutien:

Objectif

Les langages généralistes comme le C, java, python ne facilitent pas la programmation à des non-informaticiens.

Une alternative est de créer son propre langage de domaine ou d'étendre un langage existant avec de nouveaux concepts.

Nous discuterons de l'apport des langages spécifiques de domaine (DSL) pour décrire son domaine d'étude (exemple: une plante) et décrire le comportement de ce domaine (exemple: les interactions d'une plante avec son milieu).

Nous étudierons la création des DSLs au travers d'ateliers pour créer la syntaxe de son langage et définir la sémantique et l'exécution de son langage.

Les participants sont appelés à apporter leur cas d'étude. Une pédagogie active en interactions et échanges sera privilégiée.

Outre la facilité pour un expert de programmer son domaine d'étude directement à partir des concepts même de son domaine, les DSLs permettent de re-conceptualiser son domaine en redéfinissant les concepts, leurs relations et leurs comportements itérativement en fonction des observations et des simulations précédentes. Nous discuterons de ces aspects et de l'opportunité que représente le prototypage rapide de simulateurs ad hoc comme méthode pour la recherche.

Discussions sur les verrous méthodologiques, la modélisation collaborative et multi-domaines, l'intégration de l'existant.

Présentation de la programmation par langage.

Un appel à la collaboration sera fait pour discuter des suites à donner. Une école plus complète sera à l'étude.

Programme

Ceci est un pré-programme. N'hésitez pas à faire vos retours: contact


Présentation: théorie et concepts présentation

L'objectif de l'atelier est de décrire son domaine par un langage métier qui facilitera à un scientifique de programmer son domaine. Il s'agit ici de (re-)conceptualiser son domaine sous forme d'un ensemble de concepts, de leurs relations. Les participants pourront venir avec leur cas d'étude et une première conceptualisation de leur domaine sous forme d'une ontologie, d'une diagramme de classe UML, d'un modèle ecore…

Outil: Xtext

La pratique! Tuto

  1. Mobiliser/formaliser mon expertise métier (ontologie, existant, modèle ecore, …) ⇒ création de la syntaxe de son langage par un programme “exemple”
  2. Créer le méta-modèle et la syntaxe de son langage
  3. Générer la grammaire de son langage
  4. Comment outiller mon nouveau langage? Générer et adapter l'éditeur de mon langage. Corriger la grammaire.

La pratique! (suite)

Comment transformer son langage vers un langage cible (java, C, pyton, script propriétaire, …)?

L'objectif de cet atelier est de se faire une idée de l'utilisation possible du langage à savoir lui donner une sémantique en programmation les actions du langage vers un langage cible. Pour exemple, un langage de script d'une plate-forme de simulation pourra être choisi pour intégrer l'existant.

Génération de code (cas d'une sémantique d'exécution translationnelle).

Comment construire un compilateur ou un interpréteur pour exécuter mon langage à partir de son arbre syntaxique abstrait: a. en écrivant directement le code b. en définissant les transformations entre les 2 langages

Intérêt pour la conservation de l'existant? La construction de langage coeur inter-domaine. Le portage sur de nouvelles plate-formes. Sébastien Mosser, université de Nice


Ressources

Editions précédentes

Nous avons vu lors des éditions précédentes l'apport de l'IDM et des langages spécifiques de domaine (DSL) pour la modélisation collaborative et la simulation multi-domaine.

En effet l'édition IDM2013 posent la problématique de la modélisation collaborative multi-domaine et l'édition IDM2014 illustre par un cas d'étude les solutions d'ingénierie offertent par l'IDM.

JDEV2015

Ressources des JDEV2015 thématique "Modélisation et ingénierie"

XTEXT

Installation

Merci de faire l'installation des outils logiciels suivants sur votre ordinateur portable avant votre venue à l'atelier :