Journée "Linguistique et Traitement Automatique des Langues pour l'Aéronautique et l'Espace :Dimensions langagières du risque" à l'université Toulouse Jean Jaurès, 2 juillet 2013
Outils de construction pour la rechercheJohan Moreau
Similaire à Caractériser le contenu des exigences pour aider à leur rédaction : un défi pour le traitement automatique des langues et les ontologies (20)
mémoire genie civil presenté lors de la soutenance de mémoire
Caractériser le contenu des exigences pour aider à leur rédaction : un défi pour le traitement automatique des langues et les ontologies
1. Caractériser le contenu des exigences
pour aider à leur rédaction :
un défi pour le traitement automatique
des langues et les ontologies
N. Aussenac-Gilles
IRIT- CNRS
aussenac@irit.fr
02/07/2013 1Aide à la rédaction des exigences : défis pour le TAL et les ontologies
Linguistique et Traitement Automatique des Langues pour l'Aéronautique et l'Espace :
Dimensions langagières du risque
2. Plan
I. Le problème et les attentes
II. État des lieux
Exigences et Tal
Exigences et ontologies
Le projet Européen César
III. Les défis pour le Tal et la linguistique
IV. Les défis pour les ontologies
02/07/2013 2Aide à la rédaction des exigences : défis pour le TAL et les ontologies
3. I – Le problème – les attentes
Le problème
Maîtriser au plus tôt la qualité des exigences
Éviter les erreurs d’interprétation
Concevoir au final le produit vraiment imaginé par
les concepteurs
02/07/2013 3Aide à la rédaction des exigences : défis pour le TAL et les ontologies
4. I – Le problème – les attentes
Dimension temporelle
Constat des conséquences en fin de conception
Causes en début de processus
Phases cruciales
Rédaction initiale
Raffinement / réécriture
Maintenance / évolution
02/07/2013 4Aide à la rédaction des exigences : défis pour le TAL et les ontologies
5. I – Le problème – les attentes
Quelques causes du
problème
Utilisation du langage
naturel
Multiplicité des
intervenants dans le
temps
Métiers, cultures,
vocabulaires un peu
différents
Quelques solutions
envisagées
Contraindre le langage,
anglais simplifié
Expliciter les
connaissances du
domaine
Contrôler le vocabulaire,
définir des normes
terminologiques
02/07/2013 Aide à la rédaction des exigences : défis pour le TAL et les ontologies 5
Analyses
syntaxiques
Analyses, ressources
sémantiques,
ontologies
lexiques, terminologies
6. II - État des lieux – bref historique
Analyse logique (vers 1990)
Caractérisation linguistique
Formalisation logique
Ex d’application : traçabilité, exigences logiciel
Exemple : projet LESD (Aramiihs, Toulouse)
Linguistic engineering for Software design
Ecriture de grammaires de dépendances pour analyse
syntactico-sémantique (règles ad-hoc)
Integrant un lexique du spatial
Production de lambda expressions (1 par exigence)
02/07/2013 6Aide à la rédaction des exigences : défis pour le TAL et les ontologies
7. II - État des lieux – bref historique
R1 - The IOS-GS shall provide space vehicle control and monitoring.
R2 - The IOS-GS shall have the capability to monitor the health of the
flight configuration including payloads. For this purpose, the IOI-GS
shall have the capability to select the appropriate downlink telemetry
formats to support each mode of operations and to configure the
IOI-GS accordingly.
Connaissances du domaine
to monitor = to select a telemetry format and to configure
space vehicle flight
Difficulté analyse syntaxique
to select the appropriate downlink telemetry formats
02/07/2013 7Aide à la rédaction des exigences : défis pour le TAL et les ontologies
?
8. II - État des lieux – bref historique
Traçabilité
Organiser les représentations en un réseau
sémantique
Relation d’ordre : R2 < R1 car plus specifique
Traçabilité = interroger par requêtes
Bilan en 1990
Lourd (grammaires propres à chaque corpus)
Peu efficace
TAL pas assez avancé (analyse en dépendances peu
robuste)
Besoin d’étudier le lexique séparément
02/07/2013 8Aide à la rédaction des exigences : défis pour le TAL et les ontologies
9. II - État des lieux – exigences et TAL
Activités / aide attendue du TAL
Recueil / extraction statistique d’entrées lexicales
Analyse-Formalisation / graphes d’analyse
Vérification syntaxique
Vérification sémantique
Traçabilité
Repérage - éliminitation des redondances, des
contradictions, des ambiguïtés
02/07/2013 9Aide à la rédaction des exigences : défis pour le TAL et les ontologies
10. II - État des lieux – exigences et TAL
Vérification syntaxique
Critères : simplicité, pas de référence implicite, etc.
Vérification des exigences une à une
Ou comparaison d’exigences
The IOS-GS shall provide space vehicle control and monitoring.
specified requirement clue object system functions
system
When the start button is pressed, if there is an original in the feed slot, the
photocopier makes N copies of it, and places them in the output tray.
Specified system temporal cond. functional cond. reference localisation
02/07/2013 10Aide à la rédaction des exigences : défis pour le TAL et les ontologies
11. II - État des lieux – exigences et TAL
Avancées du TAL
Analyses syntaxiques robustes
Maîtrise du découpage des phrases,
relations sujet/ verbe/ compl
Plus difficile
Références, portée des négations
Gestion des conditions, des indications temporelles
Passage actif / passif
Très difficile
Vérifier au fur et à mesure de la rédaction
02/07/2013 11Aide à la rédaction des exigences : défis pour le TAL et les ontologies
12. II - État des lieux – exigences et Ontologies
Intérêt attendu de ressources lexicales
Normaliser le vocabulaire utilisé, éviter de multiplier les synonymes
Se mettre d’accord sur les définitions
Interêt attendu de ressources sémantiques
02/07/2013 12Aide à la rédaction des exigences : défis pour le TAL et les ontologies
sujet destinataire objet
13. II - État des lieux – exigences et Ontologies
Intérêt attendu des ontologies
Celle d’un lexique : photocopier = copier
Typer les objets
Exploiter les relations et “raisonner”
#OutputTray isPartOf #Photocopier, #FeedSLot isPartOf #Photocopier
Si une exigence R1.1 porte sur une partie de S,
alors S doit être spécifié dans R1
Rapprocher des formulations différentes mais équivalentes
The system shall send weekly notifications to the customers including our offers.
The system shall send the customers our weekly offers.
Reconnaître des patrons d’exigence
When the start button is pressed, if there is an original in the feed slot, the
When <temporal cond>, if < functional cond.>,
photocopier makes N copies of it, and places them in the output tray.
<Specified system> makes <objet> in <partof Specified system>
02/07/2013 13Aide à la rédaction des exigences : défis pour le TAL et les ontologies
14. II - État des lieux – exigences et Ontologies
Avant le web sémantique
Ressources sémantiques générales (wordnet) ou
adhoc
Réseaux sémantiques et graphes conceptuels
À l’heure du web sémantique
Ontologies partagées sur le web
Données, triplets RDF
Formats standards
02/07/2013 14Aide à la rédaction des exigences : défis pour le TAL et les ontologies
15. II - État des lieux – le projet CESAR
Projet européen terminé en 2010
Aide à la rédaction des exigences
Définition d’un langage de spécification
d’exigences (RSL)
Définition d’un Méta-modèle d’exigences (RMM)
02/07/2013 15Aide à la rédaction des exigences : défis pour le TAL et les ontologies
16. II - État des lieux – exigences et Ontologies
Quelles ontologies?
Ontologies indépendantes du domaine
Ontologie des exigences + leurs caractéristiques
Ontologie du risque des services
Ontologie du domaine, du système à spécifier (ex de Cesar)
02/07/2013 16Aide à la rédaction des exigences : défis pour le TAL et les ontologies
17. II - État des lieux – exigences et Ontologies
Que fait-on avec ces ontologies ?
Annoter des exigences
02/07/2013 17Aide à la rédaction des exigences : défis pour le TAL et les ontologies
system
ACC system
capability
Determine the speed
hasCapability
hasCapability
Alert
Collision warning
system
18. II - État des lieux – exigences et Ontologies
Que fait-on avec ces ontologies ?
Modéliser les exigences sous forme d’un graphe
02/07/2013 18Aide à la rédaction des exigences : défis pour le TAL et les ontologies
19. II - État des lieux – exigences et Ontologies
ontologies et analyse linguistique
Définir des canevas, modèles d’exigences
Templates du projet SPEED
02/07/2013 19Aide à la rédaction des exigences : défis pour le TAL et les ontologies
P1 whenever[E:event] occurs [SC:condition] holds during following [I:interval]
P2 whenever[E1:event] occurs [E2:event] implies [E3:event] during following [I:interval]
P3 whenever[E1:event] occurs [E2:event] does not occur during following [I:interval]
P4 whenever[E1:event] occurs [E2:event] occurs within [I:interval]
P6 [E1:event] occurs [N:number] times during [I:interval] raises [E2:event]
P7 [E:event] occurs at most [N:number] times during [I:interval]
P8 [SC:condition] during [I:interval] implies [SC1:condition] during [I1:interval] then
[SC2:condition] during [I2:interval]
20. II - État des lieux – exigences et Ontologies
Les boilerplates et patterns du projet Cesar
Env 50 boilerplates
Fragments de phrase que l’on retrouve régulièrement
Bien construits, syntaxiquement “recommandés”
… at least <number> times per <unit>
The <system> shall be able to <action> to <entity>
<action> = <action> and | or <action>
21 patrons définis
Phrase complète, patron décrivant toute une exigence
Whenever <condition> becomes true [on <subject>] <event>
occurs [during <interval>].
<Failure> shall not be caused by <number> independent failures.
02/07/2013 20Aide à la rédaction des exigences : défis pour le TAL et les ontologies
21. III - Les défis pour le Tal et la linguistique
TAL
Analyse linguistiques fines
Liens sémantiques entre phrases
Caractérisation des formes acceptables par
apprentissage
Linguistique
Caractérisation des formes acceptables
Identification des structures équivalentes
Terminologie
Formes lexicales équivalentes des concepts
02/07/2013 21Aide à la rédaction des exigences : défis pour le TAL et les ontologies
22. III - Exemple d’avancée du TAL
Fred
Génère automatiquement des graphes
RDF/OWL à partir de phrases
Techniques utilisées
Combinatory Categorial Grammar
Discourse Representation Theory
Linguistic Frames
Ontology Design Patterns
Reconnaisance d’entités nommées (NER)
Disambigüation du sens des mots (WSD)
02/07/2013 Aide à la rédaction des exigences : défis pour le TAL et les ontologies 22
23. III - Exemple d’avancée du TAL
Analyse sémantique
syntaxique en dépendance
Identification des rôles
Fred et Tipalo (Gangemi)
02/07/2013 23Aide à la rédaction des exigences : défis pour le TAL et les ontologies
24. III - Les défis pour le Tal et la linguistique
Identifier les problèmes par priorité
Redondances
Trouver 2 phrases identiques : cf travaux de D. Roussel
Non trivial
Contradictions
Phrase à phrase
Cohérence globale des exigences à un niveau donné
Traçabilité
Cohérence entre une/des exigence-s et ses-leurs
spécilisations
Vérifier que l’on gagne en précision
02/07/2013 24Aide à la rédaction des exigences : défis pour le TAL et les ontologies
25. III - Les défis pour le Tal et la linguistique
Sous problèmes communs
Reformulations verbes / noms ; forme active /
passive ; affirmative/négative
Reformulations via l’ontologie
Calcul de références
Comparer des graphes issus d’analyses
Apprentissage de graphes et de structures
02/07/2013 25Aide à la rédaction des exigences : défis pour le TAL et les ontologies
26. IV - Les défis pour les ontologies
1. Vraiment utiliser axiomes, inférence, logique
2. Paradoxe de la conception
3. Compromis coût/gain
02/07/2013 26Aide à la rédaction des exigences : défis pour le TAL et les ontologies
27. IV - Les défis pour les ontologies :
axiomatisation
Inférences “simples”
#OutputTray isPartOf #Photocopier, #FeedSLot isPartOf #Photocopier
Si une exigence R1.1 spécialise R2
Et Si R1.1 porte sur P avec isPartOf(P, S)
alors S doit être spécifié dans R1
Vérifier des transitivités pour les composants
Contrôles possibles sur les connaissances
Présence des entités mentionnées dans l’ontologie
Exploiter la cardinalité des relations
Exploiter les intervales de valeur des attributs
<number> <time period> …
02/07/2013 27Aide à la rédaction des exigences : défis pour le TAL et les ontologies
28. IV - Les défis pour les ontologies
2. Paradoxe de la conception
Concevoir
créer un nouvel objet
Spécifier ses comportements, composants, propriétés
Ontologie
Doit exister AVANT de vérifier les exigences
Décrire l’objet AVANT qu’il existe ?
Compromis
Conception par “adaptation” de modèles connus
Innovation plus que création
02/07/2013 28Aide à la rédaction des exigences : défis pour le TAL et les ontologies
29. V - Les défis pour les ontologies
3. Compromis coût/gain
Jusqu’où décrire l’objet à concevoir dans
l’ontologie ?
Quel niveau de détail pour les axiomes,
contraintes, vérifications de valeurs ?
Trop de détail = écrire les exigences en faisant
l’ontologie
Capitaliser des représentations pour de nouvelles
conceptions, faire des modèles bien conçus
02/07/2013 29Aide à la rédaction des exigences : défis pour le TAL et les ontologies
30. V - Les défis pour les ontologies et le TAL
Aide à la rédaction
Vérifier chaque exigence dès son écriture ou juste en fin de saisie.
Suggérer des patrons d’exigence très tôt (au fur et à mesure de la
rédaction ?)
Vérifier une nouvelle exigence % à celles déjà saisies
Aide à la traçabilité
Tracer les reformulations mais aussi les découpages en tâches,
en composants (importance des relations EST-UN et PARTIE-DE)
Remise en question de la cohérence à un niveau donné
Remise en question de la cohérence entre niveaux
02/07/2013 30Aide à la rédaction des exigences : défis pour le TAL et les ontologies
31. V – D’autres défis
Approche incrémentale
Implémenter des vérifications simples
Les combiner pour des vérifications plus élaborées
Quelle aide pour l’utilisateur ?
Cesar : choisir un patron et le remplir : non adapté
Guider pas à pas à différents moments de la saisie et
de la spécialisation des exigences
Étude érgonomique ?
02/07/2013 31Aide à la rédaction des exigences : défis pour le TAL et les ontologies
32. Conclusion
Travaux en cours depuis près de 25 ans dans l’industrie
et la recherche
Revoir la façon de poser le problème à chaque avancée
en matière de
Caractérisation linguistique des corpus
Analyse automatique du langage
Représentation des connaissances
Défis actuels
Découper le pb global en sous-pbs accessibles
Aller plus loin dans l’utilisation (simple) d’ontologies
Affiner les besoins utilisateurs (études ergonomiques)
Nécessaire interdisciplinarité
02/07/2013 32Aide à la rédaction des exigences : défis pour le TAL et les ontologies