Une méthode formelle pour la vérification de la consistance temporelle et la gestion prédictive de la Qualité de service pour la présentation des



Documents pareils
Synthèse d une conception UML temps-réel à partir de diagrammes de séquences

Conception des systèmes répartis

CURRICULUM VITAE. Informations Personnelles

Les diagrammes de modélisation

APPROCHE DE LA SURVEILLANCE DES SYSTEMES PAR RESEAUX DE PETRI SYNCHRONISES FLOUS

Formula Negator, Outil de négation de formule.

Information utiles. webpage : Google+ : digiusto/

Ordonnancement temps réel

Une méthode d apprentissage pour la composition de services web

Evaluation des performances de programmes parallèles haut niveau à base de squelettes

Métriques de performance pour les algorithmes et programmes parallèles

Vers une approche Adaptative pour la Découverte et la Composition Dynamique des Services

Cycle de vie du logiciel. Unified Modeling Language UML. UML: définition. Développement Logiciel. Salima Hassas. Unified Modeling Language

Programmation d'agents intelligents Vers une refonte des fils de raisonnement. Stage de fin d'études Master IAD 2006

Une proposition d extension de GML pour un modèle générique d intégration de données spatio-temporelles hétérogènes

Introduction aux systèmes temps réel. Iulian Ober IRIT

SIP. Plan. Introduction Architecture SIP Messages SIP Exemples d établissement de session Enregistrement

Patrons de Conception (Design Patterns)

Chapitre VIII. Les bases de données. Orientées Objet. Motivation

Le Collège de France crée une chaire pérenne d Informatique, Algorithmes, machines et langages, et nomme le Pr Gérard BERRY titulaire

basée sur le cours de Bertrand Legal, maître de conférences à l ENSEIRB Olivier Augereau Formation UML

ISO/CEI NORME INTERNATIONALE

Cours de Génie Logiciel

Perspectives pour l entreprise. Desktop Cloud. JC Devos IBM IT Architect jdevos@fr.ibm.com IBM Corporation

Eléments de spécification des systèmes temps réel Pierre-Yves Duval (cppm)

Modélisation et Simulation

Systèmes d information et bases de données (niveau 1)

Langage HTML (2 partie) <HyperText Markup Language> <tv>lt La Salle Avignon BTS IRIS</tv>

UE 8 Systèmes d information de gestion Le programme

Chapitre 1 : Introduction aux bases de données

Le génie logiciel. maintenance de logiciels.

Modèles à Événements Discrets. Réseaux de Petri Stochastiques

Générer du code à partir d une description de haut niveau

Master Informatique Aix-Marseille Université

Programmation de services en téléphonie sur IP

OCL - Object Constraint Language

Efficace et ciblée : La surveillance des signaux de télévision numérique (2)

Les systèmes de base de données temps réels. Pokrovskaya Natalia, Kabbali Nadia

Etude et développement d un moteur de recherche

Glossaire. ( themanualpage.org) soumises à la licence GNU FDL.

Analyse,, Conception des Systèmes Informatiques

Conception des bases de données : Modèle Entité-Association

M1 Informatique, Réseaux Cours 9 : Réseaux pour le multimédia

Chronogrammes et contraintes. à la modélisation de systèmes dynamiques à événements

Chapitre 5 LE MODELE ENTITE - ASSOCIATION

Séance 1 Introduction aux bases de données

CHAPITRE VI ALEAS. 6.1.Généralités.

Programmation temps-réel Cours 1 et 2 Introduction et ordonnancement

1. LA GESTION DES BASES DE DONNEES RELATIONNELLES

XML, PMML, SOAP. Rapport. EPITA SCIA Promo janvier Julien Lemoine Alexandre Thibault Nicolas Wiest-Million

Solution A La Gestion Des Objets Java Pour Des Systèmes Embarqués

Université de Bangui. Modélisons en UML

THÈSE. présentée à TÉLÉCOM PARISTECH. pour obtenir le grade de. DOCTEUR de TÉLÉCOM PARISTECH. Mention Informatique et Réseaux. par.

Le Guide Pratique des Processus Métiers

Développement d un interpréteur OCL pour une machine virtuelle UML.

Système à enseigner : Robot M.I.M.I. MultipodeIntelligent à Mobilité Interactive. Version 1.0

Contrôle par commande prédictive d un procédé de cuisson sous infrarouge de peintures en poudre.

Projet Active Object

Francis BISSON ( ) Kenny CÔTÉ ( ) Pierre-Luc ROGER ( ) IFT702 Planification en intelligence artificielle

Modèles et politiques de sécurité pour les infrastructures critiques

ET 24 : Modèle de comportement d un système Boucles de programmation avec Labview.

epowerswitch 4M+ Fiche technique

Software Engineering and Middleware A Roadmap

