![Page 1: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/1.jpg)
Systèmes d’information logiqueset leurs applications
Mireille Ducassé[email protected] 2010
Avec de larges emprunts à Sébastien Ferré, Peggy Cellier et Véronique Abily de l’équipe LIS de l’IRISA
![Page 2: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/2.jpg)
2
Introduction
• Données de plus en plus importantes– mail, fichiers, photos, musique, …
• Le problème n’est plus le stockage des données mais :– Comment les organiser ?– Comment les retrouver facilement ?
![Page 3: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/3.jpg)
3
Les solutions existantes 1/2• La navigation hiérarchique
– Systèmes de fichiers• Critères spécifiés dans un ordre fixé• Emplacement et chemin unique pour un fichier
• L’interrogation par requêtes– Bases de données
• Pas de guidage de l’utilisateur • Rajout de descriptions difficile : Nécessite une modification du schéma
– Moteurs de recherche• Pas besoin de connaître le schéma de la base• Requête = ensemble de mots
– Systèmes à base de tags• Pas de schéma, juste un ensemble d’étiquettes• Mise à jour de la base par les utilisateurs : rajout de tags• Langage de requête limité
![Page 4: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/4.jpg)
4
Les solutions existantes 2/2
Critère Système de fichiers
Base de données
Systèmes à base de tags
Extensible xTypage x
Relation d’ordre x
Requête THEN AND, OR, NOT AND/OR
Navigation x
![Page 5: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/5.jpg)
5
LIS : Systèmes d’information logiques
• descriptions extensibles par l’utilisateur• données typées• relations d’ordre entre les valeurs• requêtes expressives : patterns, AND, OR, NOT• système de navigation guidant l’utilisateur
• requêtes et navigation intégrées
en s’appuyant sur l’analyse logique de concepts (LCA), extension de l’analyse formelle de concepts (FCA)
![Page 6: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/6.jpg)
6
FCA : Analyse Formelle de ConceptsDonnées
• Contexte formel– objets + attributs + relation binaire
petite moyenne grande Proche du soleil Loin du soleil Avec sat. Sans sat.
Mercure X X X
Vénus X X X
Terre X X X
Mars X X X
Jupiter X X X
Saturne X X X
Uranus X X X
Neptune X X X
Pluton X X X
![Page 7: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/7.jpg)
7
Des objets aux attributs : intension
petite moyenne grande Proche du soleil Loin du soleil Avec sat. Sans sat
Mercure X X X
Vénus X X X
Terre X X XMars X X X
Jupiter X X X
Saturne X X X
Uranus X X X
Neptune X X X
Pluton X X X
Intent: ensemble maximal d’attributs partagés par l’ensemble d’objets O
intent (O) = {attr | obj O : ∀ ∈ (obj , attr ) I } ∈ex : intent ({Terre, Pluton}) = {petite , avec sat.}
![Page 8: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/8.jpg)
8
Des attributs aux objets : extension
petite moyenne grande Proche du soleil Loin du soleil Avec sat. Sans sat.
Mercure X X X
Vénus X X X
Terre X X XMars X X X
Jupiter X X X
Saturne X X X
Uranus X X X
Neptune X X X
Pluton X X X
Extent: ensemble maximal d’objets partageant un ensemble d’attributs A
extent (A) = {obj | attr A : ∀ ∈ (obj , attr ) I }∈ex : extent ({proche , avec sat.}) = {Terre, Mars}
![Page 9: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/9.jpg)
9
FCA : Analyse Formelle de ConceptsConcept formel
• Concept : paire (O, A) telle que – O = extent (A) – A = intent (O)
• correspond à un rectangle maximal dans la table
![Page 10: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/10.jpg)
10
Treillis de concepts
petite moyenne grande Proche du soleil Loin du soleil Avec satellites Sans sat
Mercure X X X
Vénus X X X
Terre X X X
Mars X X X
Jupiter X X X
Saturne X X X
Uranus X X X
Neptune X X X
Pluton X X X
petite avec sat.
proche loin
sans sat. grande moyenne
Mercure Terre Pluton Jupiter UranusVénus Mars Saturne Neptune
![Page 11: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/11.jpg)
11
Navigation dans le treillis
proche loin
petite avec sat.
sans sat. grande moyenne
Mercure Terre Pluton Jupiter UranusVénus Mars Saturne Neptune
proche !
avec sat. !
![Page 12: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/12.jpg)
12
Requête dans le treillis
proche loin
petite avec sat.
sans sat. grande moyenne
Mercure Terre Pluton Jupiter UranusVénus Mars Saturne Neptune
proche AND avec sat. !
![Page 13: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/13.jpg)
13
Mise à jour : restructuration automatique 1/2
• Il y a de la vie sur terre
petite avec sat.
proche loin
sans sat. grande moyenne
Mercure Mars Pluton Jupiter UranusVénus Saturne Neptune
vie
Terre
![Page 14: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/14.jpg)
14
Mise à jour : restructuration automatique 2/2
• Pluton n’est plus une planète !
avec sat.
proche loin
sans sat. grande moyenne
Mercure Mars Jupiter UranusVénus Saturne Neptune
vie
Terre
petite
![Page 15: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/15.jpg)
15
LCA : Analyse Logique de Concept [Ferré & Ridoux, 2000]
L’analyse formelle de concept permet de combiner requêtes simples et navigation
mais il lui manque • des types de données riches • des requêtes complexes (OR, NOT, patterns)• implication entre les attributs
Ces aspects sont fournis par la logiqueUn ensemble d’attributs est remplacé par une formule logique
![Page 16: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/16.jpg)
16
Camelis [Ferré, 2007]
• Implémentation d’un système d’information logique (LIS) – s’appuie sur LCA– combine requêtes et navigation
• Construction de requêtes complexes à partir d’une simple navigation
• Seuls les liens de navigation pertinents pour la requête courante sont visualisés
– offre une navigation « locale »• Les treillis deviennent très vite beaucoup trop gros pour
être investigués de manière globale
![Page 17: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/17.jpg)
17
Camelis : Interface graphique
Fenêtre des objets (extension)
Requête courante
Fenêtre de navigation(intension, incréments)
![Page 18: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/18.jpg)
18
Naviguer dans le contexte• Édition de la requête
– formules logiques• Sélection d’attributs
– Downward : incréments + connecteurs logiques– Upward : relachement – Sideward : downward + upward
• Sélection d’objets– Interrogation par l’exemple
Les trois fenêtres sont toujours cohérentes entre elles– quelle que soit celle par laquelle l’utilisateur a agi
![Page 19: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/19.jpg)
19
Camelis : Conclusion • Navigation et interrogation intégrées
– analyse de données manuelle possible même pour de grands jeux de données• Nombreuses applications possibles
– Photos : collection personnelle de 6000 photos• Récupération des photos, création de diaporamas
– Musique : environ 2000 fichiers• Construction de listes pour lecteur multimédia
– Bibliographie : fichiers BibTex et résultats de recherche DBLP– Hiérarchie de fichiers : droits d’accès, date de modification, propriétaire, …– Fichiers CSV : ligne = objet, colonne = attribut, cellule = valeur– ...
• Transduceur et interface graphique génériques – OK pour essais préliminaires– demandent rapidement à être spécialisés
• Performances OK jusqu’à ~1 millions de « liens » objet/attribut
![Page 20: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/20.jpg)
Serenelis [Ducassé, Ferré 2008]
Application des LIS à l’aide à la décision
Travaux présentés à ICCS 2008, « International Conference on Conceptual Structures », version étendue publié en 2010 dans la revue francophone « Nouvelles Perspectives en Sciences Sociales », Québec.
![Page 21: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/21.jpg)
21
Motivation• Beaucoup de décisions prises en commission
– recrutement, allocation de ressources…• Souvent frustrant
– Souvent conflictuel– Pas de meilleure solution évidente – Critères de sélection difficiles à exprimer– Décision multicritère difficile à prendre– Situation difficile à embrasser dans sa globalité
• « Cristalliser » l’information
![Page 22: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/22.jpg)
22
Approche quantitative• Scores selon des critères• Poids à chaque critère• Calcul combinant les deux aspects
– score global pour chaque possibilité
Avantage : les nombres sont naturellement totalement ordonnés
Inconvénient : pas facile de comprendre les décisions (et donc de les endosser)
![Page 23: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/23.jpg)
23
Notre approche : qualitativeUtiliser les LIS pour
• structurer l’information• naviguer dans cette information• formaliser les décisions
![Page 24: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/24.jpg)
24
Etude de cas
• Reconstitution d’une commission de spécialistes qui devait choisir parmi 43 candidats
• Seul outil utilisé à la réunion : un tableur• Les arguments ont été reconstitués a
posteriori
![Page 25: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/25.jpg)
25
Contexte multivaluéObjets : noms des candidats 16 attributs/critères
Name CS backgroundteaching Exp. > 100hPratical exp. pedagog. ProjectDate end thesisThese location research team Integration irisa #journals #Int confs #nat. Confs other publi. Bonus Malus ReporterAOG no 0 4 0 Brest ReARI yes yes yes juilllet 06 Saint-Etienne Alestx yes 1 4 3 Java spectre etroit CpBER yes yes 2006 ENSM Saint Etienne 2 6 1 3 BaBEJ yes yes yes yes 2006/2007 INT Evry ps ? yes 0 0 0 0 2ws date de soutenancePtBED yes yes yes juil-04 Paris XI a2 ? yes 1 4 1 2 MeBOL yes yes yes yes 2006 Telecom R&D+Irisatx yes 0 2 4 2 Cours A D + 265HTD BaBUN yes yes yes yes fin 2006 IRISA ps yes 0 5 1 2 2ws GeCAL yes yes yes yes dec-05 IRISA ic + tx yes 0 3 2 3 ATER R1 avec enseignement de Genie Logiciel (Design Paterns+ UML+ Ö). En recherche ouverture vers TexMEx et participation a l'encadrement de thesards- participation a une valorisation FT R&D. Lettre enseignement Noel Plouzeau et Yann Rg et Me-JoRelative faiblesse du dossier de publicationAiCES no 61e yes(61e) yes 12/12/05 (Ecole Navale)BRESTimages yes 5 6 3 4 ens (61) : automatique+traitement du signal+ electronique+...AlCHU yes no yes mars-06 Bordeaux no 0 2 1 1 dossier tres mal faitDeCOH yes yes ? ? Univ Versailles? yes 0 0 2 1 partiellt reseauxMeCRO yes yes yes yes fin 2006 Montpellier II se yes 1 0 2 5 ens. PharmaciePoDEA yes yes yes minimal sep-06 Toulouse tl? le ? no 0 3 0 2 enseignement volumineux + statsdossier recherche faibleStDES yes yes yes dec-06 Univ Picardie Amiensap ? ps ? yes 2 4 0 0 rech+/ens systeme PtDIT no no yes juil-05 Paris 6 lc yes 2 3 2 qualifie 61eme et 60emeFnDOE yes yes yes juil-06 IRIT Toulouse vs ? no 0 4 2 1 MoDUT yes yes yes oct-05 Nimes le ? yes 3 6 4 1 comite de programme+ transferts industriels+coencadrement DEADeDUN no no 4 4 3 1livre 33ans ReFEI no no no 2007? Lille no 0 0 0 1poster totalement hors profilDeFRD no yes sep-05 Inria Sophia lc yes 2 1 0 3 RgGUX yes yes yes no 12.2006 Univ. Rennes 1 LTSI - INSERMvs yes 0 3 1 0 LyHAI no yes ? no nov-05 Ecole centrale Lille? ? 4 9 2 3 Automatique QdHII no aou-07 Lille 0 0 1 CpKOA no 61e yes yes no 12.2006 Ecole centrale de Lille yes 1 3 0 0 formation EII LyLEC yes no yes yes nov-06 IRISA+USA le yes 0 1 1 2 Mobilite aux EU (these en co-tutelle)Peu de publis encoreQnLET no yes yes no dec-05 Nantes ? ? 0 2 0 3 submitted QdMAL no 63e yes yes dec-06 Grenoble vs ? yes 1 5 0 1 RgMON yes yes dec-06 Fac de medecine Rennes 1tx ? vs ? no 2 8 1 7 Gros dossier de publication + lettre de recommandatiosIntegration IRISA problematique et experience en enseignement trop basique (bureautique essentiellement)AiMOC yes yes yes 08/07 ?11/06 IRISA a2 ? yes 0 4 1 1 RR+1conf etudiants AeNIT yes yes yes yes 2005 ENSSAT Lanion ? 4 7 0 4 2 Brevets + 4 revues BaORU yes yes yes yes fin 2006 Rennes 1 Ia yes 0 2 2 Recommendations elogieusesFnPAN no yes yes 2 dec 2004 Nice ts ? ss ? yes 2 9 0 6 bon dossier recherchetres 61e StPID yes yes yes yes 15/12/05 Paris Sud ap ? yes 3 1 1 2 lettres recommandation+conf int tres selectiveAePRT yes yes yes yes 1/11/06 IRISA lc yes 1 5 3 2 soum. GePRS yes yes yes 12-mai Le Havre (Cardon)se ? ps ? 0 0 5 0 Participation a un projet europeen TIM + projet web pedagogique + encadrement stagesCrRAC yes no yes debut 2007 IRISA yes 2 6 0 2 recommandation JPBAucune experience d'enseignementMoREK no 61e. yes 01/11/2006 ? Ecole Centrale Paris ? 2 4 0 3 AlREI yes no no yes dec-06? Nimes ? ? 1 6 2 these 61 + tres peu d'enseignementQdROU yes yes yes yes nov-06 IRISA ic yes 0 2 2 Dossier equilibre enseignement/rechercheQnSED yes yes yes aout 2006 Calais dm yes 0 4 3 2 PoSIU yes yes yes yes hiver 2007? IRISA ls yes 1 1 1 5 pb de fin de these? Trop forte (?!) implication dans l'enseignement+ le developpement+ et autres activitesCrSOZ yes yes yes nov-05 Amiens ps yes 1 3 1 5 Spectre enseign. CpTOL yes yes legere no 4.2007 Universite d'Evry yes 0 3 1 2 R.I. Ly
![Page 26: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/26.jpg)
26
Le treillis de concepts…
![Page 27: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/27.jpg)
27
Utilisation de Camelis
• Intégration immédiate des valeurs multivaluées
• Construction du treillis à la demande
• Vues locales
• Navigation incrémentale– Aide à la construction d’une requête
![Page 28: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/28.jpg)
28
Analyse du contexte formel
• Le contexte est dense– Impossible d’examiner en détail tous les attributs
pour tous les candidats
• Processus proposé : en 3 phases– Analyse axée sur les attributs– Analyse axée sur les candidats– Classement
![Page 29: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/29.jpg)
29
1. Analyse axée sur les attributsObjectifs : 1. Déterminer les critères obligatoires 2. Eliminer rapidement les candidats qui ne les
remplissent pas
• Décision collective du statut des attributs– Dépend des circonstances, des personnes présentes,
de l’ensemble des candidats, …• Statuts possibles d’un attribut
– Sélectif : obligatoire– Sélectif mais contrebalancé– Pertinent : intéressant mais pas obligatoire– Non pertinent (pour ce concours particulier)
![Page 30: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/30.jpg)
30
Attributs contrebalancés
Attributs non pertinents
Attributs pertinents
Attributs sélectifs
Autres attributs, non encore jugés
Va ajouter ‘submitted thesis’ or ‘thesis location close enough’ à la requête
Candidats grisés seront éliminés
candidats
Requête :Décisions courantes
![Page 31: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/31.jpg)
31
2. Analyse axée sur les candidats restants
Objectifs : 1. vérifier les rapports sur les candidats
• Le nombre de candidats est assez petit pour le permettre
2. affiner les critères obligatoires
• Vérification que les candidats méritent leurs attributs
– Rm: à l’étape 1, il a été vérifié que les candidats sur le point d’être éliminés n’avaient pas les attributs obligatoires !
• Vérification qu’il ne leur manque aucun attribut important
![Page 32: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/32.jpg)
32
Attributs et valeurs pour le candidat sélectionné
Va enlever l’attribut sélectionné du rapport du candidat sélectionné
Un candidat sélectionné
Attribut incorrect
Requête : résumé des attributs du candidat
![Page 33: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/33.jpg)
33
3. Classement
Objectif : trier les candidats restants– Le contexte est validé et les candidats restants
sont classables
• Affichage du treillis de concepts– Vue globale de l’ordre partiel
• Discussion et vote pour faire la liste finale– I.e. un ordre total
![Page 34: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/34.jpg)
34
Attributs partagés par tous les candidats restants
Attributs spécifiques de BOL
Candidats avec au moins 4 conf. internationales
Deux candidats pour l’équipe “ic”
Deux candidats pour l’équipe “ps”
![Page 35: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/35.jpg)
35
Un candidat au plus par équipe
Meilleurs en recherche Meilleurs en enseignement
Point fort recherche
Point fort enseignement
![Page 36: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/36.jpg)
36
Le meilleur candidat en recherche et le meilleur en enseignement Les deux ont un projet
pédagogique, au moins une conférence nationale et au moins 2 conférences internationales
Aucun n’a encore soutenu aucun n’a d’article de revue
A ce stade nous avons voté…
![Page 37: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/37.jpg)
37
Serenelis : Conclusion• Nombreuses situations de « micro » décision où le
processus pourrait être appliqué– garantie de cohérence, d’équité, de transparence et de sérénité
• Camelis pertinent pour– saisir les rapports – analyser et valider le contexte– filtrer les candidats inappropriés– expliquer la sélection
• La vue globale du treillis est– pertinente pour aider à fabriquer un ordre total à partir de l’ordre
partiel…– quand il est suffisamment petit
• Manque de ressource « ingénieur » pour finaliser un outil
![Page 38: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/38.jpg)
DeLLIS: a Data Mining Process for Fault Localization
Peggy CellierMireille Ducassé, Sébastien Ferré, Olivier Ridoux
LIS – IRISA Rennes - France
Travaux de thèse de Peggy Cellier. Présentation faite à SEKE 2009, Software Engineering and Knowledge Engineering ».
![Page 39: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/39.jpg)
39
Fault LocalizationProgram
Test case 1
Test case n...
Test suiteExecution Results of the executions
Expected Results
Results PASS FAIL
Exec.1 4.5 4.5 X
Exec.2 6 6 X
…
Exec.i 15 18 X
• Fault localization– Understand why some executions fail
![Page 40: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/40.jpg)
40
Clues for Fault LocalizationProgram
Test case 1
Test case n...
Test suiteTracer Execution traces
• Execution traces– Contain information about why the program fails– Can be very large
e1 e2 … en P F
Exec.1 X X X
…
Exec.i X X X
events verdicts
![Page 41: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/41.jpg)
41
Existing Fault Localization MethodsProgram
Test case 1
Test case n...
Test suiteTracer Execution traces
• Trace difference methods– Nearest Neighbor, Intersection model, Union model [RenierisReiss03], Delta debugging
[CleveZeller05]
– Drawback: FAIL exec = PASS exec no answer
• Statistical methods– Tarantula [Jones et al.02], SBI [Liblit et al.05], SOBER [Liu et al.06]
– Drawback: Events total ordered
e1 e2 … en P F
Exec.1 X X X
…
Exec.i X X X
events verdicts
![Page 42: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/42.jpg)
42
Data Mining
• Data mining– Analyzes large amount of data– Finds regularities in data– Clusters data– Gives a partial ordering of data– …
![Page 43: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/43.jpg)
43
Trace Context
• Description of an execution– All events that belong to the trace
(executed lines, variable values, …)– Verdict of the execution (PASS or FAIL)
Program
Test case 1
Test case n...
Test suiteTracer Execution traces
e1 e2 … en P F
Exec.1 X X X
…
Exec.i X X X
events verdicts
![Page 44: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/44.jpg)
44
Tracer
Association Rules for Fault LocalizationProgram
Test case 1
Test case n...
Test suite
Indicator thresholds (minsup, minlift)
e1 e2 … en P F
Exec.1 X X X
…
Exec.i X X X
events verdicts
AR tool? → FAIL
Association rules
Execution traces
![Page 45: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/45.jpg)
45
Association Rules for Fault Localization
• Association rules: e1, …, en → FAIL – When the set of events E= e1, …, en belongs to
a trace that implies, “most of the time”, a failure
• “Most of the time” measured by statistical indicators with thresholds (minsup and minlift)– Support: frequency of a rule
– Lift: relevance of a rule
![Page 46: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/46.jpg)
46
Association Rules for Fault Localization
• Generation from the trace context – Examples of rules
• Problem : lots of association rules with large premises
R1:line_81,line_84,line_87,line_90,line_105,line_66,line_78,line_62,line_63,line_65,line_67,line_69,line_97,line_112,line_113,line_115,line_116,line_117,line_124,line_126,line_127,line_128,line_129,line_14,line_15,line_16,line_17,line_58,line_93 → FAIL R2:line_78,line_84,line_81,line_90,line_87,line_62,line_63,line_65,line_67,line_69,line_105,line_97,line_112,line_113,line_115,line_116,line_117,line_124,line_126,line_127,line_128,line_129,line_14,line_15,line_16,line_17,line_58,line_93 → FAIL R3:line_66,line_78,line_62,line_63,line_65,line_67,line_69,line_97,line_112,line_113,line_115,line_116,line_117,line_124,line_126,line_127,line_128,line_129,line_14,line_15,line_16,line_17,line_58,line_93 → FAIL R4:line_101,line_84,line_85,line_68,line_81,line_78,line_62,line_63,line_65,line_67,line_69,line_97,line_112,line_113,line_115,line_116,line_117,line_124,line_126,line_127,line_128,line_129,line_14,line_15,line_16,line_17,line_58,line_93 → FAIL R5:line_101,line_81,line_78,line_62,line_63,line_65,line_67,line_69,line_97,line_112,line_113,line_115,line_116,line_117,line_124,line_126,line_127,line_128,line_129,line_14,line_15,line_16,line_17,line_58,line_93 → FAIL R6:line_68,line_78,line_62,line_63,line_65,line_67,line_69,line_97,line_112,line_113,line_115,line_116,line_117,line_124,line_126,line_127,line_128,line_129,line_14,line_15,line_16,line_17,line_58,line_93 → FAIL R7:line_84,line_81,line_78,line_62,line_63,line_65,line_67,line_69,line_97,line_112,line_113,line_115,line_116,line_117,line_124,line_126,line_127,line_128,line_129,line_14,line_15,line_16,line_17,line_58,line_93 → FAIL R8:line_81,line_78,line_62,line_63,line_65,line_67,line_69,line_97,line_112,line_113,line_115,line_116,line_117,line_124,line_126,line_127,line_128,line_129,line_14,line_15,line_16,line_17,line_58,line_93 → FAIL R9:line_78,line_62,line_63,line_65,line_67,line_69,line_97,line_112,line_113,line_115,line_116,line_117,line_124,line_126,line_127,line_128,line_129,line_14,line_15,line_16,line_17,line_58,line_93 → FAIL
![Page 47: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/47.jpg)
47
Property of Association Rules
• Some rules are more “specific” than othersR4: line 84, line 81, line 93, line 105, line 90,
line 87 → Fail is more specific than
R5: line 84, line 81, line 93 → Fail
• Rules partially ordered Failure context
![Page 48: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/48.jpg)
48
Tracer
Failure Context
• Rules– Described by their premise– Represented by their
support and lift values
Program
Test case 1
Test case n...
Test suite
Indicator thresholds (minsup, minlift)
e1 e2 … en P F
Exec.1 X X X
…
Exec.i X X X
events verdicts
AR tool? → FAIL
Association rules
e1 e2 … en
Rule1:(sup1, lift1) X X
…
Rulei:(supi, lifti) X X X
events
Execution traces
![Page 49: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/49.jpg)
49
Execution tracesTracer
Failure ContextProgram
Test case 1
Test case n...
Test suite
Indicator thresholds (minsup, minlift)
e1 e2 … en P F
Exec.1 X X X
…
Exec.i X X X
events verdicts
AR tool? → FAIL
Failure lattice
Concepts
E1Rule1:(sup1, lift1)
Rulem:(supm, liftm)
En
FCA Association rules
e1 e2 … en
Rule1:(sup1, lift1) X X
…
Rulei:(supi, lifti) X X X
events
![Page 50: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/50.jpg)
50
12 3
4
5 6
7 8 9
10
Failure Lattice: Rules
• Rules– Represented
by their support and lift values
– Rule number = concept numberRules
![Page 51: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/51.jpg)
51
12 3
4
5 6
7 8 9
10
Failure Lattice: Events
• Events in the premise of the rules
• Example: R5– line_84– line_81– line_93, line_58,
line_17, …
![Page 52: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/52.jpg)
52
12 3
4
5 6
7 8 9
10
Failure Lattice: More Specific Rules
• R4 is more specific than R5
R4
R5 line_105, line_90, line_87
in the premise of R4 but not in the premise of R5
![Page 53: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/53.jpg)
12 3
4
5 6
7 8 9
10
Failure Lattice: Reading
• Node 5– 112 failed
executions
– Common attributes• line 84• line 81• lines 93, 58, 17, …
– Specific attributes of the failed executions
• line 84 in less passed executions
53
Fault
![Page 54: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/54.jpg)
54
Experiment
• Goal– Comparison of DeLLIS and Other Methods
• Program– Siemens suite programs (173 to 564 LOC)
• Metrics– Expense: Number of lines to explore to find the fault
• Best Strategy: when taking the shortest way • Random Strategy: when taking a random way (large number law)
![Page 55: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/55.jpg)
55
Comparison of DeLLIS and Other Methods
ConjectureStrategy of a human debugger between Best Strategy and Random
DeLLIS as good as the best methods
DeLLIS: more than a set of independent events
Highlighting of existing relations between events
![Page 56: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/56.jpg)
56
DeLLIS : Conclusion
• DeLLIS– Failure lattice => partial ordering of the events
• Showing dependencies between events
• Experiments with the Siemens suite– compares well with other methods
• Experiments with the Space program– Scales up for programs of several thousand lines by tuning the
lift threshold
![Page 57: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/57.jpg)
57
Autres travaux en cours• Camelis 2 : Relations entre objets
– Généalogie, relations spatiales• Sewelis : LIS et « semantic web »
– intégration des standards du semantic web dans LIS– intégration navigation et interrogation dans le semantic web
• Représentation de l’espace et du temps– Système d’informations géographiques
• Intégration de la mise à jour des données – mise à jour dans un même moule que la recherche d’information :
intégration navigation et saisie• Fouille de données séquentielles
– pour l’aide à la localisation de fautes
![Page 58: Systèmes d’information logiques et leurs applications](https://reader036.vdocuments.pub/reader036/viewer/2022062520/568163a6550346895dd4b0d5/html5/thumbnails/58.jpg)
58
• Références bibliographiques de l’équipe LIS– http://www.irisa.fr/LIS/common/biblio/– http://ledenez.insa-rennes.fr/biblis
• Prototype Camelis avec interface web– http://ledenez.insa-rennes.fr/abilis/ – « guest », sans mot de passe pour pouvoir naviguer dans
les contextes existants• Prototype Camelis avec interface gtk
– http://www.irisa.fr/LIS/softwares-fr/