• Aucun résultat trouvé

Méthodes formelles pour le test et la vérification

2.5 Indicateurs

3.3.3 Méthodes formelles pour le test et la vérification

Enseignants-chercheurs :Ana Rosa CAVALLI, John Paul GIBSON, Stéphane MAAG, Amel MAMMAR Thèses soutenues :11

Thèses en cours :8 Test passif

Le test passif ou monitorage est une approche permettant de tester si un système est conforme à son cahier des charges. De nombreuses techniques dites passives (car elles n’impactent pas le fonctionnement du système) ne consi-dèrent que la partie contrôle des messages utilisés par les protocoles de communication. Les parties données sont alors négligées car elles sont considérées comme non pertinentes dans le test de conformité et sont difficiles à analyser en temps acceptable. Nous avons alors proposé d’étudier de nouvelles approches permettant de rendre symboliques les variables et les données de tels systèmes. L’objectif est de définir les propriétés fonctionnelles mais également les attaques éventuelles dans un réseau de communications en termes de systèmes symboliques. L’intérêt étant de vérifier l’absence ou la présence d’une propriété notamment de vulnérabilité dans un ensemble de traces d’exécution.

L’utilisation de valeurs symboliques permet alors d’étudier plusieurs scénarios contenant éventuellement un nombre infini de valeurs réelles instanciées. Les parties contrôle et données des protocoles sont alors prises en considération pour tester des aspects comportementaux ou de sécurité. Notre technique de test passif a été outillée et appliquée dans une architecture IMS (IP multimedia subsystem) et Bluetooth. Elle est également aujourd’hui utilisée en col-laboration avec des industriels dans le cadre d’un projet européen ITEA DIAMONDS. Nos travaux ont également été soutenus par le projet STIC AmSud SCAN. Les résultats sont aujourd’hui très prometteurs et permettent de considérer des volumes de données très importants. Plusieurs articles ont par ailleurs été publiés [434, 581, 532, 659].

L’équipe étudie également les problématiques du test de conformité et d’interopérabilité des services IMS.

Contrairement aux réseaux MANET dans lesquels les interfaces des entités et couches protocolaires à tester sont très souvent disponibles, ce n’est plus le cas pour les services IMS qui font appel à des services externes dans des architectures distribuées. Les premiers résultats basés sur la définition syntaxique et sémantique d’invariants ont permis de vérifier de nombreuses propriétés (notamment sur le protocole SIP) sur de grandes traces d’exé-cution. Cela a par ailleurs soulevé de nouvelles difficultés aujourd’hui traitées par la prise en considération des données dans les paquets échangés par les entités communicantes. Pour cela, la logique de Horn est utilisée. Ces techniques ont été étudiées dans le cadre du projet EXOTICUS du pôle Systematic et sont aujourd’hui en cours

d’adaptation dans le cadre le projet Stic Amsud CUDEN. Un prototype est mis à disposition sous licence GPL et permet l’analyse par monitorage de trace réelle d’exécution. Ces travaux ont mené à plusieurs publications [491, 503, 504, 622, 436, 429, 454, 623, 453, 591, 509, 480, 588, 506, 474, 475]. Un article [329] a notamment été publié dansACM/IEEE Transactions on Networking.

Un effort de recherche important a porté sur le test des services web. Nous nous sommes particulièrement intéressés à l’étude d’algorithmes pour le test de la composition de services web en tenant compte aussi bien de la qualité de service que de la qualité d’expérience, et en intégrant des contraintes temporelles. Des résultats sont presentés dans les publications [613, 621, 470, 514, 484, 429, 541, 542, 555, 554, 447, 578]. Nos activités sur le test des services web ont été soutenues par le projet COFECUB ROBUSTWEB.

L’équipe poursuit également ses travaux sur le test de la sécurité. Elle s’est attelée à la conception de techniques pour le test et le monitorage des propriétés de sécurité, la détection d’intrusion et de vulnérabilités.