Model checking temporisé

Méthodologie de conceptualisation BI

Vers l'orchestration de grilles de PC par les mécanismes de publicationsouscription

Annexe 6. Notions d ordonnancement.

Modélisation de la Reconfiguration Dynamique appliquée à un décodeur LDPC Non Binaire

Présentation Alfresco

Sciences de Gestion Spécialité : SYSTÈMES D INFORMATION DE GESTION

CEG4566/CSI4541 Conception de systèmes temps réel

TP redondance DHCP. Gillard Frédéric Page 1/17. Vue d ensemble du basculement DHCP

Sujet de thèse CIFRE RESULIS / LGI2P

BPEL Orchestration de Web Services

Rapport de Stage. Environnements d édition de workflow

Outils logiciels SPC - une façon simple d optimiser les performances et la protection

INF 1250 INTRODUCTION AUX BASES DE DONNÉES. Guide d étude

Analyse structurée de solutions pour BMC Remedy IT Service Management v 7

Windows Internet Name Service (WINS)

Business Process Execution Language

Cours de Master Recherche

Laboratoire 4 Développement d un système intelligent

Module BD et sites WEB

BES WEBDEVELOPER ACTIVITÉ RÔLE

et les Systèmes Multidimensionnels

Outils logiciels pour la combinaison de vérification fonctionnelle et d évaluation de performances au sein de CADP

IFT2255 : Génie logiciel

Une architecture hybride Client/Serveur et Pair-à-Pair pour le streaming vidéo sur l Internet

REALISATION d'un. ORDONNANCEUR à ECHEANCES

Rapport du projet Qualité de Service

Grandes lignes ASTRÉE. Logiciels critiques. Outils de certification classiques. Inspection manuelle. Definition. Test

Services Réseaux - Couche Application. TODARO Cédric

Le réseau Internet.

C est quoi le SWAT? Les équipes décrites par James Martin s appellent SWAT : Skilled With Advanced Tools.

Proposer de nouveaux services aux Levalloisiens. Des ressources numériques, accessibles à distance.

Efficient Object Versioning for Object- Oriented Languages From Model to Language Integration

Surveillance et maintenance prédictive : évaluation de la latence de fautes. Zineb SIMEU-ABAZI Univ. Joseph Fourier, LAG)

Processus d Informatisation

NFP111 Systèmes et Applications Réparties

SQL Parser XML Xquery : Approche de détection des injections SQL

Transcription:

Une méthode formelle pour la vérification de la consistance temporelle et la gestion prédictive de la Qualité de service pour la présentation des documents SMIL A.Abdelli LSI-TR-1503 1

Une méthode formelle pour la vérification de la consistance temporelle et la gestion prédictive de la Qualité de service pour la présentation des documents SMIL A.Abdelli Laboratoire LSI - Département d informatique USTHB B.P.32 El-Alia Bab Ezzouar Alger Algérie 16111 Email: karim.abdelli@wissal.dz Résumé Plusieurs travaux ont été dédiés à l édition et à la présentation des applications interactives multimedia sur le web, mais très peu se sont intéressés à la vérification sémantique de ces documents. Ce papier présente une approche formelle pour la construction du graphe de synthèse modélisant un document multimédia décrit en SMIL. Le graphe de synthèse obtenu en utilisant notre approche donne toutes les solutions consistantes lorsqu elles existent. Ce graphe calcule au niveau de chaque nœud terminal les délais minimaux et maximaux pour chaque sous séquence Multimédia réalisée. Ce qui permet d envisager aussi bien une analyse qualitative que quantitative du document. Le graphe obtenu, peut être utilisé aussi bien pour garantir une présentation consistante du Player (au niveau client) que pour améliorer la qualité de service en implémentant une politique de Scheduling dynamique par anticipation (au niveau du serveur multimédia) Mots Clés: Multimedia, RT-LOTOS, Réseau temporel algébrique (RTA), SMIL, vérification formelle, qualité de service, graphe temporel. 1 INTRODUCTION Plusieurs travaux se sont intéressés au développement des documents multimédias interactifs (DMI) basés sur la norme W3C Synchronized Multimedia integration language (SMIL) [1]. Certains de ces travaux ont été dédiés à l édition, à la présentation des documents SMIL [3] [4] et d autres à l implémentation du Player [5] [6] [7][8]. Ces travaux se sont focalisés sur la spécification des besoins de l édition et des contraintes de synchronisations et très peu ont proposé des solutions pour la vérification sémantique de tels documents [2][9][10][11]. Dans [12] une approche formelle permettant de traduire un document SMIL2.0 vers une spécification RT-LOTOS [13] a été proposée. Dans le but de vérifier sa consistance, l approche exploite les méthodes d analyses précédemment définies qui consistent en la génération à partir d une spécification RT-LOTOS de l automate temporisé équivalent et puis de sa dérivation vers un graphe d accessibilité fini. Dans le cas d un document SMIL, le graphe obtenu permet de décrire tous les comportements possibles du système (consistant et non consistants). Un graphe de synthèse [19][20] est ensuite extrait, en éliminant toutes les branches inconsistantes, avant d être traduit vers un automate temporisé modélisant «le graphe de synthèse». Dans l approche que nous proposons, le graphe de synthèse est plus compact et nettement plus réduit que celui produit dans [20]. Pour ce faire, nous exploitons des travaux précédents qui permettent de traduire une spécification RT-LOTOS vers un langage à base de réseaux de Petri temporels [14], appelé «réseau temporel algébrique»[15]. Par ailleurs, une approche de construction du «graphe d accessibilité contracté» à partir d un RTA a été formalisée et implémenté [16]. L avantage de notre approche est qu elle produit «un graphe de synthèse» minimal. 1

