Service Favorites : spécification fonctionnelle, phase Deux

Andy Boyd
Équipe MSDN Architectural Samples

Résumé : Ce document définit la fonctionnalité qui est proposée par l'exemple d'application de service Web Favorites dans la seconde phase du projet. Cette seconde phase ajoute la fonction d'authentification Passport, un client riche et un client ASP.NET.

L'équipe MSDN Architectural Samples accueille volontiers vos remarques et commentaires relatifs à cette spécification sur le site news:microsoft.public.msdn.webservices, accessible via le newsgroup MSDN Web Services Lien non MSDN France Site en anglais.

Sommaire

Généralités
1. Vision du projet et étendue
   1.1 Exposé du problème
   1.2 Révisions et mises à jour - phase Deux
   1.3 Étendue
2. Modèle conceptuel
   2.1 Sous-systèmes
   2.2 Modèle d'octroi de licences
3. Scénarios d'utilisation
   3.1 Scénarios d'utilisation de l'utilitaire serveur (Server Utility)
   3.2 Scénarios d'utilisation du service Favorites
   3.3 Scénarios d'utilisation du client riche du service Favorites
   3.4 Scénarios d'utilisation d'octroi de licences
   3.5 Scénarios de génération de rapports
4. Éléments fournis
   4.1 Services Web
   4.2 Kit de développement
   4.3 Site Web Favorites
   4.4 Client Windows Favorites
   4.5 Applications internes
5. Conditions requises
   5.1 Conditions requises pour la phase Deux du service

Généralités

Ce document définit la fonctionnalité qui sera proposée par l'exemple d'application du service Web Favorites dans la seconde phase du projet. Cette seconde phase ajoute la fonctionnalité d'authentification Passport, un client riche et un client ASP.NET. La phase Deux a pour objectif de simplifier et d'étendre notre service Favorites afin qu'il tire parti des technologies futures, notamment de Microsoft .NET My Services (anciennement HailStorm).

Remarque    Ce document constitue une version préliminaire de la spécification fonctionnelle relative à la phase Deux de l'exemple d'application de service Web Favorites. L'équipe MSDN Architectural Samples le soumet par avance aux développeurs afin qu'ils fassent part de leurs commentaires et de leurs suggestions concernant les fonctionnalités de la prochaine version du service Favorites.
Outre les commentaires sur les projets existants, l'équipe MSDN Architectural Samples accueille vos questions, remarques générales et suggestions pour de prochains exemples. Veuillez nous les adresser via le newsgroup MSDN Web Services Lien non MSDN France Site en anglais.

1. Vision du projet et étendue

1.1 Exposé du problème

Après le lancement de la phase Un du service Favorites, la société fictive Cold Rooster Consulting souhaite améliorer les fonctionnalités de son site, à la fois pour les licenciés et pour les utilisateurs finaux. En élargissant la sphère d'attraction du service Web, Cold Rooster cherche à attirer de nouveaux licenciés et à convaincre les utilisateurs de confier leurs données à son service. Le service Favorites servira encore d'élément d'attraction pour convaincre d'éventuels clients de la qualité et de l'utilité des services Web. Le service continue de :

  • Proposer une valeur ajoutée aux sites Web des clients potentiels
  • Montrer la qualité de nos pratiques de développement et d'exploitation
  • Être implémenté et déployé à un coût raisonnable pour nous

Le service Favorites tel qu'il est mis en œuvre dans la phase Un présente plusieurs inconvénients :

  • Les données utilisateur sont locales pour chaque licencié, ce qui veut dire que les données du dossier Favorites d'un site ne sont pas disponibles sur d'autres sites.
  • Les utilisateurs doivent créer et mémoriser une procédure d'ouverture de session unique pour chaque site utilisant le service Favorites.
  • L'exemple de service Favorites a été bâti pour le Web uniquement, bien qu'un service de ce type puisse prendre en charge à la fois des clients Web et des clients riches.

1.2 Révisions et mises à jour - phase Deux

