Vous êtes sur la page 1sur 12

Test de services bass sur la localisation

Amel Mederreg, Ana Cavalli


Laboratoire CNRS SAMOVAR Institut National des Telecommunications 9 rue Charles Fourier F-91011 Evry Cedex {Ana.Cavalli, Amel.Mederreg}@int-evry.fr

Marcien Mackaya, Richard Castanet


LaBRI 351, cours de la libration 33405 Talence Cedex {richard.castanet, marcien.mackaya}@labri.u-bordeaux.fr

RSUM.

Dans cet article nous prsentons la spcification de services bass sur la localisation et des techniques de test permettant dvaluer leur conformit. Ces services font rfrence au protocole WAP1, mais galement aux technologies GPRS2 et UMTS3, et font usage des donnes relatives la localisation spatiale des terminaux. Les services sont spcifis formellement en utilisant le langage SDL et ils ont t implants en WML (langage dimplantation propos par la WAP forum). Les scnarios de tests sont obtenus par application dun algorithme qui permet de tester un service dans son contexte.
ABSTRACT. In this article we present the specification of location based services and methodology to test their conformance. These services refer to WAP protocol, but also to the GPRS and UMTS technologies by using terminal's location information. The services are specified formally by using SDL language and they were implemented in WML (language of implementation proposed by the WAP forum). The test patterns are obtained using an algorithm which allows to test a service in its context. MOTS-CLS:

Services, protocoles, Internet, WAP, GPRS, UMTS, services de localisation, test de conformit et dinterfonctionnement

KEYWORDS:

Services, protocols, Internet, WAP, GPRS, UMTS, location based service, conformance and interworking test.

1 2

Wireless Application Protocol Global Packet Radio System 3 Universal Mobile Telecommunication System

GRES Fvrier 2003, Fortaleza-CE-Brsil.

1. Introduction Ces dernires annes ont t marques par des avances majeures dans le domaine de linformatique et des rseaux, plus particulirement de lInternet et des rseaux mobiles. Cette volution a fait avancer les travaux relatifs lInternet sur les terminaux sans fil. Pour y arriver, la conception de nouveaux services et protocoles sest avre ncessaire. De plus, les architectures mises en uvre par ces services et protocoles interconnectent des lments htrognes, qui ncessitent dtre tests et expriments afin de valider leur interfonctionnement. Les tests et lexprimentation sur des plates-formes relles deviennent ainsi un enjeu capital pour les nombreux acteurs du domaine (oprateurs, quipementiers, fournisseurs de service). Dans cet article nous nous intressons davantage aux applications qui font non seulement rfrence au protocole WAP (et par consquent aux technologies GPRS et UMTS), mais qui utilisent aussi des donnes relatives la localisation spatiale des terminaux. Le WAP est un protocole qui a t conu pour permettre la transmission et la prsentation de documents Internet sur des priphriques dont les possibilits daffichage sont limites. Les services prsents dans cet article ont t implants en WML, langage dimplantation propos par le WAP forum. Daprs les spcialistes des tlcommunications mobiles, une des cls du succs du WAP rside dans les applications capables de prendre en compte la localisation de lutilisateur [3]. Cet article est focalis sur la spcification et le test de services (pour une description plus dtaille du WAP voir [4] ). Nous dcrivons dans cet article, une application de localisation qui satisfait les requtes lies la proximit, litinraire et le trafic routier et des techniques de test permettant dvaluer leur conformit. Ce travail de recherche fait partie du projet PLATONIS (PLAte-forme de validaTiOn et dexperimentatioN multi-protocoles et multi-Services) qui a t labelis par le RNRT (Rseau National de Recherche en Tlcommunications) , et qui est le rsultat de la collaboration entre des laboratoires de recherche et des groupes industriels [11]. Ce projet a pour objectif l'tude, sur une plate-forme de test, des protocoles et services lis la mobilit et des technologies permettant son dveloppement. Afin de faciliter la simulation des services et la gnration des squences de test, les services sont dcrits en utilisant le langage SDL (Specification Description Language) [8,10]. SDL est un langage de description formelle du comportement rel du systme normalis par lITU (International Telecommunication Union).