Le graphe généré ici, que nous appelons «graphe temporel» de plus qu il est compact, il calcule les délais minimaux et maximaux de réalisation de chaque sous séquence multimédia réalisée. Ce qui permet une fois obtenu, d effectuer aussi bien une analyse qualitative que quantitative [17]. Le graphe temporel peut servir de modèle, lors de l édition ou l exécution d une présentation, et aussi comme outil de prédiction pour l amélioration de la qualité de service au niveau du serveur Multimédia. Ce papier est organisé comme suit: La section 2 présente de manière informelle les différents modèles utilisés. Les sections 3 et 4 présentent l approche proposée pour la vérification de la consistance temporelle des documents SMIL, appliquée à un exemple concret. La dernière section propose une technique pour l amélioration de la qualité de service pour la présentation des documents SMIL, en utilisant le graphe de synthèse obtenu. 2 MODELES UTILISES Nous considérons dans ce papier les modèles suivants: 2.1 Le langage SMIL SMIL est l acronyme de Synchronized Multimedia Integration Language. C est un langage déclaratif qui permet de décrire l aspect spatial et temporel d une présentation composée de plusieurs objets multimédias. SMIL est un langage de balisage basé sur XML (extensible Markup language). SMIL offre des options de gestion de la présentation telles que les opérateurs de synchronisation par «exécution parallèle de plusieurs objets» et seq «exécution séquentielle de plusieurs objets», l opérateur de choix switch et l opérateur de préchargement «prefetech». Par ailleurs, SMIL est indépendant de la plate forme et des médias utilisés. Le code source en texte pur assure sa portabilité et son ouverture à des mises en œuvre diverses. 2.2 Le langage RT-LOTOS RT-LOTOS (Real-Time LOTOS) [13][18] est une extension temporelle du langage LOTOS basée sur l algèbre des processus et normalisée par ISO (ISO8807). RT-LOTOS permet de décrire le comportement d un système temps réel par une expression algébrique combinant des actions élémentaires (qui peuvent être contraintes temporellement) avec des opérateurs algébriques héritées dans leur globalité de LOTOS. La réalisation d une action du système peut manipuler des structures de données déclarées au moyen des types abstraits. Plusieurs mécanismes temporelles ont été définies dans RT-LOTOS tels que: - La temporisation à durée déterministe (date), à durée non déterministe (intervalles ) - Le mécanisme d urgence. - Le mécanisme de préemption.etc RT-LOTOS a fait l objet de plusieurs travaux dans le domaine multimédia [12][18] et plus récemment pour la validation de la consistance temporelle des documents SMIL [11][19][20]. 2.3 Le modèle RTA (réseau temporel algébrique) Ce modèle a été présenté et définie dans [14][15]. Il permet de modéliser un système temps réel par une expression algébrique combinant des opérateurs algébriques avec des instanciations de processus. Chaque processus est modélisé par un réseau de Petri temporel [21]. Les processus peuvent manipuler des structures de données, et évoluer en parallèle, synchrone, asynchrone où selon une autre sémantique. Ils communiquent par rendez-vous sur des canaux de communication. Un canal est associé à chaque transition et définit le rendez-vous sur lequel elle communique et se synchronise avec son environnement. Une approche a été formalisée et implémentée dans [14] pour traduire une spécification RT-LOTOS vers un RTA. Ceci permet d exploiter la méthode d énumération des classes accessibles développée pour un RTA [16] pour l analyse des spécifications RT-LOTOS. 2.4 Le graphe temporel Le «graphe temporel» a été défini dans [14][16] et permet de modéliser le graphe d accessibilité contracté d un RTA. Un graphe temporel est un système de transitions étiquetées tel que dans chacun de ses nœuds est sauvegardé l ensemble des contraintes temporelles définissant le domaine de satisfaisabilité. Lors de la construction du graphe on calcule aussi un Tableau D donnant les délais minimaux et maximaux des sous séquences d actions réalisées. L approche de construction développée permet de calculer au nœud (n) le tableau D n de manière récursive à partir du tableau D n-1 obtenu au noeud (n-1), ce qui permet de réduire de façon considérable la complexité en temps de calcul. Contrairement aux autres graphes, Le «graphe temporel» obtenu, permet d envisager une 2

