Sunteți pe pagina 1din 15

UNIVERSITATEA DE PETROL I GAZE PLOIETI

FACULTATEA DE TIINE ECONOMICE


SPECIALITATEA SBDA MASTERAT
ANUL I

REFERAT
MODELAREA SISTEMELOR INFORMATICE

2011

Modelarea cu UML a magazinul virtual Eurobike


I.
Descrierea aplicatiei
Scop
Se urmrete construirea unui magazin on-line de biciclete pe un site Web.
Enunul studiului de caz
Societatea comerciala EuroBike a decis s intre n rndul marilor firme de biciclete on-line,
deja funcionale pe site-uri Web precum www.dhsbike.ro, www.richbike.ro,www.firstbike.ro
etc. Obiectivul principal al viitorului site www.eurobike.ro este de a permite navigatorilor pe
Web de a cuta diferite tipuri de biciclete i anumite piese de biciclete, de a-i construi un co
virtual propriu i apoi de a-l putea comanda i plti direct pe Web.
Puncte de vedere asupra proiectului
A. Poziie
Scopul proiectului este de a ocupa o poziie n faa concurenilor generaliti, introducnd
rapid elemente de noutate. n acest scop, site-ul va trebui s fie evolutiv i performant.
B. Exigene funcionale
Site-ul www.eurobike.ro va trebui s regrupeze toate funcionalitile necesare cutarii,
descoperirii detaliate de biciclete, seleciei acestora i lansrii de comenzi on-line.
Cutarea
Prima etap, pentru persoana care navigheaz, const n a gsi, ct mai rapid posibil,
modelul de bicicleta sau anumite piese pe care le cauta n catalog. Este de preferat s se
furnizeze mai multe criterii de cautare. Persoana care navigheaz trebuie s poata alege un
criteriu: mrime roi, tip cadru, ghidon etc. sau mai multe criterii simultan. Ar fi de dorit ca
rezultatele cutarii s fie disponibile pe o pagin i s poat fi uor parcurse i reclasate.
Cutare rapid

Model

Rezultatul cutrii:
n modele corespund cutrii dumneavoastr ...
Rezultate 1 m din n
Clasamentul dup:
Tip biciclet Cadru Cauciuc Furc Ghidon

Serviciul Boom
Datorit lui Boom, primii prin e-mail
notificarea noilor modele de biciclete
E-mailul dumneavoastr

1: Prima biciclet prezentare detaliat


Tip biciclet, cadru, schimbtor
viteze, cauciucuri, sistem frnare,
Imaginea
a, furc, ax pedalier, ghidon
bicicletei
condiii livrare, pre
2: A doua biciclet prezentare detaliat
Tip biciclet, cadru, schimbtor
viteze, cauciucuri, sistem frnare,
Imaginea
a, furc, ax pedalier, ghidon
bicicletei
condiii livrare, pre

Fig.I-1.

Punei n co

Punei n co

Formular de interfa om-main IOM pentru cutarea rapid


2

Dac persoana n cauz nu are o idee precis despre ceea ce caut, trebuie sa i se ofere un
mijloc de a se plimba asa cum ar face-o daca s-ar afla ntr-un magazin de biciclete i ar
avea acces la o clasificare tematic, la o lista cu cele mai bune vanzari .a.m.d.
...............
Introducere

BMX
Copii
Modele noi

City

MTB Accesorii
Cele mai bune vnzri

Cutare rapid

Piese

Model

Fig.I-2. Ecranul IOM de cutare general

Descoperirea
Fiecare biciclet sau pies de biciclet vndut n cadrul site-ului trebuie s fie prezentat
n detaliu, punndu-se n eviden urmtoarele elemente:
- una sau mai multe imagini (pentru majoritatea bicicletelor) care s poata fi, eventual,
mrite;
- preul i disponibilitatea;
- comentarii ale clienilor;
- prezentare detaliat a modelului de biciclet.
Fia modelului
...........................................................................
Prezentarea detaliat a modelului
Imaginea
bicicletei

Selecia
Comentarii
........................
Alte modele
........................

Tip biciclet
Cadru
Schimbtor viteze
Cauciucuri
Sistem frnare
a
Furc
Ax pedalier
Ghidon
Condiii livrare
Pre