Test de services bass sur la localisation

Larticle est organis comme suit. La section 2 prsente la fonction de localisation et les technologies de positionnement. La section 3 introduit un cas dtude, bas sur des services lis la localisation, conus et dvelopps dans le cadre du projet PLATONIS. La section 4 prsente la spcification en SDL de ce cas dtude et la squence de test dans le langage Message Sequence Chart (MSC) obtenue par application dun algorithme de gnration de tests. Finalement, la section 5 prsente les conclusions de ce travail.

2. Services de localisation Le LoCation Services (LCS), aussi appel Mobile Positioning, est un ensemble de services dpendants de la connaissance de la position gographique du terminal. La position du terminal est une information qui peut tre demande par une application laquelle on attribue la fonction client. Lapplication peut appartenir au rseau, lui tre trangre ou exister seulement sur le terminal. La requte est reue par le serveur MPC (Mobile Positioning Center) qui la traite et la renvoie lapplication demandeuse. Le MPC rcupre linformation de la localisation grce lune des technologies de positionnement prsentes dans la section 2.2 (figure 1) Le Client et le Serveur de localisation communiquent entre eux en utilisant le protocole SLoP (Spatial Location Protocol) propos par lIETF. Ce protocole supporte les protocoles de transport UDP et TCP et donc les serveurs SLoP seront accessibles par toutes les plates-formes munies de TCP-IP. Le format du message du protocole SLoP se compose de trois lignes de texte qui contiennent les coordonnes spatiales, la date, le temps, et la prcision des mesures verticales, horizontale et temporelle [6]. Ericsson utilise quant lui le protocole MPP (Mobile Positioning Protocol). Ce dernier est un protocole bas sur HTTP ce qui permet laccs aux informations lies la localisation sur nimporte quelle plate-forme [7,12].

FIG. 1: Exemple de procdure de demande de localisation.

2.1 Le Mobile Positioning Center (MPC) Le MPC est un ensemble de diffrents lments qui ne figurent pas dans l'architecture de base du rseau GSM (Global System for Mobile communication) et

GRES Fvrier 2003, Fortaleza-CE-Brsil.

qui ont t ajouts pour les besoins de la fonction de localisation. Ces composants sont [2]: GMLC (Gateway Mobile Location Center) : Vrifie si lapplication demandeuse est autorise accder aux informations concernant la localisation. Il doit aussi rechercher le VMSC capable de fournir cette information. VMSC (Visited Mobile Switching Centre) : Vrifie les caractristiques de la souscription du mobile pour lequel nous recherchons la position. Il envoie la requte directement au SMLC, ou passe par le BTS4 (Base Transceiver Station) selon linterface SMLC/VMSC. SMLC (Serving Mobile Location Centre) : Gre lensemble des ressources (BTS, LMU5 : Location Measurement Unit) qui interviennent dans la recherche de la position du mobile. Il calcule galement son emplacement exact. Pour le GPRS (General Packet Radio Service) le seul changement qui intervient par rapport au rseau GSM en ce qui concerne la technologie de positionnement , est lintgration du SMLC dans le BSC6 (Base Station Controller). Nanmoins, du point de vue des standards, l'interface LCS n'est pas encore spcifie entre le rseau commutation (Core Network) de paquets (GPRS) et le rseau d'accs GSM. En revanche, le rseau d'accs UMTS dispose des interfaces LCS bien spcifies la fois avec les deux types de rseau de commutation (mode circuit et mode paquet) et le rseau d'accs GSM[1,9].

2.2 Technologies de positionnement Il y a plusieurs mthodes pour localiser le MS7 (Mobile station). Ces mthodes sont bases sur la transmission de certains signaux et leur rception lautre bout. La technologie de positionnement utilise est choisie selon les besoins (par exemple le temps de rponse) des applications. Parmi les diffrentes technologies de positionnement existantes, nous avons [15] : GPS Global Positioning System Le GPS utilise un ensemble de satellites pour localiser lutilisateur. Cette information brute est traite par le terminal ou envoye sur le rseau pour tre traite afin de rcuprer la position courante. Lexactitude de la position varie entre 5 et 40m par ciel clair.