analyse aussi bien qualitative que quantitative du système modélisé. D autre part une approche a été formalisée dans [22] permettant de traduire un graphe temporel vers un automate temporisé, ce qui permet d effectuer des analyses par application de logiques temporelles. 3. GRAPHE DE SYNTHESE D UN DOCUMENT SMIL: Considérant une réseau temporel algébrique modélisant une document SMIL. Le RTA correspondant peut être obtenu soit: Editeur de documents SMIL Traduction automatique vers une spécification formelle RT-LOTOS Traduction automatique vers un Réseau Temporel Algébrique RTA non maximaux de réalisation de chacune de ses sous séquences multimédias réalisées. L opération de formatage se trouve simplifiée, et peut être effectuée, à partir du graphe obtenu. Ce graphe pourra être utilisé aussi bien: 1) à l édition, dans ce cas, il sera généré lors de l édition et permettra d offrir au concepteur de manière interactive, un mécanisme de formatage du document SMIL. 2) à l exécution, dans ce cas, on ne considère que les comportements consistants du scénario. il permettra au Player client d effectuer une présentation cohérente si possible, telle que les délais de réalisation de ses composants sont extraits à partir des domaines de validité exprimés dans le «graphe temporel consistant» (graphe de synthèse ). 3.1 Exemple Considérons le scénario temporel modélisé par le document SMIL de la figure2-b et illustré dans la figure 2-a et qui consiste en une séquence d un vidéo clip (Vidéo) suivi par une image (Img 2 ). Construction du graphe temporel Tableaux D Analyse des propriétés de consistance Graphe de synthèse Si le document est consistant oui Cette séquence doit être présentée simultanément avec une autre séquence composée d une image (Img 1 ) suivie par un certain média. Ce dernier correspond à un élément de l opérateur «switch» de SMIL qui peut être soit une bande Audio (Audio) ou un texte (Txt). Cet élément est choisi par l opérateur Swich et peut être décodé si l évaluation de ses attributs est satisfaite. Figure1 : approche de vérification des documents SMIL 1) A partir de la spécification RT-LOTOS modélisant le document SMIL en exploitant les passerelles existantes 2) Directement à partir du document SMIL. Dans ce cas, le passage formelle et automatique entre les deux modèles reste à définir et à implémenter. Le RTA obtenu, est ensuite dérivé vers un «graphe d accessibilité contracté» équivalent. Ce graphe compact, appelé «graphe temporel» énumère tous les comportement possibles consistant et inconsistants. Chaque neoud du graphe sauvegarde les contraintes temporelles exprimées sur des horloges modélisant des délais de franchissements relatifs. L avantage de ce graphe est qu il calcule au niveau de chaque nœud, terminal les délais minimaux et Notons que le média «vidéo» peut être interrompu au cours de son exécution et terminé par un événement externe, représentant une interaction avec l utilisateur. La fin de la présentation de Img 2 est déterminée par le terminaison séquentielle de Img 1 et l élément choisi par l opérateur Swich. Supposons que les durées de Img 1, Audio, Txt et Vidéo sont, respectivement, 5 20, 4 et 10 secondes, et que le média Img 2 n a pas une durée explicite. Ainsi sa terminaison dépend de la fin du choix entre (Txt et Audio) ce qui implique une synchronisation de type «master» avec Txt ou Audio [23]. Notons par ailleurs que l interaction de l utilisateur peut être effective qu entre [6,10] secondes après le début de «Vidéo». 3

