Vous êtes sur la page 1sur 46

Etude de cas LIBENLI...

Page 1 sur 46

Etudes de cas

Etude de cas LIBENLIGNE


1 - Prsentation gnrale 2 - Site marchand 3 - La phase d initialisation ! - La phase d la"oration # itration n$1 % - La phase d la"oration # itration n$2

Version tlchargeable

1 - Prsentation gnrale
Introduction
Cette squence a pour objectif de prsenter l'tude de cas ainsi que la dmarche de dveloppement propose. L'objectif est d'utiliser la boite outils UML dans le conte te du dveloppement de sites marchands. !urant le droulement de l'tude de cas" nous vous invitons par des rfrences e plicites aller consulter si ncessaire certains lments du langage UML.

http://foad.u-picardie.fr... 11/01/2012

Etude de cas LIBENLI... Page 2 sur 46

#n rappelle que le processus unifi est un processus gnrique qui peut $tre adapt diffrents conte tes. %ous proposons ici de dcrire et d'utiliser sur une tude de cas une adaptation particuli&re. Cette adaptation peut $tre applique sur les probl&mes de dveloppement de sites 'eb marchands. #rganisation gnrale du processus de dveloppement #n adopte l'organisation gnrale du processus unifi dans laquelle() *. La dmarche est compose de quatre phases principales. la la la la phase phase phase phase d'initialisation d'laboration de construction de transition

+. Chaque phase comporte plusieurs itrations ,. Une itration comporte les activits suivantes la spcification de besoins l'anal-se la conception l'intgration les tests Chaque activit conduit dvelopper des artefacts .ou produits de conception/ qui sont incrments au fur et mesure des itrations. 0rocessus de dveloppement de sites marchands 0our traiter l'tude de cas" nous adoptons ce mod&le de processus gnrique auquel nous apportons les adaptations suivantes() 1 La phase d'initialisation est compose d'une seule itration

http://foad.u-picardie.fr... 11/01/2012

Etude de cas LIBENLI... Page 3 sur 46

produisant() La spcification des besoins() vision" mod&le des C.U." glossaire Le mod&le d'anal-se initial 1 La phase d'laboration est compose de deu itrations produisant() la spcification dtaille des besoins le mod&le d'anal-se affin le mod&le de conception initial et dtaill 1 La dfinition de strot-pes adapts au applications 'eb L'nonc de l'tude de cas est donne dans la section 2 3456 M78C97%!(:

2 - Site &archand

'(eloppement d un site d achat# le cas d une li"rairie en ligne


Ce document prsente l'tude cas traite selon le processus unifi. La prsentation de ce cas comporte() (la dfinition des besoins fonctionnels" c'est dire les fonctionnalits attendues par les usagers du site marchand (la dfinition des besoins non fonctionnels() performances"

http://foad.u-picardie.fr... 11/01/2012

Etude de cas LIBENLI... Page 4 sur 46

ergonomie (la dfinition des contraintes de conception Le su)et L'tude de cas traite du dveloppement d'un site ;eb marchand. %ous avons choisi l'e emple d'une librairie en ligne" e emple reprsentatif des applications de 61Commerce. L'tude cas est inspire de sites e istants() ;;;.e-rolles.com " ;;;.ama<on.fr " ;;;.fnac.com=. *")ecti+ du pro)et Le site de la 3ocit L4>6%L4 doit() fournir une information constante et personnalise sur les ouvrages .pri des livres" disponibilits" critiques" rsums" 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. 7 tout moment" le client peut modifier son panier d'achat en ajoutant ou en retirant des ouvrages. La commande est enregistre lorsque le client valide son panier d'achat. 0ermettre le paiement des commandes directement sur le 'eb. 0ermettre au usagers de consulter toutes leurs commandes et de suivre les livraisons Les e,igences +onctionnelles 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 mthodes de recherche() par titre" %?43>%" auteur=Les rsultats de la recherche doivent appara@tre sur une page particuli&re. L'internaute doit pouvoir aussi accder une

http://foad.u-picardie.fr... 11/01/2012

Etude de cas LIBENLI... Page 5 sur 46