4 5

BTS quipement radio metteur/rcepteur qui communique avec le MS LMU unit utilise dans les mthodes E-OTD et TAO 6 BCS contrle et gre les diffrents BTS qui lui sont relis 7 MS est un terminal mobile : le tlphone portable, un PDA...

Test de services bass sur la localisation

A-GPS Assisted GPS Le A-GPS utilise des rcepteurs fixes GPS placs(au sol) intervalles rguliers entre 200 et 400km, afin daugmenter la prcision de la position et de diminuer le temps de dtection. E-OTD Enhanced Observed Time Difference Une station doit recevoir un signal synchrone de la part du MS ; la diffrence de temps de transmission entre le MS et deux BTS dcrit une hyperbole. Avec trois stations on peut estimer la position du MS grce lintersection des hyperboles. Lexactitude de la position est de 125m, mais la diffrence du GPS cette mthode ne dpend pas de la clart du ciel. TAO Time Of Arrival Le signal entre la station et le MS est continu, de ce fait la position du MS peut tre connue en calculant le temps de propagation du signal radio, en forant le BTS envoyer un handover8 au MS. CGI-TA Cell Global Identity-Timind Advance Les zones couvertes par chaque BTS sont dcomposes en cellules, on utilise donc lidentit de chaque cellule pour localiser lutilisateur. Cette technologie est trs peu coteuse car elle utilise les terminaux dj existants et peut tre dj oprationnelle pour des services comme celui de proximit. La prcision varie entre 10 500m selon la taille de la cellule. Par ailleurs, afin de dterminer la position des mobiles, le 3GPP-TS a dj standardis les mthodes suivantes de calcul : Cell-ID, E-OTD et GPS, dj utilises sur le GSM et Cell-ID et GPS sur l'UMTS.

3. Lapplication oriente localisation (LBA Location based application) La possibilit de connatre la position de lutilisateur permet de dvelopper diffrentes applications. En ralit leur nombre peut tre trs grand et les possibilits illimites. Parmi les applications lies la localisation, nous nous sommes inspirs de [14] afin de concevoir une application en WML qui englobe lensemble des services suivants :

Le service itinraire

Handover est un signal de changement de cellule

GRES Fvrier 2003, Fortaleza-CE-Brsil.

Litinraire WAP aide les abonns planifier leurs voyages, grer leur temps et atteindre leur destination en dcrivant au mieux litinraire. Les abonns peuvent demander les directions rue par rue (en texte) pour leurs dplacements pied, en voiture, bicyclette, en bus, en mtro ou en train. Litinraire par Centre dAppel : linterface du Centre dAppel permet aux oprateurs de fournir des informations ditinraire aux abonns. Le service de proximit Les services WAP de proximit permettent aux abonns de rechercher et/ou de reprer dans leur voisinage des points dintrt public tels que les parkings, arrts de bus, muses, monuments, services publics, etc... Le service de trafic La carte de trafic routier : les cartes WAP de trafic routier aident les abonns viter lencombrement en affichant linformation jour du trafic routier sur des cartes prdfinis. Trafic par Centre dappel : linterface du Centre dAppel permet aussi aux oprateurs de fournir aux abonns des informations de trafic selon le mme procd que pour litinraire. Cette interface dispose des cartes relatives au trafic. Service de secours Ce service permet un abonn en difficult de faire appel en cas durgence un service capable de le localiser et de lui apporter laide ncessaire. Cette aide peut couvrir les besoins suivants : dpannage auto ; urgence mdicale ; police secours La Recherche On se trouve dans une rgion inconnue, on dcide de se rendre dans un restaurant dont on connat le nom (ou le dbut de nom). La recherche permet alors de retrouver ladresse exacte de ce lieu sil est contenu dans la base de donnes. Aprs avoir retrouv le mot recherch, il est possible de consulter litinraire. L'utilisateur accde ces services, via son terminal, en choisissant dans un menu (figure 2). Ce type de services, peut poser problme par rapport au respect de la vie prive des abonns. Par exemple, lorsque l'utilisateur accde au service de proximit avec son terminal et qu'il est la recherche du restaurant le plus proche, une annonce publicitaire du restaurant le plus proche peut lui tre envoye. Aussi l'abonn peut refuser que sa position soit divulgue d'autres fournisseurs de service ou personne. Afin de remdier ce problme, nous proposons un autre niveau de scurit pour les utilisateurs. En plus de demander l'utilisateur une autorisation pour la demande de positionnement, l'oprateur va fournir un numro d'identification temporaire connu par lui seul. Ce numro sera demand l'oprateur lors de chaque utilisation de