Fig. I-3

Punei n co
Recomandai acest model
unui prieten!

IOM - Fia detaliat a modelului

ntr-un veritabil magazin, clientul i alege articolele, unele dupa altele, le depune n coul
su, apoi merge la cas pentru a plti. Site-ul Web ncearc s reproduc aceast obinuin
de cumprare. Astfel, navigatorul i poate nregistra cumprturile ntr-un co virtual, avnd
3

apoi posibilitatea de a aduga, a terge sau a modifica cifra care exprim cantitatea, nainte de
a plti.
Comanda
n orice moment, clientul poate accesa formularul bonului de comand, n care i trece
coordonatele i informaiile necesare pentru plat i livrare. Pentru a garanta securitatea i
confidenialitatea, se impune ca trimiterea datelor s fie criptat. n cazul n care se dorete,
sistemul trebuie s fie capabil s emit un deviz, care s poate fi imprimat de client pentru a
comanda prin fax sau curier.
Clientul trebuie s i poat urmri comenzile, s le poat modifica nainte de a fi
expediate, ntr-o manier securizat.
C. Exigene nefuncionale
Exigenele nefuncionale se refer la calitate i la performan.
Exigene de calitate
S cumperi o biciclet pe Web, nu ar trebui s ia mult timp. n acest scop, trebuie:
- s existe o prezentare clar i intuitiv;
- formularul de comand s fie simplu;
- help-ul on-line s fie puternic. Clientul trebuie s poat consulta help-ul contextual n
orice moment i s navigheze pe paginile de help. Ar fi de dorit ca noilor vizitatori s li se
propun o vizit ghidat.
Exigene de performan
- magazinul trebuie s poat gestiona conturi de peste 10.000 de clieni;
- site-ul Web trebuie s suporte peste 1.000 de conexiuni simultan;
- catalogul s poat cuprinde peste 1.000.000 de titluri;
- cutarea nici unei biciclete sau piese de biciclete nu trebuie s consume mai mult de 30
de secunde.
D. Restricii de concepie
Actualizarea datelor de referin
Informaiile referitoare la bicicletele prezentate pe site provin, de regul, din dou surse
complementare:
- prima servete la alimentarea bazei de date cu toate produsele noi;
- cea de-a doua servete la actualizarea datelor referitoare la pre i starea stocului de
produse din catalog.
Sursele menionate vor fi ncrcate automat, periodic, n baza de date.
Orice alte informaii vor fi culese manual, cu ajutorul unei mici aplicaii intranet dedicate
mbogirii datelor referitoare la tipurile de biciclete.
Actualizarea din formularele site-ului
Datele culese din site-ul Web i nregistrate n baza de date descriu coordonatele clienilor
i caracteristicile comenzilor acestora.
Coordonatele clienilor sunt memorate. n prima faza, ele permit trimiterea pachetului
corespunztor comenzii. n faza a doua, acestea economisesc o nou colectare a datelor cu
prilejul unei noi comenzi.
Toate datele personale sunt protejate iar confidenialitatea lor este garantat.
Comenzile sunt nregistrate, apoi tratate ulterior de serviciul clieni. Clienii pot consulta
istoricul tututor comenzilor lor.

Coul
Coul navigatorului nu va fi salvat n baza de date. Durata sa de via nu va depi pe
aceea a vizitei utilizatorului.
Plata securizat
Culegerea numrului cartelei de credit a clientului trebuie s se efectueze securizat,
criptnd transferal HTTP prin intermediul protocolului SSL. Comanda i numrul cartelei de
credit sunt stocate n baza de date pana la preluarea comenzii. Banca n cauz va valida
tranzacia dup care, numrul cartelei de credit va fi suprimat de baza de date.
II.

Diagramele cazurilor de utilizare ale aplicaiei