Nous avons travaillé sur la validation des politiques de sécurité d’organisations et de leur interopérabilité.

Nous avons notamment modélisé la notion de confiance (trust) dans un contexte d’interopérabilité d’organisations possédant des politiques de sécurité différentes. Nous avons ainsi développé un modèle formel de la confiance et défini une extension du langage de contrôle d’accès ORBAC qui intègre ce nouveau concept.

En plus de la détection d’intrusions dans le contexte des réseaux (évoquée plus haut), l’équipe a étudié la détection de vulnérabilités dans le cas des langages de programmation. En se basant sur une modélisation graphique des vulnérabilités, nous avons proposé un langage formel permettant d’associer une description formelle précise et non ambigüe à chaque VCG (graphe des causes de vulnérabilité) en traduisant ses différentes causes en prédicats logiques sur lesquels il devient possible de raisonner. L’obtention d’une telle description formelle a rendu possible la détection de vulnérabilités par le test passif sur des traces d’exécution. Nos travaux ont été publiés dans plusieurs conférences et plusieurs journaux dont par exemple [339, 343, 340, 388, 342]. Plusieurs projets ont aidé à la réalisation de ces travaux, notamment les 2 projets européens FP7 SHIELDS et INTER-TRUST, les 2 projets ANR PIMI et WEBMOV, le projet DGA ISER et le projet CELTIC IPNQSIS.

Test actif

Les aspects mobilité, topologie et connectivité dans les réseaux sans fil mobiles ad-hoc ont ouvert de nouvelles perspectives de recherche tant au niveau génération/exécution des tests de conformité mais également envers la modélisation formelle des fonctionnalités de ces systèmes. Les langages de modélisation, de spécification et de description formels utilisés pour les réseaux filaires ne sont plus adaptés aux contraintes intrinsèques de ces nouveaux systèmes et les architectures de test notamment standardisées par l’ISO sont difficilement applicables aux topologies de ces réseaux qui peuvent être en nombre exponential.

Nous avons donc, dans un premier temps, étudié la modélisation des noeuds dans de tels systèmes en établis-sant un algorithme d’auto-similarité permettant de réduire le nombre de noeuds à spécifier. Tout en conservant l’observation des cas de test dans la spécification du système, la génération automatisée des séquences de test de conformité a pu être effectuée. Ces méthodes ont ensuite été adaptées au test des protocoles de routage dans les réseaux véhiculaires dans le cadre du projet STIC-Asie MAMI.

Nos travaux ont évolué vers le test d’interopérabilité. En effet, même si certaines propriétés distribuées per-mettent de tester l’interopérabilité de ces systèmes, il n’existait pas d’architectures de test dédiées à de tels systèmes. Nous avons donc proposé plusieurs modèles qui ont été appliqués sur des implantations réelles inté-grées à des testbeds en laboratoire. Ces travaux ont été présentés dans le cadre de conférences internationales [529, 544, 645, 468, 442]. Plusieurs articles de revues ont également été publiés sur le sujet [357, 367, 383] dont un dansACM computing surveys.

Vérification et modélisation

L’équipe s’intéresse à la définition d’un environnement formel pour le développement sûr d’applications sys-tèmes d’information. Pour ce faire, une modélisation graphique du système à développer est réalisée en UML puis traduite dans le language B pour preuve et validation. Le langage graphique UML ne permettant malheureusement pas d’exprimer diverses contraintes, nous proposons une approche formelle qui permet de calculer les préconditions additionnelles à ajouter à chaque opération B afin que celle-ci respecte toutes les contraintes de la spécification.

L’approche est basée sur la définition d’un ensemble de règles de normalisation et de simplification. Ce travail a donné lieu à plusieurs publications dont [343].

