71
1 Projet WIB PR PR É É SENTATION du 26 octobre 2006 SENTATION du 26 octobre 2006 Claire De Bie Claire De Bie Pierre Goaziou Pierre Goaziou Vincent Penet Vincent Penet Nazim Saouli Nazim Saouli Fanny Sisombat Fanny Sisombat

1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

Embed Size (px)

Citation preview

Page 1: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

11

Projet WIB

PRPRÉÉSENTATION du 26 octobre 2006SENTATION du 26 octobre 2006

Claire De BieClaire De BiePierre GoaziouPierre GoaziouVincent PenetVincent PenetNazim SaouliNazim Saouli

Fanny SisombatFanny Sisombat

Page 2: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

2

Architecture de distribution de servicesArchitecture de distribution de services

Points clés :Points clés :• Web ServicesWeb Services• Administration assistéeAdministration assistée• Adaptation des résultatsAdaptation des résultats• Communications intelligentesCommunications intelligentes• Client multi supportsClient multi supports

Page 3: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

3

A qui s’adresse notre produit ?A qui s’adresse notre produit ?

Opérateurs téléphoniques

Fournisseurs d’accès à Internet

Page 4: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

4

Quels sont les besoins ?Quels sont les besoins ?

Opérateurs téléphoniques

Fournisseurs d’accès à Internet

Itinéraire TraducteurRecherche

PDA

Différents services

Différents supports

Page 5: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

5

Réponses aux besoinsRéponses aux besoins

Itinéraire

ServiceWeb Service

Itinéraireadresse

ItinéraireGPS

FONCTIONNALITE

ORGANISATION EN FONCTIONNALITES

Page 6: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

6

Réponses aux besoinsRéponses aux besoins

Image1280 x 800

Image120 x 90

PRESENTATION DES RESULTATS

Transport

Transport

TCP ?

TCP ?

UDP

TCP

ADAPTATION DE LA COMMUNICATION

Page 7: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

7

WIB : plateforme d’intégration WIB : plateforme d’intégration de web servicesde web services

Exécute des fonctionnalités

Intègre facilement des web services

Adapte les données au support

(Présentation)

Communique avec différents types de

supports

WIB est une plateforme innovante :• Elle exécute des web services de manière transparente pour l’utilisateur.• Elle intègre de manière simple ces web services et les organise en fonctionnalités.• Elle adapte ses communications aux supports qui la sollicitent.

Page 8: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

8

Notre ClientNotre Client

• Ce n’est pasCe n’est pas l’utilisateur final l’utilisateur final

• C’estC’est l’entreprise qui a besoin de fournir un panel de l’entreprise qui a besoin de fournir un panel de service à ses clientsservice à ses clients

• Notre client a besoin Notre client a besoin de satisfaire l’utilisateur final de satisfaire l’utilisateur final en lui donnant accès à des services. en lui donnant accès à des services.

• Notre principal but estNotre principal but est de fournir à de fournir à notrenotre client les client les moyens de le faire moyens de le faire facilement facilement

TEL

Page 9: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

99

Scénarios d’utilisation

Page 10: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

10

3 scénarios d’utilisation3 scénarios d’utilisation

• L’utilisateur se connecteL’utilisateur se connecte• WIB lui fournit la liste des fonctionnalités WIB lui fournit la liste des fonctionnalités

auxquelles il a accèsauxquelles il a accès

• L’utilisateur demande l’exécution d’une L’utilisateur demande l’exécution d’une fonctionnalitéfonctionnalité• WIB va lui demander les entrées éventuellesWIB va lui demander les entrées éventuelles• WIB lui renvoie le résultatWIB lui renvoie le résultat

• Le client administrateur ajoute un Web ServiceLe client administrateur ajoute un Web Service• WIB va intégrer le Web Service au systèmeWIB va intégrer le Web Service au système

Page 11: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

11

L’utilisateur se connecteL’utilisateur se connecte

Caractéristiques utilisateurs

Caractéristiques fonctionnalités

Listefonctionnalités

Connexion utilisateur

Appli

Cliente

Appli

Serveur

Récupérationcaractéristiques

Envoi demande + caractéristiques utilisateurs

Comparaison descaractéristiques

Définition de laliste adaptée

