• Aucun résultat trouvé

Application d’ADELFE au problème d’évolution de RTO à partir de textes

Pour concevoir le système d’évolution de RTO, nous nous sommes basés sur la méthode ADELFE. Avant de préciser les contours de son architecture, ainsi que le détail de son com- portement, nous présentons l’impact que les activités centrées sur les agents dans ADELFE ont eu sur notre réflexion. Nous nous attachons ici uniquement aux aspects spécifiques

au développement d’un AMAS, nous ne présentons pas les activités du développement

logiciel en général.

4.2.1 Besoins préliminaires

Les besoins préliminaires forment un ensemble d’activités dédiées à l’expression des besoins par l’utilisateur. Il en résulte un cahier des charges consensuel entre le développeur et le client. Ces activités ne diffèrent en rien du RUP classique.

4.2.2 Besoins finals

Les besoins finals correspondent à l’étude de l’environnement du système à réaliser ainsi qu’à ses interactions avec l’utilisateur.

Activité 6 : S1, S2 et S3

Dans la définition des travaux "besoins finals", nous définissons la fonction du système puis nous étudions son environnement. Plus précisément, il s’agit de déterminer les diffé- rents acteurs (ou entités) mis en jeu et leurs possibles interactions avec le système. Deux types d’acteurs ou d’entités sont à dégager : les entités actives (comme un utilisateur) et les entités passives (comme des bases de données).

Notre système a pour rôle de faire évoluer une RTO. L’environnement de ce système contient 3 entités (voir figure 4.7) :

1. l’ontographe est l’utilisateur du système d’évolution de RTO à concevoir. Ce système est déclenché par l’ajout de nouveaux documents textuels. Après s’être stabilisé, il pro- pose à l’ontographe une RTO modifiée. L’ontographe valide, modifie ou refuse alors les propositions d’évolution. L’ontographe est une entité active car il est en mesure d’effec- tuer par lui-même des modifications sur la RTO.

2. la RTO est la ressource devant évoluer. Elle est composée d’un ensemble de termes et d’un ensemble de concepts respectant le modèle de RTO qui sera présenté dans le chapitre 5. Le rôle du système d’évolution de RTO est d’utiliser entre autres les infor- mations contenues dans cette RTO pour la faire évoluer puis la présenter à l’ontographe en utilisant OWL. La RTO est une entité passive ; elle est modifiée soit par l’ontographe soit par le système.

3. les données lexicales sont les informations extraites des textes. Elles se composent d’un ensemble de candidats termes et de termes reliés par des relations lexicales. Ces don-

Système d'évolution de RTO Candidats terme ( ), terme ( ) et relations lexicale. RTO Ontographe Environnement Système C1 T1 C2 C3 C4 T2 T3 T4 T5 T6 C5

Figure 4.7 — Environnement du système d’évolution de RTO.

nées couvrent une partie des connaissances présentes dans les textes. Ces données sont produites lorsque l’ontographe ajoute de nouveaux documents au corpus. Le système d’évolution de RTO utilise ces données lexicales afin de faire évoluer la RTO. Les don- nées lexicales sont donc considérées comme une entité passive. Elles sont modifiées uniquement en présence de nouveaux documents textuels dans le corpus.

Cette description nous permet de préciser la caractérisation de l’environnement de notre système (voir section 3.2.1 du chapitre 3). Il s’agit d’un environnement :

– dynamique : une RTO et les données lexicales changent au cours du temps soit suite à l’ajout de nouveaux documents textuels dans le corpus, soit suite aux modifications manuelles de la RTO réalisées par l’ontographe.

– non accessible : le système dispose d’une vue limitée de l’environnement. Les don- nées lexicales extraites des textes représentent une vue réduite des connaissances d’un texte. Ceci implique que le système à concevoir soit capable, uniquement grâce à ces données limitées, de faire évoluer une RTO. De plus les textes ne couvrent pas tous les indices linguistiques nécessaires à l’évolution d’une RTO. Le système doit être aussi capable de fonctionner avec des données incomplètes et produire des résultats satis- faisants.

– indéterministe : la présence de l’ontographe (qui peut modifier manuellement la RTO) d’une part, mais aussi, les données lexicales utilisées pour faire évoluer une RTO qui contiennent forcément du bruit, rendent l’environnement indéterministe. Le résultat produit par le système peut être incomplet ou erroné. Le système doit être capable de détecter les erreurs et de les éliminer. Il doit aussi être capable d’ajuster son résultat en fonction des réponses qu’il reçoit de l’ontographe.

– continu : le nombre de modifications et de représentations d’une RTO est potentielle- ment infini. C’est pour cela que nous estimons que cet environnement est continu.

L’étape des besoins finals nous a permis d’identifier clairement notre système, son ob- jectif, son environnement ainsi que les interactions possibles entre le système et son envi- ronnement. A cette étape, le système est décrit en tant que boite noire. Puisqu’il s’agit d’un SMA, l’étape suivante est donc d’identifier quelles entités de l’environnement du système vont être agentifiées. Il s’agit du but de l’activité d’analyse dans la méthodologie ADELFE.

4.2.3 Analyse

A partir des spécifications obtenues lors des besoins finals, le concepteur peut effec- tuer une analyse du domaine, identifier les différentes entités mises en jeu et construire un diagramme de classes préliminaire. Nous ne présentons ici que les activités et étapes spéci- fiques à la conception d’un AMAS.

Activité 11 : S1, S2

