Chapitre 3 Les Systèmes à Base de Traces Modélisées
3.3 L’approche des Systèmes à Base de Traces Modélisées
3.3.2 Les Systèmes à Base de Traces modélisées
Comme le montre le schéma ci-dessous (Figure 3.5), un tel système reprend les fonctions générales
d’un Système à Base de Trace avec cette fois les moyens de gérer les traces modéliséesassociées de
leurs modèles.
Figure 3.5 : Architecture générale d'un SBTm.
3.3.2.1 Collecte
Premièr processus de l’architecture, la collecte alimente le SGBT avec des éléments permettant de
générer, par enregistrement systématique et en respect de son modèle, une trace modélisée. La collecte
doit disposer d’au moins une source de traçage, qui permet au sein du système observé, de capter des
données générées par les interactions de l’utilisateur avec son système. Cette source de traçage peut être de natures diverses : il peut s’agir aussi bien d’un flux audio ou vidéo, que du flux formé par les
logs du système, la condition étant qu’il doit être possible d’extraire (manuellement ou automatique-!
"(o1,o2,r)#
$
R,$
C(o1)%C domR(r)&$
C(o2)%C rangeR(r)!
ment) de ces flux des observés. La collecte peut (si nécessaire) s’appuyer sur plusieurs sources de tra-çage en parallèle, dont il faut alors gérer la synchronisation (Figure 3.6).
Figure 3.6 : Détail du processus de collecte des traces modélisées dans un SGBT.
Le produit de la collecte est donc une trace associée à son modèle, que l’on nomme trace première.
Comme son nom l’indique, cette trace première, est la première dont on puisse considérer, à l’issue du processus initial de collecte, qu’elle est modélisée explicitement dans les termes du système, et donc pleinement manipulable et exploitable par celui-ci.
3.3.2.2 Transformations
Cette trace première, est stockée et manipulée (comme l’ensemble des traces modélisées gérées par le
SBTm) dans une base de traces. Elle fera en particulier l’objet de diverses transformations qui auront
pour but d’amener la trace modélisée à présenter un niveau d’abstraction correspondant à l’exploitation qui en est prévue : application d’autres transformations, présentation de la trace
modéli-sée à l’utilisateur de la trace modélimodéli-sée ou encore calcul d’indicateurs. On appellera trace transformée
une trace modélisée issue de la transformation d’une trace première. Ces transformations peuvent être opérées de manière manuelle ou automatique, et ont pour condition de respecter la cohérence de la
transformation, i.e. que les changements opérés sur les observés de la trace première soient tels qu’ils
respectent un second modèle de trace qui sera associé à la trace transformée. Une transformation
ma-nuelle désigne toute modification impliquant un changement dans la composition des éléments de la trace, due à un ajout, un filtrage ou un enrichissement de ses observés par l’utilisateur du SBTm. Ce dernier doit donc garantir la cohérence entre les traces et leurs modèles lors d’une transformation
ma-nuelle. Les transformations automatiques sont appliquées par le SBTm lui-même selon des modèles de
transformation, un modèle de transformation étant un ensemble de règles exprimant les opérations de sélection ou de réécriture de la trace modélisée considérée (première ou déjà transformée).
On peut distinguer trois types de transformations automatiques, qui peuvent bien sûr être combinés :
- Les transformations de type sélection : elles créent une nouvelle trace modélisée contenant tous les
observés respectant un filtre de sélection donné. C’est ce type de transformation par exemple, qui
est utilisé pour séparer les observés pertinents de la trace du bruit, pour le nettoyage de la trace première. Ces filtres sont des contraintes sur les observés, le domaine temporel, et les relations structurelles de la trace modélisée à transformer.
- Les transformations de type réécriture de motifs89 : Elles permettent de remplacer un ou plusieurs observés par un autre observé (généralement de plus haut niveau d’abstraction). Ces transforma-tions peuvent toucher une séquence d'observés qui se succèdent directement ou non dans la trace
modélisée. L'expression de ce type de séquence d'observés représente un motif (pattern) que l’on
peut réécrire.
- Les transformations par fusion temporelle : Ce dernier type de transformation ne concerne pas une,
mais plusieurs traces modélisées. Les transformations en question consistent à fusionner, assembler
et/ou grouper les observés de ces différentes traces modélisées en tenant compte de la temporalité
de leurs éléments. La trace transformée par fusion suit un modèle de trace regroupant les modèles des traces fusionnées. Cette transformation est possible si les traces fusionnées possèdent des
ex-tensions temporelles homogènes90.
Notons ici que ces transformations (comme de manière générale tout calcul effectué sur la trace modé-lisée) s’appuient nécessairement sur diverses fonctionnalités de manipulation élémentaires, comme la
recherche ou de tri dans la trace modélisée (requêtage). Ces fonctionnalités sont directement dépen-dantes du langage utilisé pour coder le SBTm et des fonctions proposées par la base utilisée.
3.3.2.3 Présentation
Dernière partie de l’architecture, la présentation de la trace correspond à l’interface du SBTm pour permettre à un utilisateur d’accéder à la trace modélisée et/ou de piloter les traitements automatiques
et transformations manuelles. Nous regroupons donc sous le terme de présentation les fonctionnalités
de visualisation et d’interaction des traces modélisées à présenter (Figure 3.7).
Figure 3.7 : Détail du processus de présentation des traces modélisées dans un SBTm.
La visualisation, tout d’abord, qui consiste à afficher de manière graphique et/ou textuelle la collec-tion d’observés d’une trace modélisée, peut être considérée comme une transformacollec-tion particulière respectant un modèle de trace dédié. Sur le même principe que les transformations décrites
précé-demment, la visualisation reposera sur un modèle de visualisation. Cette transformation n’est pas
obli-gatoirement nécessaire, elle correspond à la mise en cohérence du système de visualisation choisi et du
89. Une représentation d’une séquence, ou d’un sous ensemble d’observés identifié, dans la trace modélisée. 90. Permettant des translations et conversions de temps (intervalles vs instants).
format de la trace modélisée à afficher. Comme nous le verrons par la suite, il suffit parfois que la
trace modélisée soit exprimée sous la forme d’un fichier XML pour utiliser diverses interfaces de
vi-sualisation, par exemple de type « ligne de temps » (Figure 3.7).
Les outils de visualisation directement applicables, ne proposent en revanche pas tous, les moyens d’interagir avec la trace présentée de manière satisfaisante. De plus, il faut également prévoir la possi-bilité de gérer la présentation des modèles associés aux traces. Dans le strict cadre du SBTm, la phase de présentation consiste avant tout à fournir une trace transformée telle qu’elle puisse faire l’objet de visualisations et d’interactions qui peuvent être définies et appliquées en dehors du système. Des tra-vaux sont cependant engagés pour définir des services génériques d’affichage et de manipulation de traces modélisées et de leurs modèles, en s’appuyant sur l’expérience de la création de fonctionnalités d’interaction dans des environnements particuliers (Cram et al., 2007). En revanche, il est impératif que les interactions envisagées soient déterminées en respectant les contraintes de l’environnement dans lesquelles elles prendront place.