Un langage et une plateforme pour la définition et l’exécution de bonnes pratiques de modélisation

par Vincent Le Gloahec

Thèse de doctorat en STIC

Sous la direction de Salah Sadou.


  • Résumé

    Le capital le plus précieux d’une entreprise d’ingénierie réside dans les connaissances et le savoir-faire acquis au fils des ans par ses employés. Malheureusement, faute de moyens qu’elles jugent adéquats, la plupart des entreprises ne rationalisent pas la gestion de ce type de connaissance. Dans le domaine de l’ingénierie des logiciels, ce savoir est généralement rassemblé sous la forme de bonnes pratiques documentées de manière informelle, peu propice à un usage effectif et adéquat de ces pratiques. Dans ce domaine, les activités de modélisation sont devenues prépondérantes, favorisant la réduction des efforts et des coûts de développement. La mise en oeuvre effective des bonnes pratiques liées aux activités de modélisation permettrait d’améliorer la productivité des développeurs et la qualité finale des logiciels. L’objectif de cette thèse, fruit d’une collaboration entre la société Alkante et le laboratoire VALORIA, est d’offrir un cadre à la fois théorique et pratique favorisant la capitalisation ainsi que la mise en application des bonnes pratiques de modélisation. Une démarche de gestion des bonnes pratiques de modélisation (BPM) est proposée. Celle-ci s’appuie sur les principes de l’ingénierie dirigée par les modèles (IDM), en proposant un découpage selon deux niveaux d’abstraction : un niveau PIM (Platform Independent Model) dédié à la capitalisation des BPM de manière indépendante de plateformes spécifiques et assurant ainsi la pérennité du savoir, et un niveau PSM (Platform Specific Model) destiné à la vérification du respect des BPM au sein des outils de modélisation. Pour assurer la capitalisation des bonnes pratiques (au niveau PIM), un langage spécifique dédié à la description des BPM a été élaboré, sur la base de caractéristiques communes identifiées par une étude approfondie portant sur deux principaux types de bonnes pratiques : celles centrées sur des aspects processus, et d’autres d’avantage focalisées sur le style ou la forme des modèles. Ce langage, dénommé GooMod, est défini par sa syntaxe abstraite, représentée par un métamodèle conforme au MOF (Meta Object Facility), une description de sa sémantique et une syntaxe concrète graphique. Une plateforme fournit les deux outils nécessaires à la fois à la définition de BPM (conforment au langage GooMod) et à leur mise en application effective au sein d’outils de modélisation. L’outil BPM Définition est un éditeur graphique qui facilite la description de BPM ciblant n’importe quel langage de modélisation (UML par exemple), mais de manière indépendante des outils de modélisation. L’outil BPM Exécution fournit une implémentation de niveau PSM, ciblant spécifiquement les outils de modélisation basés sur le framework GMF (Graphical Modeling Framework) de l’environnement de développement Eclipse. Lors des activités de modélisation effectuées par les concepteurs, cet outil automatise la vérification du respect de BPM décrites en GooMod. Ce travail a fait l’objet d’une validation portant sur deux aspects de l’approche proposée. Une étude de cas industriel illustre la définition en GooMod d’une BPM spécifique à la modélisation d’applications Web développées par la société Alkante. Une expérimentation portant sur l’évaluation de l’efficacité et de l’utilisabilité de l’outil d’exécution des BPM a été menée auprès d’étudiants.

  • Titre traduit

    A language and a plateform for the definition and execution of good modeling practices


  • Résumé

    The most valuable asset of an IT company lies in knowledge and know-how acquired over the years by its employees. Unfortunately, lacking means they deem appropriate, most companies do not streamline the management of such knowledge. In the field of software engineering, this knowledge is usually collected in the form of best practices documented in an informal way, rather unfavorable to the effective and adequate use of these practices. In this area, the modeling activities have become predominant, favoring the reduction of effort and development costs. The effective implementation of best practices related to modeling activities would help improve developer productivity and the final quality of software. The objective of this thesis, as part of a collaboration between the Alkante company and the VALORIA laboratory, is to provide a both theoretical and practical framework favoring the capitalization of best modeling practices. An approach for the management of good modeling practices (GMPs) is proposed. This approach relies on the principles of model-driven engineering (MDE), by proposing a division into two levels of abstraction: a PIM level (Platform Independent Model) dedicated to the capitalization of GMPs independently of any specific platform, ensuring the sustainability of knowledge, and a PSM level (Platform Specific Model) dedicated to the verification of compliance of GMPs in modeling tools. To ensure the capitalization of good practices (GPs), a specific language dedicated to the description of GMPs has been developed on the basis of common characteristics identified by a detailed study of two types of GPs : those focusing on process aspects, and others more focused on style or shape of models. This langage, called GooMod, is defined by its abstract syntax, represented as a MOF compliant metamodel (MOF stands for Meta Object Facility), a description of its semantics, and a graphical concrete syntax. A platform provides the two necessary tools for both the definition of GMPs (that conforms to the GooMod language) and their effective application in modeling tools. The GMP Definition Tool is a graphical editor that facilitates the description of GMPs targeting any modeling language (e. G. GMPs for the UML), but independently of modeling tools. The GMP Execution Tool is a PSM level implementation specifically targeting modeling tools based on the Graphical Modeling Framework (GMF) of the Eclipse integrated development environment. During modeling activities performed by designers, this tool automates the verification of compliance of GMPs originally described in GooMod. This work has been validated on two aspects of the proposed approach. An industrial case study illustrates the definition, using the GooMod language, of a GMP specific to the modeling of Web applications developed by the Alkante company. An experiment on the evaluation of the effectiveness and usability of the GMP Execution Tool was conducted among students.

Consulter en bibliothèque

La version de soutenance existe sous forme papier

Informations

  • Détails : 1 vol. (XII-185 p.)
  • Annexes : Bibliogr. p. 153-165

Où se trouve cette thèse ?

  • Bibliothèque : Université de Bretagne-Sud (Lorient). Bibliothèque universitaire.
  • Disponible pour le PEB
Voir dans le Sudoc, catalogue collectif des bibliothèques de l'enseignement supérieur et de la recherche.