Envoi résultat + liste fonctionnalités

Affichage listeà l’utilisateur

J’ai un petit écran

L’utilisateur a un petit écranTraduction nécessite un grand écranItinéraire nécessite un petit écran

Itinéraire est disponible

Vous avez le choix entre : Itinéraire

(et oui c’est tout !)

Page 12: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

12

L’utilisateur demande l’exécution L’utilisateur demande l’exécution d’une fonctionnalitéd’une fonctionnalité

Caractéristiques utilisateurs

Caractéristiques web services

Liste web services

Sélectionfonctionnalité

Appli

Cliente

Appli

Serveur

Récupérationcaractéristiques

Envoi demande + nom_fonctionnalité +

caractéristiques_utilisateurs

Comparaison descaractéristiques

Choix du web service à exécuter

Fonctionnalité

Exécutionweb service

Entrées?

OUI

NON

Demande d’entréeà l’utilisateur

Saisie entrées

Demande & réception entrées

Affichage résultatà l’utilisateur

Envoi résultat + résultat_web_service

Adapter/présenter le résultat

Je veux exécuter Itinéraire

MapPoint est le Web Service le mieux adapté

Entrez les adresses de départ et d’arrivée

Carte + itinéraire

Page 13: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

13

L’administrateur L’administrateur ajoute un web serviceajoute un web service

Appli

Serveur

Interface administrateur

Saisie @ WSDL

Interprétation du fichier WSDL

Proposition desméthodes et E/S

Affichage despropositions

Modifications

Validation

Optimisation des règles proposition

Enregistrementen BDD

Page 14: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

1414

Architectures

Page 15: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

15

Notre architecture : vue simplifiéeNotre architecture : vue simplifiée

Web Service

Web Service

Web Service

Serveur

Client

Client

Client

Client

Client

Page 16: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

1616

L’application client

Page 17: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

17

L’application clientL’application client

• Rôle et traitements :Rôle et traitements :

• Elle récupère les caractéristiques utilisateursElle récupère les caractéristiques utilisateurs

• Elle communique avec le serveur par le réseau IPElle communique avec le serveur par le réseau IP

• Elle émet des requêtes pour l’application serveurElle émet des requêtes pour l’application serveur

• Elle reçoit les réponses fournies par le serveurElle reçoit les réponses fournies par le serveur

• Elle affiche le résultat à l’utilisateurElle affiche le résultat à l’utilisateur

• Type de données échangées :Type de données échangées :

• Requêtes :Requêtes :• Informations utilisateur (identifiant, caractéristiques support…)Informations utilisateur (identifiant, caractéristiques support…)• Informations d’affichageInformations d’affichage• Paramètres d’entréeParamètres d’entrée• RésultatsRésultats

Page 18: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

1818

Application serveur

Page 19: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

19

Application Serveur

Architecture WIBArchitecture WIB

Transport

Négociation

Application

• Application : Application :

• Analyse les requêtes.Analyse les requêtes.

• Gère les fonctionnalités et appels de web Gère les fonctionnalités et appels de web services.services.

• Application : Application :

• Analyse les requêtes.Analyse les requêtes.

• Gère les fonctionnalités et appels de web Gère les fonctionnalités et appels de web services.services.

• Négociation : Négociation :

• Négocie les choix de fonctionnalités et de Négocie les choix de fonctionnalités et de web services.web services.

• Négocie le protocole de transport à utiliserNégocie le protocole de transport à utiliser

• Présente les données.Présente les données.

• Négociation : Négociation :

• Négocie les choix de fonctionnalités et de Négocie les choix de fonctionnalités et de web services.web services.

• Négocie le protocole de transport à utiliserNégocie le protocole de transport à utiliser

• Présente les données.Présente les données.• Transport : Transport :

• Stocke les informations utilisateurStocke les informations utilisateur

• Gère la transmission d’informations.Gère la transmission d’informations.

• Transport : Transport :

• Stocke les informations utilisateurStocke les informations utilisateur

• Gère la transmission d’informations.Gère la transmission d’informations.

caract

Page 20: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

20

Notre particularitéNotre particularité

• Le client peut Le client peut demander une demander une fonctionnalité qui ne fonctionnalité qui ne lui correspond pas lui correspond pas

• Risque d’erreursRisque d’erreurs