Test de services bass sur la localisation

l'application par le mobile, sachant qu'avec le numro SIM9 (Subscriber Identification Module) et l'autorisation de l'abonn, le fournisseur de service a accs chaque instant aux donnes de positionnement de ses abonns. L'utilisation du numro temporaire, qui sera dtruit par l'oprateur aprs chaque demande de localisation du fournisseur de service, va permettre de rejeter d'autres demandes de positionnement.

FIG. 2: Diagramme d'enchanement des crans du terminal pour l'application des services bass sur la localisation .

Un lien entre le numro temporaire et le numro SIM existe et est stock dans une base de donnes appartenant l'oprateur, qui est mise jour. Cette mthode permet aux abonns d'tre localiss seulement leur demande. Comme nous ne pouvons pas avoir les coordonnes spatiales relles de chaque position, nous utiliserons une base de donnes, consulte par le MPC, et o est stocke la position (adresse postale) de chaque terminal identifi par son numro SIM, remise jour en permanence. Dans notre cas, nous introduirons ces informations nous-mmes. Le terminal, au moment de choisir le service dsir, communique son numro temporaire et rcupre sa position courante.

La carte SIM est une puce qui permet lutilisation du terminal mobile. Elle contient certain nombre de fonction de scurit, et le numro d'identification de l'abonn.

GRES Fvrier 2003, Fortaleza-CE-Brsil.

4. Spcification et gnration de squences de tests pour lapplication Cette section prsente les rsultats des expriences de tests appliqus sur l'application LBA dcrite dans la section prcdente. A partir de la spcification formelle de l'application LBA, un ensemble de scnarios de test ont t gnrs automatiquement en utilisant l'algorithme de test imbriqu dvelopp au sein de notre groupe [4]. Pour ce faire, nous exprimons sous forme de prdicats les transitions du module que nous voulons tester. Ces prdicats constituent les objectifs de tests que nous voulons atteindre. La mthode utilise permet de gnrer la squence de test en utilisant lobjectif a atteindre pour guider la simulation et par consquent de choisir un sous-ensemble de destinations (un service parmi les autres services). Cette mthode construit la squence de test partir des simulations partielles de la spcification et permet dviter le problme dexplosion combinatoire. Elle permet aussi de gnrer un nombre de scnarios selon les diffrents cas que nous pouvons avoir. Nous choisissons le scnario appropri grce aux paramtres dentre et aux objectifs de tests. Les scnarios obtenus vont nous permettre de faire du test de conformit et de dtecter les erreurs relatives des messages errons inattendus. Une fois les tests gnrs, nous les appliquerons sur l'implantation en WML des services, afin de tester leur comportement fonctionnel. Dans ce qui suit nous allons prsenter la spcification en SDL de l'application ainsi que les rsultats obtenus par les exprimentations.

4.1 Spcification en SDL de lapplication La spcification de l'application LBA a t faite en SDL-92 afin de faciliter la modification, l'ajout ou la suppression de certaines fonctionnalits. Egalement afin de permettre l'utilisation de certains types de variables, comme par exemple les listes et les tableaux. Nous avons utilis les dclarations en ASN.1 [5]. La spcification de l'application inclut les comportements de l'utilisateur, du terminal mobile, du serveur d'application, de la passerelle WAP et du MPC. Le systme est compos de 4 blocs (figure 3): Bloc Terminal : contient le processus Mobile qui dcrit le comportement d'un ou plusieurs terminaux et de leurs utilisateurs. Bloc Network : est compos de deux sous-blocs : le bloc LCS qui dcrit le comportement du MPC, et le bloc Operator qui donne le numro d'identification temporaire du terminal et le numro SIM correspondant au LCS. Bloc Gateway : dcrit le comportement de la passerelle WAP.