La phase Deux prévoit l'ajout des fonctionnalités suivantes dans le service Favorites :

  • L'authentification des utilisateurs est gérée par Microsoft Passport Service 2.0. Ainsi, les utilisateurs ont automatiquement accès aux favoris en même temps qu'ils accèdent à un site, et ce sans avoir à créer un compte d'ouverture de session distinct.
  • Les utilisateurs deviennent uniques pour l'ensemble des licenciés. Un utilisateur a accès à un ensemble unique de favoris (par compte) à partir de n'importe quel site octroyant la licence d'utilisation du service.
  • Les fonctionnalités du service Favorites sont ajoutées dans l'application Cold Rooster Service Center actuellement développée par l'équipe qui travaille sur le service ColdStorage Lien non MSDN France Site en anglais. Le service Favorites fonctionne de la même manière depuis une page Web ou depuis une application Microsoft® Windows®.
  • Certains des composants sont réécrits conformément à la norme .NET en vue d'améliorer les performances et les fonctionnalités. Selon les éléments actuels, les composants qui doivent être reconstruits sont les suivants :
    • Reporting UI (interface de génération de rapports)
    • Admin UI (interface d'administration)
    • Site UI (interface de site)
  • Les données des composants Reporting et GetFavorites sont transmises en tant que XML pur, et non comme XML codé HTML.
  • Pour démontrer les fonctionnalités inter-sites du service, le site Web de Cold Rooster est enrichi de nouveaux exemples de sites qui illustrent les concepts d'utilisateurs uniques. Les sites supplémentaires montrent la conformité aux normes du service Favorites par le biais de sites Microsoft et éventuellement non-Microsoft (Linux).

1.3 Étendue

Dans la phase Deux, Cold Rooster Consulting met en œuvre et déploie un service Web Favorites qui peut être proposé sous licence à des développeurs de sites Web afin qu'ils puissent en coulisses gérer les favoris de leurs clients. Les utilisateurs peuvent enregistrer des favoris sur n'importe quel site Web qui concède une licence d'utilisation du service, et y accéder de même. Avec une autorisation d'utilisateur final, les licenciés peuvent ajouter, supprimer, modifier et organiser les favoris au nom de leurs utilisateurs. Les licenciés peuvent également récupérer tous les favoris qu'ils auront stockés au nom d'un client spécifique. Le service Web Favorites permet aussi la génération de rapports sur l'utilisation hebdomadaire des sites et les favoris classés premiers, et ce pour chaque licencié.

Outre le service Web, des outils sont déployés pour faciliter l'exploitation du service. Il s'agit notamment d'un outil de gestion des licenciés, un générateur de rapports et un utilitaire d'administration du service. Cold Rooster Consulting propose aussi aux licenciés des exemples et une documentation expliquant l'intégration du service Favorites dans un site Web ou un client riche. Ces exemples incluent un groupe de trois exemples de sites Web, un client riche avec le code source et un kit de développement de logiciel (SDK) complet pour le service.

2. Modèle conceptuel

Cette section décrit les acteurs qui interagissent avec le service Favorites et définit les concepts à connaître pour bien comprendre les scénarios d'utilisation et les conditions requises. La plupart des informations relatives au modèle conceptuel sont les mêmes que pour la phase Un, dont vous trouverez la description détaillée dans l'article Phase One Functional Specification Lien non MSDN France Site en anglais.

2.1 Sous-systèmes

Les termes suivants sont utilisés dans le document pour identifier les sous-systèmes logiques et les magasins de données du service Favorites.

Tableau 1. Sous-systèmes et magasins de données du service Favorites

Nom Description
Service FavoritesLe système dans son ensemble.
Service Web FavoritesLa partie du système qui propose des services de gestion des favoris utilisateur aux applications clientes.
Site Web FavoritesLe côté "lisible par l'homme" du service Favorites, qui fournit des informations générales ainsi que des modules d'administration et une documentation pour les licenciés. Pour la phase Deux, trois exemples de sites Web seront proposés, ainsi que le site principal de Cold Rooster Consulting.
Système de gestion des licences du service FavoritesIl s'agit d'un sous-système utilisé par les représentants des comptes clients et les opérateurs du service pour créer et gérer des licences.
Magasin de données des licenciés FavoritesLa base de données qui contient les informations relatives aux licenciés. Dans la phase Deux, le service Favorites est toujours une base de données gérée en interne, Passport 2.0 ne servant qu'à l'authentification des utilisateurs.
Service de génération de rapports FavoritesLa partie du système qui permet de fournir aux applications clientes des rapports sur l'utilisation par les licenciés du service Web Favorites.
Système de statistiques du service FavoritesLe sous-système utilisé par les gestionnaires et opérateurs du service pour obtenir des statistiques d'utilisation du service Favorites.
Application Web clienteUn site Web fourni par un licencié et dont les utilisateurs finaux se servent pour visualiser, consulter et gérer les favoris.
Cold Rooster Service CenterLe client riche développé par l'équipe MSDN Architectural Samples ColdStorage et qui est étendu de façon à inclure les fonctionnalités du service Favorites.

2.2 Modèle d'octroi de licences

Le service est concédé sous licence aux entreprises qui souhaitent offrir les fonctionnalités du service Favorites sur leurs sites Web. Le principal intérêt du service est qu'il permet aux utilisateurs de marquer par un signet le contenu du site d'un abonné et aux licenciés de conseiller des favoris supplémentaires en fonction des besoins de l'utilisateur, de son profil ou de promotions sur un produit ou sur un contenu. Bien que l'objectif premier du service ne soit pas de générer du chiffres d'affaires, les licenciés seront facturés en fonction du nombre de demandes de favoris et de la durée d'abonnement au service.

Tableau 2. Modèle d'octroi de licences du service Favorites

 Nombre de demandes de favoris par mois
Durée de l'abonnement0-9991 000-9 99910 000-50 00050 000+
1 mois49,95/mois149,95/mois249,95/mois499,95/mois
6 mois44,95/mois139,95/mois229,95/mois459,95/mois
12 mois39,95/mois129,95/mois209,95/mois399,95/mois

Le client riche est un service du site Cold Rooster Consulting et en même temps un usager (licencié) du service. Il s'occupe de sa propre publicité en s'inspirant du service publicitaire utilisé pour le projet ColdStorage Lien non MSDN France Site en anglais. Le client riche n'est pas inclus dans le chiffre d'affaires ni dans le modèle d'octroi de licences du service lui-même, mais il est proposé aux licenciés comme exemple d'apprentissage, parallèlement à un exemple de client Web.

En outre, les licenciés doivent gérer les frais liés à l'utilisation de Passport comme moyen d'authentification. Passport prévoit de facturer un droit de licence annuel nominal aux opérateurs du service ; pour l'instant toutefois, Microsoft renonce aux redevances.

3. Scénarios d'utilisation

Les scénarios suivants décrivent par anticipation le comportement du service Favorites lorsque des acteurs externes (utilisateurs finaux, application cliente, etc...) effectuent des opérations courantes. La plupart de ces scénarios sont identiques à ceux de la phase Un ; par conséquent, seuls les nouveaux sont présentés. Pour tous les détails concernant les autres scénarios d'utilisation, reportez-vous à l'article Phase One Functional Specification Lien non MSDN France Site en anglais.

3.1 Scénarios d'utilisation de l'utilitaire serveur (Server Utility)

Cette section présente les cas d'utilisation qui interviennent dans le cadre d'autres scénarios complets.

Validation de la licence

Le service Favorites vérifie que l'identité de licencié fournie correspond à une licence valide d'utilisation du service. Si ce n'est pas le cas, une erreur est renvoyée au client (Client Error: Invalid licensee [erreur client : licencié incorrect]).

Une licence est valide lorsqu'elle a été activée, qu'elle n'a pas encore expiré et qu'elle n'est pas suspendue.

Validation de l'ID d'utilisateur

Le service Favorites valide l'ID Passport (PID) fourni. La validation des informations sur l'utilisateur étant gérée par Passport, le service se contente de vérifier qu'il existe un PID. S'il n'en existe pas, le service renvoie une erreur au client (Client Error: No Passport ID [erreur client : aucun ID Passport]).

Action d'ouverture de session

Le service Favorites sauvegarde un enregistrement de l'adresse IP de l'appelant et de l'ID de licencié, la date et l'heure du début de l'action, sa durée, son type, le type de réponse (succès, erreur serveur, erreur client) et le PID au nom duquel l'action a été exécutée.

Ajout d'un nouvel utilisateur

Une application cliente soumet une requête au service Favorites pour ajouter un nouvel utilisateur, en spécifiant un PID ainsi qu'un identifiant de licencié.

Le service Favorites valide la licence, puis valide l'ID d'utilisateur. Si la licence et l'ID d'utilisateur sont corrects, le service Favorites crée un enregistrement utilisateur dans le magasin de données. Si l'enregistrement est ajouté, une réponse positive (opération réussie) est renvoyée à l'application cliente. Si l'ID d'utilisateur existe déjà dans le magasin de données ou si une erreur interne de traitement empêche la création de l'enregistrement du nouvel utilisateur, une erreur est renvoyée à l'application cliente (Client Error: User ID already exists in data store; Server Error: Unable to store User [erreur client : l'ID utilisateur existe déjà dans le magasin de données / erreur serveur : impossible d'enregistrer l'utilisateur dans le magasin de données]). Les recherches effectuées pour détecter les ID d'utilisateur en double ne tiennent pas compte des majuscules et des minuscules. Le service Favorites consigne l'ajout du nouvel utilisateur.

Ouverture de la session de connexion avec le service

Le site Web client redirige le site d'authentification Passport pour vérifier si l'utilisateur a bien été authentifié.

Dans l'affirmative, Passport revient vers le site client, indiquant que l'utilisateur est authentifié, puis il fournit les PID des utilisateurs.

L'authentification est assurée par l'objet Passport Manager, comme indiqué dans la rubrique http://msdn.microsoft.com/library/default.asp?url=/downloads/list/websrvpass.asp Lien non MSDN France.

Lorsque l'utilisateur final est authentifié la première fois à l'aide de Passport, l'application cliente soumet une requête au service Favorites pour récupérer les favoris de l'utilisateur, en spécifiant un PID ainsi qu'un ID de licencié (voir la description de la procédure dans le scénario récupération de tous les favoris). Si le PID ne figure pas dans la base de données, un nouveau compte d'utilisateur est ajouté.

Déconnexion du service

Le site Web client supprime le cookie de session de l'ordinateur de l'utilisateur, puis il procède à une réactualisation. Par la suite, il détecte si l'utilisateur est connecté ou non et propose le cas échéant l'option de connexion.

3.2 Scénarios d'utilisation du service Favorites

L'avantage du client Web pour le licencié est que les utilisateurs peuvent marquer à l'aide d'un signet le contenu du site du licencié et que ce contenu leur est toujours accessible ; ainsi, ils repèrent et consultent le contenu des sites du licencié, quels qu'ils soient. La possibilité d'ajouter un favori est incluse uniquement dans le client Web ; un des principaux intérêts à payer le service est d'encourager l'utilisation du site Web d'un licencié.

Récupération de tous les favoris

Si l'utilisateur n'est pas déjà connecté à Passport, il sélectionne l'option de connexion à partir du site Web client. Une fois la connexion établie, le site Web client soumet une requête GetFavorites au service Favorites, en utilisant l'ID du licencié et le PID. Le service valide l'ID du licencié et le PID. Si les deux sont corrects, il renvoie les données à l'utilisateur au format XML. Si une erreur de traitement interne empêche la récupération des favoris, une erreur est renvoyée à l'application cliente (Server Error: Unable to retrieve favorites [erreur serveur : impossible de récupérer les favoris]). Le service Favorites consigne l'action.

Ajout d'un favori

Sur un site Web qu'un utilisateur souhaite ajouter à ses favoris, il est possible de sélectionner un lien d'"ajout d'un favori". Ce lien peut être inclus sur une page quelconque, capable d'afficher et de traiter une URL, y compris des documents et la barre de liens d'Internet Explorer. Une fois sélectionné, le site Web client vérifie si l'utilisateur est connecté, puis l'application cliente soumet une requête au service Favorites pour ajouter la page aux favoris de l'utilisateur, en spécifiant un PID, un URI (Uniform Resource Identifier), un ID de catégorie et un nom convivial pour la page, ainsi qu'un ID de licencié. (L'application cliente peut permettre à l'utilisateur de choisir une catégorie existante et entrer un nom de favori, ou elle peut spécifier simplement la catégorie racine et utiliser le titre de la page comme nom convivial.)

Le service Favorites valide la licence, puis valide l'ID d'utilisateur. Si la licence et le PID sont corrects, le service Favorites valide l'URI, l'ID de catégorie et le nom convivial. Si l'URI, l'ID de catégorie et le nom convivial ne sont pas corrects, une erreur est renvoyée. Les erreurs possibles sont :

  • Client Error: URI must contain at least one character (erreur client : l'URI doit contenir au moins un caractère)
  • Client Error: URI is not a syntactically valid URI (erreur client : l'URI n'est pas correct syntaxiquement)
  • Client Error: Category does not exist (erreur client : la catégorie n'existe pas)
  • Client Error: Friendly name must contain at least one character (erreur client : le nom convivial doit contenir au moins un caractère)
  • Client Error: Friendly name already exists in category (erreur client : le nom convivial existe déjà dans la catégorie)

Si tous les paramètres sont corrects, le service Favorites crée un favori dans le magasin de données. Si l'ajout de l'enregistrement réussit, le nouvel ID de favori est renvoyé à l'application cliente. Si une erreur de traitement interne empêche le service de créer l'enregistrement de l'utilisateur, une erreur est renvoyée à l'application cliente (Server Error: Unable to retrieve favorites [erreur serveur : impossible d'enregistrer le favori]). Le service Favorites consigne l'ajout du nouveau favori.

Gestion des favoris

Une fois connecté, l'utilisateur sélectionne l'option Manage Favorites (Gérer les favoris) à partir du contrôle Web fourni par le site Web client. Le site Web client va récupérer tous les favoris, puis afficher les favoris par catégorie, ainsi que des options pour ajouter manuellement un favori, ajouter une nouvelle catégorie, supprimer un favori, supprimer une catégorie, renommer un favori, renommer une catégorie, déplacer un favori et copier un favori.

Ajout manuel d'un favori

À partir de l'écran Manage Favorites, l'utilisateur peut manuellement ajouter un favori. Les favoris des non-licenciés ne peuvent être ajoutés que par le biais de cette option. L'utilisateur est invité à entrer l'URL du favori, un nom convivial et une catégorie choisie dans une zone de liste. Le dossier racine des favoris est l'emplacement par défaut. Une fois sélectionné, le site Web client vérifie si l'utilisateur est connecté, puis l'application cliente soumet une requête au service Favorites pour ajouter la page aux favoris de l'utilisateur, en spécifiant un PID, un URI, un ID de catégorie et un nom convivial pour la page, ainsi qu'un ID de licencié. Le service Favorites valide la licence, puis valide l'ID d'utilisateur. Si la licence et le PID sont corrects, le service Favorites valide l'URI, l'ID de catégorie et le nom convivial. Si l'URI, l'ID de catégorie et le nom convivial ne sont pas corrects, une erreur est renvoyée. Les erreurs possibles sont :

  • Client Error: URI must contain at least one character (erreur client : l'URI doit contenir au moins un caractère)
  • Client Error: URI is not a syntactically valid URI (erreur client : l'URI n'est pas correct syntaxiquement)
  • Client Error: Category does not exist (erreur client : la catégorie n'existe pas)
  • Client Error: Friendly name must contain at least one character (erreur client : le nom convivial doit contenir au moins un caractère)
  • Client Error: Friendly name already exists in category (erreur client : le nom convivial existe déjà dans la catégorie)

Si tous les paramètres sont corrects, le service Favorites crée un favori dans le magasin de données. Si l'ajout de l'enregistrement réussit, le nouvel ID de favori est renvoyé à l'application cliente. Si une erreur de traitement interne empêche le service de créer l'enregistrement de l'utilisateur, une erreur est renvoyée à l'application cliente (Server Error: Unable to retrieve favorites [erreur serveur : impossible d'enregistrer le favori]). Le service Favorites consigne l'action d'"ajout d'un favori".

Fonctionnalités supplémentaires

Les fonctionnalités de base, telles que l'ajout, la suppression et le fait de renommer des favoris et des catégories, sont décrites dans l'article Phase One Functional Specification Lien non MSDN France Site en anglais.

3.3 Scénarios d'utilisation du client riche du service Favorites

Le rôle du client riche est de générer du chiffre d'affaires pour Cold Rooster Consulting, il n'est pas un simple produit complémentaire du service Favorites. Il est avant tout un outil pour gérer les favoris d'un utilisateur, plus qu'un outil interactif permettant d'ajouter des favoris à la volée (comme c'est le cas avec le contrôle Web).

Affichage des favoris

Il s'agit de l'affichage par défaut du client riche. Le client riche affiche deux volets, une arborescence et un affichage d'objet feuille, trié par catégorie.

Ajout d'un favori

La fonction d'ajout à l'aide d'un simple clic n'est pas activée dans le client riche. Elle est réservée au client Web qui oriente le trafic vers les licenciés. Il est possible d'ajouter manuellement des favoris au client riche en cliquant sur le bouton Add Favorite.

Ajout manuel d'un favori

Cette fonctionnalité est identique à celle qui est décrite dans le scénario d'utilisation du client Web.

Importation de favoris

Il est possible d'importer tous les favoris ou signets stockés localement dans le service Web, grâce à l'interface IShellUIHelper::ImportExportFavorites.

Exportation de favoris

Cette fonctionnalité permet d'exporter l'ensemble des favoris et des catégories du service Favorites dans le menu Favoris d'Internet Explorer.

Synchronisation des favoris

La synchronisation des favoris met en œuvre les deux opérations d'importation et d'exportation des favoris.

Ajout d'une nouvelle catégorie

Tout comme dans le scénario d'utilisation du client Web, le client riche met la fonction d'ajout de catégorie à la disposition des utilisateurs, via des menus contextuels, un menu Windows et une option de barre d'outils.

Suppression d'un favori

Tout comme dans le scénario d'utilisation du client Web, le client riche permet la suppression de favoris par le biais de menus contextuels, d'un menu Windows et d'une option de barre d'outils.

Suppression d'une catégorie

Tout comme dans le scénario d'utilisation du client Web, le client riche permet la suppression de catégories par le biais de menus contextuels, d'un menu Windows et d'une option de barre d'outils.

Renommer un favori

Tout comme dans le scénario d'utilisation du client Web, le client riche permet de renommer une catégorie par le biais de menus contextuels, d'un menu Windows et de méthodes de type cliquer-taper spécifiques du client riche.

Renommer une catégorie

Tout comme dans le scénario d'utilisation du client Web, le client riche permet de renommer une catégorie par le biais de menus contextuels, d'un menu Windows et de méthodes de type cliquer-taper spécifiques du client riche.

Déplacement de favoris

Tout comme dans le scénario d'utilisation du client Web, le client riche permet de déplacer des favoris par le biais de menus contextuels, d'un menu Windows et de méthodes de type glisser-déplacer. Lorsque la fonction glisser-déplacer est utilisée, l'action proposée par défaut est le déplacement de favoris. Des menus contextuels proposent une option de déplacement (Move Favorite) en cas de clic droit sur un favori, ou les options de déplacement (Move Favorite) et de copie (Copy Favorite) si l'utilisateur clique avec le bouton droit sur un favori puis le déplace vers une nouvelle catégorie.

Copie d'un favori

Tout comme dans le scénario d'utilisation du client Web, le client riche permet de copier des favoris par le biais de menus contextuels, d'un menu Windows et de méthodes de type glisser-déplacer. Lorsque la fonction glisser-déplacer est utilisée, l'action proposée par défaut est le déplacement de favoris. Des menus contextuels proposent une option de copie (Copy Favorite) en cas de clic droit sur un favori, ou les options de déplacement (Move Favorite) et de copie (Copy Favorite) si l'utilisateur clique avec le bouton droit sur un favori puis le déplace vers une nouvelle catégorie.

3.4 Scénarios d'utilisation d'octroi de licences

Aucune modification n'a été apportée à la procédure d'abonnement pour le service Favorites, si ce n'est la mise à jour de l'interface avec le passage à ASP.NET. Tous les détails concernant l'octroi de licences pour le service figurent dans l'article Phase One Functional Specification Lien non MSDN France Site en anglais.

3.5 Scénarios de génération de rapports

La seule modification concernant le service de génération de rapports (Reporting) est le passage de données en XML pur et non plus en XML codé HTML. Cette nouveauté n'a pas de répercussion sur les scénarios d'utilisation. Tous les détails concernant la génération de rapports figurent dans l'article Phase One Functional Specification Lien non MSDN France Site en anglais.

4. Éléments fournis

Cette section propose la liste des composants logiciels et de la documentation qui sont fournis dans le cadre de la phase Deux du service Favorites.

4.1 Services Web

Les services Web déployés sur Internet sont les suivants :

  • Service de connexion à Favorites pour gérer l'authentification des licenciés et leurs autorisations. Le service de connexion des licenciés continue d'utiliser une base de données interne et non Passport.
  • Service Web Favorites pour gérer les favoris des utilisateurs. Les éléments de l'interface utilisateur du service sont créés sur la base de .NET Framework.
  • Service de génération de rapports de Favorites pour créer des rapports relatifs à l'utilisation du service Favorites.

4.2 Kit de développement

Le kit de développement contient :

  • Une documentation, notamment :
    • des pages de référence décrivant chaque opération exposée par tous les services Web ;
    • un guide du développeur expliquant comment utiliser les services Web à partir d'une application cliente ;
    • un guide de test expliquant comment tester l'utilisation des services Web dans une application cliente ;
    • des instructions pour accéder au service de test et une description des limites imposées par ce service ;
    • la liste des problèmes connus, y compris les questions d'interopérabilité avec les ensembles d'outils spécifiques ;
    • des procédures de résolution des problèmes destinées au personnel d'exploitation ;
    • des informations sur les offres de support à la clientèle.
  • Des exemples d'applications clientes :
    • Deux applications Web clientes utilisant le service Web Favorites. Un de ces services au moins est prévu pour un serveur Web non-Microsoft, par exemple Apache. Cette offre permet de montrer l'utilisation d'un service Web XML conforme aux normes sur des plates-formes différentes.
    • Une application de type client riche Windows pour l'utilisation du service Web Favorites. Le client riche est le Cold Rooster Service Center en cours de développement par l'équipe du projet ColdStorage, avec une page supplémentaire pour les fonctionnalités du service Favorites.

4.3 Site Web du service Favorites

Le site Web du service Favorites fournit l'exemple d'interface utilisateur de Cold Rooster Consulting. Outre les fonctionnalités exposées dans l'article Phase One Functional Specification Lien non MSDN France Site en anglais, deux nouveaux exemples de sites sont proposés dans le cadre de la phase Deux (soit un total de 3 sites). Ces 3 exemples de sites ont tous accès au service Favorites en tant que licenciés uniques avec des noms de domaine uniques. Pour chaque site, les fonctionnalités du service Favorites sont activées via Passport 2.0, de façon à montrer comment les données des favoris peuvent être visualisées par chaque utilisateur, indépendamment du site du licencié.

4.4 Client Windows Favorites

Le client Windows Favorites donne lieu à un onglet supplémentaire dans Cold Rooster Service Center, qui a accès à l'ensemble des fonctionnalités utilisateur du service Favorites dans un contrôle Windows. Le client riche est strictement utilisé comme outil de gestion des favoris, et il n'offre aucun moyen pratique d'ajouter des favoris à partir des sites de licenciés ou non. Cette limitation est intentionnelle, afin d'encourager les utilisateurs à consulter le site Web d'un licencié en vue d'ajouter des favoris dans leurs dossiers, et de justifier en même temps le paiement du service par ledit licencié. Les principales fonctionnalités du client riche sont les suivantes :

  • Fonction client riche de glisser-déplacer pour la copie et le déplacement des favoris et des catégories
  • Menus contextuels pour toutes les tâches majeures de gestion du service Favorites
  • Boutons de barre d'outils pour toutes les tâches majeures de gestion du service Favorites
  • Options de menu Windows pour toutes les tâches majeures de gestion du service Favorites
  • Boutons permettant de réaliser des importations et des exportations à partir du navigateur et de synchroniser les favoris

4.5 Applications internes

Les applications déployées en interne pour Cold Rooster Consulting sont les suivantes :

  • Système de gestion des licences du service Favorites
  • Système de statistiques du service Favorites

5. Conditions requises

Cette section répertorie et classe par ordre de priorité les conditions nécessaires à l'implémentation de la phase Deux du service Favorites.

À chaque condition est associée une priorité, désignée par un numéro, de 1 à 3 :

  1. Indispensable pour le fonctionnement du service
  2. Fortement recommandé
  3. Conseillé mais pas obligatoire

Cette section ne fait état que des fonctionnalités ou des éléments de développement requis spécifiques de la phase Deux. Les conditions de base requises pour le service sont énumérées dans l'article Phase One Functional Specification Lien non MSDN France Site en anglais.

5.1 Conditions requises pour la phase Deux du service

Gestion des favoris utilisateur

Réf.PrioritéTitreRemarques
2-1012Le client Web Favorites détecte la connexion Passport et active automatiquement le service Favorites.Aucune
2-1022Le client riche Favorites détecte la connexion Passport et active automatiquement le service Favorites.Aucune
2-1031Le coffret "Logon to Passport" a été fourni avec Cold Rooster Consulting et tous les exemples de pages.Aucune
2-1041La fonctionnalité "Logon to Passport" a été fournie dans le client riche.Aucune
2-1051Les favoris utilisateur sont visibles à partir de tous les sites qui sont abonnés au service via le même compte Passport. Voir 2-603.Aucune

Sécurité

Réf.PrioritéTitreRemarques
2-2011Journal d'auditPour chaque requête de service, le journal stocke l'adresse IP de l'appelant, l'ID de site, l'ID d'utilisateur Passport (PUID), la date et l'heure, le type de requête et le type de réponse.

Conditions requises non fonctionnelles

Réf.PrioritéTitreRemarques
2-4011Tous les principaux composants du service sont écrits avec .NET Framework.Aucune
2-4021Les données GetFavorites sont passées sous la forme d'XML pur.Aucune

Génération de rapports

Réf.PrioritéTitreRemarques
2-5011Les données du service de génération de rapports (Reporting Service) sont passées sous la forme d'XML pur.Aucune

Outils et documentation pour le développeur

Réf.PrioritéTitreRemarques
2-6012Documentation du développeur pour PassportExplique comment s'abonner et utiliser Passport pour authentifier les utilisateurs, puis transmettre l'authentification au service Web.
2-6021Documentation du développeur pour le serviceExplique comment les fonctionnalités .NET sont intégrées au service Web et aux clients.
2-6031Exemples de sites WebMontre aux développeurs de sites Web comment intégrer le service Favorites à leur application cliente. Trois sites Web sont fournis en exemple afin d'illustrer le principe de la connexion utilisateur unique. Certains de ces exemples peuvent fonctionner sur des plates-formes non-Microsoft afin de prouver la conformité du produit aux normes concernant les services Web.
2-6042Exemple de client richeExplique aux licenciés comment ajouter la fonctionnalité de client riche qui incorpore le service Favorites.

Fonctionnalité client riche

Réf.PrioritéTitreRemarques
2-9011Barres de menusBarres de menus Windows standard pour accéder à toutes les fonctionnalités.
2-9021Menus contextuels appelés par un clic droit de la sourisLe fait de cliquer avec le bouton droit de la souris sur une catégorie ou sur une zone vide dans l'explorateur (catégorie racine par défaut) doit entraîner l'affichage d'options permettant les opérations suivantes : ajouter un favori (manuellement), ajouter une catégorie, supprimer un favori, copier un favori, déplacer un favori, renommer un favori.
2-9032Barres d'outilsLes boutons des barres d'outils doivent être activés pour la plupart des fonctionnalités, y compris : ajouter un favori (manuellement), ajouter une catégorie, supprimer (un favori ou une catégorie), copier un favori, déplacer un favori, renommer un favori.
2-9041Glisser-déplacerIl est possible de faire glisser et de déplacer les favoris et les catégories vers n'importe quel autre favori ou catégorie.
2-9053Menus contextuels avec la fonction glisser-déplacerUn clic droit pendant le glissement d'un élément active un menu contextuel permettant de copier le favori ou de le déplacer (déplacement par défaut).
2-9063Importation de favoris à partir du navigateurD'un simple clic, le client peut importer tous les favoris utilisateur à partir du navigateur, les comparer avec les favoris existants dans le service et ajouter les nouveaux dans la liste.
2-9073Exportation de favoris à partir du navigateurD'un simple clic, le client peut exporter tous les favoris utilisateur à partir du service, les comparer avec les favoris existants dans le navigateur et ajouter les nouvelles entrées dans la liste des favoris du navigateur.
2-9083Synchronisation des favorisEffectue une importation et une exportation des favoris dans Internet Explorer.
2-9091Service de publicitéLe contrôle du service de publicité utilisé dans le projet de stockage .NET apparaît sur la page cliente du service Favorites. Ceci représente le modèle de génération de chiffre d'affaires pour le client.
2-9092Contrôle de changement de vues Une zone de liste déroulante contiendra des vues préconfigurées pour les favoris. Les vues sont affichées sur la base de métadonnées collectées avec le favori et fournies par le service. Ces vues sont :
  • Affichage des favoris Cold Rooster
  • Affichage des favoris Cold Rooster et d'autres favoris
  • Tri de tous les favoris par licencié


Dernière mise à jour le mercredi 28 novembre 2001



Pour en savoir plus
Afficher: