Equipe GL

Equipe GL

Responsable d'Équipe

Olivier Le Goaer

Université de Pau et des Pays de l'Adour

Avenue de l’Université

64000 Pau

olivier.legoaer @ univ-pau.fr

Equipe Génie Logiciel#ScienceDuLogiciel

Présentation

L’activité de recherche en génie logiciel concerne l’Ingénierie Dirigée par les Modèles et la spécification pour penser (concevoir...) et changer (adapter...) des systèmes logiciels jusqu’à des contextes de calcul grande échelle comme le “cloud computing”. L’adaptation de modèles exécutables, en modifiant le modèle en cours d’exécution par exemple, consiste à raisonner sur des langages de modélisation réflexifs et adaptatifs, à bâtir des librairies et des outils dédiés pour différents domaines : systèmes réactifs et à événements discrets (systèmes embarqués, app. mobiles, jeux vidéo...) via les formalismes informatiques idoines, des plus formels (réseaux de Petri, Bigraphes, Statecharts…) en passant par ceux semi-formels (Unified Modeling Language, Object Constraint Language…).

Le génie logiciel s’intéresse à la qualité du logiciel. Les facteurs qualité les plus connus sont :

  1. Réutilisabilité (approche par composants et services, rétro-ingénierie...) ;
  2. Maintenabilité (ingénierie des exigences, adaptation...) ;
  3. Fiabilité (incluse de manière plus générale dans la sûreté de fonctionnement qui dépasse le spectre du génie logiciel : “hardware”, réseaux, etc.) ;
  4. Sécurité (s’étendant aussi largement au-delà du génie logiciel) ;
  5. “Scalabilité” (e., aptitude au passage à l’échelle) ;
  6. Et utilisabilité.

Les membres de cette ambition s’intéressent à des concepts, techniques, méthodes et outils spécialisés : les langages de modélisation, les formalismes de spécification et l’Ingénierie Dirigée par les Modèles pour produire des modèles formels (i.e., mathématiquement interprétables) et/ou exécutables (e.g., “bibliothèques” dans du code ad hoc) pour augmenter la qualité du logiciel en général. Les qualités 1 (réutilisabilité) et 2 (maintenabilité) sont considérées intrinsèques à la modélisation (cf. Section “Orientations de recherche”). Les qualités 3 (fiabilité) et 5 (“scalabilité”) sont traitées par la preuve de propriétés (e.g., absence de blocage à l’exécution, connectivité/interopérabilité par construction...) dès lors que les modèles sont adossés à une théorie mathématique. La garantie d’absence de bogues (preuve, test...) est caractéristique d’un problème de fiabilité alors que la “scalabilité” s’intéresse à la façon dont les systèmes logiciels doivent être composés pour éviter tout défaut à la conception et défaillance à l’exécution, incluant performance, résilience, frugalité, etc. 

Membres

Nom Prénom

Qualité

Site

Olivier Le Goaer

Mcf

Pau

Nabil Hameurlain

Mcf

Pau

Franck Barbier

Pr

Pau

Jawher Jerray

Mcf

Pau

mél:  prénom.nom@univ-pau.fr

Doctorants

Nom Prénom

MARIR Souad

Léa BRUNSCHWIG

Thématiques

  • Software Technologies
  • Sciences et technologies logicielles
  • Conception, déploiement et exécution de logiciel par les modèles
  • Adaptation
  • Approche “système de système”
  • Green Software Engineering (GSE)

Projets

1) Projets Internationaux

Projet 1 : Spécification Formelle et Analyse des environnements du Cloud Computing

Ce projet a pour objectif de proposer un modèle extensible défini par une combinaison saine et judicieuse des bigraphes et du langage Maude afin de fournir un cadre rigoureux pour décrire formellement les architectures orientées service, et plus particulièrement celles basées Cloud. Le but est de définir un cadre formel fournissant des fondements sémantiques et abstraits nécessaires pour raisonner sur les architectures Cloud et plus particulièrement sur la dynamique et l’élasticité des ressources.

En savoir plus

2) Projets Européens

Projet 2 : MegaM@RT : MegaModelling at RunTime 

Ce projet a pour objectif de développer des méthodes et outils basés sur des modèles pour le développement logiciel continu entre la conception et la phase d'exécution, incluant de la vérification, du test, du monitoring ou bien du traçage du système pendant son exécution. Ces méthodes et outils ont pour but d’améliorer la qualité et la productivité pour le développement de systèmes industriels complexes.

En savoir plus

3) Projets Nationaux

Projet 3 : ecoCode

La commission de l'aménagement du territoire et du développement durable du Sénat a lancé ce 29 janvier 2020 une mission d'information pour évaluer les impacts environnementaux du digital en France. C’est dans ce contexte de sobriété numérique que le projet de recherche ecoCode est né (anciennement baptisé CleanApps). Son objectif est de proposer des solutions innovantes aux développeurs pour l’écoconception de leurs applications mobiles (Android / iOS). En effet, des millions d’applications mobiles en circulation sont trop gourmandes en énergie à cause de défauts de conception. ecoCode vise à offrir des outils pour (a) détecter ces défauts et (b) les corriger.
Le projet lancé fin 2019 a franchi une première étape cruciale en 2020 : l’ouverture de la plateforme collaborative (http://www.ecocode.io/) à destination de tous les développeurs mobiles, pour recueillir leurs meilleures (resp. mauvaises) pratiques du point de vue énergétique. A partir de cette base de connaissance, il sera possible de construire les outils d'analyse et de réparation automatique de programmes Android et iOS.

En savoir plus

Plateformes, démos et logiciels

Publications