L’équipe s’est également penchée sur la modélisation et la vérification des propriétés dynamiques dont la vérifi-cation dépend de plusieurs états pris à des instants différents de l’évolution du système. Nous avons particulièrement étudié la propriété d’atteignabilité [444], de non-interférence[415] et d’absence [416].

Nous avons également mené des recherches sur la détection de la vulnérabilité par la preuve. En effet, l’approche par test passif peut produire des faux positifs car la détection est plutôt syntaxique et les valeurs des variables ne sont pas prises en compte. L’approche que nous proposons se base sur l’utilisation du langage formel B vers lequel des règles de mapping d’un programme C ont été définies. Puis une activité de preuve et de model checking est menée sur la spécification B ainsi obtenue pour affirmer ou détecter l’absence ou la présence de vulnérabilités. Ces travaux ont été publiés dans [445, 443].

Une partie de l’équipe travaille sur le génie logiciel formel, et notamment sur la modélisation des interactions de services et de leur composition [625, 361, 359, 458]. Nous avons également mené des recherches sur la modé-lisation formelle du vote électronique. Notre principale contribution de recherche était de démontrer qu’il était possible de formaliser certains besoins fonctionnels (voter à un bureau de vote de son choix et la possibilité de revoter), et d’analyser, à travers la simulation de modèles formels, les qualités des services offerts par différentes architectures pour les systèmes distribués de vote électronique. Quelques exemples de nos publications traitant du vote électronique sont [539, 538, 483, 361, 593, 586, 570]. Ces travaux ont été réalisés dans le cadre du projet ANR SAVE.

3.4 Collaborations, transfert et rayonnement

3.4.1 Collaborations nationales

L’équipe collabore avec plusieurs équipes de recherche en France à travers la participation à plusieurs projets collaboratifs. Nous rappelons brièvement les projets les plus importants auquels nous participons et qui ont été cités dans la description de nos axes de recherche. Nous finirons ensuite par d’autres actions collaboratives qui se font en dehors des contrats de recherche.

L’équipe contribue à plusieurs projets nationaux financés par l’ANR : PIMI, WEBMOV, CHECKBOUND, CAPTEURS, SAVE, ECOFRAME, WINEM et MARMOTE.

Notre participation aux projets des pôles de compétitivité s’est concrétisée à travers les projets CARRIOCAS, 100GRIA et EXOTICUS du pôle Systematic et le projet ISER du pôle DGCIS.

Nous participons aussi au projet Fiabilité et Sureté de Fonctionnement de l’IRT System X. Nous sommes également impliqués dans quelques projets financés par Digiteo à travers MARINA et WISDOM.

Notre collaboration avec le monde industriel est également bien développée. Nous avons de nombreux contrats de recherche bilatéraux avec des entreprises comme Orange (ANNEAU-ETOILES, Reactive control in LTE-advanced networks) ou encore Astrium, et Thales (RAIL2). Ces collaborations s’ajoutent à celles qui se font grâce aux thèses CIFRE (4 thèses avec Orange Labs, et une thèse avec Montimage).

J. Jackuobwicz collabore activement avec plusieurs chercheurs du LTCI (Telecom Paritech) sur le thème de l’op-timisation distribuée. H. Castel mène une partie de ses travaux avec des collègues du laboratoire PRISM (université de Versailles) et de l’université Paris 12. T. Chahed travaille avec des chercheurs de l’INRIA et d’Orange Labs.

W. Ben-Ameur collabore également avec Orange Labs et l’université de Caen. A. Cavalli et S. Maag entretiennent une activité de recherche commune avec le LRI (Orsay). M. Becker et M. Marot travaillent avec des chercheurs de l’ENSEEIHT de Toulouse .

3.4.2 Collaborations internationales

L’équipe collabore avec plusieurs équipes intenationales à travers la participation à plusieurs projets collaboratifs que nous rappelons dans la suite.

L’équipe a participé aux projets européens suivants : TAROT, SHIELDS, OPEN ETCS, DIAMONDS, INTER-TRUST, IPNQSIS et EURO-NF.