a. Identificarea actorilor
Pentru site-ul www.eurobike.ro avem urmtorii actori umani:
- Vizitator: persoana care viziteaz site-ul;
- Web-master-ul: rolul angajailor care au n sarcin buna funcionare i ntreinerea siteului Web;
- serviciul clieni: rolul angajailor care se ocup cu urmrirea comenzilor-client;
- mecanicul: rolul angajailor responsabili de coninutul redacional al site-ului.
De asemenea avem n vedere:
- sistemul informatic Modele noi conectat la site-ul Web, care alimenteaz baza de date
cu toate produsele noi (biciclete i componente de biciclete);
- Gestiunea stocurilor, care servete la actualizarea datelor privind preul i stocul de
produse din catalog.
Aceste dou surse sunt ncrcate n baza de date n mod automat i periodic.
Ansamblul actorilor este prezentat n figura urmtoare:

Vizitatorul Web

Webmaster

Mecanic

Modele noi

Serviciul clieni

Gestiunea stocurilor

Fig. II-1. Actorii site-ului www.eurobike.ro


b. Identificarea cazurilor de utilizare
A. Vizitatorul
Exprimarea exigenelor funcionale a pus n eviden principalele cazuri de utilizare ale
vizitatorului: cutarea produselor, gestionarea coului i efectuarea comenzii.
5

Cutarea modelelor
<<extinde>>

Gestionarea coului
Vizitator

<<extinde>>

Serviciul Clieni
Efectuarea comenzii

Fig.II-2. Cazuri de utilizare pentru vizitator


B. Angajaii ntreprinderii
Angajaii ntreprinderii EuroBike, mecanicul de biciclete i webmasterul, au urmtoarele
sarcini:
- s ntrein catalogul, ceea ce face s intervin cele doua sisteme: Modele noi i
Gestiunea stocurilor;
- s ntrein informaiile editoriale;
- s ntrein site-ul.
ntreinerea catalogului
Gestiunea stocurilor

Mecanic

Webmasterul

Modele noi
ntreinerea informaiilor
editoriale

ntreinerea site-ului

Fig.II-3. Cazuri de utilizare pentru angajai

c. Relaiile dintre cazurile de utilizare


Cele trei cazuri de utilizare ale vizitatorului sunt legate n mod natural prin relaii de
extensie: cutarea se poate finaliza cu punerea unui model de biciclet n co iar gestiunea
coului poate da natere la o comand.
Diferitele posibiliti de cutare a lucrrilor pot fi modelate cu precizie printr-o relaie de
generalizare/specializare, aa cum este prezentat figura urmtoare:

Cutarea modelelor
Vizitator

Efectuarea unei cutri


rapide
Efectuarea unei
cutri detaliate

Efectuarea unei cutri


dup rubric editorial
Efectuarea unei
cutri tematice

Fig.II-4. Relaii de specializare ale cazului de utilizare Cutarea modelelor


Cutarea lucrrilor este un caz virtual (nu se realizeaz decat prin specializarile sale).
Cazurile de utilizare ale angajailor nu pun n eviden nici o relaie ntre ele. Pe lng cele
de mai sus, vizitatorul mai are urmtoarele cazuri de utilizare: consultarea comenzilor n curs
i consultarea help-ului on-line.
III.

Diagrama claselor conceptuale ale aplicaiei

a.
Cutarea modelelor
Orice model de biciclet are cadru, furca, ghidon, ax pedalier, cauciucuri, precum i alte
atribute pre, productor.

Produs
pre
termen de livrare
cantitate in stoc
1
descrie
1..*
Bicicleta
Tip biciclet
Cadru
Schimbtor viteze
Cauciucuri
Sistem frnare
a
Furc
Ax pedalier
Ghidon
pre

Productor

Fabricat de
1..*

1..*

nume
adres

Fig.III-1. Diagrama claselor conceptuale pentru Cutarea lucrrilor


b.

Gestionarea cosului

Pentru a reprezenta diagrama claselor conceptuale la gestionarea coului, trebuie avut n


vedere c un client poate alege mai multe exemplare de acelai tip de biciclet sau pies de
biciclet i astfel este nevoie de un cost total al coului. Acesta se calculeaz plecnd de la
preul produselor selectate ceea ce conduce la un atribut derivat : <</total>>.
Pentru a arta faptul c n co pot figura mai multe exemplare din acelai produs, am
adugat un concept intermediar numit LinieCo, care reprezint linii ale coului virtual ce
corespund fiecare unui model de biciclet dar care au un atribut numit cantitate.
Co
/total
1