Test de services bass sur la localisation

Bloc Location_Services : dcrit le comportement du serveur d'application. Ce bloc est compos de huit processus: processus Menu; cinq processus pour les diffrents services : Nearness, Itinerary, Assistance, Traffic et Search. Le processus Location, inclut dans ce bloc aussi, convertit les information de localisation de coordonnes spatiales en adresses postales; et le processus Manager, seul processus statique de ce bloc, qui permet de crer les autres processus.

FIG. 3: Spcification en SDL du systme de localisation.

Les processus Nearness, Itinerary, Traffic, Menu, Operator, Location ont leurs propres bases de donnes. Chaque base de donnes contient les informations suivantes : La Base de donnes Nearness contient les catgories, (cinma), type (UGC), adresse et information complmentaire (tlphone); La Base de donnes Itinerary, contient le nom de toutes les rues avec la distance et le chemin entre elles. La Base de donnes Traffic, contient toutes les cartes de trafic de chaque rgion. La Base de donnes Position, contient la position de chaque mobile. L'utilisateur est identifi par son numro SIM. La Base de donnes Profil, contient les informations de souscription des utilisateurs. Chaque utilisateur peut avoir souscrit un ou plusieurs services. La Base de donnes Position_Convert, contient les coordonnes spatiales et leur conversion en adresse postale. La Base de donnes Position_Attribute, qui appartient au processus Operator, contient l'identification temporaire du mobile et son numro SIM correspondant.

10

GRES Fvrier 2003, Fortaleza-CE-Brsil.

Afin de fournir une ide gnrale de la complexit de la spcification du systme SDL, on prsente dans le tableau 1 quelques chiffres significatifs sur le systme global. Ce dernier a t simul en utilisant le mode de simulation exhaustive, pour obtenir un graphe daccessibilit complet. Afin dexcuter la simulation du systme, on le configure avec un fichier de dmarrage, qui initialise certaines variables, telles que les bases de donnes, le numro de la carte SIM qui invoque le service, le nom de la rue ou le mot cl chercher. Le tableau 2 donne quelques informations sur le nombre dtats, de transitions, etc., tous obtenus aprs un arrt manuel de recherche exhaustive pour deux mobiles simultanment. Mme si nous avons russi obtenir un graphe minimis (voir tableau 2), il reste de grande taille et les squences de tests obtenues sont longues. Nous constatons que nous obtenons une couverture de 83.78% et 92.5%. Le fait que nous nobtenions pas de couverture totale est due aux valeurs initiales des variables du systme spcifi. Nanmoins le taux de couverture reste bon, par consquent nous avons vrifi quaprs simulation de la spcification, elle tait libre de tout livelock et deadlock . Lignes Blocs Processus Procdure Etats Signaux Macro dfinition Timers Tableau 1: Mesures de la spcification. 11709 5 14 29 80 40 0 1

Nombre dtats Nombre de transitions Profondeur maximale atteinte Dure Couverture des transitions Couverture dtats

759045 1914851 45 55 mn 54 s 83.78% 92.50%

Tableau 2: Rsultats de la simulation exhaustive de la spcification.

4.2 Gnration de scnarios pour le module Itinerary Dans cette section, nous nous sommes intresss au test du module Itinerary dans son contexte afin de gnrer un scnario de test. Ce scnario va nous

Test de services bass sur la localisation 11