De nombreuses collaborations ont été entamées avec plusieurs équipes de l’Amérique du sud à travers le pro-gramme STIC-Amsud et notamment les projets SCAN et CUDEN ainsi que le propro-gramme COFECUB (projets PLAVISI et ROBUSTWEB). Une thèse a été financée par le Mexique.

Nous collaborons également avec diverses institutions asiatiques à travers le programme STIC-Asie et les projets URSA, MAMI et Network RF energy. Une thèse en co-tutelle avec le Liban a été financée grâce à une bourse Eiffel.

Un exemple significatif de collaboration fructueuse avec des équipes étrangères est le séjour sabbatique de 8 mois (2012) de José Neto à l’université de Padoue (Italie), au sein de l’équipe du Professeur Michaelangelo Conforti dans le département de mathématiques pures et appliquées.

Un autre exemple est donné par le co-encadrement de thèse en commun entre Amel Mammar et l’équipe du professeur Marc Frappier de l’université de Sherbrooke. Amel Mammar est désormais professeur associée de cette équipe.

Signalons également que Stéphane Maag est aussi chercheur associé du laboratoire RLICT de l’université Galileo au Guatemala.

Walid Ben-Ameur a effectué un séjour sabbatique de 2 mois à Varsovie (invité par la WUT : Warsaw university of technology). Ce séjour s’est concrétisé par plusieurs publications communes et une thèse en co-tutelle avec La Pologne.

L’équipe (notamment Hind Castel et Tülin Atmaaca) collabore avec Alexandre Brandwajn, professeur à l’uni-versité de Californie à Santa Cruz, sur la combinaison des méthodes approximatives et des bornes stochastiques pour encadrer l’erreur. Le professeur Brandwajn a fait un séjour sabbatique de 4 mois en 2012 à Samovar. T.

Chahed travaille avec Tamer Basar de l’université Urbana-Champaign, Illinois, sur la dissémination de contenus et la compétition entre eux dans les réseaux sociaux. M. Becker collabore avec le IIT Gandhinagar en Inde et avec l’université de Buffalo aux USA.

3.4.3 Rayonnement et animation scientifique

Divers prix et distinctions

– Prix du meilleur article à la conférence EMERGING’2010 (International Conference on Emerging Network Intelligence) à Florence, Italie.

– Prix du meilleur article à la conférence ECUMN’2009 (European Conference on Universal Multiservice Net-works) Sliema, Malta.

– Prix du meilleur article à la conférence ComNet’2010(International Conference on Communications and Net-working).

– Prix du meilleur article à la conférence internationale ICTSS’2011 (IFIP International Conference on Testing Software and Systems) à Paris.

Board de sociétés savantes (IEEE...), éditeurs, éditeurs associés de revues – A. Cavalli est membre du comité éditorial de la revue Elsevier Networking Science.

– A. Mammar est membre du comité éditorial de la revue Journal of Secure Software Engineering.

– J-P. Gibson est membre du comité éditorial de la revue Annals of Telecommunications depuis 2008.

– T. Atmaca est membre du comité éditorial de la revue Theoretical and Applied Informatics.

– T. Atmaca est éditeur en chef de la revue International Journal on Advances in Telecommunications.

– T. Chahed est co-éditeur du numéro spécial de la revue Performance Evaluation, Vol 67, Issue 4, 2010.

– T. Chahed est co-éditeur du numéro spécial de la revue Dynamic Games and Applications, Vol 3, Issue 1, 2013.

– S. Maag est membre du comité éditorial de la revue IJEI (International Journal of Engineering and Industries).

– S. Maag est membre du comité éditorial de la revue International Journal on Advances in Software Enginee-ring.

– A. Cavalli est éditeur d’un numéro spécial du journal Software Testing, Verification and Reliability (STVR, Wiley) (à paraître).