Bicicleta

0..*
LinieCo
cantitate
/total

se refer la
1

0..*

Tip bicicleta
Cadru
Schimbator viteze
Sistem franare
Sa
cauciucuri
furca
Ghidon
pre

Fig.III-2 Diagrama claselor conceptuale pentru Gestiunea coului


c.
Efectuarea comenzii
Imediat ce un client are un produs n co, el poate face o comanda. Pentru aceasta el
trebuie s trimit datele sale personale i informaiile necesare efecturii plii.
O comand este asociat unui client i unui co. Un co nu d totdeauna natere unei
comenzi. Comanda este caracterizat prin data la care are loc comanda, modul de plat,
adresa livrrii, detalii despre livrare, cheltuieli despre transport i suma total de plat.
Clientul este caracterizat prin: nume, prenume, adres potal, adres e-mail.
Modul de plat privilegiat este card-ul bancar. Informaiile referitoare la card-ul bancar
sunt private.

d natere la
Co

0..1

Comanda
data
modPlata=CB
adresaLivr
dataLivr
cheltTransp
/suma

/total

/
suma=Co.total
+ cheltTransp

0..*
dorete o

Client
1

0..1

CardBancar
tip
numr
dataValiditate

nume
prenume
adresaPotal
email [0..1]

Fig.III-4 Diagrama claselor conceptuale pentru Efectuarea comenzii


d.

Consultarea comenzilor n curs

Aceasta se refer la posibilitatea clientului de a-i vizualiza propriile comenzi. Adugnd


un atribut suplimentar <<parola>> la clasa Client este securizat consultarea comenzilor n
curs pentru un anume client.

Comanda

Client
nume
prenume
adresaPotal
email [0..1]
parola

0..*
consult_comenzile_sale

data
modPlata=CB
adresaLivr
dataLivr
cheltTransp
/suma

Fig.III-5 Diagrama claselor conceptuale pentru Consultarea comenzilor n curs

e.
ntreinerea catalogului
Magazinul Eurobike a clasificat bicicletele pe mai multe raioane.
Catalog

1
1..*
Raion
nume

1..*

0..1
Clasificari
nume
0..*

1..*

1..*

Produs
pret
termen de livrare
cantitate in stoc
1
descrie
1..*
Bicicleta
Tip bicicleta
Cadru
Schimbator viteze
Cauciucuri
Sistem franare
Sa
Furca
Ax pedalier
Ghidon
pre

Fabricata de
1..*

Producator
1..*

nume
adresa

Fig.III-6 Diagrama claselor conceptuale pentru ntreinerea catalogului


f.
ntreinerea informaiilor editoriale
Informaiile editoriale nu sunt nc complet stabilite i depind de creativitatea angajailor.
Aceste informaii vor cuprinde de exemplu: reviste despre biciclete, diverse forumuri cu
discuii despre aceste produse, modelele nou-aprute prezentate pe prima pagin a site-ului.
g.
ntreinerea site-ului
Site-ul este un concept pur informatic. Acesta nu este un concept al domeniului.
h.
Consultarea help-ului on-line
Analog ca la ntreinerea site-ului
10

IV.

Scenariile i fisele-tip

A. Fia-tip a cazurilor de utilizare