• Adapte la liste des fonctionnalités• Dégrade le résultat d’un WebService• Choisit TCP ou UDP suivant le support

Négociation

• Reçoit les connexions client• Envoie le résultat du WebService au client

Transport

• Renvoie la liste des fonctionnalités• Execute un WebService

Application • Le client n’a accès Le client n’a accès qu’aux qu’aux fonctionnalités qui fonctionnalités qui lui correspondentlui correspondent

• Adaptation du Adaptation du résultat et de la résultat et de la transmissiontransmission

Page 21: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

2121

Détails des couches :Transport

Page 22: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

22

La couche transport :La couche transport :Rappels et traitementsRappels et traitements

• Rôle :Rôle : permettre au serveur de dialoguer avec les clients. permettre au serveur de dialoguer avec les clients.

• Les clients pourront se connecter en utilisant les protocoles : Les clients pourront se connecter en utilisant les protocoles : • TCPTCP• UDPUDP

• Le reste de l’application dialoguera avec la couche transport par Le reste de l’application dialoguera avec la couche transport par l’intermédiaire d’objet messages :l’intermédiaire d’objet messages :

• MessageMessage• Identifiant clientIdentifiant client• RequêteRequête

• Type de requêteType de requête• DonnéesDonnées

Page 23: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

23

La couche transport : La couche transport : les connexionsles connexions

• TCP :TCP :

• L’utilisateur se connecte, échange des messages avec le serveur, L’utilisateur se connecte, échange des messages avec le serveur, puis se déconnecte.puis se déconnecte.

• Si pendant 10 minutes aucun message n’est échangé, les Si pendant 10 minutes aucun message n’est échangé, les informations du client sont supprimées.informations du client sont supprimées.

• UDP :UDP :

• Pas de connexion.Pas de connexion.

• Si pendant 10 minutes aucun message n’est échangé, les Si pendant 10 minutes aucun message n’est échangé, les informations client sont supprimées.informations client sont supprimées.

Page 24: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

24

Utilisateur

SocketListe de

caractéristiques

Liste desutilisateurs

ServeurTcp

ServeurUdp

Message

Requête

Liste desMessages

Transport

Couche Transport : MDD simplifiéCouche Transport : MDD simplifié

Page 25: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

25

La couche transport :La couche transport :état actuelétat actuel

• Ce qui fonctionne :Ce qui fonctionne :• Files d’attenteFiles d’attente• MultithreadingMultithreading• Liste des clients connectésListe des clients connectés

• Ce qui est en cours :Ce qui est en cours :• Serveur Tcp (en modification)Serveur Tcp (en modification)• Serialization entre Java et C#Serialization entre Java et C#

• Travail à finir :Travail à finir :• Serveur UdpServeur Udp

Page 26: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

2626

Détails des couches :Négociation

Page 27: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

27

Négociation :Négociation :les caractéristiquesles caractéristiques

• Définition : ce sont des capacitésDéfinition : ce sont des capacités• Taille mémoireTaille mémoire• Capacité d’affichageCapacité d’affichage• Débit de connexionDébit de connexion

• Évolutivité : nouvelle caractéristiqueÉvolutivité : nouvelle caractéristique• Coté serveur :Coté serveur :

• Ajout dans la base de donnéeAjout dans la base de donnée• Prise en compte au prochain démarrage du serveurPrise en compte au prochain démarrage du serveur

• Coté client :Coté client :• Mise à jour de l’application clientMise à jour de l’application client

Page 28: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

28

Application Serveur

Négociation :Négociation :les caractéristiques supportles caractéristiques support

Application ClientNégociationNégociation

Application

Requête

Réponse

caract

Page 29: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

29

Négociation :Négociation :le principe (1)le principe (1)

• Demande de la liste des fonctionnalitésDemande de la liste des fonctionnalités

Négociation

Application

caract

requête

Fonctionnalité

Liste de fonctionnalités Données : Caractéristiques minimales de fonctionnalité

Carac Fonct

Page 30: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

30

Négociation :Négociation :le principe (2)le principe (2)

• Demande d’exécution d’une fonctionnalitéDemande d’exécution d’une fonctionnalité

Négociation

Application

caract

requête

Web service

Choix du web service

