Systematic use of models of concurrency in executable domain-specific modelling languages / Florent Latombe ; sous la direction de Yamine Aït-Ameur et de Xavier Crégut

Date :

Type : Livre / Book

Type : Thèse / Thesis

Langue / Language : anglais / English

Modèles linguistiques

Génie logiciel

Sémantique opérationnelle

Classification Dewey : 000

Aït-Ameur, Yamine (1966-.... ; enseignant-chercheur en informatique) (Directeur de thèse / thesis advisor)

Crégut, Xavier (Directeur de thèse / thesis advisor)

Boulanger, Frédéric (19..-.... ; directeur de thèses en informatique) (Président du jury de soutenance / praeses)

Paige, Richard F. (Rapporteur de la thèse / thesis reporter)

Valecillo, Antonio (Rapporteur de la thèse / thesis reporter)

Pantel, Marc (19..-.... ; enseignant-chercheur en informatique) (Membre du jury / opponent)

De Antoni, Julien (Membre du jury / opponent)

Institut national polytechnique (Toulouse ; 1969-....) (Organisme de soutenance / degree-grantor)

École doctorale Mathématiques, informatique et télécommunications (Toulouse) (Ecole doctorale associée à la thèse / doctoral school)

Institut de Recherche en Informatique de Toulouse (1995-....) (Laboratoire associé à la thèse / thesis associated laboratory)

Résumé / Abstract : La programmation orientée langage (Language-Oriented Programming – LOP) préconise l’utilisation de langages de modélisation dédiés exécutables (eXecutable Domain-Specific Modeling Languages – xDSMLs) pour la conception, le développement, la vérification et la validation de systèmes hautement concurrents. De tels systèmes placent l’expression de la concurrence dans les langages informatiques au coeur du processus d’ingénierie logicielle, par exemple à l’aide de formalismes dédiés appelés modèles de concurrence (Models of Concurrency – MoCs). Ceux-ci permettent une analyse poussée du comportement des systèmes durant les phases de vérification et de validation, mais demeurent complexes à comprendre, utiliser, et maîtriser. Dans cette thèse, nous développons et étendons une approche qui vise à faire collaborer l’approche LOP et les MoCs à travers le développement de xDSMLs dans lesquels la concurrence est spécifiée de façon explicite (Concurrency-aware xDSMLs). Dans de tels langages, on spécifie l’utilisation systématique d’un MoC au niveau de la sémantique d’exécution du langage, facilitant l’expérience pour l’utilisateur final qui n’a alors pas besoin d’appréhender et de maîtriser l’utilisation du MoC choisi.Un tel langage peut être raffiné lors de la phase de déploiement, pour s’adapter à la plateforme utilisée, et les systèmes décrits peuvent être analysés sur la base du MoC utilisé.

Résumé / Abstract : Language-Oriented Programming (LOP) advocates designing eXecutable Domain-Specific Modeling Languages (xDSMLs) to facilitate the design, development, verification and validation of modern softwareintensive and highly-concurrent systems. These systems place their needs of rich concurrency constructs at the heart of modern software engineering processes. To ease theirdevelopment, theoretical computer science has studied the use of dedicated paradigms for the specification of concurrent systems, called Models of Concurrency (MoCs). They enable the use of concurrencyaware analyses such as detecting deadlocks or starvation situations, but are complex to understand and master. In this thesis, we develop and extend an approach that aims at reconciling LOP and MoCs by designing so-called Concurrencyaware xDSMLs. In these languages, the systematic use of a MoC is specified at the language level, removing from the end-user the burden of understanding or using MoCs. It also allows the refinement of the language for specific execution platforms, and enables the use of concurrency-aware analyses on the systems.