DevOps et IHM pour l'ingénierie des systèmes complexes

Publié le
Equipe
Lieu
Rennes
Unité de recherche
IRISA - UMR 6074
Description du sujet de la thèse

La conception de systèmes complexes requiert la participation de nombreux acteurs apportant chacun leur propre expertise sur le système, et utilisant pour cela leur propre outils et méthodes. La conception en rupture de nouveaux systèmes complexes requiert une forte flexibilité entre ces acteurs. Ce manque de flexibilité affecte la capacité à établir une intelligence collective où l’ensemble des individus collaborent globalement et de manière agile.

Le problème global de la thèse est donc comment revoir les environnements d'ingénierie et le cycle de développement des systèmes complexes, impliquant de nombreux acteurs de différents domaines, pour apporter l’agilité indispensable pour favoriser la créativité et valoriser l'implication de chacun des acteurs.

Pour pallier cette limite à l'intelligence collective, nous étudierons : 1/ l’applicabilité du DevOps pour la conception de systèmes complexes; 2/ l’utilisation d’interactions et de techniques de visualisation dédiées à ces nouveaux environnements d'ingénierie utilisables. Le DevOps vise, entre autres, à réduire la distance entre les différents acteurs et à améliorer les interactions entre ces derniers grâce à une chaîne d'outils adaptée. L'exécution de cette chaîne d'outils vise à produire dans les délais les plus courts possible un résultat global. La recherche de ce résultat global fédère les différents acteurs impliqués, venant possiblement de différents domaines, autour d'un objectif final commun. Dans le contexte de l’ingénierie système, le DevOps permettrait de tirer parti du flux de valeurs établi pour automatiser au maximum certaines activités, et assurer une amélioration continue sur le système en cours de conception. Cependant, si le DevOps est largement utilisé pour le développement de logiciels, il n’est conceptuellement pas adapté à l'ingénierie système en raison de paradigmes différents. Les verrous scientifiques à étudier pendant la thèse sont les suivants :

  • Comment établir une chaîne principale d'outils DevOps pour l'ingénierie système recherchant des optimum globaux en permettant une coordination socio-technique entre les différents acteurs impliqués ?
  • Comment sur une chaîne locale d'outils DevOps un acteur peut-il s'appuyer pour étudier des optimum locaux sans affecter la chaîne principale ?
  • Comment dans un contexte DevOps propager une évolution réalisée par un acteur sur ses données, aux autres données impactées gérées par d'autres acteurs ?
  • Comment chaque acteur, avec leur point de vue spécifique, peut-il visualiser, valider et analyser des optimum locaux et globaux ?
  • Quelles techniques d'IHM à créer, intégrer dans ces nouveaux environnements d'ingénierie pour améliorer l'utisabilité et la translucence sociale?
Bibliographie

[1] Melange: A Meta-language for Modular and Reusable Development of DSLs, Thomas Degueule, Benoit Combemale, Arnaud Blouin, Olivier Barais, Jean-Marc Jézéquel, Proc. Of SLE 2015

[2] Arnaud Blouin, Jean-Marc Jézéquel. Interacto: A Modern User Interaction Processing Model. IEEE Transactions on Software Engineering, In press, pp.1-20

[3] Jeanjean, P., Combemale, B., & Barais, O. (2019, October). From DSL specification to interactive computer programming environment. In Proc. Of SLE 2019

[4] Deantoni, J., Brun, C., Caillaud, B., Benoit Combemale, et al.. Domain globalization: Using languages to support technical and social coordination. In Globalizing Domain-Specific Languages; 2015

[5] Coulon, F., Auvolat, A., Combemale, B., Bromberg, Y. D., Taïani, F., Barais, O., & Plouzeau, N. (2020, November). Modular and distributed IDE. In Proc. Of SLE 2020

[6] Safe Model Polymorphism for Flexible Modeling, Thomas Degueule, Benoit Combemale, Arnaud Blouin, Olivier Barais, Jean-Marc Jézéquel, COMLAN journal, 2016, 49, pp.30

[7] Erickson, T., & Kellogg, W. A. (2000). Social translucence: an approach to designing systems that support social processes. ACM transactions on computer-human interaction (TOCHI), 7(1), 59-83.

[8] Elazhary, O. et al.. Adept: A socio-technical theory of continuous integration. ICSE’2021, NIER

[9] Hoffswell, Jane, Arvind Satyanarayan, and Jeffrey Heer. "Augmenting code with in situ visualizations to aid program understanding." Proc. Of CHI 2018

[10] Coblenz, M., Kambhatla, G., Koronkevich, P., et al. PLIERS: A Process that Integrates User-Centered Methods into Programming Language Design. ACM Trans. On CHI (TOCHI), 2021, 1-53.

[11] Bragdon, Andrew, et al. "Code bubbles: rethinking the user interface paradigm of integrated development environments." Proc. Of ICSE’10.

Liste des encadrants et encadrantes de thèse

Nom, Prénom
benoit.combemale@irisa.fr
Type d'encadrement
Directeur.trice de thèse
Unité de recherche
UMR 6074
Equipe

Nom, Prénom
Arnaud Blouin
Type d'encadrement
Co-encadrant.e
Unité de recherche
UMR 6074
Equipe
Contact·s
Nom
benoit.combemale@irisa.fr
Email
benoit.combemale@irisa.fr
Nom
Arnaud Blouin
Email
arnaud.blouin@irisa.fr
Mots-clés
DevOps, langages dédiés, environnement de développement, interaction humain-machine, ingénierie dirigée par les modèles, live programming, utilisabilité