Données : Caractéristiques de web service

Carac WS

Page 31: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

31

Transport

Négociation

Négociation :Négociation :le principe (3)le principe (3)

• Envoi de données au supportEnvoi de données au support

caract

Choix du moyen de transport

Protocole

Page 32: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

3232

Détails des couches :Application

Page 33: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

33

Téléphone simpleSmartphone PDAOrdinateur

• Solution de baseSolution de base• Administrateur choisi un profil de support pour le WSAdministrateur choisi un profil de support pour le WS• Caractéristiques associées au profil stockées en Caractéristiques associées au profil stockées en

base de donnéesbase de données

WS1

WS2

IHM Admin

Taille mem : 30M ; écran : 1280x800

Taille mem : 3M ; écran : 120x90

Taille mem : 5M ; écran : 120x90

Taille mem : 3M ; écran : 400x150

Application :Application :Définir les caractéristiques (2)Définir les caractéristiques (2)

Page 34: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

34

Application :Application :Définir les caractéristiques (3)Définir les caractéristiques (3)

• Solution amélioréeSolution améliorée

• Appel du WebService lors de l’ajoutAppel du WebService lors de l’ajout

• Détection des caractéristiques associées au résultatDétection des caractéristiques associées au résultat

WS1

WS2Appel du web service WS2

Web Service

Result

Détermination caractéristiques

Programme de détermination des caractéristiques par rapport aux éléments

renvoyés par le web service

Page 35: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

35

Définir les caractéristiquesDéfinir les caractéristiques

WS1

WS2Taille mem : 3 Mo ; écran : 120x90

Taille mem : 5 Mo ; écran : 800x600

En BDD :

Téléphone simple

Ordinateur

Web service Taille mémoireTaille mémoire ÉcranÉcran

WS1WS1 5 Mo5 Mo 800x600800x600

WS2WS2 3 Mo3 Mo 120x90120x90

FonctionnalitéFonctionnalité 3 Mo3 Mo 100x90100x90

Page 36: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

36

Application :Application : Traitements associés & Points clefsTraitements associés & Points clefs

• Intégration d’un Web ServiceIntégration d’un Web Service

• Proposition des méthodes, E/S et caractéristiques du WSProposition des méthodes, E/S et caractéristiques du WS• Validation des infos du Web service via l’interface Validation des infos du Web service via l’interface

administrateuradministrateur• Enregistrement des infos du Web Service en BDDEnregistrement des infos du Web Service en BDD

• Exécution d’une fonctionnalitéExécution d’une fonctionnalité

• Exécution d’un Web ServiceExécution d’un Web Service• Récupération du résultat du Web ServiceRécupération du résultat du Web Service

• Exécution d’un Web ServiceExécution d’un Web Service

• Récupération des paramètres à exécuter en mémoireRécupération des paramètres à exécuter en mémoire• Récupération de la valeur des entrées en mémoire ou chez Récupération de la valeur des entrées en mémoire ou chez

l’utilisateurl’utilisateur• Requête au Web ServiceRequête au Web Service

Page 37: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

37

Application : MDDApplication : MDDAPPLICATION

Fonctionnalite

-Nom-Liste_carac-Liste_WS

Caracteristique

-Nom-Valeur

ListeCaracteristiques

-_liste

+Ajouter()+Retirer()+Nb_elem()+Get_elem()

ListeFonctionnalites

-_liste

+Ajouter()+Retirer()+Nb_elem()+Get_elem()+Get_fonct_name()+Get_fonct_caracs_val()

I_Fonctionnalite

+Get_fonct_name()+Get_fonct_caracs_name()

WebService

-Nom-Liste_Caracteristique-Type-Liste_entrées-Liste_sorties

ListeWebServices

-_liste

+Ajouter()+Retirer()+Nb_elem()+Get_elem()

DynamicWebserviceProxy

-WSDL-Typename-MethodName

+Get_type()+Add_parameter()+InvokeCall()

I_DB

+Get_entrees()

Page 38: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

3838

Ajout d’un web service :Proposition automatique desméthodes, entrées et sorties

Page 39: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

39

Principe généralPrincipe général

• Lors de l’ajout d’un nouveau web service, Lors de l’ajout d’un nouveau web service, l’administrateur doit déterminer plusieurs l’administrateur doit déterminer plusieurs paramètres :paramètres :