Img1 Video User Img2 (a) TXT ou AUDIO <par id= par01 <seq id=seq01> <img1 dur= 5s /> <Switch> <Audio dur= 20s./> <Txt dur=4s./> <Switch> </seq> <seq id= seq02 end= id(seq01)/(end) > <video dur= 10s <anchor id= user href= img2 Begin= 6s dur= 4s />. /> <Img2... /> </seq> </par> (b) Figure 2. Scénario avec swich et événement non déterministe Img1 Txt Audio Video Img 2 g 1 g 2 g 3 g 4 (c) La figure2.c représente les points de synchronisation entre les différents médias: g 1 : synchronisation entre les débuts de Img 1 et Vidéo. g 2 : synchronisation entre la fin de Img 1 et le début de Audio ou Txt. g 3 : synchronisation entre la fin de Vidéo et le début de Img 2. g 4 : synchronisation entre les terminaisons, Img 2 et de Audio ou Txt. La figure 3 présente le réseau temporel algébrique correspondant au scénario «doc-smil» précédent. Le comportement global du scénario est modélisé par une expression algébrique qui combine des instanciations de réseaux de Petri temporels avec des opérateurs algébriques: a) la composition parallèle avec synchronisation sur un ensemble de rendez-vous [g 1..g n ] qui permet de modéliser des mécanismes SMIL tels que: seq et par b) l opérateur de choix non déterministe [ ] qui permet de modéliser le «switch» c) l opérateur de préemption <g 1..g n ]qui permet de préempter le comportement de gauche dès qu un rendez-vous de {g 1 g n } y est réalisé, pour ensuite exécuter le comportement de droite. Le RTA modélise chaque élément, par un réseau de Petri temporel auquel est associé à chacune de ses transitions un rendez-vous dénotant le point de synchronisation sur lequel elle va se réaliser. Chaque média commence par une action «Début» et se termine par une action «fin». D autres actions peuvent être modélisées comme une interaction extérieure (ex: transition F-vid-User dans Vidéo). L unité Doc modélise le début et la fin du document Multimédia. Begin Doc-SMIL using [g 1,g 2,g 3,g 4 ] expression Doc [g 1, g 4 ] [g 1, g 4 ] (Vidéo[g 1,g 3 ] [ g 3 ] Img 2 [g 3, g 4 ] ) [ ] Master [g 4 ] [g 1, g 4 ] Img1 [g 1,g 2 ] [ g 2 ] ( Txt [g 2, g 4 ] [ ] Audio [g 2, g 4 ] ) Where <g 4 ] Stop D-Doc D-vid D-Img2 D-Aud D-Img1 F-Master [0,10] g3 [0, 5]g2 [0,0]g1 [0, 0 ]g1 [0, 5 ]g2 [0, ]g1 [0, ] g4 D-Txt F-Doc [0, ] g4 DOC F-vid-user F-Img2 F-vid MASTER F-Aud F-Img1 F-Txt [10, 10] g3 [6, 10 ]g3 [0, ] g4 [20, 20] g4 [5,5] g2 [4, 4] g4 VIDEO IMG2 STOP AUDIO IMG1 TXT Figure 3. Réseau temporel algébrique correspondant 4

Le début du scénario est modélisé par la synchronisation des unités Vidéo, Img1, Doc sur le rendez-vous «g 1». La séquence Img 1 et le choix non déterministe entre Txt et Audio est modélisée par la synchronisation sur g 2. La séquence entre Video et Img2 est réalisée par la synchronisation sur g 3. La fin du scénario a lieu sur le rendez-vous «g 4» en synchronisant Doc, (Audio ou Txt) et (Img 2 ou Master). L unité Master permet de modéliser une synchronisation de type «Master»[23] : à savoir que la fin de Txt ou audio (maitre) force la terminaison de la séquence Video, Img 2 même lorsque Img 2 n offre pas «g 4». La fin du scénario multimédia est déclenchée lors de la réalisation du rendez-vous «g 4» ce qui active le mécanisme de préemption <g 4 ] en donnant la main à l unité Stop (réseau à une place, sans transitions) En utilisant l approche développée dans [16]. Nous obtenons le graphe temporel de la figure 4. Chaque nœud du graphe contient les contraintes temporelles déterminant le domaine de validité des variables k i. La variable k i modélise le temps écoulé entre les nœuds (i-1) et (i) (k 0 étant l instant initial). Pour chaque nœud terminal (n) nous calculons le tableau D n (i,j) qui donne les délais écoulés entre les nœuds (i) et (j). Nous représentons sur chaque arc reliant les nœuds (i-1) et (i) le groupe de transitions synchrones franchi, et le rendez-vous qui lui est associé. On présente dans ce qui suit l algorithme de calcul de la fonction D n 3.2 Définitions et Notations - On note par Ts n l ensemble des transitions sensibilisées au noeud (n) - On note par Ns n : l application qui associe pour chaque transition sensibilisée de Ts n son noeud de sensibilisation d origine dans la séquence 1.. n. - On définit au nœud (n) la fonction: D n :[0, n] 2 Q D n (i,j) = donne le temps maximum écoulé entre les noeuds (i) et(j) si i <j D n (i,j) = donne la valeur négatif du temps minimal écoulé entre les noeuds (i) et (j) si i >j D n (i,j) = 0 si i=j D n est obtenu récursivement à partir de D n-1 suite au tir d un groupe de transitions synchrones gt n comme suit: D n (n,n)= 0 i [0,n-1], D n (i, n) = MAX ( D n-1 (i,n-1), Min t TSn-1 { Tmax(t) +D n-1 (i, Ns n-1 (t) )} D n (n, i) = MIN ( Min t gtn { D n-1 (Ns n-1 (t) ), i) - Tmin(t)}, D n-1 (n-1,i) ) i, j [0,n-1] 2 D n (i, j) = Min ( D n-1 (i, j), D n (i,n) + D n ( n, j) ) 0 1 21 31 K K 1 0 =0 =0 K 21 =5 1 K 31 4 {D-doc, D-vid, D-img1} g1 {D-txt F-img1} g2 {D-img2, F-Vid-user} g3 [5,5] [0,0] [6,9] [5,5] {D-aud, F-img1} g2 33 {F-txt, 1 K 33 5 22 F-master F-doc } g4 {D-img2, F-vid_user} g3 K 22 =5 [6,10] [9,9] {F-img2, F-Txt F-doc } g4 [9,9] 32 41 {F-img2, F-doc F-Aud} g4 [10,10] [25,25] {D-img2, F-vid} g3 K 32 =4 1 K 31 4 K 41 =4- K 31 42 1 K 33 4 K 41 =20-K 33 34 K 34 =5 43 {F-Img2, F-Doc, F-Aud} g2 K 43 =15 [25,25] Figure 4 Graphe de synthèse correspondant D 41 0 1 21 31 41 D 32 0 1 21 32 0 0 0 5 9 9 0 0 0 5 9 1 0 0 0 9 9 1 0 0 5 9 21-5 -5 0 4 4 21-5 -5 0 4 31-6 -6-1 0 3 32-9 -9-4 0 41-9 -9-4 0 0 D 42 0 1 22 33 42 D 43 0 1 22 34 43 0 0 0 5 10 25 0 0 0 5 10 25 1 0 0 5 10 25 1 0 0 5 10 25 22-5 -5 0 5 20 22-5 -5 0 5 20 33-6 -6-1 0 19 34-10 -10-5 0 15 42-25 -25-20 -15 0 43-25 -25-20 -15 0 5