a. ntreinerea catalogului
Actorul principal: mecanicul.
Actori secundari: cele dou sisteme Modele noi i Gestiunea stocurilor.
Obiective: mecanicul va putea controla actualizarea automat a catalogului cu modele de
biciclete prezentat pe site-ul Web.
Precondiii: mecanicul s-a autentificat pe intranet. Versiunea curent a catalogului este
accesibil.
Postcondiii: o nou versiune a catalogului este disponibil.
Scenariul nominal:
1. Sistemul Modele noi alimenteaz site-ul cu noile modele de biciclete.
2. Sistemul Gestiunea stocurilor actualizeaz datele referitoare la pre i starea stocului.
3. Mecanicul valideaz actualizarea catalogului.
Extensii:
a) sistemul detecteaz o disfuncionalitate de actualizare extern.
1. sistemul semnalizeaz mecanicului disfuncionalitatea.
2. mecanicul invalideaz actualizarea parial sau eronat i revine la versiunea
precedent a catalogului. El previne Webmasterul pentru ca acesta s demareze aciuni de
ntreinere. Cazul de utilizare ia sfrit.
b) mecanicul detecteaz erori sau incoerene printre noile informaii.
1. mecanicul modific toate informaiile eronate.
2. mecanicul valideaz actualizarea catalogului.
c) mecanicul vrea s adauge i alte informaii.
1. mecanicul execut cazul de utilizare ntreinerea informaiilor editoriale.
2. mecanicul valideaz actualizarea catalogului.
b. Cutarea produselor
Actorul principal: vizitatorul.
Obiective: vizitatorul vrea s gseasc cel mai rapid posibil un model cutat n ansamblul
catalogului. El dorete de asemenea s se poata plimba ca ntr-un adevarat magazin de
biciclete i s caute biciclete dupa diverse criterii.
Precondiii: catalogul este disponibil.
Postcondiii: vizitatorul a gasit modelul de bicicleta cutat sau un alt model care l
intereseaz. El a nregistrat modelul n coul su virtual.
Scenariu nominal:
1. vizitatorul lanseaz o cutare rapid, plecnd de la 1-2 cuvinte cheie: tip biciclet,
cadru, cauciucuri.
2. sistemul afieaz o pagin de rezultat. Bicicletele sunt clasate dupa model.
3. vizitatorul selecteaz o biciclet.
4. sistemul i prezint o fi detaliat cu bicicleta aleasa. Aceasta va conine:
- una sau mai multe imagini (pentru majoritatea bicicletelor);
- tipul bicicletei, cadru, sistem frnare, cauciucuri, a, ax pedalier, furc, ghidon;
- preul i disponibilitatea produsului;
- eventuale comentarii ale clienilor asupra respectivului model de biciclet.
5. vizitatorul pune produsul n coul su virtual.
11

Extensii:
1a. vizitatorul are o idee preconceput i prefer s se plimbe n raioanele mazgazinul
virtual. Pentru aceasta, sistemul i propune un ansamblu de pagini Web, precum : Modele
noi, Cele mai bune vnzari.
1. vizitatorul navigheaz n aceste pagini i se poate brana la etapa 3 a scenariului
nominal.
1b. vizitatorul alege s fac o cutare avansat.
1. vizitatorul accede un formular specializat care i permite s combine mai multe feluri
de cutari: dupa tipul bicicletei, dupa cadru, cauciucuri, furc etc.
2a. sistemul nu a gsit bicicleta cutat.
1. sistemul semnalizeaz eecul i propune vizitatorului o nou cutare. Cazul rencepe
de la etapa 1 a scenariului nominal.
2b. sistemul a gsit un numr mare de biciclete.
1. sistemul semnaleaz numrul vizitatorului i afieaz o prim pagin de rezultate. Alte
pagini sunt accesibile direct sau prin simbolurile <<urmator>> i <<precedent>>.
2. vizitatorul se plimb n aceste pagini i poate merge mai departe la etapa 3 a
scenariului nominal.
3a. vizitatorul nu este interesat de rezultat.
1. vizitatorul revine la etapa 1 a scenariului nominal, pentru a lansa o nou cutare.
2. vizitatorul abandoneaz cutarea. Cazul de utilizarea ia sfrit.
c. Gestiunea coului
Actorul principal: vizitatorul.
Obiective: atunci cand vizitatorul este interesat de un model de biciclet, el trebuie s aib
posibilitatea de a o nscrie ntr-un co virtual.
Precondiii: nu sunt.
Postcondiii: nu sunt.
Scenariu nominal:
1. vizitatorul nregistreaz bicicleta care il ntereseaz ntr-un co virtual.
2. vizitatorul cere accesul la coul su.
3. sistemul afieaz stare coului su.
4. vizitatorul valideaz coul su cernd Efectuarea comenzii.
Extensii:
3-4a. coul este gol.
1. sistemul afieaz un mesaj de eroare vizitatorului (Coul este gol) i i propune s
revin pentru a Cuta o biciclet.
4a. vizitatorul modific cantitatea unei linii de co sau o suprim.
1. vizitatorul revalideaz coul, cernd recalculare total.
2. sistemul actualizeaz totalul calculat al coului i cazul de utilizare se reia de la etapa
4 a scenariului nominal.
4b. vizitatorul efectueaz o nou Cutare de biciclete.
1. se reia etapa 1 a scenariului nominal.
4c. vizitatorul cere un deviz pentru a comanda prin curier.
1. sistemul furnizeaz un deviz imprimabil care se ataeaza facturii, recapitulnd
comanda i totalul de plat.
d. Efectuarea comenzii
Actorul principal: vizitatorul.
12