• L’adresse du fichier WSDL.L’adresse du fichier WSDL.• La méthode qu’il veut utiliser ainsi que les types des La méthode qu’il veut utiliser ainsi que les types des

entrées et sorties.entrées et sorties.• Les caractéristiques du nouveau web service.Les caractéristiques du nouveau web service.

• Notre système guidera l’administrateur dans sa Notre système guidera l’administrateur dans sa recherche et lui proposera des solutions.recherche et lui proposera des solutions.

Page 40: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

40

Outil de propositionsOutil de propositions

• L’administrateur saisit le L’administrateur saisit le nom du WSDLnom du WSDL

• Le système analyse le Le système analyse le WSDL pour trouver :WSDL pour trouver :• Les opérationsLes opérations• Les entrées et sortiesLes entrées et sorties

• Création d’un tableau Création d’un tableau d’opérationsd’opérations

Opération1

Input1 Input2

Output2

Opération2

Input1 Input2

Output2

Opération3

Input1 Input2

Output2

Page 41: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

41

Outil de propositions (2)Outil de propositions (2)

• Fonction du tableau d’opérations :Fonction du tableau d’opérations :

• Comparaison entre :Comparaison entre :• les noms de méthodesles noms de méthodes

• Liste de mots clésListe de mots clés

(pour proposer la méthode la plus pertinente à l’administrateur)(pour proposer la méthode la plus pertinente à l’administrateur)

• Lorsque l’utilisateur a fait un choix différent Lorsque l’utilisateur a fait un choix différent des propositions, la liste des mots clés par des propositions, la liste des mots clés par fonctionnalité est enrichie.fonctionnalité est enrichie.

Page 42: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

4242

Exécution d’unWeb Service

Page 43: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

43

Exécution d’un web serviceExécution d’un web service• Entrées nécessaires & provenanceEntrées nécessaires & provenance

• Sorties & destinationSorties & destination

@ WSDL@ WSDL BDDBDD

Méthode à appelerMéthode à appeler BDDBDD

Nombre d’entréesNombre d’entrées BDDBDD

Entrées 1,2,…,nEntrées 1,2,…,n BDD (défini par l’admin)BDD (défini par l’admin)

Mémoire (défini par l’utilisateur)Mémoire (défini par l’utilisateur)

Résultat du web serviceRésultat du web service Mémoire (vers l’utilisateur)Mémoire (vers l’utilisateur)

Page 44: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

44

Exécution d’un Web Exécution d’un Web ServiceService

Web Service

Web Service

Web Service

Proxy

Proxy

Proxy

Application Serveur

Page 45: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

45

Librairie DynWSLibLibrairie DynWSLibhttp://www.xmlwebservices.cc

• Permet de créer dynamiquement un Proxy Permet de créer dynamiquement un Proxy pour un Web Servicepour un Web Service

• Permet d’utiliser le Web Service comme une Permet d’utiliser le Web Service comme une ressource localeressource locale

• Permet de nous interfacer uniquement avec Permet de nous interfacer uniquement avec paramètres que l’on maîtriseparamètres que l’on maîtrise

Page 46: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

46

Exécution d’un web service :Exécution d’un web service :état actuelétat actuel

• Programme qui marche avec plusieurs web servicesProgramme qui marche avec plusieurs web services

• Gestion des erreurs à faireGestion des erreurs à faire• Cas où le web service ne répond pasCas où le web service ne répond pas• Cas où un paramètre est mauvais et déclenche une erreurCas où un paramètre est mauvais et déclenche une erreur• Vérifier le type du résultat Vérifier le type du résultat

• « Object result » permet-il de tout récupérer ?« Object result » permet-il de tout récupérer ?• Une image ?Une image ?

• Effectuer les testsEffectuer les tests

Page 47: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

4747

IHM

Page 48: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

48

IHM : AdministrationIHM : AdministrationWIBWIB X

Historique

Reste de l’applicationNon défini

Intégration/Modification WSMonitoring

Intégrer un WSIntégrer un WS

ModifierModifier

• Interface en 3 parties: • Monitoring :

• Informations sur le statut du système• Intégration/Modification WS :

• Intégrer un WebService• Modifier les infos associées à un WebService