– W. Ben-Ameur est éditeur d’un numéro spécial du journal Networks (Wiley) (à paraître).

– T. Atmaca est membre Senior de la SEE, 2011, Paris.

– T. Atmaca est IARIA Fellow depuis 2008.

– T. Atmaca est membre de l’Académie des Sciences Polonaise.

– T. Atmaca est membre du IFIP WG.6.3 (Performance of Communication Systems).

– T. Atmaca est membre de la IEEE Communications Society (Technical Committee, Transmission, Access and Optical Systems (TAOS)).

– W. Ben-Ameur est co-cordonnateur du groupe européen ENOG (européan network optimization group) de la société savante EURO (Association of European Operational Research Societies).

Communications invitées

Les membres de l’équipe sont régulièrement invités à donner des conférences plénières ou à présenter leurs travaux. T. Chahed a par exemple été keynote speaker à la conférence ComNet’2009. T. Atmaca a été invitée en 2013 par l’Académie des Sciences Polonaise (IITiS PAN) pour donner un séminaire sur l’économie de l’énergie dans les réseaux d’accès futurs. Elle a aussi été keynote speaker de l’un des workshops de la conférence IEEE SAINT Conference (Allemagne 2011) ainsi que de la conference Computer Networks organisée en Pologne en 2012. A.

Cavalli a présenté un tutorial sur l’évolution des techniques de test à la conférence IEEE ICST 2013, Luxembourg, 2013. Elle a aussi été keynote speaker dans le workshop WS-FMDS 2012. W. Ben-Ameur a donné une série de conférences sur l’optimisation combinatoire en 2010 à la Warsaw University of Technology. M. Becker a présenté une conférence invitée à l’Université de Buffalo sur les modèles de small-world et le beam-forming, et une conférence en Inde (ACWR2011) sur la structure topologique des réseaux de capteurs.

L’équipe a présenté plusieurs articles invités dans de nombreuses conférences. Nous en citons quelques exemples : A. Cavalli dans WWIC 2011, T. Chahed dans RELABIRA’2009 et RELABIRA’2012, T. Atmaca dans IFIP NF conference, Brisbane, Australie 2010, M. Becker dans Percom 2010 à Vienne, etc.

Organisation de conférences

Plusieurs membres de l’équipe ont organisé des conférences ou présidé des comités de programme de conférences.

Nous en présentons ici quelques exemples.

– Third International Conference on Software Testing, Verification and Validation : ICST 2010 (Paris) [prési-dence d’A. Cavalli]

– First User Conference on Advanced Automated Testing : UCAAT 2013 (Paris) [présidence d’A. Cavalli]

– International Conference on Networking and Future Internet : ICNFI 2012 (Turquie) [présidence de T. At-maca]

– International Conference on Networking and Future Internet : ICNFI 2011 (Paris) [présidence de T. Atmaca]

– Third International Conference on Performance Evaluation Methodologies and Tools : Valuetools 2008 (Grèce) [Co-présidence du comité de programme de T. Chahed]

– International Conference on Network Games, Control and Optimization : Netgcoop 2011 (Paris) [Co-présidence de T. Chahed]

Comités de programmes de conférences ou d’événements scientifiques

L’équipe participe activement aux comités de programmes de conférences scientifiques. Voici une sélection de ces conférences :

GLOBECOM’11–13, IEEE MASCOT’2013, IEEE ISCC’12, IEEE SAINT’12, IEEE COMPSAC’12, DRCN’11, RNDM’11–13, INOC’09–13, ISCO’10, SEC-MDA’09, INFORSID’10, WS-TBFM’10, FMICS’2013, EUSPN 2013, ICST’10–13, NetMM’13 UCAAT’13, ICTSS’ 08–13, SECTEST’10–12, AINA’12, A-MOST 2008, ASFNS-08, CFIP’08-09, CFIP’11, DPM’13, FMOODS/FORTE’09–10, FPS’12, ICNP’08–12, ICISS’12, NOTERE’10–11, QSIC’11, SETOP’09–13, SITIS’08–10, SITIS’12, TESTCOM/FATES’09,WS-FMDS’11–12, DEXA’09–13, BWINA’10, PWN’12, BWCCA’11, IADIS-MCCSIS’08–13, IADIS-AC’08-13, DATA’12–13, ICSEA’08–13, ICSOFT’08–13, INTENSIVE’09–

