Libenligne
Libenligne
Etudes de cas
Etude de cas LIBENLIGNE
3 - La phase d'initialisation
4 - La phase d'élaboration : itération n°1
5 - La phase d'élaboration : itération n°2
1 - Présentation générale
2 - Site Marchand
Ce document présente l'étude de cas traitée selon le processus unifié. La présentation de ce cas
comporte :
la définition des besoins fonctionnels, c'est à dire les fonctionnalités attendues par les
usagers du site marchand
la définition des besoins non fonctionnels : performances, ergonomie
la définition des contraintes de conception
Le sujet
L'étude de cas traite du développement d'un site web marchand. Nous avons choisi l'exemple
d'une librairie en ligne, exemple représentatif des applications de E-Commerce. L'étude cas est
inspirée de sites existants : www.eyrolles.com , www.amazon.fr , www.fnac.com….
Objectif du projet
fournir une information constante et personnalisée sur les ouvrages (prix des livres,
disponibilités, critiques, résumés, table des matières…).
permettre de commander en ligne des ouvrages. Le client passe sa commande en ajoutant
des ouvrages dans son panier d'achat. A tout moment, le client peut modifier son panier
d'achat en ajoutant ou en retirant des ouvrages. La commande est enregistrée lorsque le
client valide son panier d'achat.
Permettre le paiement des commandes directement sur le Web.
Permettre aux usagers de consulter toutes leurs commandes et de suivre les livraisons
La recherche
La première fonction que doit offrir le site est la recherche d'ouvrages dans l'ensemble du
catalogue. Le site doit offrir plusieurs méthodes de recherche : par titre, N°ISBN, auteur…Les
résultats de la recherche doivent apparaître sur une page particulière. L'internaute doit pouvoir
aussi accéder à une classification thématique, aux nouveautés, aux meilleures ventes.
La consultation
Chaque livre du catalogue doit pouvoir être présenté en détail sur une page. Cette page doit
contenir :
La page de garde du livre sous forme d'image
Le prix et la disponibilité
Des commentaires de lecteurs
La table des matières
Certains extraits de chapitres
La sélection
Comme dans un magasin réel, l'internaute doit avoir la possibilité de déposer et d'enlever des
ouvrages dans et de son panier virtuel. Il doit aussi pouvoir indiquer des quantités souhaitées (et
aussi de les modifier) avant de passer commande.
La prise de commande
A tout moment après avoir rempli son panier, le client doit pouvoir accéder au formulaire de
commande dans lequel il saisit ses coordonnées et les informations nécessaires au paiement et à
la livraison. Pour garantir la sécurité et la confidentialité des échanges, il est impératif que
l'envoi des données soit crypté. Le client peut s'il le souhaite obtenir une impression du devis
pour commander par courrier ou par fax.
Le client doit pouvoir ensuite suivre ses commandes récentes en donnant son mot de passe.
Exigences de qualité
Pour attirer de nouveaux clients et pour fidéliser des clients existants il est important de
respecter les exigences de qualité suivantes :
Page 2 sur 25
Formulaire de commande simple et facile à remplir
Aide en ligne puissante et permanente. A tout moment l'internaute doit pouvoir consulter
des pages d'aide contextuelles. Une visite guidée du site doit être proposée aux
nouveaux visiteurs.
Exigences de performance
Le site de la Société LIBENLIGNE doit pouvoir gérer les comptes de plus de 10 000 clients. Le
site doit supporter plus de 1 000 connexions simultanées. Le catalogue d'ouvrages doit pouvoir
contenir plus de 1 000 000 ouvrages différents. On considère qu'une recherche qui prendrait
plus de 30 secondes n'est pas satisfaisante.
Les ouvrages
Les informations relatives aux ouvrages présentés sur le site proviennent essentiellement de
deux sources complémentaires. La première contient tous les nouveaux ouvrages, la seconde
contient toutes les mises à jour de prix et de stock. Ces deux sources sont périodiquement
utilisées pour mettre à jour les données de la base de données du site. Toutes les autres
informations (par exemple les commentaires de lecteur) sont saisies manuellement à l'aide d'une
application dédiée.
Les données relatives aux clients et saisies à partir des formulaires sont conservées ainsi que les
caractéristiques de leurs commandes. Les clients doivent pouvoir consulter l'historique de leurs
commandes.
Gestion du panier
Le panier de l'internaute ne sera pas sauvegardé dans la base. Sa durée de vie n'excèdera pas
celle de la visite de l'internaute.
Paiement sécurisé
La saisie du numéro de carte de crédit par le client doit s'effectuer de manière sécurisée, en
cryptant le transfert http , via le protocole SSL. La commande et le numéro de carte sont
stockés jusqu'au traitement de la commande. La banque concernée validera la transaction. Après
la validation, le numéro de la carte de crédit est supprimé de la base de données.
3 - La phase d'initialisation
Page 3 sur 25
La phase d'initialisation dans le contexte de l'étude de cas
Nous avons dans l'énoncé de l'étude cas une liste initiale des besoins fonctionnels et non
fonctionnels.
Les acteurs
l'Internaute : personne qui visite le site, qui fait des recherches d'ouvrage, qui passe
éventuellement des commandes et qui peut consulter ses commandes
Page 4 sur 25
Le service Clients : les employés qui s'occupent des clients et du suivi des commandes des
clients
Le libraire : les personnes qui sont responsable du contenu du site (référencement d'un
nouvel ouvrage, ajout d'une critique sur un ouvrage….)
L'administrateur du site : les personnes qui ont en charge le bon fonctionnement du site
et la maintenance
Deux systèmes servent à alimenter la base de données associée au site : l'un contient les
nouveautés et le second est le système existant de gestion du stock.
Pour chaque acteur identifié précédemment, on définit les différents buts qu'il cherche à
atteindre en utilisant le système.
Obtenir un devis
Maintenir le catalogue
Maintenir le site
Pour les projets importants, il est usuel de faire un regroupement des cas d'utilisation. Ce
regroupement conduit le plus souvent à un découpage fonctionnel du système. Trois types de
critères sont usuellement utilisés pour faire ce regroupement :
Le regroupement des cas d'utilisation est basé sur la notion de paquetage (« package ») proposé
par le langage UML.
Page 5 sur 25
Dans l'étude de cas nous proposons le découpage suivant :
Nous construisons deux diagrammes, celui qui montre les cas d'utilisation de l'acteur externe
« internaute » et celui qui montre les cas d'utilisation des acteurs internes « Libraire » et
« Webmaster ».
Page 6 sur 25
Commen
ntaires :
On diffé
érencie les acteurs
a exte
ernes (ici l'iinternaute) des acteurs internes (icci le service clients)
L'utilisaation de la fllèche sur le lien entre lee cas d'utilissation « Passer une com
mmande » et l'acteur
interne « Services Clients
C » siggnifie que l'aacteur ne faait que recevvoir des messsages du sy
ystème.
PPage 7 sur 25
Commen
ntaires :
On diffé
érencie les acteurs
a hum
mains des actteurs systèm
mes
La flèch
he de navigab
bilité indique que l'acteeur système « gestion de
es stocks » ne fait qu'e
envoyer
des info
ormations sa
ans jamais en n recevoir.
Reche
ercher des ouvrages moye
en Haute 1
Gé
érer son pan
nier Bas Haute 1
Passe
er ses comm
mandes élevé
é Haute 1
O
Obtenir un de
evis Bas Basse 3
PPage 8 sur 25
Maintenir le site Bas Moyenne 3
Les acteurs sont-ils tous pris en compte (au moins une fois) ?
Le modèle d'analyse
Dans la phase d'élaboration, le modèle d'analyse est un ensemble de classes du domaine avec des
associations et des attributs.
L'identification des classes peut être faite à partir des cas d'utilisation. Pour chaque cas
d'utilisation, on recherche les concepts du domaine qui participent au cas d'utilisation.
Concepts utilisés par le cas d'utilisation « Sélectionner des ouvrages dans son panier »
Panier, LignePanier
Concepts utilisés pour le cas d'utilisation « Passer une commande ». Un panier contient en général
plusieurs ouvrages sélectionnés
Commande, Client
Thème
Page 9 sur 25
A ce nivveau du processus, le mo
odèle d'analyyse contientt les principa
aux conceptss du domaine.
Ce modèèle d'analysee peut rapidement être structuré en e deux paqu uetages, l'unn contenant les
ux livres et l'autre conttenant les co
conceptss relatifs au oncepts rela atifs aux commmandes. Ceette
structurration en de
eux paquetag ges conserve e l'homogéné éité ainsi que l'indépenddance.
4 - La
a phase d''élaboratiion : prem
mière itéra
ation
La pha
ase d'éla
aboration
n dans le
e contextte de l'é
étude de cas
En résum
mé la premiè
ère itération
n de la phase
e d'élaborattion produit les artéfaccts suivants :
Acttivités de la
a phase d'innitialisationn / Artéfactts
I
Itération 1
Identifiication des besoins
b Le modèle
m des cas d'utilisattion avec pour la
art des cas, la descriptiion textuelle
plupa e
PPage 10 sur 25
2
détaillée, le diagramme de séquence système
Analyse Le diagramme des classes d'analyse
Nous allons détailler certains cas d'utilisation identifiés dans la phase d'initialisation.
Nous détaillons un cas d'utilisation avec ses scénarii : un scénario nominal (le cas le plus
fréquent) et les scénarii d'extension (certains constituent des scénarii d'exceptions). Chaque
scénario est composé d'étapes. Une étape est un message de l'acteur vers le système, une
validation ou un changement d'état du système ou encore un message du système vers un acteur.
On choisit de numéroter chaque étape. La description détaillée des cas d'utilisation comporte
des pré-conditions et des post conditions.
Objectif : L'internaute doit pouvoir rajouter de nouveaux ouvrages et mettre à jour le catalogue
des ouvrages présentés aux internautes
Pré conditions :
Post conditions :
Scénario nominal :
2. Le système « gestion des stocks » met à jour les prix et les quantités en stock des ouvrages
Extensions
2.a le système détecte un problème lors de la mise à jour (scénario d'exception – Echec)
Page 11 sur 25
1 Le système signale le dysfonctionnement au libraire
Objectif : A tout moment un internaute doit pouvoir saisir à partir d'un formulaire une
commande d'ouvrage
Pré conditions :
Post conditions :
Scénario nominal
Extensions
Page 12 sur 25
1a. L'internaute est déjà client
Exercice I :
Lors de la description détaillée des cas d'utilisation, il est possible de découvrir de nouveaux cas
d'utilisation et d'identifier des relations entre cas d'utilisation.
A ce stade du processus seul le diagramme des cas d'utilisation relatifs à l'internaute a changé.
Page 13 sur 25
Commen
ntaires :
La reche
erche d'ouvrrages peut aboutir
a à meettre dans le
e panier des ouvrages, d
d'où la relation
« extend
d » du cas d'utilisation
d « gérer son panier » vers « recherccher des ouvvrages ».
A tout m
moment du remplissage
r du panier, l' internaute peut passer sa command de, d'où la relation
r
« extendd » du cas d'utilisation
d « passer une e commande as d'utilisattion « gérer son
e » vers le ca
panier »
».
Les diffférentes forrmes de rech herche d'ouuvrage peuve ent être mod
délisées par des relation
ns de
généralisation, danss ce contextte, le cas d'uutilisation « rechercher des ouvragees » est un cas
c
d'utilisaation abstrait.
Les diag
grammes de
e séquence système
s
Les inte
eractions gén
nérées entre
e le systèmee et les acte
eurs durant le déroulem
ment des diff
férents
scénario
os peuvent être
ê décrites
s avec un diaagramme de e séquence système (DSSS). Dans ce
PPage 14 sur 25
2
diagramme sont rep présentés less acteurs ett le système
e, les seuls messages
m sonnt ceux échaangés
entre le
es acteurs ett le système
e. Dans un diiagramme dee séquence système,
s le ssystème estt une
« boite n n général pluusieurs DSS, un pour chaque scénarrio représentatif
noire ». On construit en
(complexxe) de chaquue cas d'utilisation.
PPage 15 sur 25
2
Exercice
e II
i) Ecrire
e les DDS pour
p les scé
énarios du ccas d'utilisa
ation « rech
hercher dess ouvrages »
Analyse
Ci-desso
ous le diagra asses d'anallyse du paqu
amme des cla uetage « Livr
re »
PPage 16 sur 25
2
Exercice
e III
Le lien d
de navigabilité entre les
s deux paque ue une dépendance unid irectionnelle
etages indiqu e. La
flèche eexplicite le seul
s sens de navigation ppossible.
PPage 17 sur 25
2
5 - La
a phase d''élaboratiion : itéra
ation N°2
2
Introd
duction
Durant c
cette deuxièème itératio
on, nous allonns affiner le
e modèle d'a
analyse et déémarrer le modèle
m
de conce
eption. Les principaux
p artefacts connstruits sonnt donnés da
ans le tableaau suivant :
Acttivités de la
a phase d'innitialisation / Artéfactts
I
Itération 2
Identific
cation des besoins
b
Analyse Diagrammes
D des classes d'analyse av vec les
cla
asses « dialo
ogue », les cclasses « con
ntrôle »
et les
l classes « entités
Diagrammes
D d'interactioon pour les classes
c
d'analysse
C
Conception Diagramme
e des classees de concep
ption
L'itérration 2 de
d la pha
ase d'iniitialisatio
on dans le contex
xte de l'étude
de cass
Modèle d'analyse
PPage 18 sur 25
2
- Les classes « dialogue ou interface» qui supportent les interactions entre les acteurs et
le système, Pour ces classes, les attributs sont en général des champs de saisie ou de résultat et
les opérations représentent des actions de l'utilisateur.
- Les classes « contrôle » qui supportent les traitements. Ces classes ne possèdent en
général que des opérations. Ces opérations expriment les règles de gestion du domaine
- Les classes « entités » qui supportent la gestion des objets métier. Ces classes ont été
pour la plupart identifiées dans les itérations précédentes. Ces classes ne possèdent en général
que des attributs, ils représentent des informations persistantes.
Il est tout à fait possible d'associer à ces trois types de classe des stéréotypes avec des
symboles spécifiques.
- Les classes « dialogue » ne peuvent être reliées qu'à des classes « contrôle » ou à
d'autres classes « dialogue ». Les classes « entités » ne peuvent être reliées qu'à des classe
« contrôle » ou à d'autres classes « entités ». Les classes « contrôle » ont accès à toutes les
classes.
Page 19 sur 25
Diagram
mme de classses d'analy
yse pour le ccas d'utilisa
ation « gérer le panierr »
PPage 20 sur 25
2
Exercice
e IV
i) Consttruire le dia
agramme des
s classes d 'analyse pou
ur le cas d''utilisation « rechercher des
ouvragess »
Diagra
ammes de
d séquen
nce
Chaque d
diagramme de
d séquence e représente e un ensemble d'objets qui interagisssent dans le
contexte d'un scéna
ario d'un cas
s d'utilisatioon.
PPage 21 sur 25
2
Exercice
e V
i) Consttruire le dia
agramme de séquence ppour le scén nario de reccherche parr le nom de
l'auteurr. L'internaute doit pou
uvoir naviguuer dans la collection de
d livres resstitués
Modèlle de con
nception
PPage 22 sur 25
2
• aajouter ou préciser les opérations
o d
dans les classses (pour ce
ela on utilisee les messag
ges du
diagramme de séque ence)
A ce nivveau une autrre précision peut être aapportée surr les associa ations. En efffet la méthode
« Ajoute erLigne » de e la classe de contrôle « Panier » do er les propriéétés du livre
oit récupére e avant
d'ajouteer la ligne au u panier et de
d créer la l igne. Il exisste donc une dépendancee entre l'objjet de
contrôlee « Panier » et un objet « Livre ». D De même parrce que l'objjet panier reeçoit en para amètre
l'objet llivre, il existte une dépenndance entrre l'objet « Panier
P » et l'objet
l « Livvre ».
On donnne ci-dessou
us le nouvea
au diagramm
me de séque q le diagraamme de classes
ence ainsi que
modifié..
PPage 23 sur 25
2
Le diagrramme des classes de conception détaillé pre
end la forme suivante :
PPage 24 sur 25
2
Exercice
e VI
i) Consttruire le dia
agramme des
s classes de
e conception pour le ca
as d'utilisattion « reche
ercher
des ouvrrages ».
PPage 25 sur 25
2