• Historique :• Log d’erreurs• Historique des ajouts et des modifications de WebServices

Page 49: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

49

IHM : Intégrer un serviceIHM : Intégrer un service

• Proposition des méthodes, entrées et sorties Proposition des méthodes, entrées et sorties pertinentespertinentes

• Validation ou modification de cette Validation ou modification de cette proposition par l’utilisateurproposition par l’utilisateur

WIBWIB XWSDL :

WSDL : Méthodes : Entrées : Sorties :

Reste de l’applicationNon définie

Page 50: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

50

IHM : Intégrer un serviceIHM : Intégrer un service

• Définition des caractéristiques à associer au Définition des caractéristiques à associer au WebService en cours d’intégrationWebService en cours d’intégration

• Ce choix s’effectue dans une liste préétablie Ce choix s’effectue dans une liste préétablie

WIBWIB X

Reste de l’applicationNon défini

Caractéristique du WS?Nom caractéristiqueClef

11

22

33

44

55

Page 51: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

51

IHM : Intégrer un serviceIHM : Intégrer un service

• Définition des entrées :Définition des entrées :• A demander à l’utilisateurA demander à l’utilisateur• A définir par défautA définir par défaut

WIBWIB X

Reste de l’applicationNon défini

Attribut manuel ?Nom ClientNom ADMINNom WSDLClef

11

22

33

44

55

Page 52: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

52

IHM : Intégrer un serviceIHM : Intégrer un servicenotre problèmenotre problème

• Comment créer une interface client qui Comment créer une interface client qui fonctionnerait avec un maximum de fonctionnerait avec un maximum de Web Services ?Web Services ?

Page 53: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

53

IHM : Intégrer un serviceIHM : Intégrer un servicenotre idéenotre idée

• Les Web Services ont la plupart du temps des entrées Les Web Services ont la plupart du temps des entrées représentables sous forme de stringreprésentables sous forme de string

• Notre application client est en Java.Notre application client est en Java.

• Java met a notre disposition SWING pour créer des Java met a notre disposition SWING pour créer des interfaces multi plateformes.interfaces multi plateformes.

• En SWING, on joue avec :En SWING, on joue avec :• Des « panels »Des « panels »• Des « labels »Des « labels »• Des « textfields »Des « textfields »• Des « buttons », …Des « buttons », …

Page 54: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

54

IHM : Intégrer un serviceIHM : Intégrer un servicenotre solutionnotre solution

• Coté serveur : lors de l’ajout d’un Web ServiceCoté serveur : lors de l’ajout d’un Web Service

WIBWIB X

Reste de l’applicationNon défini

Attribut manuel ?Nom ClientNom ADMINNom WSDLClef

11

22

33

44

55

Page 55: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

55

IHM : Intégrer un serviceIHM : Intégrer un servicenotre solutionnotre solution

• Génération de la description de l’interface du web Génération de la description de l’interface du web service : XMLservice : XML

• Exemple :Exemple :

• <panel><panel>• <panel><panel>

• <label>Mot clef</label><label>Mot clef</label>• <textfield></textfield><textfield></textfield>

• </panel></panel>• <panel><panel>

• <button>Rechercher</button><button>Rechercher</button>• </panel></panel>

• </panel></panel>

Page 56: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

56

IHM : Intégrer un serviceIHM : Intégrer un servicenotre solutionnotre solution

• Coté client :Coté client :

• Création d’objets à la volée :Création d’objets à la volée :• jButtonjButton (bouton)(bouton)• jLabeljLabel (zone de (zone de

texte)texte)• jPaneljPanel (zone d’affichage)(zone d’affichage)• jTextfieldjTextfield (zone d’écriture)(zone d’écriture)

• Utilisation de Layout pour Utilisation de Layout pour positionner les objets dans le positionner les objets dans le panel principal.panel principal.

WIBWIB X

Label :

Label :

Label :

Label :

APPELAPPEL

Reste de l’applicationNon défini

Page 57: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

5757

Traitement de la charge

Page 58: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

58

Traitement de la chargeTraitement de la charge

• Duplication des serveurs d’applicationDuplication des serveurs d’application