4 ANALYSE DE LA CONSISTANCE ET SYNTHESE La vérification formelle de la consistance d un document SMIL en utilisant RT-LOTOS a été traitée dans [19][20]. Un document est dit consistant, si l action caractérisant le début de la présentation est nécessairement suivie (plus tard) par une action caractérisant sa fin. Cette définition a été raffinée dans le but de distinguer entre deux types d évènements qui peuvent mener à une inconsistance temporelle: 1) les «évènements internes non déterministes» qui sont liés à la flexibilité de la durée de chaque média dans la présentation ou à des contraintes temporelles non satisfaites. 2) les «évènements externes non déterministes» qui sont en relation avec l occurrence d un événement externe, tels: l interaction d un utilisateur sur un «anchor», les retards de transmission et de traitement dus aux interrogations de base de données, simulations scientifiques, etc En résumé, la non consistance temporelle d un document Multimédia peut être du soit à des évènements internes ou externes, soit aux deux. Plus simplement, la non consistance d un document peut être déterminée par l identification de l origine de ses inconsistances dans le scénario temporel, ensuite vérifier si elles peuvent être corrigées par formatage temporel (recherche de solutions). Analysons maintenant le scénario de la figure 2. Le graphe de la figure 4 correspondant, est consistant puisque tous ses chemins mènent vers l action f-doc. Considérons maintenant que la fin du Scénario est déterminée par la fin simultanée de Img2 et (Txt ou Audio) (synchronisation de type «and» [23] ) Supposons aussi que les durées de Img1 et audio, deviennent respectivement 2 et 3. Dans ce cas, la fin du document ne peut jamais avoir lieu si Txt est choisi. Les branches (21 41) et (21 32) vont disparaître du graphe, et on se retrouve avec la branche (1..21) qui ne mène pas vers une occurrence de f-doc, d où un scénario inconsistant. Cette inconsistance est due à un événement interne non déterministe,.i.e. Elle est liée à une mauvaise modélisation des contraintes de temps. Le concepteur devra revoir son document initial, et effectuer un formatage temporel (synthèse) qui consiste à ajuster les durées de telle sorte que la branche partant de 1 devienne consistante (que f-txt et f-img 2 puissent se synchroniser). Supposons maintenant que la durée de Img2 devient 2 et que l interaction utilisateur peut survenir à n importe quel instant compris entre le début et la fin de Vidéo. Dans ce cas, si l utilisateur intervient dans les deux secondes après le début de vidéo, la fin de img 2 ne pourra jamais se synchroniser avec celle de txt ou audio, d où l inconsistance du scénario. Cette incohérence est due à un «événement, externe non déterministe». Dans SMIL l élément «anchor» peut être temporisé, contrairement à l élément d adressage «a». Ces deux éléments sont utilisés pour modéliser une interaction de l utilisateur. Dans le cas d un adressage «a», le formatage du document est plus délicat, car l inconsistance est due à un événement qu on ne peut maîtriser temporellement. Pour ce faire, il est nécessaire de revoir complètement le document, en modifiant les contraintes temporelles des autres composants. Pour conclure, le graphe temporel peut être utilisé à deux niveaux: a) Au niveau édition, il permet de vérifier la consistance temporel d un document multimédia SMIL. Dans le cas d une incohérence temporelle, le concepteur aura à formater son document jusqu à obtenir un graphe consistant qu on appellera «graphe de synthèse». b) Au niveau présentation, si l on désire avoir une présentation consistante à partir d un document non consistant, le graphe de synthèse est extrait à partir du graphe temporel en élaguant toutes les branches inconsistantes. A partir de là le Player utilisera le graphe de synthèse extrait comme «outil de décision» pour ne présenter que les comportements consistants du document multimédia. 5 GESTION PREDICTIVE DE LA QUALITE DE SERVICE Le serveur Multimédia doit assurer que l ordre temporel des flux multimédia soit satisfait lors du traitement des requêtes client. Le flux multimédia a une grande consommation en bande passante, et dans un réseau, le serveur peut traiter plusieurs clients en même temps. Par conséquent, durant une présentation, un client peut attendre indéfiniment avant de recevoir le prochain flux multimédia. Ceci est du au fait que les requêtes du client sont mis en file d attente avant d être traitées. Ce qui provoque des pertes de synchronisation entre les différents objets Multimédias requis par le client pour leur présentation. 6