L’objectif de l’activité d’analyse est tout d’abord de vérifier la pertinence de l’utilisation de l’approche par AMAS. En effet, tous les problèmes n’ont pas forcément besoin d’être ré- solus en utilisant cette approche. Plus précisément, ADELFE propose un outil permettant de vérifier l’adéquation des AMAS pour concevoir un système en s’interrogeant selon deux points de vue : global et local. Au niveau global, nous devons nous demander si (i) le pro- blème à résoudre est complexe, si (ii) le système est plongé dans un environnement évolutif, s’il (iii) existe une forte interaction entre le système et cet environnement et si (iv) le pro- blème ne dispose pas d’une solution algorithmique connue. Notre système d’évolution de RTO vérifie ces 4 points. En effet, d’un point de vue global, le problème de l’évolution de RTO à partir de textes est complexe et ne dispose pas de solution algorithmique connue a priori mais seulement des approches partielles permettant de fournir des briques pour l’évolution d’une RTO. De plus, le système d’évolution de RTO est plongé dans un envi- ronnement évolutif dont les entités ont une forte dépendance avec le système. Les AMAS paraissent alors être une bonne approche pour concevoir notre système.

D’un point de vue local, nous devons nous demander si des entités de l’environnement du système sont elles aussi des systèmes complexes qui soulèvent des problèmes en adé- quation avec l’approche par AMAS. Dans notre problème les entités "RTO" et "données lexi- cales" sont des entités complexes, capables d’évoluer au cours du temps et sont formées par plusieurs éléments. Ces éléments doivent alors être décomposés en des entités actives et des entités passives plus simples.

– L’entité RTO est formée d’un ensemble de concepts et d’un ensemble de termes. Les concepts sont reliés entres eux par des relations conceptuelles (hiérarchiques et non- hiérarchiques). Les termes sont reliés aux concepts par des relations (ou lien) de dé- notations. Une RTO est dynamique : des concepts, des termes et/ou des relations sont ajoutés, modifiés et/ou supprimés. Une RTO est traitée localement : lorsqu’un onto- graphe interagit avec l’entité RTO, il interagit avec des éléments de la RTO et non pas la totalité de la RTO. Ces actions sur la RTO sont locales et concernent un concept, un terme ou une relation ;

– L’entité "données lexicales" est formée d’un ensemble de candidats termes et de termes reliés par des relations lexicales. L’apparition de nouveaux documents entraine l’iden- tification de nouveaux candidats termes et/ou de relations lexicales entre candidats termes. En quelque sorte, chaque terme ou candidat terme a une vue locale de son environnement.

Activité 12 : S1, S2 et S3

La deuxième phase importante de l’analyse est l’identification des agents du système. Il s’agit de repérer les entités de l’environnement qui seront ensuite agentifiées. Le choix d’agentification porte sur une ou plusieurs entités actives de l’environnement du système.

Dans notre cas, nous dégageons 3 entités actives : les concepts, les termes et les candidats termes. Un concept, un terme ou un candidat terme ont un but qui est de trouver une place dans une RTO. Ils se basent sur les relations lexicales et les relations conceptuelles qu’ils ont pour y parvenir. Le choix d’agentifier est justifié aussi par les caractéristiques fondamentales des agents c’est-à-dire la localité, l’interaction, l’autonomie, etc. Dans ce sens, nous pouvons dégager trois ensembles d’éléments pouvant être agentifiés : les concepts, les termes et les candidats termes car ces éléments possèdent des caractéristiques d’agents. Par ailleurs, les candidats termes et les termes sont quasiment similaires. Un terme est à l’origine un can- didat terme qui est ensuite validé par l’ontographe. C’est pour cela que ces deux entités représentent un seul agent qui implémente un terme s’il appartient à la RTO ou un candidat terme s’il n’appartient pas à la RTO.

Plus précisément, dans notre système, nous considérons le SMA comme un ensemble d’agents termes et d’agents concepts dont un sous-ensemble correspond à une RTO et l’autre sous-ensemble correspond aux propositions d’évolution. Un agent terme représente soit un terme de la RTO soit un candidat terme. Un agent concept représente soit un concept de la RTO soit un candidat concept.

Les relations de la RTO et les relations lexicales ne sont pas agentifiées. Elles feront partie des connaissances des agents. Ainsi, les relations entre concepts sont des liens entre agents concepts ; les relations lexicales entre termes sont des liens entres agents termes et les relations de dénotation entre termes et concepts sont des liens entre les agents termes et les agents concepts. Ce découpage en deux types d’agents découle aussi en partie de la structure d’une RTO : une classe concept de la RTO correspond à un agent concept ; une classe terme de la RTO correspond à un agent terme. La RTO est en quelque sorte l’organisation du SMA. Les agents concepts et les agents termes cherchent à se positionner localement dans l’organisation selon l’approche par AMAS.

En résumé, notre système d’évolution de RTO nécessite l’approche par AMAS pour sa conception. Le système à définir est un SMA composé d’agents terme et d’agents concept dont l’objectif est de faire évoluer une RTO à partir de textes. Le système est en interaction avec l’ontographe qui approuve ou rejette les propositions d’évolution faites par le système en acceptant, refusant ou modifiant ces propositions.

Après avoir analysé le système et défini les agents qui le composent, nous allons nous focaliser sur la conception détaillée du système.

4.2.4 Conception

Activités 14 et 16

La conception du système aboutit à l’architecture détaillée du système ainsi qu’à l’ar- chitecture des agents du SMA. Nous présentons maintenant les différents modules de notre système (Activité 14) ainsi que l’architecture de chaque agent du SMA (Activité 16).