• La base de données sera partagée. Elle contiendra :La base de données sera partagée. Elle contiendra :• les Fonctionnalitésles Fonctionnalités• les Web Servicesles Web Services• les clients autorisés à se connecterles clients autorisés à se connecter

• Lors du lancement d’un serveur, celui-ci se connecte Lors du lancement d’un serveur, celui-ci se connecte à la base de données et charge les Fonctionnalités.à la base de données et charge les Fonctionnalités.

• Les clients seront répartis sur les différents serveurs.Les clients seront répartis sur les différents serveurs.

Page 59: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

5959

Déploiement

Page 60: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

60

Déploiement de WIBDéploiement de WIB

• Installation sur le serveurInstallation sur le serveur

• Installeur qui copie les différents fichiersInstalleur qui copie les différents fichiers• Configuration de l’application (accès à la BDD,…)Configuration de l’application (accès à la BDD,…)• Mise à l’écoute des clientsMise à l’écoute des clients

• Distribution de l’application clientDistribution de l’application client

• Téléchargement de l’application sur un site webTéléchargement de l’application sur un site web• Création des comptes client sur un siteCréation des comptes client sur un site

Page 61: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

6161

Suivi de projet

Page 62: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

62

Planning prévu fin septembrePlanning prévu fin septembre

• PrincipePrincipe• Séparation par parties du systèmeSéparation par parties du système• Parties étudiées sur des périodes différentesParties étudiées sur des périodes différentes• Etude d’une partie : Doc puis codeEtude d’une partie : Doc puis code

• InconvénientsInconvénients• Mauvaise visibilité sur l’ensembleMauvaise visibilité sur l’ensemble• Non-validation de la doc => Retard sur le codeNon-validation de la doc => Retard sur le code• Blocages empêchant l’avancementBlocages empêchant l’avancement

Page 63: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

63

Nouvelle gestionNouvelle gestion

• Séparation par versionsSéparation par versions• Sur une période donnéeSur une période donnée• Travail sur toutes les parties du systèmeTravail sur toutes les parties du système• Chaque partie a un objectif "versionné"Chaque partie a un objectif "versionné"• Version suivante sur la période suivanteVersion suivante sur la période suivante

• Répartition code et docRépartition code et doc• Pour chaque personnePour chaque personne

• Une tâche doc (étude, décision, rédaction)Une tâche doc (étude, décision, rédaction)• Une tâche code (tests, programmation, doc)Une tâche code (tests, programmation, doc)

Page 64: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

64

Nouveau planning docNouveau planning doc

Page 65: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

65

Nouveau planning codeNouveau planning code

Page 66: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

66

Nouveau planning codeNouveau planning code

Page 67: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

6767

Prototypes

Page 68: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

68

Octobre : Version 1Octobre : Version 1PrototypePrototype

• Trois scénarios opérationnelsTrois scénarios opérationnels

• Demande de la liste des fonctionnalitésDemande de la liste des fonctionnalités• Demande d’exécution d’une fonctionnalitéDemande d’exécution d’une fonctionnalité• Intégration d’un web serviceIntégration d’un web service

• Traitement de résultats de type simpleTraitement de résultats de type simple

• Convertibles en stringConvertibles en string• Pas d’imagePas d’image

Page 69: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

69

Novembre : Version 2Novembre : Version 2PrototypePrototype

• Traitement d’imageTraitement d’image

• Réception du résultat à l’exécution du web serviceRéception du résultat à l’exécution du web service• Dégradation de la donnéeDégradation de la donnée• Affichage dynamique adaptéAffichage dynamique adapté

• Proposition des caractéristiquesProposition des caractéristiques

• Base de donnéesBase de données

• Transport opérationnelTransport opérationnel

• Meilleure interopérabilitéMeilleure interopérabilité

Page 70: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

70

Décembre : version 3Décembre : version 3

• Interface administrateurInterface administrateur

• HistoriqueHistorique

• Affichage des erreursAffichage des erreurs

• Test après intégrationTest après intégration

• OptimisationOptimisation

• Application clienteApplication cliente

Page 71: 1 Projet WIB PRÉSENTATION du 26 octobre 2006 Claire De Bie Pierre Goaziou Vincent Penet Nazim Saouli Fanny Sisombat

7171

C’est fini !C’est fini !

Merci de votre attentionMerci de votre attention