13, TPMC’12–13, VOTE-ID’13, BMSD’11–12, ICECCS’12, GTIP’11, RE-VOTE’11, TNS’08–11, FMET’08, JDIR’08–

09, ASMTA’11–13,IADIS-AC’08–12, BWA’08–12, DNAC’08–12, MEDHOC’08, ICCCN’08, AICT’09–12, ITC’09, GIIS’09, COMNET’09–12, IFIP WD’11, GRES’10, ICWUS’10, ICSNC’10, WMNC’11–12, ICDT’12, PS’2012, IS-CIS’09, ISCIS’11, AICT’08–13.

Participation à des groupes de travail

L’équipe participe activement aux GDRs du CNRS ainsi qu’à différents groupes de travail

– Ana Cavalli et Stéphane Maag sont membres du groupe MTV2 (Méthodes de test pour la Validation et la Vérification) du GDR GPL (Génie de la Programmation et du Logiciel)

– Ana Cavalli et Stéphane Maag sont membres du Comité Scientifique du groupe ResCom (Réseaux de Com-munication) du GDR ASR (Architectures, Sysètmes, Réseaux)

– Walid Ben-Ameur est co-animateur du groupe POC (polyèdres et optimisation combinatoire) et du groupe (optimisation de réseaux) du GDR RO (Recherche opérationnelle)

– Walid Ben-Ameur est co-coordonnateur du groupe européen ENOG (européan network optimization group) de la société savante EURO (Association of European Operational Research Societies)

– Tijani Chahed est l’animateur du réseau thématique "Architectures et gestion de réseaux" de l’Institut Mines-Télecom

– Ana Cavalli est co-animatrice du réseau thématique "Mathématiques appliquées et informatique fondamen-tale" de l’Institut Mines-Télecom

– Tülin Atmaca est membre du groupe de travail "Performance of Communication Systems" d’IFIP

– Walid Ben-Ameur est co-responsable de la tâche "network centric design of distributed architectures" du Labex DigiCosme

Expertise et évaluation

L’implication de l’équipe dans les comités éditoriaux des revues et les comités de programmes des conférences induit automatiquement un travail important d’évaluation. L’équipe participe également à l’arbitrage d’articles soumis aux meilleures revues.

Plusieurs membres de l’équipe sont aussi experts auprès de la commission européenne et participent activement à l’évaluation des propositions de projets (Programme FP7). A. Cavalli est par exemple membre du comité scientifique de STIC AMSUD depuis 2008. L’équipe expertise régulièrement les propositions soumises à l’ANR (blanc ou autres).

T. Chahed qui anime le réseau thématique "Architectures et gestion de réseaux" a un rôle important dans l’évaluation des projets internes à l’Institut Mines-Télécom. A. Cavalli qui co-anime le réseau thématique "Ma-thématiques appliquées et informatique fondamentale" joue un rôle similaire dans l’expertise des propositions. Le reste de l’équipe participe aussi à ces évaluations.

W. Ben-Ameur et S. Maag participent également à l’évaluation des projets soumis au Labex DigiCosme.

On peut aussi citer le fait que T. Chahed joue le rôle d’expert pour la DGRI (Ministère de la Recherche), pour le programme CEFIPRA, pour la Chaire UEB (Bretagne, 2012), et pour le FWO (Belgique, 2011 et 2012). W.

Ben-Ameur a expertisé des projets soumis à des organismes scientifiques du Québec, de la Suisse ou encore de la Roumanie.