classification thmatique" au nouveauts" au meilleures ventes. La consultation Chaque livre du catalogue doit pouvoir $tre prsent en dtail sur une page. Cette page doit contenir() ((((((((La page de garde du livre sous forme d'image ((((((((Le pri et la disponibilit ((((((((!es commentaires de lecteurs ((((((((La table des mati&res ((((((((Certains e traits de chapitres La slection Comme dans un magasin rel" l'internaute doit avoir la possibilit de dposer et d'enlever des ouvrages dans et de son panier virtuel. 4l doit aussi pouvoir indiquer des quantits souhaites .et aussi de les modifier/ avant de passer commande. La prise de commande 7 tout moment apr&s avoir rempli son panier" le client doit pouvoir accder au formulaire de commande dans lequel il saisit ses coordonnes et les informations ncessaires au paiement et la livraison. 0our garantir la scurit et la confidentialit des changes" il est impratif que l'envoi des donnes soit cr-pt. Le client peut s'il le souhaite obtenir une impression du devis pour commander par courrier ou par fa . Le client doit pouvoir ensuite suivre ses commandes rcentes en donnant son mot de passe. Les e,igences non +onctionnelles E,igences de -ualit 0our attirer de nouveau clients et pour fidliser des clients e istants il est important de respecter les e igences de qualit

http://foad.u-picardie.fr... 11/01/2012

Etude de cas LIBENLI... Page 6 sur 46

suivantes: Ergonomie sobre permettant des prsentations claires 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 guide du site doit tre propose aux nouveaux visiteurs. Exigences de performance e site de la !ocit "E#A#U$ % doit pouvoir grer les comptes de plus de &' ''' clients. e site doit supporter plus de & ''' connexions simultanes. e catalogue d'ouvrages doit pouvoir contenir plus de & ''' ''' ouvrages diffrents. (n consid)re *u'une rec+erc+e *ui prendrait plus de ,' secondes n'est pas satisfaisante. Les contraintes de conception Mise jour de la base de donnes Les ouvrages es informations relatives aux ouvrages prsents sur le site proviennent essentiellement de deux sources complmentaires. a premi)re contient tous les nouveaux ouvrages- la seconde contient toutes les mises .our de prix et de stoc/. "es deux sources sont priodi*uement utilises pour mettre .our les donnes de la base de donnes du site. 0outes les autres informations 1par exemple les commentaires de lecteur2 sont saisies manuellement l'aide d'une application ddie. Les clients et les commandes es donnes relatives aux clients et saisies partir des formulaires sont conserves ainsi *ue les caractristi*ues de leurs commandes. es clients doivent pouvoir consulter l'+istori*ue de

http://foad.u-picardie.fr... 11/01/2012

Etude de cas LIBENLI... Page 7 sur 46

leurs commandes. Gestion du panier e panier de l'internaute ne sera pas sauvegard dans la base. !a dure de vie n'exc)dera pas celle de la visite de l'internaute. Paiement scuris a saisie du numro de carte de crdit par le client doit s'effectuer de mani)re scurise- en cr3ptant le transfert +ttp via le protocole !! . a commande et le numro de carte sont stoc/s .us*u'au traitement de la commande. a ban*ue concerne validera la transaction. Apr)s la validation- le numro de la carte de crdit est supprim de la base de donnes.

3 - La phase d initialisation

!ntroduction
a plupart des pro.ets ncessite une courte p+ase initiale au cours de la*uelle il faut dfinir les fronti)res et les ob.ectifs du pro.et. 4ans cette s*uence d'enseignement- nous rappelons les ob.ectifs de la p+ase d'initialisation- nous dtaillons les activits d'une itration t3pe de cette p+ase et proposons un ensemble d'artefacts t3pes produits l'issu de cette p+ase. 5ous mettons en 6uvre une itration de cette p+ase sur l'tude cas.

"bjectifs de la phase d initialisation

http://foad.u-picardie.fr... 11/01/2012

Etude de cas LIBENLI... Page 8 sur 46

e but de la p+ase d'initialisation est d'tablir une vision initiale commune des ob.ectifs du pro.et- de dterminer si celui7ci est faisable et de dcider s'il mrite une tude approfondie en p+ase d'laboration. "ette p+ase utilise le mod)le des cas d'utilisation comme mo3en de comprendre et de dcrire les besoins. "et ob.ectif est ralis en prenant en compte les lments suivants: dfinir le contexte du s3st)me tablir une arc+itecture possible "ette p+ase utilise essentiellement les cas d'utilisation. Elle peut utiliser des t3pologies de besoins *ui aident l'identification et l'organisation des exigences fonctionnelles et non fonctionnelles des usagers. Elle ne fait pas appel 1ou tr)s peu2 des connaissances particuli)res en anal3se et conception orientes ob.et.

!tration t#pe de la phase d initialisation


Une itration t3pe de cette p+ase se concentre sur l'identification et l'tude des besoins. es autres activits 1Anal3se- conception- implantation et tests2 ncessitent moins de travail.

http://foad.u-picardie.fr... 11/01/2012

Etude de cas LIBENLI... Page 9 sur 46

Une itration t3pe de la p+ase d'initialisation L identification des besoins "ette tude consiste : 4finir une liste de besoins. "ette t8c+e peut utiliser des classifications existantes de besoins. Une classification simple est celle propose par le mod)le FU9#!:. "omprendre le contexte du s3st)me Exprimer les besoins fonctionnels sous forme de cas d'utilisation a2 %dentifier les acteurs et les cas d'utilisation b2 4finir un ordre de priorit des cas d'utilisation c2 4tailler les cas d'utilisation Exprimer les besoins non fonctionnels

http://foad.u-picardie.fr... 11/01/2012

Etude de cas LIBEN... Page 10 sur 46

Les principaux artefacts produits par l'anal3se des besoins sont une liste de besoins- un mod)le de domaine ou un mod)le de gestion- un mod)le des cas d'utilisation et des descriptions sous forme de cas d'utilisation de certains besoins particuliers. L anal#se 'anal3se dans la p+ase d'initialisation consiste dtailler les besoins et produire une premi)re version du mod)le d'anal3se 1;<2. 'anal3se dans cette p+ase consiste en: 'anal3se de l'arc+itecture a2 %dentifier les pa*uetages d'anal3se b2 %dentifier les classes entits principales c2 %dentifier des services communs: persistencedistribution et concurrence- gestion de transactions=. 'anal3se de cas d'utilisation a2 %dentifier les classes d'anal3se pour raliser un cas d'utilisation b2 4crire les interactions entre ob.ets des classes issues d'un cas d'utilisation Les principaux artfacts produits par l'anal3se dans cette p+ase sont: Un mod)le d'anal3se organis en pa*uetages d'anal3se 4es classes d'anal3se classes en classes entit- classes interface et classes de contr>le 4es ralisations de cas d'utilisation composes de diagrammes de classes et de diagrammes d'interaction

http://foad.u-picardie.fr... 11/01/2012

Etude de cas LIBEN... Page 11 sur 46

Une description sommaire de l'architecture La conception Dans cette phase la conception est rduite le plus souvent la production d'un modle de conception trs rduit. Il s'agit de fournir une architecture du point de vue de la conception. L'implantation La ralisation de cette activit est trs dpendante du projet. Elle peut conduire au dveloppement d'un protot pe de dmonstration. Le test En gnral dans cette phase l'activit de test n'est pas du tout mise en !uvre" m#me pas sur le protot pe $ui est en gnral utilis comme dmonstration et ne sera pas oprationnel. En rsum la phase d'initialisation produit les artfacts suivants% &ctivits de la phase d'initialisation Identification des 'esoins &rtfacts Liste de 'esoins Une liste initiale des ris$ues et des cas d'utilisation par priorit Un modle de domaine $ui dcrit le conte(te du s stme Une premire version de l'architecture du point de vue des cas d'utilisation &nal se Une premire version du modle d'anal se

http://foad.u-picardie.fr... 11/01/2012

Etude de cas LIBEN... Page 12 sur 46

Une premire version de l'architecture du point de vue anal se )onception Une premire version du modle de conception Une premire version de l'architecture du point de vue conception Implantation *rotot pe ventuel Une premire version de l'architecture du point de vue implantation +est

La phase d'initialisation dans le contexte de l'tude de cas


La simplicit du cas nous conduit au niveau de la phase d'initialisation aux rsultats suivants: En rsum la phase d'initialisation produit les artfacts suivants% Activits de la phase d'initialisation Identification des 'esoins Artfacts Liste de 'esoins Une liste initiale des acteurs et de leurs 'uts Une premire version du diagramme des cas d'utilisation Une liste des cas d'utilisation organise par priorit

http://foad.u-picardie.fr... 11/01/2012

Etude de cas LIBEN... Page 13 sur 46

Une premire version de l'architecture du point de vue des cas d'utilisation &nal se Une premire version du modle d'anal se avec les principau( o'jets du domaine

Enonc des besoins ,ous avons dans l'nonc de l'tude cas une liste initiale des 'esoins fonctionnels et non fonctionnels. Expression des besoins sous forme de cas d'utilisation ,ous allons nous centrer sur l'e(pression des 'esoins sous forme de cas d'utilisation. La dmarche de construction du modle de cas d'utilisation est% -. identifier les acteurs /. identifier et dcrire les cas d'utilisation 0. structurer les cas d'utilisation en pa$uetages 1. ajouter les relations entre cas d'utilisation Les acteurs Les acteurs humains pour le site 2e' de la 3ocit sont% l'Internaute% personne $ui visite le site" $ui fait des recherches d'ouvrage" $ui passe ventuellement des commandes et $ui peut consulter ses commandes Le service )lients% les emplo s $ui s'occupent des clients et du suivi des commandes des clients Le li'raire% les personnes $ui sont responsa'le du contenu

http://foad.u-picardie.fr... 11/01/2012

Etude de cas LIBEN... Page 14 sur 46

du site 4rfrencement d'un nouvel ouvrage" ajout d'une criti$ue sur un ouvrage5.. L'administrateur du site% les personnes $ui ont en charge le 'on fonctionnement du site et la maintenance Deu( s stmes servent alimenter la 'ase de donnes associe au site% l'un contient les nouveauts et le second est le s stme e(istant de gestion du stoc6. Identification des cas d'utilisation *our cha$ue acteur identifi prcdemment" on dfinit les diffrents 'uts $u'il cherche atteindre en utilisant le s stme. Les 'uts de l'internaute% 7echercher des ouvrages 3lectionner des ouvrages dans son panier 8'tenir un devis *asser une commande )onsulter ses commandes passes et en cours Les 'uts du li'raire % 9aintenir le catalogue 9aintenir les informations ditoriales Les 'uts de l'administrateur du site % 9aintenir le site Structuration des cas d'utilisation

http://foad.u-picardie.fr... 11/01/2012

Etude de cas LIBEN... Page 15 sur 46

*our les projets importants" il est usuel de faire un regroupement des cas d'utilisation. )e regroupement conduit le plus souvent un dcoupage fonctionnel du s stme. +rois t pes de critres sont usuellement utiliss pour faire ce regroupement% *ar domaine d'e(pertise mtier *ar acteur *ar lot de livraison dans le cadre du dveloppement itratif. Il s'agit de regrouper les ).U. $ui seront livrs ensem'le Le regroupement des cas d'utilisation est 'as sur la notion de pa$uetage 4: pac6age;. propos par le langage U9L. Dans l'tude de cas nous proposons le dcoupage suivant% as d'utilisation 7echercher des ouvrages <rer son panier *asser une commande 8'tenir un devis Acteurs Internaute Internaute Internaute" 3ervice )lients Internaute !ac"age )as d'utilisation de l'internaute

)onsulter les commandes en cours Internaute et passes 9aintenir le site =e' =e'master 9aintenir le catalogue 9aintenir les informations ditoriales Li'raire" gestion des stoc6s Li'raire )as d'utilisation des acteurs internes

Diagrammes des cas d'utilisation ,ous construisons deu( diagrammes" celui $ui montre les cas d'utilisation de l'acteur e(terne : internaute; et celui $ui montre

http://foad.u-picardie.fr... 11/01/2012

Etude de cas LIBEN... Page 16 sur 46

les cas d'utilisation des acteurs internes Libraire et Webmaster.

Commentaires: On diffrencie les acteurs externes (ici l'internaute) des acteurs internes (ici le service clients) L'utilisation de la flche sur le lien entre le cas d'utilisation asser une commande et l'acteur interne !ervices "lients

http://foad.u-picardie.fr... 11/01/2012

Etude de cas LIBEN... Page 17 sur 46

si#nifie $ue l'acteur ne fait $ue recevoir des messa#es du s%stme.

Commentaires: On diffrencie les acteurs humains des acteurs s%stmes La flche de navi#abilit indi$ue $ue l'acteur s%stme #estion des stoc&s ne fait $u'envo%er des informations sans 'amais en recevoir. Classement des cas d'utilisation par ordre de priorit et risque (l s'a#it d'tablir) d'une *art) des *riorits en terme de dvelo**ment et d'autre *art) des niveaux de ris$ue *our cha$ue cas d'utilisation. +ans ce contexte *articulier les niveaux de *riorit doivent ,tre tablis *ar le service mar&etin# et les

http://foad.u-picardie.fr... 11/01/2012

Etude de cas LIBEN... Page 18 sur 46

niveaux de ris$ue *ar les $ui*es techni$ues.

"as d'utilisation /echercher des ouvra#es 2rer son *anier asser ses commandes "onsulter ses commandes *asses et en cours Obtenir un devis 4aintenir le site 4aintenir le catalo#ue 4aintenir les informations ditoriales

/is$ue

riorit

(ncrment

mo%en

0aute

3as

0aute

lev

0aute

4o%en

3asse

3as

3asse

3as

4o%enne

lev

0aute

3as

4o%enne

Valider les diagrammes de cas d'utilisation Les $uestions cls - se *oser sont.

http://foad.u-picardie.fr... 11/01/2012

Etude de cas LIBEN... Page 19 sur 46

Les frontires du s%stme sont7elles bien dfinies 8 Les acteurs sont7ils tous *ris en com*te (au moins une fois) 8 "ha$ue cas d'utilisation a7t7il un *rocessus de dclenchement (*ar un acteur) 8 Le niveau d'abstraction des cas d'utilisation est7il homo#ne 8 9outes les fonctionnalits du s%stme sont7elles traites 8 Le modle d'analyse +ans la *hase d'laboration) le modle d'anal%se est un ensemble de classes du domaine avec des associations et des attributs. L'identification des classes *eut ,tre faite - *artir des cas d'utilisation. our cha$ue cas d'utilisation) on recherche les conce*ts du domaine $ui *artici*ent au cas d'utilisation. :ne *remire tude des cas d'utilisation conduit -. "once*ts utiliss *ar le cas d'utilisation /echercher des ouvra#es Livre, Auteur, Editeur "once*ts utiliss *ar le cas d'utilisation !lectionner des ouvra#es dans son *anier Panier, LignePanier "once*ts utiliss *our le cas d'utilisation asser une commande. :n *anier contient en #nral *lusieurs ouvra#es slectionns Commande, Client

http://foad.u-picardie.fr... 11/01/2012

Etude de cas LIBEN... Page 20 sur 46

"once*ts utiliss *our le cas d'utilisation 4aintenir le catalo#ue !me ; ce niveau du *rocessus) le modle d'anal%se contient les *rinci*aux conce*ts du domaine.

"e modle d'anal%se *eut ra*idement ,tre structur en deux *a$ueta#es) l'un contenant les conce*ts relatifs aux livres et l'autre contenant les conce*ts relatifs aux commandes. "ette structuration en deux *a$ueta#es conservent l'homo#nit ainsi $ue l'ind*endance.

Le passage " la p!ase d'la#oration


La *hase d'laboration) en #nral com*ose de *lusieurs

http://foad.u-picardie.fr... 11/01/2012

Etude de cas LIBEN... Page 21 sur 46

itrations va raffiner le modle des cas d'utilisation et le modle d'analyse, elle va aussi dmarrer le modle de conception.

4 - La phase d'laboration : premire itration

Introduction
L'laboration est un ensemble d'itrations dans lesquelles l'quipe se livre une tude srieuse, stabilise les besoins et commence l'implantation. L'laboration est souvent compose de trois ou quatre itrations. L'laboration n'est pas une phase de conception ni de dveloppement e haustif des modles. !u cours de cette phase, on ne construit pas de prototypes "etables# la conception et le code sont des fra$ments de qualit %sous&ensemble utilisable' du systme final. (ans cette unit d'ensei$nement, nous rappelons les ob"ectifs de la phase d'laboration, nous dtaillons les activits d'une itration type de cette phase et proposons un ensemble d'artefacts types produits l'issu de cette phase. )ous mettons en *uvre deu itrations de cette phase sur l'tude cas.

Objectifs de la phase d'laboration


Les ob"ectifs principau de la phase d'laboration sont l'e pression dtaille des besoins sous forme de cas d'utilisation et la dfinition d'un noyau d'architecture. +ette phase utilise lar$ement l'approche ob"et, comme outil de

http://foad.u-picardie.fr... 11/01/2012

Etude de cas LIBEN... Page 22 sur 46

modlisation du systme. L'ensemble des dia$rammes ,-L sont e ploits. Les modles de besoins, d'analyse et de conception sont raliss. L'architecture lo$icielle et l'architecture matrielle sont aussi labores. +ette phase peut .tre $uide au niveau de la conception par un ensemble de patterns d'aide la conception oriente ob"et.

Itration type de la phase d'initialisation


,ne itration type de cette phase se concentre sur l'identification et l'tude des besoins. Les autres activits %!nalyse, conception, implantation et tests' ncessitent moins de travail.

,ne itration type de la phase d'laboration L'expression des besoins +ette tude consiste complter l'identification des besoins et dtailler les cas d'utilisation trouvs dans la phase d'initialisation.

http://foad.u-picardie.fr... 11/01/2012

Etude de cas LIBEN... Page 23 sur 46

,suellement /01 des besoins sont identifis ce stade du dveloppement et une sous partie est compltement dtaille. L'e pression des besoins consiste # 2 +omplter et dtailler les cas d'utilisation 2 3aliser des prototypa$e des interfaces. +es prototypes doivent illustrer pour les utilisateurs la manire dont ils utiliseront le systme pour raliser les cas d'utilisation. 2 4tructurer le modle des cas d'utilisation

Les principau artefacts


Le modle des cas d'utilisation contenant les dia$rammes des cas d'utilisation, les dia$rammes de squences systme et la description te tuelle dtaille des cas d'utilisation est le principal rsultat de c'e pression des besoins. L'analyse L'analyse dans la phase d'laboration porte sur les classes. 5lles sont tudies d'un point de vue statique et d'un point de vue dynamique. L'analyse dans cette phase consiste en# L'analyse de l'architecture a' 6dentifier les paqueta$es d'analyse b' 6dentifier les classes entits principales c' 6dentifier des services communs# persistence, distribution et concurrence, $estion de transactions7. L'analyse de cas d'utilisation

http://foad.u-picardie.fr... 11/01/2012

Etude de cas LIBEN... Page 24 sur 46

a' 6dentifier les classes d'analyse pour raliser un cas d'utilisation b' (crire les interactions entre ob"ets des classes issues d'un cas d'utilisation L'analyse des classes a' (tailler les classes, b' 6nt$rer les proprits issues de l'tude de diffrents cas d'utilisation L'analyse des paqueta$es a' (finir les relations de dpendance entre les paqueta$es b' !ssurer la forte cohrence de chaque paqueta$e ainsi que le faible coupla$e entre les paqueta$es Les principaux artfacts produits par l'analyse dans cette phase sont# ,n modle d'analyse or$anis en paqueta$es d'analyse (es classes d'analyse classes en classes entit, classes interface et classes de contr8le (es ralisations de cas d'utilisation composes de dia$rammes de classes et de dia$rammes d'interaction La conception La conception consiste dfinir l'architecture lo$icielle et les classes de conception. La conception dans la phase d'laboration consiste # +oncevoir l'architecture

http://foad.u-picardie.fr... 11/01/2012

Etude de cas LIBEN... Page 25 sur 46

a' 6dentifier les couches de l'architecture lo$icielle b' 6dentifier les sous&systmes et leurs interfaces c' 6dentifier les classes de conception +oncevoir les cas d'utilisation a' +onstruire le dia$ramme des classes de conception b' (finir les interactions entre les classes de conception +oncevoir les classes a' (finir les attributs et les mthodes des classes de conception par itrations successives pour chaque cas d'utilisation b' 6nt$rer dans une unique classe de conception la dfinition des attributs et des mthodes +oncevoir les sous&systmes L'implantation (ans cette phase, l'architecture et une partie des classes sont implantes conformment au modle de dploiement. Le test 5n rsum la phase d'laboration produit les artfacts suivants# !ctivits de la phase d'initialisation 6dentification des besoins !rtfacts -odle des cas d'utilisation +haque cas d'utilisation est dtaill

http://foad.u-picardie.fr... 11/01/2012

Etude de cas LIBEN... Page 26 sur 46

Analyse

Le modle d'analyse ne premire version de l'architecture du point de vue analyse

!onception

"lusieurs versions du modle de conception obtenues # travers les diffrentes itrations Architecture lo$icielle %odle de dploiement

&mplantation

%odle d'implantation ne premire version de l'architecture du point de vue implantation

'est

"lanification des tests

La phase d'laboration dans le contexte de l'tude de cas


Dans cette squence nous prsentons les rsultats de la premire itration de la phase d'laboration. En rsum la premire itration de la phase d'laboration produit les artfacts suivants: Activits de la phase d'initialisation / Itration 1 &dentification des besoins Artfacts Le modle des cas d'utilisation avec pour la plupart des cas( la description te)tuelle dtaille( le dia$ramme de squence systme Le dia$rammes des classes d'analyse

Analyse

http://foad.u-picardie.fr... 11/01/2012

Etude de cas LIBEN... Page 27 sur 46

ne structuration des classes d'analyse en paqueta$es Les dia$rammes de squence systme

Identification des besoins *ous allons dtailler certains cas d'utilisation identifis dans la phase d'initialisation. *ous dtaillons un cas d'utilisation avec ses scnarios: un scnario nominal +le cas le plus frquent, et les scnarios d'e)tension +certains constituent des scnarios d'e)ceptions,. !haque scnario est compos d'tapes. ne tape est un messa$e de l'acteur vers le systme( une validation ou un chan$ement d'tat du systme ou encore un messa$e du systme vers un acteur. -n choisit de numroter chaque tape. La description dtaille des cas d'utilisation comporte des pr conditions et des post conditions.

Description te)tuelle du cas d'utilisation . %aintenir le catalo$ue/


Acteur principal : Le libraire Acteurs secondaires : la $estion des stoc0s Objectif : L'internaute doit pouvoir ra1outer de nouveau) ouvra$es et mettre # 1our la catalo$ue des ouvra$es prsents au) internautes Pr conditions: Le libraire a t authentifi &l e)iste une version du catalo$ue

http://foad.u-picardie.fr... 11/01/2012

Etude de cas LIBEN... Page 28 sur 46

Post conditions : La version n 2 3 du catalo$ue est oprationnelle cnario no!inal : 3. Le libraire dfinit les nouveau) ouvra$es 4. Le systme . $estion des stoc0s/ met # 1our les pri) et les quantits en stoc0 des ouvra$es 5. Le libraire valide la mise # 1our du catalo$ue "xtensions 4.a le systme dtecte un problme lors de la mise # 1our +scnario d'e)ception 6 Echec, 3 Le systme si$nale le dysfonctionnement au libraire 4. Le libraire annule la transaction de mise # 1our 5.a le libraire dtecte des erreurs dans les mises # 1our 3. Le libraire modifie les informations errones 4. Le libraire valide la mise # 1our du catalo$ue pcification particuli#re : Le catalo$ue est mis # 1our chaque soir.

Description te)tuelle du cas d'utilisation . passer une commande/


Acteur principal : L'internaute Objectif : A tout moment un internaute doit pouvoir saisir #

http://foad.u-picardie.fr... 11/01/2012

Etude de cas LIBEN... Page 29 sur 46

partir d'un formulaire une commande d'ouvra$e Pr conditions : Le panier de l'internaute n'est pas vide et il a accd au formulaire de saisie de sa commande Post conditions : ne commande a t enre$istre et transmise au service !lients cnario no!inal 3, L'internaute remplit le formulaire avec l'ensemble des informations ncessaires au paiement et # la livraison de la commande 7 !oordonnes de l'adresse de facturation 7 !oordonnes de l'adresse de livraison +si elle est diffrente, 7 Adresse lectronique et mot de passe pour pouvoir suivre sa commande 4, Le systme affiche le rcapitulatif de la commande 5, L'internaute valide la commande 8, Le systme transmets la commande valide au service !lients 9, Le systme confirme la commande # l'internaute "xtensions 3a. L'internaute est d1# client

http://foad.u-picardie.fr... 11/01/2012

Etude de cas LIBEN... Page 30 sur 46

7 l'internaute fournit son mot de passe 7 le systme affiche les coordonnes de facturation et de livraison et le cas d'utilisation continue # l'tape 4 du scnario nominal 3a. Le systme ne reconna:t pas le mot de passe( le systme demande # l'internaute de s'identifier # nouveau +retour en 3a.3, 5a. L'internaute annule sa commande 7 Le systme raffiche le panier et le cas d'utilisation est termin 3a. 4a L'internaute veut modifier les informations enre$istres 7 L'internaute fournit ses nouvelles coordonnes et valide 7 Le systme confirme la validation 7 Le systme revient au formulaire de commande et le cas d'utilisation continue # l'tape 4 du scnario nominal pcification particuli#re : &l est important de $arantir la scurit et la confidentialit des chan$es.

A vous de continuer: i% "crire le cas d'utilisation & rechercher des ouvra$es' ii% "crire le cas d'utilisation & $rer le panier'

Le dia$ra!!e des cas d'utilisation co!plt Lors de la description dtaille des cas d'utilisation( il est possible de dcouvrir de nouveau) cas d'utilisation et d'identifier des relations entre cas d'utilisation.

http://foad.u-picardie.fr... 11/01/2012

Etude de cas LIBEN... Page 31 sur 46

A ce stade du processus seul le diagramme des cas d'utilisation relatifs l'internaute a chang.

Commentaires: La recherche d'ouvrages peut aboutir mettre dans le panier des ouvrages, d'o la relation extend du cas d'utilisation grer son panier vers rechercher des ouvrages . A tout moment du remplissage du panier, l'internaute peut passer

http://foad.u-picardie.fr... 11/01/2012

Etude de cas LIBEN... Page 32 sur 46

sa commande, d'o la relation extend du cas d'utilisation passer une commande vers le cas d'utilisation grer son panier . Les diffrentes formes de recherche d'ouvrage peuvent !tre modlises par des relations de gnralisation, dans ce contexte, le cas d'utilisation rechercher des ouvrages est un cas d'utilisation abstrait. "i on souhaite autoriser au moment de la consultation la modification des commandes en cours #avant expdition$ on ra%oute un lien extend du cas d'utilisation &onsulter ses commandes passes et en cours vers le cas d'utilisation passer une commande . Les diagrammes de squence systme Les interactions gnres entre le s'st(me et les acteurs durant le droulement des diffrents scnarios peuvent !tre dcrites avec un diagramme de s)uence s'st(me #*""$. *ans ce diagramme sont reprsents les acteurs et le s'st(me, les seuls messages sont ceux changs entre les acteurs et le s'st(me. *ans un diagramme de s)uence s'st(me, le s'st(me est une boite noire . +n construit en gnral plusieurs *"", un pour cha)ue scnario reprsentatif #complexe$ de cha)ue cas d'utilisation. *"" du scnario nominal du cas d'utilisation effectuer une commande . &e scnario dcrit la prise de commande %us)u' la validation.

http://foad.u-picardie.fr... 11/01/2012

Etude de cas LIBEN... Page 33 sur 46

*"" du scnario nominal du cas d'utilisation maintenir le catalogue . &e scnario permet de mettre %our le catalogue avec les nouveaux ouvrages, les nouveaux prix et les nouvelles )uantits en stoc,.

http://foad.u-picardie.fr... 11/01/2012

Etude de cas LIBEN... Page 34 sur 46

A vous de continuer: i) Ecrire les DDS pour les scnarios du cas d'utilisation rec!erc!er des ouvrages" ii) Ecrire les DDS pour les scnarios du cas d'utilisation grer le panier"

Analyse *ans la phase d'initialisation, nous avons labor un premier mod(le d'anal'se centr sur les ob%ets du domaine. *ans cette premi(re itration de la phase d'laboration, nous allons raffiner ce mod(le.

http://foad.u-picardie.fr... 11/01/2012

Etude de cas LIBEN... Page 35 sur 46

-ous avions identifi deux pa)uetages de classes d'anal'se dans la phase d'initialisation. .ci nous construisons deux diagrammes de classes )ui dtaillent les classes d'anal'se. &i/dessous le diagramme des classes d'anal'se du pa)uetage Livre

A vous de continuer: Construire le diagramme des classes d'analyse du paquetage Commande"

-ous terminons cette premi(re itration de la phase d'laboration avec une structuration en pa)uetage des classes d'anal'se.

http://foad.u-p card e.fr... 11/01/2012

Etude de cas LIBEN... Page 36 sur 46

Le lien de navigabilit entre les deux paquetages indique une dpendance unidirectionnelle. La flche explicite le seul sens de navigation possible. Une autre reprsentation des paquetages peut tre fournie montrant les classes contenues dans chacun d'eux.

5 - La phase d'laboration : itration N2

Introduction

http://foad.u-picardie.fr... 11/01/2012

Etude de cas LIBEN... Page 37 sur 46

Durant cette deuxime itration, nous allons affiner le modle d'anal se et dmarrer le modle de conception. Les principaux artefacts construits sont donns dans le tableau suivant!" cti!its de la phase d'initialisation " Itration 2 )dentification des besoins *nal se Diagrammes des classes d'anal se avec les classes & dialogue!', les classes & contr+le!' et les classes & entits Diagrammes d'interaction pour les classes d'anal se ,onception Diagramme des classes de conception rt#acts

L'itration 2 de la phase d'initialisation dans le contexte de l'tude de cas


Enonc des besoins #ous supposons qu'$ ce stade du processus tous les cas d'utilisation ont t documents et dcrits avec des diagrammes de squence s stme. Modle d'analyse Dans cette itration, le modle d'anal se est dtaill avec toutes les classes d'anal se qui permettent de raliser les cas d'utilisation. #ous distinguons trois t pes de classes d'anal se!" % Les classes & dialogue!' qui supportent les interactions entre les acteurs et le s stme, (our ces classes, les attributs

http://foad.u-p card e.fr... 11/01/2012

Etude de cas LIBEN... Page 38 sur 46

sont en gnral des champs de saisie ou de rsultat et les oprations reprsentent des actions de l'utilisateur. % Les classes & contr+le!' qui supportent les traitements. ,es classes ne possdent en gnral que des oprations. ,es oprations expriment les rgles de gestion du domaine % Les classes & entits!' qui supportent la gestion des ob-ets mtier. ,es classes ont t pour la plupart identifies dans les itrations prcdentes. ,es classes possdent en gnral que des attributs, ils reprsentent des informations persistantes. )l est tout $ fait possible d'associer $ ces trois t pes de classe des strot pes avec des s mboles spcifiques. .uelques rgles sont $ la base de la construction du diagramme de classes!" % Les classes & dialogue!' ne peuvent tre relies qu'$ des classes & contr+le!' ou $ d'autres classes & dialogue!'. Les classes & entits!' ne peuvent tre relies qu'$ des classe & contr+le!' ou $ d'autres classes & entits!'. Les classes & contr+le!' ont accs $ toutes les classes. (our chaque cas d'utilisation, nous construisons / le diagramme des classes permettant de raliser le cas d'utilisation. ,ette construction exploite aussi les classes & entits!' pralablement identifies ainsi que d'ventuelles maquettes. / Le diagramme d'interaction permettant de raliser le cas d'utilisation. ,ette construction dtaille les diagrammes de squence s stme en & rempla0ant!' l'ob-et & s stme!' par les classes d'anal se identifies.

$ia%ra&&e de classes d'analyse

http://foad.u-p card e.fr... 11/01/2012

Etude de cas LIBEN... Page 39 sur 46

$ia%ra&&e de classes d'analyse pour le cas d'utilisation ' Maintenir le catalo%ue()

$ia%ra&&e de classes d'analyse pour le cas d'utilisation ' %rer le panier()

http://foad.u-p card e.fr... 11/01/2012

Etude de cas LIBEN... Page 40 sur 46

!ous de continuer(: i+ ,onstruire le dia%ra&&e des classes d'analyse pour le cas d'utilisation ' rechercher des ou!ra%es() ii+ ,onstruire le dia%ra&&e des classes d'analyse pour le cas d'utilisation ' passer une co&&ande()

$ia%ra&&es de s*uence
,haque diagramme de squence reprsente un ensemble d'ob-ets qui interagissent dans le contexte d'un scnario d'un cas d'utilisation. $ia%ra&&e de s*uence pour le scnario d'ou!erture d'un panier dans le cadre du cas d'utilisation ' %rer le panier()

http://foad.u-p card e.fr... 11/01/2012

Etude de cas LIBEN... Page 41 sur 46

A vous de continuer: i) Construire le diagramme de squence pour le scnario de recherche par le nom de l'auteur. L'internaute doit pouvoir naviguer dans la collection de livres restitus ii) Construire le diagramme de squence pour le scnario d'erreur dans lequel la recherche n'aboutit aucun rsultat de recherche par le nom de l'auteur. L'internaute doit pouvoir naviguer dans la collection de livres restitus iii) Construire le diagramme de squence pour le scnario qui consiste vider le panier dans le cadre du cas d'utilisation grer le panier .

http://foad.u-picardie.fr... 11/01/2012

Etude de cas LIBEN... Page 42 sur 46

iv) Construire le diagramme de squence pour le scnario qui consiste calculer le montant du panier dans le cadre du cas d'utilisation grer le panier . v) %our deu& diagrammes de squence de votre choi&' construire les diagrammes de collaboration quivalents.

!od"le de conception
A ce stade du processus, nous utilisons le modle des classes d'analyse obtenu que nous affinons en utilisant les diagrammes de squence. La construction des classes de conception peut conduire : a outer ou prciser les oprations dans les classes !pour cela on utilise les messages du diagramme de squence" a outer les types au# attributs et au# paramtres de retour des oprations affiner les relations entre classes: associations, na$igation, gnralisations ou dpendances. %'est au ni$eau des classes de conception que l'on fera la diffrence entre une association !lien durable" et une dpendance !lien temporaire". #ous donnons ci$dessous le diagramme des classes de conception pour le cas d'utilisation grer son panier . &our construire ce diagramme de classes, nous utilisons le diagramme des classes d'analyse du cas d'utilisation ' (rer son panier) ainsi que les diagrammes de squence des scnarios: ' d'ou$erture de panier), de recalcul du panier et de suppression de ligne.

http://foad.u-picardie.fr... 11/01/2012

Etude de cas LIBEN... Page 43 sur 46

A ce ni$eau une autre prcision peut *tre apporte sur les associations. +n effet la mt,ode ' A outerLigne) de la classe de contr-le ' &anier) doit rcuprer les proprits du li$re a$ant d'a outer la ligne au panier et de crer la ligne. .l e#iste donc une dpendance entre l'ob et de contr-le ' &anier) et un ob et ' Li$re). /e m*me parce que l'ob et panier re0oit en paramtre l'ob et li$re, il e#iste une dpendance entre l'ob et ' &anier) et l'ob et ' Li$re). (n donne ci$dessous le nouveau diagramme de squence ainsi que le diagramme de classes modi)i.

http://foad.u-picardie.fr... 11/01/2012

Etude de cas LIBEN... Page 44 sur 46

Le diagramme des classes de conception dtaill prend la )orme suivante:

http://foad.u-picardie.fr... 11/01/2012

Etude de cas LIBEN... Page 45 sur 46

A vous de continuer: i) Construire le diagramme des classes de conception pour le cas d'utilisation rechercher des ouvrages .

http://foad.u-picardie.fr... 11/01/2012

Etude de cas LIBEN... Page 46 sur 46

http://foad.u-picardie.fr... 11/01/2012