(1) Serveur1 (5) (7) Composant 1 Client disposant d un Player SMIL 2.0 (6) INTERNET (4) (2) Document SMIL Graphe de Synthèse INTERNET requêtes prédictives Composant N Serveur N Serveurs Hébergeant la présentation SMIL INTERNET (3) Serveur hébergeant Le document SMIL Figure 5 : Gestion prédictive de la qualité de service Dans ce cas une solution peut se proposer et qui consiste à ce que le Serveur hébergeant le document SMIL informe en avance les différents serveurs Multimédia de l ensemble des objets requis dans le temps pour leur présentation sur un Player client. Cette information sera utilisée par chaque serveur Multimédia pour appliquer une politique de Scheduling prédictive et optimale pour la délivrance des flux Multimédia. La gestion prédictive est décrite dans la figure 5 et suit les étapes suivantes: 1) Le client envoie une requête au serveur hébergeant, la page contenant le code XML du document SMIL. 2) A la réception de la requête, le serveur charge le code Xml, et le traduit en graphe de synthèse. Pour chaque composant E i requis pour la présentation il récupère (en considérant tous les chemins possibles) à partir des tableaux D n : a) le temps minimum Time-begin(E i ) écoulé entre le début du document et le début du composant E i. b) la durée maximum Time-max(E i ) écoulé entre le début et la fin d un composant E i 3) Pour chaque serveur Multimédia hébergeant un composant E i utilisant le streaming. Le serveur Web lui envoie une «requête prédictive» spécial l invitant à charger une durée timemax(e i ) du composant E i qui va être requise au plutôt dans Time-begin(E i ) secondes. 4) Le serveur Web envoie le code XML du document SMIL au Player client. 5) A la réception de la requête prédictive, le serveur multimédia hébergeant le composant E i traite la requête en fonction de son urgence (valeur de Time-begin(E i ) ) en chargeant dans un buffer la partie demandée du composant E i d une durée time-max(e i ). 6) A la réception du code XML du document SMIL. Le Player réalise une présentation dans l ordre spécifié et envoie au fur et à mesure les requêtes aux différents Serveurs multimédia. 7) Lorsque une requête de délivrance du composant E i est réceptionnée. Le serveur multimédia délivre en temps réel le flux multimédia à partir du Buffer préchargé. Remarque: Seuls les composants utilisant le streaming de type audio ou vidéo ont besoin d un pré chargement. 6 CONCLUSION Nous avons présenté dans ce papier une approche formelle pour la construction du graphe de synthèse d un document Multimédia SMIL. L approche proposée traduit le code XML vers un réseau temporel algébrique, qui est dérivé vers un graphe temporel minimal. Le graphe obtenu ici, est compact et représente tous les comportements possibles du scénario modélisé. 7