Obiective: n fiecare moment, vizitatorul trebuie s poat accesa formularul bon comand
n care s i poat tasta coordonatele precum i informaiile necesare plii i transportului.
Precondiii: coul vizitatorului nu este vid i acesta a avut acces la formularul de comand.
Postcondiii: o comand a fost nregistrat i transmis serviciului Comenzi.
Scenariul nominal:
1. vizitatorul tasteaz ansamblul informaiilor necesare plii i livrrii, adic:
- adresa de e-mail cu o parol pentru a putea urmri comenzile proprii;
- coordonatele adresei de facturare (nume, prenume, adresa postal complet, telefon);
- numrul cartelei de credit, cu tipul i data de validitate.
2. sistemul afieaz o recapitulare a comenzii, de exemplu <<comanda, adresa de
facturare, expedierea. Comanda ar trebui s ajung la dumneavoastr n 48-72 ore>>.
3. vizitatorul valideaz comanda.
4. sistemul trimite comand valid serviciului Clieni al magazinul EuroBike.
5. sistemul confirm luarea comenzii vizitatorului.
Extensii:
1a. vizitatorul este deja client.
1. vizitatorul se identific cu e-mailul i parola sa.
2. sistemul afieaza datele salvate referitoare la adresa de facturare i cazul de utilizare
continu cu etapa 2 a scenariului nominal.
3. sistemul nu recunoate clientul. Sistemul avertizeaz vizitatorul c e-mailul i parola
nu corespund celor ale unui client cunoscut i i propune s se identifice din nou.
1-3a. vizitatorul anuleaz comanda.
1. sistemul revine asupra afiajului coului i cazul de utilizare este terminat.
2a. vizitatorul este deja client i vrea s i modifice informaiile salvate.
1. sistemul afieaz datele salvate, privind contul acestuia.
2. vizitatorul modific unele informaii i salveaz.
3. sistemul confirm validarea.
4. vizitatorul revine asupra fiei de comand i cazul de utilizare continu cu etapa 2 a
scenariului nominal.

13

B. Diagramele de secven sistem


a. ntreinerea catalogului
:Eurobike.ro

:Modele noi

:Mecanic
lucrri noi
preul i starea stocului
actualAutoCatal ()
vers. de Catal. de validat
actualInfoEditoriale ()
valideazCatalog ()
noua versiune a Catalog

Vezi cazul de utilizare al


extensiei ntreinerea
informaiilor editoriale

Fig.IV-1 Diagrama de secven sistem pentru ntreinerea catalogului

b. Cutarea produselor

:EuroBike.ro
:Vizitator
cutareRapid (cuv.cheie)
sau

cutareAvansat ()
Extensie

lucrri gsite
selecionareProdus ()
fia detaliat
punenCo ()

Fig.IV-2 Diagrama de secven sistem a cutrii produselor


14

:Gestiunea
stocurilor

c. Gestionarea coului

:Vizitator

:EuroBike.ro

punenCo ()
punenCo ()

Vezi cazul de utilizare


Cutarea bicicletelor

acceseazCoul ()
coul n curs
modificCantitatea ()
suprimLinia()
recalculeazCoul()
co actualizat
comandCoul ()

Fig.IV-3 Diagrama de secven sistem pentru gestiunea coului


d. Efectuarea comenzii
:EuroBike.ro
:Vizitator

:Serviciul
Clieni

comandCoul ()
Vezi cazul de utilizare
Gestiunea coului

formularul de comand
tasteaz InfoComand()
recapitularea comenzii
valideazComanda ()

comanda validat

confirmarea comenzii

Fig.IV-4 Diagrama de secven sistem pentru efectuarea comenzii

15