permettre de vrifier le comportement du service d'itinraire sur limplantation. La mme mthode a t utilise pour le test des autres services. Comme nous n'avons pas d'accs direct au service, nous avons choisi d'utiliser la technique du test imbriqu. A chaque dveloppement d'un nouveau service il va tre ajout l'application sans que les autres composants soient affects. La premire tape de la gnration de squences de test en utilisant cette mthode, est la dfinition des objectifs de test. Pour des raisons de simplicit nous avons choisi les objectifs de test suivants : Objectif de test 1 : Une fois que le service reoit la requte de l'utilisateur, il lui demande de choisir le type de service qu'il veut avoir (l'appel vers un centre, obtenir la position courante ou bien avoir un itinraire). Objectif de test 2 : Une fois que le service d'itinraire reoit le choix de l'utilisateur, il envoie une demande de positionnement au MPC. Objectif de test 3 : Une fois la position de l'utilisateur obtenue, le service demande l'utilisateur de lui communiquer sa destination. Objectif de test 4 : Une fois la destination connue par le service, il envoie l'utilisateur l'itinraire suivre. Une fois que toutes les transitions du composant imbriqu Itinerary sont traverses, on obtient une couverture totale de module et une squence de test unique, qui correspond la longueur totale du chemin qui a t parcouru de lenvironnement la dernire transition du module. Les rsultats obtenus sont illustrs dans le tableau 3. Nous constatons que la squence obtenue a une longueur de 46 transitions. Cette dernire sera utilise pour tester limplantation et vrifier linterfonctionement des diffrents composants de larchitecture du projet PLATONIS. Objectif de test #1 #2 #3 #4 Profondeur atteinte 22 6 3 15 Dure 6.9s 2.9s 3.1s 2m 1.8s

Tableau 3 : Rsultats Obtenus du test du module Itinerary.

5. Conclusion Dans cet article nous avons prsent des services bass sur la localisation appliqus dans le domaine de la tlphonie mobile, et qui sont tudis dans le cadre du projet PLATONIS. Ces services permettent dacheminer linformation tout

12

GRES Fvrier 2003, Fortaleza-CE-Brsil.

moment et de la mettre la disposition de lutilisateur en se basant sur son emplacement. Ces derniers ont t formellement dcrits en utilisant une technique de description formelle, savoir le langage SDL. Enfin, des tests sur ces services ont t effectus afin de vrifier leur comportement par rapport leur description formelle. Cette dernire a permis de gnrer automatiquement un ensemble de scnarios, en utilisant un algorithme pour le test de composant. Pour la suite nous envisageons de prendre en considration la partie du calcul de la localisation sur les diffrents rseaux mobiles GPRS et UMTS et de les intgrer dans la spcification.

6. Bibliographie
[1] 3GPP TS 25.305 version 3.7.0 Release 1999. "Universal mobile telecommunications system (umts);stage 2 functional specification of ue positioning in utran". Technical report, ETSI TS 125 305 V8.3.0 (2001-10), January 2002. [2] 3GPP TS 03.71 version 8.3.0 Release 1999. "Technical specification digital cellular telecommunications system (phase 2+); location services (lcs); functional description; stage 2." Technical report, ETSI TS 101 724 V8.3.0 (2001-10), 1999. [3] Bessire.H., "01 Rseaux, (87)", 1112, juillet-aot 2000. [4] Cavalli.A. et al., "Hit-or-jump: An algorithm for embedded testing with applications to in service.", FORTE/PSTV99. [5] Dubuisson.O., "ASN.1", Springer, 1999. [6] Department of Defense., "Dod world geodetic system 1984 its definitions and relationships with local geodetic system-tr8350.2.", 1984. [7] Ericsson., "Mobile positioning protocol version 1.1." Technical report, 2000. [8] ITU. CCITT., "Specification and Description Language(SDL)." Recommendation Z.100, 1992. [9] Mackaya.M, Castanet.R., "Modeling Operation in UMTS Network" International Workshop 2002, sep 23-26, Atlanta, Georgia, USA. ACM

[10] Sarma.A, Ellsberger.J., Dieter Hogrefe. "SDL, formal object-oriented language for communicating systems", Prentice Hall, 1997. [11] The PLATONIS Consortium., "The platonis project" ASW'2001, Mai 2001. [12] Wohlert.R., "Location based services service requirements document". January 2000. [13] http://www.wapforum.org [14] http://www.webraska.com [15] http://www.wirelessdevnet.com/channels/lbs/features/mobilepositioning.html