Lors de sa construction, le graphe calcule au niveau de chacun de ses nœuds terminaux, les délais minimaux et maximaux de chaque sous séquence multimédia réalisée. Ceci permet d envisager une analyse aussi bien qualitative que quantitative du document SMIL. Le «graphe temporel» obtenu, peut être utilisé: Au niveau de l édition, permettant au concepteur d effectuer un formatage temporel de son document multimédia pour le rendre consistant. Lors de la présentation, pour la production des parties de scénarios consistants à partir du «graphe de synthèse». D autre part certaines informations contenues dans le graphe peuvent servir à la gestion prédictive de la qualité de service. Il suffit d envoyer à chaque serveur multimédia, à l avance l objet requis, sa durée maximal, et son délai minimal restant avant sa présentation. A partir de là, le serveur peut appliquer une politique de scheduling optimale pour la délivrance des flux multimédias en temps réel. Pour terminer signalons que des outils de vérification de documents SMIL sont en cours d implémentation en se basant sur l approche proposée dans ce papier. REFERENCES [1] W3C Recommendations. Synchronized Multimedia Integration Language (SMIL) 1.0 Specification. URL:http://www.w3.org/TR/REC-smil, June 1998 [2] S.M. Chung and L.Pereira Timed Petri net representation of the synchronized Multimedia Integration Language (SMIL ) of XML In proc Of the intern Conf on information Technology: computer and communications april 2003) [3] Jourdan, M.Layaida, N.Roisin, C.Sabry-Ismail, L.Tardif, L.Madeus, An authoring Environment for interactive Multimedia Documents In proc of ACM Multimedia 98 Bristol, UK sep 1998 pp 267-272 [4] D.C.A Bulterman User-Centered Abstractions for adaptive Hypermedia Presentations In proc of ACM Multimedia 98 Brisol UK 1998 pp247-256 [5] Real Systems G2 Home page (version 6.0). URL: http://www.real.com [6] GriNS Home page (version 6.0) URL: http://www.oratrix.com/grins [7] HPAS home page (Version 1.0) URL: http://www.oratrix.com/grins [8] Helio Barbizon home page (Version Cherbourg 1.0) URL: http://www.helio.org/ [9] M.C Buchanan, P.T Zellweger, Automatically generating consistent Schedules for multimedia documents Multimedia Systems Journal V1 n.2 1993 pp55-67 [10] N.Layaida, L.Sabry-Ismail Maintaining Temporal Consistency of multimedia documents using constraint Networks In proc of the 1996 Multimedia Computing and networking, San josé USA Feb 1996 pp124-135 [11] P.N.M. Sampaio, C.Lohr, J.P.Courtiat An integrated environment for the presentation of consistent SMIL 2.0 documents ACM Symposium on Document Engineering (DocEng'01), Atlanta (USA), 9-10 Novembre 2001, pp.115-124 [12] P.N.M Sampaio, J.P. Courtiat An approach for the automatic generation of RT-LOTOS specifications from SMIL 2.0 documents IX Symposium on Multimedia Systems and Web, Salvador (Brésil), 3-6 Novembre 2003, pp.103-118 [13] J.P. Courtiat, R.C de Oliveira and L.F.R.C Carmo. «The RT-LOTOS formal specification of the conditional delivery mechanism Information Systems, Special issue on Multimedia, Elseiver Science- Spinger Verlag 95 [14] A. Abdelli, Enumération des états accessible d un système temporal spécifié au moyen de LOTOS étendu au facteur temps : RT-LOTOS Thèse soutenue le 3 oct 1998 au département d informatique Université USTHB Alger Algérie [15] A.Abdelli "Specifying a real time system using the ATN model" In proc of the fourth international symposium on programming and systems". ISPS99 Algiers 18-21 Nov 1999 [16] A.Abdelli " Constructing the contracted accessibility graph of real timed system modelled using a language based on Time Petri Nets. l" In proc of the first International symposium on software and systems Fev- 2001 Constantine Algeria. [17] J.P Courtiat, R.C Oliveira Proving temporal consistency in a new multimedia Synchronisation Model In Proc of ACM Multimedia 96 Boston USA Nov 1996 pp 141-152 [18] J.P Courtiat, C.A.S Santos, C.Lohr, B.Outtaj Experience with RT-LOTOS, a temporal extension of the Lotos formal description technique In Computer Communications Vol..23, N 12 pp 1104-1123, July2000. [19] C.Santos, N Sompaio, J.P Courtiat, Revisiting the concept of hypermedia document consistency. In proc of ACM Multimedia 99 Orlando USA Nov 1999. [20] P.N.M.SAMPAIO, J.P.COURTIAT Providing consistent SMIL 2.0 documents 2002 IEEE International Conference on Multimedia and Expo (ICME'2002), Lausanne (Suisse), 26-29 Août 2002, 4p. [21] P.Merlin D.JFarber "Recovability of communication protocols" IEEE Trans on communications, 24(1976) [22] H.boucheneb, A.Abdelli, GBerthelot "L'automate temporisé d'une spécification TC-LOTOS" in Proc. Of CARI 98, INRIA Dakar (senegal) Oct 98. [23] M.Diaz P.senac "time stream Petri nets : a model for timed multimedia information" 15th international conference on application and theory of petri nets, LNCS 815, Springer Verlag, Zaragoza (spain) juin 1994. 8