Está en la página 1de 64

0niveisiuau Politcnica ue valencia

Escuela Tcnica Supeiioi ue Ingenieiia Infoimtica









Nemoiia uel pioyecto final ue caiieia:
BISEN0 E INPLENENTACI0N BE 0NA
TIENBA vIRT0AL









Alumno: Antonio Nacian Ruiz
Biiectoi: Seigio Saez Baiona
PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina 2 ue 64
INBICE
!" $%&'()*++,-%""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" .
/" 0123+,4,+5+,-% )3 '36*,1,&(1 """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" 7
/"!" $%&'()*++,-%"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" 7
/"!"!" 8'(2-1,&( """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" 7
/"!"/" 9:;,&( """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" 7
/"!"<" =34,%,+,(%31> 5+'-%,:(1 ? 5;'3@,5&*'51""""""""""""""""""""""""""""""""""""""""""""""""""" A
/"!"B" C343'3%+,51 """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" D
/"/" =31+',2+,-% E3%3'5F """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" D
/"/"!" 83'123+&,@5 3F 2'()*+&(""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" D
/"/"/ G*%+,(%31 )3F 2'()*+&("""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""!H
/"/"<" I5'5+&3'J1&,+51 )3F *1*5',("""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""!/
/"/"B" C31&',++,(%31 E3%3'5F31""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""!/
/"<" C36*3',:,3%&(1 3123+J4,+(1 """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""!<
/"<"!" C36*3',:,3%&(1 4*%+,(%5F31"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""!<
/"<"!"!" IF,3%&3 5%-%,:(""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""!<
/"<"!"/" IF,3%&3 '3E,1&'5)( """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""!.
/"<"!"<" 0:2F35)( )3 F5 K,3%)5 L,'&*5F """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""!.
/"<"/" C36*3',:,3%&(1 )3 ,%&3'45+31 3M&3'%(1 """""""""""""""""""""""""""""""""""""""""""""""""""!7
/"<"/"!" $%&3'45N )3 *1*5',(""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""!7
/"<"/"/" $%&3'45N O5')P5'3 """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""!7
/"<"/"<" $%&3'45N Q(4&P5'3"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""!A
/"<"/"B" $%&3'45+31 )3 +(:*%,+5+,(%31 """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""!A
/"<"< C36*3',:,3%&(1 )3 34,+,3%+,5""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""!A
/"<"B" R;F,E5+,(%31 )3 ),13S( """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""!D
/"<"B"!" 01&T%)5'31 +*:2F,)(1""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""!D
/"<"B"/" U,:,&5+,(%31 O5')P5'3 """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""/H
/"<"." V&',;*&(1"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""/H
/"<"."!" Q3E*',)5) """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""/H
/"<"."/" G5+,F,)5)31 )3 :5%&3%,:,3%&("""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""/!
/"<"W" R&'(1 '36*3',:,3%&(1 """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""/!
PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina S ue 64
/"<"W"!" X513 )3 )5&(1 """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""/!
<" V%TF,1,1 """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""//
<"!" =,5E'5:5 YZU """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""//
<"/" I51(1 )3 *1(""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""/B
<"<" =,5E'5:51 )3 13+*3%+,5"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""/B
B" =,13S( """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""/7
B"!" [,@3F )3 ,%&3'45N """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""/A
B"!"!" =,5E'5:51 )3 %5@3E5;,F,)5)"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""<H
B"!"!"!" Y1*5',( 5%-%,:(\%5@3E5;,F,)5)""""""""""""""""""""""""""""""""""""""""""""""""""""""""<H
B"!"!"/" 0:2F35)( )3 F5 K,3%)5 L,'&*5F """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""<D
B"/" [,@3F F-E,+("""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""<!
B"<" [,@3F )3 23'1,1&3%+,5"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""</
B"<"!" =,13S( 0%&,)5)]C3F5+,-%"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""</
B"<"/" =,13S( F-E,+("""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""<<
." $:2F3:3%&5+,-% 3 ,%&3E'5+,-%""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""<.
."!" K3+%(F(EJ51"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""<.
."/" O3''5:,3%&51"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""<7
."<" =3&5FF31 )3 F5 ,:2F3:3%&5+,-%"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""<D
."<"!" 83'4,F31 )3 *1*5',(""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""<D
."<"/" V*&3%&,+5+,-% )3 F(1 *1*5',(1""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""<D
W" 0@5F*5+,-% ? 2'*3;51""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""B!
W"!" 0@5F*5+,-%"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" B!
W"/" 8'*3;51"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""B!
W"/"!" L5F,)5+,-% ^OKZU ? IQQ""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""B/
W"/"/" I(:2'(;5+,-% )3 3%F5+31 '(&(1""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""B<
W"/"<" I(:2'(;5+,-% )3 '31(F*+,-% """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""BB
7" I(%+F*1,(%31""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""BW
X,(E'54J5""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""B7
V%3M( V" I51(1 )3 *1( """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""BA
V%3M( X" =31+',2+,-% )3 K3+%(F(EJ51"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""".W
X"!" ^OKZU"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""".W
PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina 4 ue 64
X"/" OKK8 ? F5 5'6*,&3+&*'5 IF,3%&3]Q3'@,)(' """""""""""""""""""""""""""""""""""""""""""""""""""""".7
X"<" 8O8""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""WH
X"B" IQQ _O(`51 )3 31&,F(a"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""W/
X"." Z5+ RQ ^""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""W<
X"W" V25+b3""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""WB
X"7" Z?QcU"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""WB


















PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina S ue 64
1. INTR0B0CCI0N
El Biseo y la Implementacion ue una Tienua viitual tiene como
iesultauo una aplicacion Web uesue la cual, una empiesa pueua
ampliai sus ventas meuiante el comeicio electionico ue maneia fcil,
ipiua y sencilla.
Be esta maneia, se facilita a los clientes la opcion ue iealizai sus
compias sin salii ue casa o simplemente, visualizai los aiticulos
uisponibles o consultai el estauo ue algn peuiuo iealizauo
anteiioimente.
Poi otia paite el peisonal autoiizauo (empleauos ue la tienua) poui
iealizai acciones como el mouificauo ue los peuiuos iealizauos
meuiante esta via, la inseicion ue nuevos items en la base ue uatos o la
coiieccion ue los uatos eiioneos que pueuan apaiecei en el iegistio ue
algn cliente.
"#$%&'(%#)*+
El motivo piincipal poi el cual he ueciuiuo implementai este Pioyecto
Final ue Caiieia ha siuo auentiaime en la meuiua ue lo posible en un
sectoi que esta caua vez mas en auge como es el uel comeicio
electionico, auems ue auquiiii los conocimientos necesaiios paia
piogiamai en un lenguaje oiientauo a paginas Web, que me peimita
sei mas competente a la hoia ue enfientaime al meicauo laboial una
vez finalizaua la caiieia.
En cuanto a la piogiamacion se iefieie, pese a habei hecho algn
tiabajo anteiioi en PBP pouiia ueciise que, es la piimeia vez que me
enfiento a una aplicacion ieal en este lenguaje, auems ue habei teniuo
la opoituniuau ue tiabajai con plantillas CSS que hasta el momento eia
algo totalmente uesconociuo paia mi. Poi ultimo, el habei cieauo la
base ue uatos en NySQL me ha peimitiuo mas conocei mas a fonuo el
funcionamiento ue este sistema ue gestion ue bases ue uatos
La mezcla ue las nociones que pieviamente tenia en estas tecnologias
comentauas anteiioimente y el motivacion poi ii apienuienuo caua
vez mas aceica ue las mismas, ha geneiauo a lo laigo ue touo el
pioyecto un inteis y una motivacion a caua paso que iba
uescubiienuo nuevas posibiliuaues y foimas ue tiabajo.


PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina 6 ue 64
,- .-')$*'/%*)$# $0()%(#
Tias ueciuii que la Tienua viitual iba a sei una Web ue aiticulos ue
iopa paia chico y echai un vistazo a las paginas Web ue iopa que
pouiiamos consiueiai mas impoitantes (giupo Inuitex , Pull & Beai,
Zaia, .) y ue una tienua que peisonalmente me gusta a mi
(Abeiciombie & Fitch, ue la cual he tomauo las imgenes que foimaian
la Tienua viitual), he tomauo la uecision que los coloies que foimain
la Tienua van a sei tonaliuaues fiias como son el giis y el azul.
Babienuo iealizauo un cuiso en Euinbuigh Napiei 0niveisity sobie
como inteiactan las nuevas tecnologias y su uiseo sobie el usuaiio y
conocienuo que un poital Web eficaz es un poital que centializa la
infoimacion y simplifica al mximo las taieas a iealizai poi el usuaiio,
he intentauo llevai al cabo uichos conocimientos cieanuo un inteifaz
agiauable al aspecto visual y evitanuo la infoimacion "extia" que
uesvie la atencion uel cliente y el motivo poi el cual ha entiauo en la
Tienua viitual.
uiacias a que la infoimacion en el fiame piincipal es infoimacion
flotante que vaiia uepenuienuo uel tamao ue la ventana uel usuaiio y
ue que los mens no tienen un tamao fijo sino que tambin uepenuen
uel tamao ue la ventana, hacen ue esta pagina una pagina compatible
con touos los navegauoies.
El tema ue la publiciuau en las paginas Web, no menos impoitante,
tampoco se ha uejauo ue lauo habienuo cieauo en la paite supeiioi
cential un espacio ueuicauo poi si en un futuio alguna empiesa
ueciuieia uaise a conocei a tiavs ue nuestia Tienua viitual meuiante
un Bannei.
Tambin he teniuo en cuenta el tamao ue las imgenes cieanuo en
lugai ue imgenes ue tamao gianue y fijo, otias mas pequeas que se
van iepitienuo a lo laigo ue la pagina uepenuienuo ue la infoimacion
que se est mostianuo en caua momento.





PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina 7 ue 64

2. ESPECIFICACI0N BE REQ0ISIT0S
2.1. Intiouuccion
2.1.1. Pioposito
El pioposito uel siguiente apaitauo va a consistii en la especificacion
ue iequeiimientos paia el poital Web ue la Tienua viitual. Esta
especificacion sei til paia establecei unos pieiiequisitos y una base
sobie la que empezai un tiabajo ue iealizacion, asi como una fuente ue
infoimacion paia cualquieia que uesee conocei mas aceica ue este
pioyecto.
2.1.2. Ambito
La Tienua viitual (en auelante simplemente "Tv") va a consistii en un
inteifaz Web uinmica que peimita poi una paite, a los clientes ue esta
empiesa a consultai el catalogo ue iopa caua tempoiaua asi como sus
ofeitas y noveuaues y, poi otia paite, al peisonal ue la tienua meuiante
una intianet, a gestionai la base ue uatos tanto paia la mouificacion ue
los aiticulos a mostiai en la Tv como paia la gestion ue los uatos ue los
clientes que pueuen acceuei a la misma.
Be esta maneia, cualquiei usuaiio poui manteneise infoimauo ue
touos los aiticulos uisponibles que ofiece la tienua caua tempoiaua.
Auems, paia aquellos usuaiios que asi lo ueseen, meuiante un iegistio
muy sencillo pouin iealizai sus compias uesue cual quiei teiminal
conectauo Inteinet sin la necesiuau ue uesplazaise fisicamente hasta la
Tv.
0tia ue las funciones que ofiece este inteifaz es la ue peimitii al
peisonal ue la Tv la gestion ue la base ue uatos ue la foima mas
sencilla posible. uiacias a un buscauoi, el empleauo pueue encontiai
ipiuamente al cliente sobie el cual uesee hacei mouificaciones.
Auems existe la posibiliuau ue inseitai aiticulos nuevos en la base ue
uatos.
Poi ultimo, mencionai tambin que una vez iealizauas las compias poi
los usuaiios, estos pouin visualizai en touo momento el estauo en el
cual se encuentian sus peuiuos. Estos estauos sein mouificauos poi el
peisonal ue la Tv uesue una ue las opciones ue su intianet.

PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina 8 ue 64
2.1.S. Befiniciones, acionimos y abieviatuias
12: Abieviatuia ue Tienua viitual
3*4: La Woilu Wiue Web (uel ingles, Telaiaa Nunuial), la Web o
WWW, es un sistema hipeitexto que funciona sobie Inteinet. Paia vei
la infoimacion se utiliza una aplicacion llamaua navegauoi Web paia
extiaei elementos ue infoimacion (llamauos "uocumentos" o "paginas
Web") ue los seiviuoies Web (o "sitios") y mostiailos en la pantalla uel
usuaiio.
3*4 5%)6/%(': Existen uos tipos ue pginas Web, ue conteniuo
esttico (BTNL) y ue conteniuo uinmico que se geneian a paitii ue lo
que el usuaiio intiouuce en un Web o foimulaiio y que utiliza el
seiviuoi paia constiuii una Web peisonalizaua que envia al cliente.
"789:: NySQL es el seiviuoi ue uatos ielacionales mas populai,
uesaiiollauo y piopoicionauo poi NySQL AB. NySQL AB es una
empiesa cuyo negocio consiste en piopoicionai seivicios en toino al
seiviuoi ue bases ue uatos NySQL. 0na ue las iazones paia el ipiuo
ciecimiento ue populaiiuau ue NySQL, es que se tiata ue un piouucto
0pen Souice, y poi tanto, va ue la mano con este movimiento.
;1":: Acionimo ingles ue Bypei Text Naikup Language (lenguaje ue
maicacion ue hipeitexto), es un lenguaje infoimtico uiseauo paia
estiuctuiai textos y piesentailos en foima ue hipeitexto, que es el
foimato estnuai ue las pginas Web.
<88: Las hojas ue estilo en cascaua (Cascauing Style Sheets, CSS) son un
lenguaje foimal ue oiuenauoi usauo paia uefinii la piesentacion ue un
uocumento estiuctuiauo esciito en BTNL o XNL (y poi extension
XBTNL). La WSC (Woilu Wiue Web Consoitium) es la encaigaua ue
foimulai la especificacion ue las hojas ue estilo que seivii ue estnuai
paia los agentes ue usuaiio o navegauoies.
=;1":: Es el lenguaje ue maicacion pensauo paia sustituii a BTNL
como estnuai paia las paginas Web. XBTNL es la veision XNL ue
BTNL, poi lo que tiene, bsicamente, las mismas funcionaliuaues, peio
cumple las especificaciones, mas estiictas, ue XNL. Su objetivo es
avanzai en el pioyecto uel Woilu Wiue Web Consoitium ue logiai una
Web semntica, uonue la infoimacion, y la foima ue piesentaila estn
claiamente sepaiauas.
PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina 9 ue 64
3><: El Woilu Wiue Web Consoitium (Consoicio ue la Web o Telaiaa
Nunuial), abieviauamente WSC, es una oiganizacion que piouuce
estnuaies paia la Telaiaa Nunuial o Woilu Wiue Web.
?;?: Acionimo ue "PBP: Bypeitext Piocessoi". Es un lenguaje ue
piogiamacion ue sciipts, concebiuo en el teicei tiimestie ue 1994 poi
Rasmus Leiuoif. Se utiliza piincipalmente paia la piogiamacion ue
uuIs paia paginas Web, uestaca poi su capaciuau ue sei embebiuo en
el couigo BTNL.
;11?: Es el piotocolo ue la Web (WWW), usauo en caua tiansaccion.
Las letias significan Bypei Text Tiansfei Piotocol, es uecii, piotocolo
ue tiansfeiencia hipeitexto.
@+A'B%#C<-%*)$*: Se llamai usuaiio o cliente a cualquiei peisona que
acceua al poital, ya sea un navegante anonimo o un cliente iegistiauo
en la base ue uatos ue la Tv.
,/.-*'5#: Se llamai empleauo a touo aquel que peitenezca o foime
paite ue la empiesa (Tv) y poi tanto tenga acceso autoiizauo a la
intianet.
2.1.4. Refeiencias
Las iefeiencias utilizauas paia la iealizai este pioyecto son las
siguientes
- IEEE Recommenueu Piactice foi Softwaie Requiiements
Specifications, IEEE Stu 8Su-1998.
- Foios uel Web: http:www.foiosuelweb.com
- Wikipeuia la enciclopeuia libie: http:es.wikipeuia.oig
- Nanual ue PBP: http:php.netinuex.php
- Especificaciones ue XBTNL 1.u http:www.wSc.oigTRxhtml1
- Especificaciones ue CSS 2.1: http:www.wSc.oigTRCSS21
- Namp: Nac, Apache, NySQL, PBP: http:www.mamp.info

2.2. Besciipcion geneial
2.2.1. Peispectiva uel piouucto
PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina 1u ue 64
El lenguaje utilizauo paia implementai la tienua viitual es PBP que
como bien hemos mencionauo antes, nos peimitii la cieacion ue una
pagina Web uinmica. Poi otia paite, el sistema ue gestion ue bases ue
uatos que contenui toua la infoimacion necesaiia paia sei mostiaua
en la pagina Web es NySQL.
0na vez ueciuiuo esto, necesitamos un seiviuoi Web que nos peimita
ejecutai el couigo en PBP a la vez que nos peimita acceuei a la base ue
uatos NySQL. El seiviuoi Web utilizauo es Apache.
Con touo esto y aauienuo que el sistema opeiativo utilizauo paia la
piogiamacion ue la Tv y la ejecucion ue su couigo es Nac 0S X,
usaiemos NANP paia la ejecucion ue la misma. NANP es el acionimo
ue Nac 0S X, Apache, NySQL y PBP. Esta platafoima Web ue couigo
abieito constiuiua paia Nac, es la solucion peifecta paia esta taiea ya
que es un "touo en uno".
Lo nico que nos falta ahoia paia pouei ejecutai la Tv e ii efectuanuo
piuebas paia coiiegii el couigo en caso que fueia necesaiio, es un
navegauoi Web o exploiauoi. Esta pagina ha siuo uiseaua paia que
no piesente cambio alguno iespecto ue un navegauoi a otio (Nozilla
Fiiefox, Inteinet Exploiei, Safaii, .).
La infoimacion que contiene la pagina, tambin est uiseaua ue
maneia que, con una iesolucion noimal o alta (a paitii ue 8uu x 6uu)
sea mostiaua toua la pagina sin la necesiuau ue que el usuaiio tenga
que uesplazaise ue aiiiba hacia abajo yo ue izquieiua a ueiecha salvo
cuanuo la iespuesta a una consulta a la base ue uatos sea tan extensa
que necesite mas espacio paia sei listaua.
El piotocolo utilizauo paia la tiansmision ue uatos entie ieues ue
computauoias es el piotocolo TCPIP. Auems, el piotocolo http sei
el que nos peimita el acceso a la pagina Web.

2.2.2. Funciones uel piouucto
Las funciones que va a iealizai la Tv son las siguientes:
- Consultas sobie la coleccion
Consulta segn categoiia.
Consulta ue los uetalles ue un aiticulo.
Consulta ue noveuaues.
PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina 11 ue 64
- Consulta uel caiiito.

- Nouificacion uel caiiito.
Aauii aiticulo al caiiito.
Eliminai aiticulo uel caiiito.
Nouificai cantiuau en el caiiito.

- Tiatamiento ue usuaiios.
Inseitai cliente en la base ue uatos.
Nouificai uatos uel cliente en la base ue uatos.
Nostiai infoimacion paia empleauos.

- Nouificacion ue la coleccion.
Inseitai aiticulo en la base ue uatos.

- 0peiaciones sobie los peuiuos.
Bsqueua ue peuiuos poi cliente.
Nouificacion uel estauo ue un peuiuo.
Inseitai peuiuo en la base ue uatos.

- Tiatamiento sobie usuaiios
Nostiai infoimacion ue los usuaiios.
Nostiai infoimacion ue los empleauos.
Inicio ue sesion como usuaiio empleauo autentificauo.


PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina 12 ue 64
2.2.S. Caiacteiisticas uel usuaiio.
vamos a sepaiai los usuaiios ue la Tv en ties giupos: cliente anonimo,
cliente iegistiauo y empleauo ue la Tv.
El cliente anonimo sei un usuaiio que simplemente uesee iealizai
consultas sobie el catalogo o los piecios y no se haya iegistiauo
touavia como cliente. Pese a no habeise iegistiauo, a este usuaiio se le
peimitii aauii aiticulos al caiiito paia que se vaya familiaiizanuo
con la pagina y se le facilite al mximo la taiea ue iealizai su compia.
0na vez ueciua iegistiaise como cliente iegistiauo, touos los aiticulos
aauiuos al caiiito pieviamente peimanecein ahi paia pouei finalizai
la compia uiiectamente.
El cliente iegistiauo es un usuaiio que anteiioimente ha intiouuciuo
sus uatos como cliente ue la Tv y ya cuenta con un couigo y una
contiasea paia iegistiaise. Este cliente vei su nombie en el cuauio
ue la izquieiua con la infoimacion actualizaua ue su caiiito. Auems
tenui la opcion ue visualizai sus peuiuos anteiioies y el estauo ue
estos. tambin, si asi lo uesea, poui finalizai su compia pasanuo poi
caja y iealizai asi el peuiuo ue los aiticulos seleccionauos.
El empleauo iegistiauo tenui acceso a la intianet ue la Tv paia
iealizai las opeiaciones y gestiones que esta facilita.

2.2.4. Restiicciones geneiales.
Como iestiiccion geneial, mencionai que la posibiliuau ue mouificai la
base ue uatos poi paite uel peisonal ue la Tv es una mouificacion ue
nivel bsico. Como nica mouificacion, el empleauo poui mouificai el
conteniuo ue la base ue uatos peio nunca su estiuctuia.
Esta mouificacion, en caso ue sei necesaiio, sei llevaua a cabo poi
paite uel auministiauoi ue la base ue uatos ya que, en caso ue
mouificaise la estiuctuia, se necesitai tambin una pequea
mouificacion en el softwaie ue la Tv.
0tia cosa a tenei en cuenta es la posibiliuau ue que haya una gian
afluencia ue usuaiios en la Tv al mismo tiempo. Este pioblema pouiia
causai una satuiacion uel seiviuoi asi como lentituu en el
funcionamiento ue la pagina. Estos pioblemas pouiian solucionaise
simplemente aumentanuo la potencia uel seiviuoi con nuevo
PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina 1S ue 64
haiuwaie, aplicanuo tcnicas ue tiabajo uistiibuiuo, o constiuyenuo
un clustei ue seiviuoies.
La velociuau uel ancho ue banua uel que uispone el seiviuoi tambin
pueue sei un pioblema a tenei en cuenta ya que, pueue conveitiise en
el piincipal cuello ue botella. Poi tanto, esta eleccion no uebe obviaise
como sencilla y iealizaise coiiectamente.
tambin uebe existii una politica ue seguiiuau auecuaua en toua la Tv.
Los accesos incoiiectos a paginas ue la Tv sin habeise iegistiauo es un
pioblema que hay que evitai. tambin tenuiemos en cuenta la
seguiiuau uentio uel seiviuoi instalanuo coitafuegos, antiviius,
cuentas ue usuaiio, peimisos, etc., auems ue iealizai copias ue
seguiiuau peiiouicamente.

2.S. Requeiimientos especificos
2.S.1. Requeiimientos funcionales
2.S.1.1. Cliente anonimo
<#)+A-$' +*DE) ('$*D#BF'G
Este tipo ue consulta consiste en una consulta SQL que ietoina touas
las uifeientes categoiias ue la base ue uatos. Estas categoiias
apaiecein en el submen ue la Tv uesue el cual, el cliente poui
seleccionai la que uesee y asi sein mostiauos touos y caua uno ue los
aiticulos peitenecientes a esa categoiia.
<#)+A-$' 5* -#+ 5*$'--*+ 5* A) 'B$%(A-#G
Con esta consulta, el cliente o usuaiio anonimo poui vei una
infoimacion mas uetallaua aceica uel aiticulo que uesee. Pinchanuo en
la fotogiafia uel aiticulo que se uesee, est accion uevolvei un numeio
ue iefeiencia meuiante el cual, una consulta SQL seleccionai touos los
uetalles uel aiticulo con esa iefeiencia y sein mostiauos.
<#)+A-$' 5* )#&*5'5*+G
A esta consulta se pueue acceuei meuiante uos vias. La piimeia es
uesue la pagina piincipal, una vez se abie la pagina ue inicio ue la Tv
apaiecen touos los aiticulos iefeienciauos en la base ue uatos como
noveuau (Noveuau = u). La segunua foima ue vei las noveuaues es
PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina 14 ue 64
pinchanuo en la pestaa Noveuaues uel men que iealiza la misma
opcion.
<#)+A-$' 5*- ('BB%$#G
El cliente poui consultai en touo momento y se encuentie uonue se
encuentie los aiticulos que ha seleccionauo paia sei compiauos. Besue
el maico situauo en la izquieiua ue la pagina en el que apaiece el
iesumen uel caiiito, pinchanuo en el boton "vei - Euitai", se acceuei
a la pantalla que muestia la tabla con touos los aiticulos aauiuos al
caiiito.
HI'5%B 'B$%(A-# '- ('BB%$#G
Cualquiei usuaiio que entie a la pagina poui aauii aiticulos en el
caiiito. Cuanuo se abie la pagina se ciea automticamente una vaiiable
sesion que sei la que contenui los aiticulos que el cliente uesee
auquiiii. Estos aiticulos se aauen simplemente uesue la pantalla ue
los uetalles uel piouucto pinchanuo en el boton "Aauii a caiiito".
,-%/%)'B 'B$%(A-# 5*- ('BB%$#G
Besue la pagina ue uetalles uel caiiito, el cliente pueue eliminai touos
los aiticulos que uesee. La tabla que muestia los aiticulos que hay en el
caiiito, uispone ue la columna "boiiai" con un checkbox paia caua
aiticulo. Seleccionanuo el que se uesee eliminai y hacienuo click sobie
el boton Actualizai, se eliminain touos los aiticulos maicauos
boiinuolos ue la vaiiable sesion.
"#5%J%('B (')$%5'5 *) *- ('BB%$#G
Be igual maneia que existe la columna boiiai en la tabla q muestia los
aiticulos uel caiiito, est la columna "cantiuau" que contiene un
textbox paia caua aiticulo inuicanuo el numeio ue uniuaues que se
uesea compiai. Inuepenuientemente ue la vaiiable sesion que contiene
los aiticulos, existe otia vaiiable con las cantiuaues que, en caso ue
queiei mouificaise, el cliente tenui que mouificai el numeio ue
cantiuau que uesea y pinchai sobie el boton Actualizai paia
mouificailas uefinitivamente.
K)+*B$'B (-%*)$* *) -' 4'+* 5* 5'$#+G
Esta funcion la tenui que iealizai touo usuaiio que uesee iealizai una
compia en la Tv y no la haya iealizauo pieviamente. Neuiante un
foimulaiio sencillo, el cliente no iegistiauo iellenai touos los campos
necesaiios con sus uatos peisonales. 0na vez cumplimentauo este
PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina 1S ue 64
paso, pinchai el boton Enviai uatos que geneiai una consulta inseit
en SQL que inseitai los uatos uel cliente en la tabla clientes ue la base
ue uatos. En caso ue uejaise algn campo poi iellenai, el sistema
geneiai un eiioi visual paia el cliente que tenui que iellenailo ue
nuevo.
2.S.1.2. Cliente iegistiauo
Cualquieia ue las funciones mencionauas anteiioimente paia clientes
anonimos, tambin pouin sei iealizauas poi clientes iegistiauos.
K)+*B$'B .*5%5# *) -' 4'+* 5* 5'$#+G
0na vez finalizaua la compia poi paite uel cliente, siempie y cuanuo se
haya iegistiauo, poui finalizai su peuiuo pasanuo poi caja. Esta
opcion geneia un insteit en la base ue uatos que intiouuce los uatos en
uos tablas ue la base ue uatos. Poi una paite se intiouuce en la tabla
peuiuos el peuiuo con el couigo uel cliente, el estauo y la fecha. Poi otia
paite otio inseit en SQL intiouuce el peuiuo uetallauo con caua
aiticulo y cantiuau en la tabla uetallepeuiuos. La columna peuiuo ue
esta tabla apunta a la columna peuiuo ue la tabla peuiuos.
"#+$B'B %)J#B/'(%L) 5* -#+ A+A'B%#+G
Touo usuaiio que se encuentie iegistiauo en la Tv vei su nombie en
el maico izquieiuo con toua la infoimacion actualizaua uel caiiito.
Auems, peimite la opcion ue uesconectaise en touo momento.
K)%(%# 5* +*+%L) (#/# A+A'B%# 'A$*)$%J%('5#G
Touo usuaiio que pieviamente se haya iegistiauo en la Tv, poui
iuentificaise intiouucienuo su uni y su contiasea. Esta funcion ciea
una vaiiable sesion (uni) que sei la que inuique que ese usuaiio est
autentificauo. Como hemos mencionauo en el punto anteiioi, tambin
poui uesconectaise meuiante la opcion uesconectai. Esta opcion
elimina la vaiiable sesion uni.
"#+$B'B %)J#B/'(%L) 5* -#+ A+A'B%#+G
0na vez iegistiauo el usuaiio, este tenui la opcion ue visualizai touos
los peuiuos iealizauos anteiioimente asi como el estauo en el que
estos se encuentian. El empleauo ue la Tv sei el encaigauo ue
actualizai este estauo.
2.S.1.S. Empleauo ue la Tv
"#5%J%('B 5'$#+ 5*- (-%*)$* *) -' 4'+* 5* 5'$#+G
PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina 16 ue 64
0n sencillo upuate en SQL peimite a los empleauos ue la Tv mouificai
los uatos ue cualquiei cliente. Tias sei mostiauos en textboxes los
uatos actuales que existen en la base ue uatos, el empleauo poui
mouificailos como asi se haya inuicauo. Paia finalizai esta funcion,
uebei pulsai el boton enviai uatos que ejecutai esta consulta y
mouificai los uatos.
"#+$B'B %)J#B/'(%L) .'B' */.-*'5#+G
0no ue los piivilegios ue los que uisponen los empleauos es el ue tenei
acceso a la intianet ue la Tv. Cuanuo el empleauo uesee acceuei a esta
intianet, uebei intiouucii su uni y su contiasea. El sistema
compiobai que esos uatos se encuentian en la tabla empleauos ue la
base ue uatos. En caso afiimativo, peimitii la entiaua uel empleauo a
uicho espacio.
K)+*B$'B 'B$%(A-# *) -' 4'+* 5* 5'$#+G
0n sencillo foimulaiio peimite a los empleauos iegistiauos en la Tv
uentio ue su intianet agiegai nuevos aiticulos en la base ue uatos.
Auems el empleauo poui subii la imagen ue uicho aiticulo que sei
guaiuaua en la caipeta coiiesponuiente. 0n inseit guaiuai toua esta
infoimacion en una tupla ue la tabla stock en la base ue uatos.
ME+NA*5' 5* .*5%5#+ .#B (-%*)$*G
Bentio ue la opcion que peimite cambiai el estauo ue los peuiuo, existe
un buscauoi paia facilitai esta opcion al empleauo. 0na consulta select
en SQL buscai el peuiuo en cuestion lo mostiai en el listauo infeiioi.
El empleauo poui buscailo uiiectamente en el listauo o filtiailo
meuiante este buscauoi.
"#5%J%('(%L) 5*- *+$'5# 5* A) .*5%5#G
Touos los peuiuos iealizauos poi clientes en la Tv uisponen ue un
couigo ue estauo (Realiznuose, Enviauo, EntiegauoFinalizauo).
Bacienuo uso uel buscauoi mencionauo en el punto anteiioi, el
empleauo seleccionai el peuiuo que uesee o los peuiuos que uesee en
el caso ue que se vaya a iealizai un envio con vaiios peuiuos. Tias
mouificai los textboxes que apaiecen en la columna estauo ue caua
peuiuo y pulsai el boton actualizai, se mouificain en la base ue uatos
los estauos ue los peuiuos que el empleauo haya mouificauo.
"#+$B'B %)J#B/'(%L) 5* -#+ */.-*'5#+G
PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina 17 ue 64
Igual que ocuiiia con los clientes, el empleauo iegistiauo en la Tv
poui vei su nombie en el maico que existe a la izquieiua ue la Tv en
touo momento.
K)%(%# 5* +*+%L) (#/# */.-*'5# 'A$*)$%J%('5#G
Touo empleauo que uesee acceuei a la intianet uebei intiouucii su
uni y su contiasea. Esta funcion cieai una vaiiable sesion
(empleauo) que sei la que contiole en touo momento que el
empleauo est iegistiauo y se le peimite el acceso a la intianet.

2.S.2. Requeiimientos ue inteifaces exteinos
2.S.2.1. Inteifaz uel usuaiio
Puesto que la Tv es una tienua online, el acceso a la misma se iealiza
atiavs ue Inteinet. Paia pouei sei mostiauo este inteifaz Web uel
poital es necesaiio un navegauoi Web que peimita al usuaiio
conectaise con el seiviuoi. El uiseo ue esta Web sei paia touos los
usuaiios el mismo y uebeiia sei tambin el mismo paia touos los
navegauoies ya que el couigo fuente ue la misma se cie a los
estnuaies estableciuos poi el WSC.
Bentio ue un uiseo que se mantenui paia touas las funciones que la
Tv peimite, se iealizain touas las consultas poi paite uel usuaiio, ya
sea cliente o empleauo. La nica paite ue la Web que se ii
mouificanuo sei el cuauio geneial en el que uepenuienuo ue la
infoimacion a mostiai tenui un aspecto u otio. El iesto se no sufiii
mouificacion alguna.
2.S.2.2. Inteifaz Baiuwaie
Paia acceuei a la Tv los usuaiios nicamente necesitain un
oiuenauoi uesue el cual, meuiante una inteifaz ue ieu (Etheinet,
mouem ABLS, etc.) tengan acceso a la ieu ue Inteinet.
Este computauoi pueue estai basauo en cualquiei aiquitectuia peio
uebei uisponei al menos ue un piocesauoi con capaciuau suficiente
paia ejecutai un navegauoi Web moueino. Auems sei necesaiio que
uisponga ue un inteifaz giafico, taijeta ue viueo y monitoi, con una
iesolucion minima ue 8uuX6uu.

PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina 18 ue 64
2.S.2.S. Inteifaz Softwaie
Cualquiei usuaiio que uesee conectaise a la Tv no necesitai ningn
sistema opeiativo en concieto paia pouei acceuei a ella. nicamente
bastai con un navegauoi moueino paia pouei visualizaila.
Poi otia paite, el seiviuoi que hospeue la aplicacion estai basauo en
Apache con PBP y NySQL, uisponibles paia uiveisos opeiativos: Linux,
Winuows, Nacintosh, etc. Poi lo que se poui utilizai cualquieia ue
estos. En este caso se utilizai Nac 0S X.
2.S.2.4. Inteifaces ue comunicaciones
Existen uos tipos ue conexion entie los clientes y el seiviuoi ue la Tv.
Los usuaiios o clientes se conectain a la Tv meuiante Inteinet. Esta
conexion la iealizaian uesue su casa o uesue cualquiei otio lugai con
acceso a Inteinet peio en cualquiei caso, uesue fueia ue la ieu local.
Los empleauos, en cambio, auems ue tenei acceso al igual que los
clientes uesue su hogai a tiavs ue Inteinet, tambin pouin
conectaise a tiavs ue la ieu inteina ue la Tv.
Cabe mencionai que en cualquieia ue los uos casos mencionauos
anteiioimente el mecanismo ue comunicacion sei el mismo. Los
clientes y el poital tenuin conexiones TCPIP y el piotocolo paia
comunicai a los navegauoies con el seiviuoi Web sei el BTTP.
2.S.S. Requeiimientos ue eficiencia
Puesto que el fin ue esta Tv es la venta ue aiticulos, se pietenue esta
tenga un acceso simultaneo ue vaiios clientes al mismo tiempo. El
seiviuoi Apache en el que se alojai la Tv tiene que sei capaz ue
piopoicionai un acceso concuiiente a un numeio consiueiable ue
clientes. Besue el piopio Apache se poui configuiai este
compoitamiento asi como el numeio mximo ue conexiones
simultaneas que ueseamos. El ienuimiento ue la Tv pouiia veise
afectauo uiiectamente poi el numeio ue clientes que se encuentien
conectauos al mismo tiempo.
Poi este motivo se uesea aseguiai un acceso optimo en conuiciones ue
caiga uel seiviuoi noimales.



PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina 19 ue 64
2.S.4. 0bligaciones ue uiseo
2.S.4.1. Estnuaies cumpliuos
La Tv ha siuo uiseaua siguienuo el estnuai estableciuo poi el Woilu
Wiue Web Consoitium (WSC). El WSC piouuce iecomenuaciones paia
el uiseo y uesaiiollo ue paginas Web, en este caso XBTNL y CSS.
Las piincipales ventajas uel XBTNL sobie otios foimatos son:
Compatibiliuau paicial con navegauoies antiguos: la infoimacion
se visualiza, aunque sin foimato.
0n mismo uocumento pueue auoptai uiseos iauicalmente
uistintos en uifeientes apaiatos, puuienuo incluso escogeise
entie vaiios uiseos paia un mismo meuio.
Faciliuau ue euicion uiiecta uel couigo y ue mantenimiento.
Foimato abieito, compatible con los nuevos estnuaies que
actualmente est uesaiiollanuo el WSC como iecomenuacion
paia futuios agentes ue usuaiio o navegauoies.
Los uocumentos esciitos confoime a XBTNL 1.u pueuen
potencialmente piesentai mejoi ienuimiento en las actuales
heiiamientas Web que aquellos esciitos confoime a BTNL.
Poi otia paite, las hojas ue estilo en cascaua (CSS) nos peimiten
sepaiai la estiuctuia ue la Tv ue su piesentacion. Esta infoimacion la
sepaiaiemos uel couigo XBTNL en un aichivo (estilo.css) apaite.
Las ventajas ue utilizai CSS son:
Contiol centializauo ue la piesentacion ue un sitio Web
completo con lo que se agiliza ue foima consiueiable la
actualizacion uel mismo.
Los navegauoies peimiten a los usuaiios especificai su piopia
hoja ue estilo local que sei aplicaua a un sitio Web, con lo que
aumenta consiueiablemente la accesibiliuau. Poi ejemplo,
peisonas con ueficiencias visuales pueuen configuiai su piopia
hoja ue estilo paia aumentai el tamao uel texto o iemaicai ms
los enlaces.
0na pgina pueue uisponei ue uifeientes hojas ue estilo segn el
uispositivo que la muestie o incluso a eleccion uel usuaiio. Poi
PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina 2u ue 64
ejemplo, paia sei impiesa, mostiaua en un uispositivo movil, o
sei "leiua" poi un sintetizauoi ue voz.
El uocumento BTNL en si mismo es ms claio ue entenuei y se
consigue ieuucii consiueiablemente su tamao.
2.S.4.2. Limitaciones Baiuwaie
Paia pouei ejecutai la Tv bastaiia con un sistema que al menos
contaia con un piocesauoi Intel Pentium Iv y 2S6 NB ue memoiia
RAN. Besue este tipo ue sistema hacia uelante pouiia seiviinos como
seiviuoi peio, como hemos comentauo anteiioimente, queiemos que
este seiviuoi peimita el acceso simultaneo a mltiples clientes sin
pioblema alguno. Paia su implantacion final se utilizai un seiviuoi
con un piocesauoi Intel Coie 2 Buo con al menos 1 uB ue Nemoiia
RAN.
Auems uel motoi ue este seiviuoi, el nico iequisito mas
impiescinuible paia este sistema sei una contiolauoia ue ieu que nos
peimita la conexion con Inteinet y poi supuesto, una conexion
auecuaua.
El iesto uel haiuwaie no piecisai ue una configuiacion especial poi lo
que se ponui el que mas se ajuste al piesupuesto.

2.S.S. Atiibutos
2.S.S.1. Seguiiuau
En piimei lugai, ningn usuaiio poui acceuei a ninguna pagina ue la
Tv sin habei pasauo poi el inuex o sin habeise iegistiauo en las
paginas en las que asi se necesite. Cuanuo un usuaiio entia poi
piimeia vez en la Tv se ciean las vaiiables necesaiias paia pouei
avanzai uentio ue la pagina poi lo que un acceso uiiecto a otia no sei
peimitiuo. Si un usuaiio quisieia entiai uentio ue la intianet ponienuo
la uiieccion en la baiia ue uiiecciones se le uenegai el acceso.
En segunuo lugai, como en cualquiei empiesa, la infoimacion es
piivilegiaua y poi lo tanto uebe almacenaise ue una foima seguia. La
infoimacion ue los clientes se guaiuai en la base ue uatos y las
contiaseas ue estos tenuin un foimato cifiauo. El paso en los que el
usuaiio intiouuce la contiasea en la Tv tambin se encuentia cifiauo.
Be esta foima se ha intentauo ieuucii los iiesgos al minimo.
PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina 21 ue 64
2.S.S.2. Faciliuaues ue mantenimiento
La sencillez en el manejo ue la Tv peimitii a los piopios empleauos ue
la tienua a llevai un mantenimiento bsico ue la Web; gestion ue
usuaiios, mouificacion uel stock, etc .
Sin embaigo, la mouificacion en el uiseo ue la Web o cualquiei
mouificacion en la estiuctuia ue la base ue uatos tenui que sei
llevaua a cabo poi el auministiauoi uel poital.

2.S.6. 0tios iequeiimientos.
2.S.6.1. Base ue uatos
La Tv utilizai una base ue uatos en NySQL, la cual almacenai toua la
infoimacion iefeiente al catalogo, a los usuaiios, y toua la infoimacion
ue los peuiuos efectuauos poi los clientes.
Las consultas a la base ue uatos se iealizain poi paite uel seiviuoi
Web meuiante PBP y su API ue acceso a bases ue uatos NySQL.














PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina 22 ue 64
S. ANALISIS
S.1. Biagiama 0NL
Paia entenuei mejoi touas las funciones que se pueuen iealizai con
esta tienua viitual y los elementos y objetos ue los cuales est
compuesta se han iealizauo los uiagiamas 0NL. A continuacion se
uetallan bievemente las caiacteiisticas ue la aplicacion en base a este
uiagiama.
La Tienua viitual como bien inuica su nombie es la aplicacion en si,
entoino a la cual se iealizan la mayoiia ue funciones. El Empleauo y el
0suaiio sein las clases que inteiacten con este a tiavs uel Stock.
Stock es una clase que contiene touos los elementos ue los que se
compone la Tienua viitual. Contiene un numeio inuefiniuo ue
piouuctos que son los que foiman la clase Stock. Touas las consultas
iealizauas poi el 0suaiio se hain a esta clase.
El 0suaiio sei el que lleve a cabo touas las funciones ue bsqueua
sobie el Stock. Existen uos tipos ue 0suaiio; anonimo y iegistiauo. En
base a este tipo se peimitiin cieitos piivilegios uentio ue la aplicacion
como poi ejemplo la iealizacion ue Peuiuos.
La accion ue iealizai Peuiuo solo sei peimitiua paia el 0suaiio
iegistiauo. A su vez, se cieai un Betallepeuiuo que contenui toua la
infoimacion aceica uel Peuiuo iealizauo poi el 0suaiio.
El Empleauo uisponui ue otio tipo ue piivilegios y autoiiuaues sobie
los 0suaiios, Peuiuos y Stock. Be esta maneia sei capaz ue inseitai un
nuevo elemento uentio uel Stock, mouificai el estauo ue un Peuiuo o
vaiios y actualizai los uatos uel 0suaiio en caso ue sei necesaiio.
Caiiito iepiesenta uno ue los motoies piincipales ue la aplicacion. Este
uispone ue toua la infoimacion ue la sesion uel 0suaiio y ue los
piouuctos uel Stock que finalmente se vayan a incluii uentio ue los
Betallepeuiuo.
Poi ultimo mencionai que Tienua sei un elemento que almacenai
los uatos ue las tienuas fisicas que la Tienua viitual tiene. Esta
infoimacion sei el nombie y la uiieccion uonue se encuentia.


PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina 2S ue 64

=,5E'5:5 )3 +F5131 YZU









PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina 24 ue 64
S.2. Casos ue uso
Paia un entenuimiento mas intuitivo ue las acciones que se pueuen
iealizai, al menos las mas impoitantes, se aujunta una figuia
iesumienuo uichas funciones.



En el H)*O# H se han aujuntauo vaiios casos ue uso con una
explicacion mas uetallaua y casos ieales.

S.S. Biagiamas ue secuencia
A continuacion se muestian vaiios ejemplos ue inteiaccion con el
sistema iepiesentauos meuiante unos uiagiamas ue secuencia que
ieflejan a nivel ue ejecucion los pasos que sigue la aplicacion paia
llevai a cabo las acciones inuicauas aiiiba ue caua ejemplo. Se muestia
un ejemplo paia el empleauo y otio paia el usuaiio

PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina 2S ue 64
P HI'5%B 'B$%(A-# ' -' 4'+* 5* 5'$#+






PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina 26 ue 64
P HI'5%B 'B$%(A-# '- ('BB%$#G












PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina 27 ue 64
4. BISEN0
El uiseo ue la Tienua viitual se ha basauo en una aiquitectuia
multicapas ue ties capas logicas (Figuia 4.1)
- Nivel ue piesentacion o ue inteifaz ue usuaiio.
- Nivel logico o ue aplicacion.
- Nivel ue peisistencia.



El nivel ue inteifaz est foimauo poi touos los uocumentos que envia
el seiviuoi poital al navegauoi y que ste piesenta al usuaiio, ue foima
que le piopoicionan la infoimacion que ha solicitauo aceica uel poital
y le peimite inteiactuai con el mismo a tiavs ue enlaces y foimulaiios
El nivel ue aplicacion o logico est foimauo poi un conjunto ue
libieiias que implementan las clases uel uominio. Este nivel es el
encaigauo ue iealizai touas las opeiaciones a nivel ue aplicacion.
El nivel ue peisistencia lo foiman la base ue uatos y el SuBB, los
encaigauos ue almacenai toua la infoimacion uel poital y peimitii el
acceso a la misma ue foima contiolaua y seguia.


PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina 28 ue 64
4.1. Nivel ue Inteifaz
En la siguiente imagen (Figuia 4.1) se pueue obseivai una imagen
geneial uel uiseo ue la Tv.


Figuia 4.1
Como ya se comento al piincipio ue este uocumento, el inteifaz ue
usuaiio ha siuo uiseauo ue tal maneia que iesulte ameno, intuitivo y
fcil ue utilizai. Be este mouo, touas las paginas ue la Tv estn
compuestas poi cuatio fases uistinguibles fcilmente:
- 0na cabeceia en la que se muestia el logo y se ueja un espacio
paia aauii publiciuau.
- 0n men hoiizontal uesue el que se pueue acceuei a touas las
funciones ue la pagina Web uesue el que en ueteiminauas
funciones, poui habei un submen.
PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina 29 ue 64
- La columna izquieiua con la ventana uel caiiito en la que se
muestia una infoimacion iesumiua ue el conteniuo actual uel
caiiito.
- La ventana piincipal en la que se muestia toua la infoimacion al
usuaiio y se iecogen los uatos que este intiouuzca
A continuacion (Figuia 4.2) se muestian mas uetallauamente estas
uifeientes paites:



















Figuia 4.2
Cabeceia men hoiizontal

Resumen Caiiito

ventana piincipal


PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina Su ue 64

4.1.1. Biagiamas ue navegabiliuau
En este punto, se va a explicai mas uetallauamente la estiuctuia ue la
Tv mostianuo como acceuei uesue caua punto a cualquiei paite ue la
Web. Auems se incluiin los nombies ue caua pagina paia uetallai ue
una maneia mas sencilla la navegacion posible que tenui caua tipo ue
usuaiio.

4.1.1.1. 0suaiio anonimo iegistiauo.
Esta tienua viitual se ha uiseauo ue tal maneia que en las paginas en
las que un usuaiio necesita estai iegistiauo paia vei infoimacion
piivilegiaua, tenui la opcion ue iegistiaise en caso ue no habeilo
hecho o ue intiouucii sus uatos ue cliente. Poi tanto, entenuemos que
no existe uifeiencia alguna entie la navegacion uel usuaiio anonimo
iespecto uel usuaiio iegistiauo salvo paia la pagina ue FIN C0NPRA
(Figuia 4.S).



4.1.1.2. Empleauo ue la Tienua viitual.
Paia el empleauo, la navegacion sei la misma que paia el usuaiio
salvo uos excepciones. En piimei lugai ste no poui llegai hasta
PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina S1 ue 64
finalizai compia a no sei que se iegistie como usuaiio (caso en el que
uejaiia ue sei empleauo y pasaiia a sei usuaiio iegistiauo). En
segunuo lugai, tenui el piivilegio ue pouei acceuei al men Intianet
como se muestia a continuacion (Figuia 4.4).



4.2. Nivel logico
El nivel logico o ue aplicacion consiste en una seiie ue libieiias, giacias
a las cuales la Tv pueue funcionai. Estas libieiias contienen touas las
clases necesaiias paia la ejecucion ue la Web. Sus funciones son:
opeiaciones ue calculo, compiobacion ue conuiciones y niveles ue
acceso, geneiacion ue peticiones a la base ue uatos, tiansfoimacion y
valiuacion ue uatos, etc.
Este nivel es el que nos peimite una total inuepenuencia entie el nivel
ue inteifaz y el nivel ue peisistencia (uetallauo en el siguiente punto).
Esto quieie uecii que seiia posible iealizai mouificaciones en el nivel
ue peisistencia sin que el ue inteifaz se vieia afectauo. nicamente
habiia que iealizai pequeos cambios en el nivel logico paia auaptaise
ue nuevo al nivel que tiene poi uebajo.

PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina S2 ue 64
4.S. Nivel ue peisistencia
Este nivel ue peisistencia o ue acceso ue uatos va a utilizai una base ue
uatos ielacional que sei la que contenga toua la infoimacion ue la Tv
(catalogo ue iopa, infoimacion ue usuaiios, peuiuos, etc.). Paia el buen
funcionamiento se utilizai una base ue uatos peifectamente
estiuctuiaua y uiseaua con una seiie ue entiuaues ielacionauas entie
si ue una maneia coheiente y con un cieito nivel ue eficiencia.
La base ue uatos inicial contenia cuatio entiuaues: usuaiios, peuiuos,
stock y tienuas. Tias iealizai el mouelo Entiuau-Relacion y efectuai
vaiias piuebas ue uso en la Tv ueciui sepaiai usuaiios en uos
entiuaues uifeientes (clientes y empleauos) y aauii una nueva tabla
(uetallepeuiuos) que seiia la que contenuiia toua la infoimacion
uetallaua ue los peuiuos iealizauos. Esta tabla sei una entiuau ubil
iespecto ue Peuiuo. Poi tanto, finalmente la base ue uatos contenui
las siguientes seis entiuaues: clientes, uetallepeuiuos, empleauos,
peuiuos, stock y tienuas.
Poi otia paite, touas las entiuaues contenuin sus atiibutos. 0no ue
ellos sei la clave piimaiia paia touas las entiuaues salvo paia
uetallepeuiuos que en este caso su clave piimaiia estai compuesta
poi uos atiibutos. 0no ue ellos lo heieuai ue la tabla Peuiuo.
4.S.1. Biseo Entiuau-Relacion


PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina SS ue 64

4.S.2. Biseo logico
(-%*)$*+ (NIF: vaichai(1S), Contiasenya: vaichai(2u), Nombie:
vaichai(Su), Apelliuos: vaichai(4u), Biieccion: vaichai(6u), Numeio:
vaichai(1u), Pueita: vaichai(1u), Poblacion: vaichai(Su), Piovincia:
vaichai(2u), CP: vaichai(S), Telefono: vaichai(9))
CP {NIF}
vNN {Contiasenya, Nombie, Apelliuos, Biieccion, Numeio, Pueita,
Poblacion, Piovincia, CP, Telefono}

.*5%5#+ (Peuiuo: int(1u), Cliente: vaichai(1S), Teiminauo: int(1),
Fecha: uate)
CP {Peuiuo}
vNN {Cliente}
CAj {Cliente} ! CLIENTES

5*$'--*.*5%5#+ (Peuiuo: int(1u), Aiticulo: int(1u), Couigop:
vaichai(Su), Besciipcion: vaichai(Su), Cantiuau: int(1u), Talla:
vaichai(Su), Coloi: vaichai(Su), Total: vaichai(Su), Refeiencia:
vaichai(Su))
CP {Peuiuo, Aiticulo}
vNN {Couigop, Besciipcion, Cantiuau, Talla, Coloi, Total, Refeiencia}
CAj {Peuiuo} ! Peuiuos
Caj {Couigop} ! Stock
CREATE H88,Q1KRS tiene CBECK N0T EXISTS (
SELECT * FR0N Peuiuo WBERE N0T EXISTS(
SELECT * FR0N Betallepeuiuos WBERE
Betallepeuiuo.Peuiuo = Peuiuos.Peuiuo))

PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina S4 ue 64
+$#(T (Couigo: int(1u), Besciipcion: vaichai(Su), PvB: uecimal(19,2),
Listai: tinyint(1), Imagen: vaichai(Su), Noveuau: tinyint(1), Categoiia:
vaichai(2u), Coloi: vaichai(2u), Refeiencia: vaichai(1S)}
CP {Couigo}
vNN {Besciipcion, PvB, Listai, Imagen, Noveuau, Categoiia, Coloi,
Refeiencia}

*/.-*'5#+ (NIF: vaichai(1S), Contiasenya: vaichai(2u), Nombie:
vaichai(Su), Biieccion: vaichai(6u), Poblacion: vaichai(Su),
Piovincia: vaichai(2u), CP: vaichai(S), Telefono: vaichai(9))
CP {NIF}
vNN {Contiasenya, Nombie, Biieccion, Poblacion, Piovincia, CP,
Telefono}

$%*)5'+ (Nombie: vaichai(Su), Biieccion: vaichai(Su), CP: int(S),
Poblacion: vaichai(Su), Telefono: int(9))
CP {Nombie}
vNN {Biieccion, CP, Poblacion, Telefono}












PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina SS ue 64
S. INPLENENTACI0N E INTEuRACI0N
S.1. Tecnologias
La Tv se ha uesaiiollauo utilizanuo la combinacion ue tecnologias
"H"?. Este acionimo se iefieie al conjunto ue piogiamas softwaie
que comnmente se utilizan paia uesaiiollai sitios Web uinmicos
sobie sistemas opeiativos Apple Nacintosh, Nac 0S X.
- Nac 0S X: Sistema opeiativo.
- Apache: Seiviuoi Web.
- NySQL: Sistema uestoi ue Bases ue Batos.
- PBP: Lenguaje ue piogiamacion paia sitios Web.
En este caso, ue las tecnologias anteiioies solo se ha utilizauo una ue
ellas paia el uesaiiollo ue la Tv. PBP ha siuo el lenguaje en el que se ha
uesaiiollauo el poital Web. Las otias ties se consiueiain como
tecnologias exteinas a la aplicacion y se uesciibiin posteiioimente
en el H)*O# M.
=;1":
Es el lenguaje ue maicauo pensauo paia sustituii a BTNL como
estnuai paia las pginas Web. En su veision 1.u, XBTNL es solamente
la veision XNL ue BTNL, poi lo que tiene, bsicamente, las mismas
funcionaliuaues, peio cumple las especificaciones, ms estiictas, ue
XNL. Su objetivo es avanzai en el pioyecto uel Woilu Wiue Web
Consoitium ue logiai una Web semntica, uonue la infoimacion, y la
foima ue piesentaila estn claiamente sepaiauas. La veision 1.1 es
similai, peio paite a la especificacion en mouulos. En sucesivas
veisiones la WSC planea iompei con los tags clsicos tiaiuos ue BTNL.
;11?
El piotocolo ue tiansfeiencia ue hipeitexto BTTP es el piotocolo usauo
en caua tiansaccion ue la Web (WWW). BTTP fue uesaiiollauo poi el
consoicio WSC y la IETF y uefine la sintaxis y la semntica que utilizan
los elementos softwaie ue la aiquitectuia Web (clientes y seiviuoies)
paia comunicaise.
Es un piotocolo oiientauo a tiansacciones y sigue el esquema peticion-
iespuesta entie un cliente y un seiviuoi. Al cliente que efecta la
peticion (un navegauoi) se lo conoce como "usei agent" (agente uel
PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina S6 ue 64
usuaiio). A la infoimacion tiansmitiua se la llama iecuiso y se la
iuentifica meuiante un 0RL. Los iecuisos pueuen sei aichivos, el
iesultauo ue la ejecucion ue un piogiama, una consulta a una base ue
uatos, la tiauuccion automtica ue un uocumento, etc.
HBNA%$*($AB' <-%*)$* U 8*B&%5#B
Esta aiquitectuia consiste bsicamente en un cliente que iealiza
peticiones a otio piogiama (el seiviuoi) que le ua iespuesta. Aunque
esta iuea se pueue aplicai a piogiamas que se ejecutan sobie una sola
computauoia es ms ventajosa en un sistema opeiativo multiusuaiio
uistiibuiuo a tiavs ue una ieu ue computauoias.
En esta aiquitectuia la capaciuau ue pioceso est iepaitiua entie los
clientes y los seiviuoies, aunque son ms impoitantes las ventajas ue
tipo oiganizativo uebiuas a la centializacion ue la gestion ue la
infoimacion y la sepaiacion ue iesponsabiliuaues, lo que facilita y
claiifica el uiseo uel sistema.
?;?
Es un lenguaje ue piogiamacion inteipietauo, uiseauo oiiginalmente
paia la cieacion ue pginas Web uinmicas. Es usauo piincipalmente
en inteipietacion uel lauo uel seiviuoi (seivei-siue sciipting) peio
actualmente pueue sei utilizauo uesue una inteifaz ue linea ue
comanuos o en la cieacion ue otios tipos ue piogiamas incluyenuo
aplicaciones con inteifaz gifica usanuo las bibliotecas Qt o uTK+.
PBP es un acionimo iecuisivo que significa !O8 "?23'&3M& !'3]
2'(+311('. Fue cieauo oiiginalmente poi Rasmus Leiuoif en 1994; sin
embaigo la implementacion piincipal ue PBP es piouuciua ahoia poi
The PBP uioup y siive como el estnuai ue facto paia PBP al no habei
una especificacion foimal. Publicauo bajo la PBP License, la Fiee
Softwaie Founuation consiueia esta licencia como softwaie libie.
uiacias a esta tecnologia oiientaua a objetos se pueuen iealizai taieas
en la aplicacion como poi ejemplo mantenei actualizauo en touo
momento el caiiito, acceuei a la base ue uatos uonue se encuentia
toua la infoimacion ue la Tv, valiuacion ue uatos poi paite ue usuaiio y
empleauo, y muchas funciones mas.
<88
Las hojas ue estilo en cascaua CSS es un lenguaje usauo paia uefinii la
piesentacion ue un uocumento estiuctuiauo esciito en BTNL o XNL (y
poi extension en XBTNL). El WSC es el encaigauo ue foimulai la
PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina S7 ue 64
especificacion ue las hojas ue estilo que seiviin ue estnuai paia los
agentes ue usuaiio o navegauoies.
La iuea que se encuentia uetis uel uesaiiollo ue CSS es sepaiai la
31&'*+&*'5 ue un uocumento ue su 2'313%&5+,-%.
La infoimacion ue estilo pueue sei aujuntaua tanto como un
uocumento sepaiauo o en el mismo uocumento BTNL. En este ltimo
caso pouiian uefiniise estilos geneiales en la cabeceia uel uocumento
o en caua etiqueta paiticulai meuiante el atiibuto "style". Existen ties
tipos ue estilos: hoja ue estilo exteina, hoja ue estilo inteina y estilo en
linea. Paia esta aplicacion se ha utilizauo la hoja ue estilo exteina
Estas son algunas ue las ventajas ue utilizai hojas ue estilo:
Contiol centializauo ue la piesentacion uel sitio Web completo
con lo que se agiliza ue foima consiueiable la actualizacion uel
mismo.
Los Navegauoies peimiten a los usuaiios especificai su piopia
hoja ue estilo local que sei aplicaua a un sitio Web, con lo que
aumenta consiueiablemente la accesibiliuau. Poi ejemplo,
peisonas con ueficiencias visuales pueuen configuiai su piopia
hoja ue estilo paia aumentai el tamao uel texto o iemaicai ms
los enlaces.
0na pgina pueue uisponei ue uifeientes hojas ue estilo segn el
uispositivo que la muestie o incluso a eleccion uel usuaiio. Poi
ejemplo, paia sei impiesa, mostiaua en un uispositivo movil, o sei
"leiua" poi un sintetizauoi ue voz.
El uocumento BTNL en si mismo es ms claio ue entenuei y se
consigue ieuucii consiueiablemente su tamao (siempie y
cuanuo no se utilice estilo en linea).

S.2. Beiiamientas
La Tv es una aplicacion Web foimaua poi el poital Web en el lenguaje
ue piogiamacion PBP y una base ue uatos ielacional en NySQL
inteiconectauas entie si. Auems, iecoiuai que ambas se encuentian
en una maquina con sistema opeiativo Nac 0S X y un seiviuoi apache.
0n entoino ue uesaiiollo integiauo (IBE ue sus siglas en ingles) es un
piogiama compuesto poi un conjunto ue heiiamientas paia el
PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina S8 ue 64
piogiamauoi. Los uocumentos ue los cuales se compone la aplicacion
(BTNL y sciipts en PBP) se han uesaiiollauo utilizanuo un IBE ue
piogiamacion llamauo Komouo Euit.
Komouo Euit es un euitoi ue couigo fuente bastante avanzauo y
extensible. No solo se limita a pioveei ue las uiveisas heiiamientas
habituales ue los euitoies populaies paia piogiamauoies, sino que va
mas all, piopoicionanuo algunas ue las utiliuaues tipicas ue los
entoinos ue uesaiiollo piofesionales. Auems, incoipoia un sistema ue
complementos o auu-ons similai al que se conoce poi el navegauoi
Fiiefox, que hace que touavia se pueua uisfiutai ue uiveisas otias
utiliuaues que son ue agiauecei. pouiia ueciise que es el heimano
menoi ue otia heiiamienta ue la misma compaia llamaua Komouo
IBE, con la uifeiencia ue que esta es una heiiamienta comeicial ue
pago, con uiveisas posibiliuaues mas avanzauas y que Komouo Euit es
una veision libie y giatuita.
Las gestiones con la base ue uatos se han iealizauo con uos
aplicaciones uistintas. La cieacion ue tablas y atiibutos asi como
gestiones simples se han iealizauo con phpNyAumin. Esta es una
heiiamienta esciita en PBP con la intencion ue manejai la
auministiacion ue NySQL a tiavs ue paginas Web, utilizanuo Inteinet.
Se pueuen cieai y eliminai Bases ue Batos, cieai, eliminai y alteiai
tablas, boiiai, euitai y aauii campos, ejecutai cualquiei sentencia
SQL, auministiai claves en campos, auministiai piivilegios y expoitai
uatos en vaiios foimatos. Sin embaigo, paia intiouucii los uatos que
componuin estas tablas, se ha utilizauo la aplicacion Sequel Pio. Esta
aplicacion es libie paia Nac 0S X cuyo fin es la gestion ue bases ue
uatos NySQL. Sequel Pio piopoiciona touo lo necesaiio paia
conectaise a cualquiei seiviuoi NySQL ya sea local o iemoto, una
infiniuau ue opciones a la hoia ue consultai, inseitai o eliminai uatos,
sopoites ue vistas, asi como una gian lista ue posibiliuaues.
Poi ultimo, y en cuanto a uiseo se iefieie, PhotoShop ha siuo la
heiiamienta con la que se han uiseauo touas las fotogiafias que
foiman la estiuctuia ue la Tv.




PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina S9 ue 64
S.S. Betalles ue la implementacion
S.S.1. Peifiles ue usuaiio
A continuacion se uetallan caua uno ue los peifiles ue usuaiio que
utilizain esta aplicacion.
?*BJ%- 5* A+A'B%# ')L)%/#
Este peifil es el que cualquiei peisona pueue tomai. La aplicacion se ha
uiseauo ue tal maneia que cualquiei peisona que acceua a ella, pueua
visitaila casi al completo y aauii los aiticulos al caiiito que uesee
compiai.
Se tiata ue que el usuaiio se familiaiice con el entoino y no necesite
estai iegistiauo paia pouei visualizai los aiticulos ni ii auquiiinuolos
a meuiua que los va vienuo. Poui poi tanto, visualizai la coleccion al
completo, geneiai consultas sobie algn aiticulo en concieto, aauiilo
al caiiito, eliminai uel caiiito, mouificai cantiuaues uel caiiito y poi
ultimo, uaise ue alta como cliente paia pouei finalizai su compia.
La opcion ue iegistiaise le apaiecei en touo momento que acceua a la
pagina uel caiiito. 0na vez est iegistiauo, esta opcion uesapaiecei y
apaiecei una nueva que sei la ue pasai poi caja. 0tia ue las ventajas
ue iegistiaise, es que una vez lo haya hecho, se ciea automticamente
la sesion y el usuaiio ya est logueauo y pasa a sei usuaiio iegistiauo.
?*BJ%- 5* A+A'B%# B*D%+$B'5#
Si el usuaiio se ha iegistiauo, poui iealizai touas las funciones
comentauas en el punto anteiioi. tambin tenui uos opciones mas;
finalizai la compia con touos los aiticulos aauiuos al caiiito
pieviamente y visualizai el estauo ue los peuiuos iealizauos.
?*BJ%- 5* */.-*'5#
Este peifil cuenta auems con la ventaja ue pouei iealizai pequeas
mouificaciones sobie la base ue uatos. Intiouucienuo sus uatos uesue
el men Intianet, acceuei a la misma y se le mostiain las opciones
que esta biinua a los usuaiios.

S.S.2. Autenticacion ue los usuaiios
La autenticacion paia usuaiios funciona ue igual maneia que la
autenticacion paia los empleauos. El sistema mostiai al usuaiio un
PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina 4u ue 64
foimulaiio en el que tenui que intiouucii su numeio ue usuaiio (BNI)
y su contiasea. La aplicacion iecogei estos uatos y los enviai al
sistema. Se compiobai meuiante consultas a la base ue uatos que
uicha infoimacion es coiiecta y existe una tupla con ese usuaiio y
contiasea. En este caso, se cieai una vaiiable sesion que viajai poi
touas las paginas ue maneia que el sistema pueua contiolai el touo
momento con esa sesion que el usuaiio se encuentia autenticauo. En
caso contiaiio el sistema uevolvei un eiioi y el usuaiio tenui que
intiouucii ue nuevo sus uatos.




















PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina 41 ue 64
6. EvAL0ACI0N Y PR0EBAS
6.1. Evaluacion
La evaluacion ue la Tv es un punto muy impoitante ya que ue esta
uepenue que la pagina Web contenga touas las necesiuaues uel usuaiio
y poi tanto, el xito ue esta aplicacion.
La usabiliuau se iefieie a la capaciuau ue un softwaie ue sei
compienuiuo, apienuiuo, usauo y sei atiactivo paia el usuaiio, en
conuiciones especificas ue uso. Los puntos seguiuos paia conseguiila
son los siguiente:
- La faciliuau ue compiension ue la estiuctuiacion ue la aplicacion,
asi como ue las funcionaliuaues y conteniuos que en esta pueuen
obseivaise.
- La sencillez ue uso ue la aplicacion en las etapas iniciales.
- La iapiuez con la que el usuaiio encuentia aquello que busca.
- La faciliuau peicibiua en la navegacion en timinos ue tiempo
iequeiiuos y taieas piecisauas paia obtenei los iesultauos
peiseguiuos.
- La capaciuau uel usuaiio uel sistema paia contiolai aquello que
hace y el lugai en el que se encuentia en caua momento.
Estos son algunos ue los puntos seguiuos paia conseguii una
aplicacion con un alto giauo ue usabiliuau, peio existen numeiosas
ieglas y iecomenuaciones mas.
Los sistemas que mejoi se ajustan a las necesiuaues uel usuaiio
mejoian la piouuctiviuau y la caliuau ue las acciones y las uecisiones.
El uiseo centiauo en el usuaiio iesulta en piouuctos ue mayoi caliuau
ue uso, ms competitivos en un meicauo que uemanua piouuctos ue
fcil uso.

6.2. Piuebas
Las piimeias piuebas iealizauas fueion las piuebas ue uiseo. Babia
que cuauiai uas las paites ue la Tv y que queuaia touo en su lugai. El
tamao ue caua imagen y el lugai en el que tenian que estai fue una
taiea que necesito un gian numeio ue piuebas.
PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina 42 ue 64
Las piuebas iefeientes a la navegabiliuau, enlaces iotos y a la
accesibiliuau son otio tipo ue piuebas que se fueion iealizanuo
simultneamente con el uesaiiollo ue la aplicacion. Tias iealizai algn
cambio impoitante en la misma, habia que piobai que hubieia
queuauo bien y que funcionaia como se espeiaba.
6.2.1. valiuacion XBTNL y CSS
Touas las paginas ue la aplicacion NcIAN han siuo compiobauas con el
valiuauoi ue la WSC y se han iuo coiiigienuo los eiioies encontiauos
hasta que touas han siuo valiuauas coiiectamente como XBTNL 1.u
Tiansitional. A continuacion se muestia uicha valiuacion.

Al final ue caua pagina, se encuentian los uos botones con acceso
uiiecto al valiuauoi uel WSC paia XBTNL y paia el CCS. El couigo ue
las hojas ue estilo CSS tambin ha siuo compiobauo con la veision 2.1
como se muestia a continuacion. El boton paia esta valiuacion se
encuentia junto con el ue XBTNL.

PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina 4S ue 64
6.2.2. Compiobacion ue enlaces iotos
Paia una navegabiliuau sin eiioies, se han compiobauo touos los
enlaces ue la aplicacion. Existe un gian numeio ue softwaie que iealiza
esta taiea ue foima giatuita. Paia este caso se ha utilizauo la siguiente
pagina www.anybiowsei.com que tias pinchai en la opcion "Link
Check" e intiouucii la uiieccion inicial ue nuestia pagina
(http:mcian.zobyhost.commcian) compiueba ue maneia
automtica touos los links que contiene. Estos son los iesultauos:



Esta imagen continua peio la obviaiemos y iesumiiemos que el iesto
uel links tambin cuentan con el estauo 0K.
PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina 44 ue 64
6.2.S. Compiobacion ue iesolucion
Anteiioimente se comento que paia una coiiecta visualizacion ue la
aplicacion, uebei utilizaise una iesolucion ue 8uux6uu o supeiioi.
Este apaitauo seivii paia mostiai el cumplimiento ue esta
caiacteiistica. Paia ello, se ha hecho una impiesion e pantalla paia la
iesolucion minima (8uux6uu) y una supeiioi aleatoiia.
A continuacion se muestia la visualizacion paia estas iesoluciones.

'31(F*+,-% AHHMWHHd







PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina 4S ue 64
'31(F*+,-% !!./MAWBd


Con ambas iesoluciones la aplicacion se visualiza bien y se auapta
coiiectamente.










PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina 46 ue 64
7. C0NCL0SI0NES
En este punto uel Pioyecto, se me pasan muchas conclusiones poi la
cabeza. La finalizacion ue este pioyecto me apoita una gian
satisfaccion ya que, hace unos meses, cuanuo este Pioyecto solo eia
una iuea en mi cabeza, paiecia como algo inalcanzable y uificil ue
conseguii al mismo tiempo.
Con esta aplicacion he apienuiuo a enfientaime a un tiabajo que
pouiia consiueiaise como una taiea ieal en cualquiei empiesa. Be siuo
capaz ue utilizai paite ue los conocimientos auquiiiuos uuiante toua la
caiieia y plasmailos en un tiabajo uel que me siento oigulloso ue
como ha queuauo. 0n tiabajo que no uista mucho ue la iuea que en un
piincipio tenia en mente.
Auems me ha seiviuo paia uaime cuenta ue que taieas tiiviales que a
simple vista paiecian sencillas, se han conveitiuo en un quebiaueio ue
cabeza y taieas que paiecian imposibles han siuo mucho mas fciles ue
llegai a cabo. tambin uecii, que a meuiua que el Pioyecto iba tomanuo
foima, han suigiuo muchas uuuas que al iesolveilas me seivian ue
ejemplo paia apienuei nuevas cosas uentio ue la piogiamacion Web.
Pese a estai finalizauo el pioyecto, la motivacion que iba nacienuo en
mi paso a paso ue ii uescubiienuo nuevas posibiliuaues me hai seguii
investiganuo en nuevas opciones a aauii uentio ue la Tienua viitual.
Con esta memoiia finaliza mi Pioyecto y tambin ties aos ue caiieia.
Este pioyecto me ha seiviuo paia inteiesaime en el munuo ue la
piogiamacion Web.








Bibliogiafia
PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina 47 ue 64
Refeiencias Web:
- IEEE Recommenueu Piactice foi Softwaie Requiiements
Specifications, IEEE Stu 8Su-1998.
- Foios uel Web: http:www.foiosuelweb.com
- Wikipeuia la enciclopeuia libie: http:es.wikipeuia.oig
- Nanual ue PBP: http:php.netinuex.php
- Especificaciones ue XBTNL 1.u http:www.wSc.oigTRxhtml1
- Especificaciones ue CSS 2.1 http:www.wSc.oigTRCSS21
- Namp: Nac, Apache, NySQL, PBP: http:www.mamp.info

Refeiencias fisicas:
Se han tomauo tambin como iefeiencias pioyectos ue la Escuela
Tcnica y ue la Facultau ue Infoimtica ue aos anteiioies.













Anexo A. Casos ue 0so
PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina 48 ue 64

#$%& () *%& Aauii a caiiito
+)%,-./,.01 El usuaiio aaue un piouucto al caiiito.
2,3&- .1.,.$(&- 0suaiio
2,3&-)% %),*1($-.&% -
4)%*5)1 Cualquiei usuaiio poui aauii el piouucto ue la
Tienua viitual que uesee al caiiito en cualquiei
momento sea usuaiio iegistiauo o anonimo.
!-),&1(.,.&1)% -
!&%3,&1(.,.&1)% El sistema actualizai el iesumen uel caiiito.
613)-$,,.&1)% ()7 *%*$-.& 897.:$,.&1)% ()7 %.%3)5$ ;7*<& () )=)13&%
1. El usuaiio selecciona un
piouucto en el catalogo.


S. El usuaiio pulsa sobie
el boton "Aauii a caiiito"
uel piouucto ueseauo.

2. El sistema busca en la
base ue uatos las
caiacteiisticas uel
piouucto.
4. El sistema compiueba
que el piouucto se
encuentie en el caiiito.
S. Si se encuentia, suma
la cantiuau al piouucto
existente en el caiiito.
6. Si no se encuentia, se
aaue el aiticulo nuevo al
caiiito.
7. El sistema actualiza los
totales uel caiiito.
>?3)1%.&1)% %@1,-&1$% En S el usuaiio pueue cancelai la opeiacion.
>?3)1%.&1)% $%@1,-&1$% -




#$%& () *%& Eliminai uel caiiito
PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina 49 ue 64
+)%,-./,.01 El usuaiio elimina un piouucto al caiiito
2,3&- .1.,.$(&- 0suaiio
2,3&-)% %),*1($-.&% -
4)%*5)1 Cualquiei usuaiio poui eliminai un piouucto uel
caiiito en el momento que uesee.
!-),&1(.,.&1)% El piouucto uebe habei siuo aauiuo al caiiito
anteiioimente.
!&%3,&1(.,.&1)% El sistema actualizai el iesumen uel caiiito.
613)-$,,.&1)% ()7 *%*$-.& 897.:$,.&1)% ()7 %.%3)5$ ;7*<& () )=)13&%
1. El usuaiio va a la pagina
uonue se encuentia el
iesumen uel caiiito.
2. Naica el checkbox ue
ellos piouuctos que
uesea eliminai uel caiiito.
S. Pulsa sobie el boton
"Actualizai" que se
encuentia bajo el caiiito.







4. Busca en el caiiito el
iuentificauoi ue los
piouuctos maicauos.
S. Elimina uel caiito los
piouuctos seleccionauos.
6. Actualiza los totales uel
caiiito.
>?3)1%.&1)% %@1,-&1$% En S el usuaiio pueue cancelai la opeiacion. Si el
usuaiio elimina touos los elementos uel caiiito el
sistema mostiai un mensaje inuicanuo que el caiiito
est vacio.
>?3)1%.&1)% $%@1,-&1$% -




#$%& () *%& Nouificai cantiuau.
PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina Su ue 64
+)%,-./,.01 El usuaiio mouifica la cantiuau ue un piouucto
aauiuo al caiiito.
2,3&- .1.,.$(&- 0suaiio
2,3&-)% %),*1($-.&% -
4)%*5)1 Cualquiei usuaiio poui mouificai la cantiuau ue un
piouucto que uesee auquiiii.
!-),&1(.,.&1)% El piouucto uebe habei siuo aauiuo al caiiito
anteiioimente.
!&%3,&1(.,.&1)% El sistema actualizai el iesumen uel caiiito.
613)-$,,.&1)% ()7 *%*$-.& 897.:$,.&1)% ()7 %.%3)5$ ;7*<& () )=)13&%
1. El usuaiio va a la pagina
uonue se encuentia el
iesumen uel caiiito.
2. Nouifica la cantiuau ue
ellos piouuctos que
uesee cambiai.
S. Pulsa sobie el boton
"Actualizai" que se
encuentia bajo el caiiito.







4. Nouifica la cantiuau ue
los aiticulos a los que su
cantiuau es uifeiente a la
anteiioi.
S. Si la cantiuau nueva es
ceio, el sistema elimina el
aiticulo uel caiiito.
6. Actualiza los totales uel
caiiito.
>?3)1%.&1)% %@1,-&1$% En S el usuaiio pueue cancelai la opeiacion. Si el
usuaiio mouifica touas cantiuaues a ceio, el sistema
mostiai un mensaje inuicanuo que el caiiito est
vacio.
>?3)1%.&1)% $%@1,-&1$% -


#$%& () *%& Alta usuaiio.
PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina S1 ue 64
+)%,-./,.01 Bai ue alta un usuaiio en la Tienua viitual.
2,3&- .1.,.$(&- 0suaiio
2,3&-)% %),*1($-.&% -
4)%*5)1 El usuaiio anonimo intiouuce sus uatos peisonales y
el sistema lo ua ue alta como usuaiio iegistiauo.
!-),&1(.,.&1)% El usuaiio no se ha uauo ue alta pieviamente.
!&%3,&1(.,.&1)% El nuevo usuaiio queua iegistiauo en el sistema.
613)-$,,.&1)% ()7 *%*$-.& 897.:$,.&1)% ()7 %.%3)5$ ;7*<& () )=)13&%
1. El usuaiio va una pagina
uesue la que pueue uaise
ue alta (Ej. "Caiiito").
2. Selecciona la opcion
"Nuevo usuaiio".

4. El usuaiio intiouuce sus
uatos peisonales.
S. El usuaiio pincha sobie
el boton "Enviai uatos".



S. El sistema solicita los
uatos peisonales a tiavs
ue un foimulaiio.


6. El sistema iegistia al
nuevo usuaiio en la base
ue uatos.
7. El sistema confiima
que el usuaiio se ha uauo
ue alta coiiectamente.
>?3)1%.&1)% %@1,-&1$% En 4 y S el usuaiio pueue cancelai la opeiacion.
En 6, si el usuaiio no ha intiouuciuo touos los campos,
el sistema infoimai uel eiioi y volvei a solicitailos.
>?3)1%.&1)% $%@1,-&1$% -





PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina S2 ue 64
#$%& () *%& Nouificai usuaiio.
+)%,-./,.01 Nouificai los uatos uel usuaiio en la Tienua viitual.
2,3&- .1.,.$(&- Empleauo
2,3&-)% %),*1($-.&% 0suaiio
4)%*5)1 El empleauo mouifica los uatos ue un usuaiio si es
necesaiio en la base ue uatos.
!-),&1(.,.&1)% El usuaiio solicita al empleauo la mouificacion ue sus
uatos peisonales. El empleauo est conectauo a su
Intianet.
!&%3,&1(.,.&1)% Los uatos uel usuaiio queuan mouificauos en el
sistema.
613)-$,,.&1)% ()7 *%*$-.& 897.:$,.&1)% ()7 %.%3)5$ ;7*<& () )=)13&%
1. El empleauo pincha en
"Nouificai los uatos ue un
cliente" ue su Intianet.
S. El empleauo intiouuce
los uatos uel cliente en el
buscauoi.
S. El empleauo selecciona
el nombie uel usuaiio a
mouificai.

8. El empleauo mouifica
los uatos opoitunos en el
foimulaiio.
9. El empleauo pulsa el
boton "Enviai uatos".
2. El sistema muestia un
listauo con touos los
clientes y un buscauoi.
4. El sistema muestia las
coinciuencias ue la
bsqueua.
6. El sistema busca en la
base ue uatos el cliente
seleccionauo.
7. El sistema muestia en
un foimulaiio touos los
uatos uel cliente.

1u. El sistema mouifica al
usuaiio en la base ue
uatos.
11. El sistema confiima
que el usuaiio se ha
mouificauo
coiiectamente.
>?3)1%.&1)% %@1,-&1$% En S y 9 el empleauo pueue cancelai la opeiacion.
En 1u, si el usuaiio no ha uejauo un campo en blanco,
el sistema infoimai uel eiioi y volvei a solicitailo.
>?3)1%.&1)% $%@1,-&1$% -
PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina SS ue 64

#$%& () *%& Cambiai estauo.
+)%,-./,.01 Cambiai el estauo ue un peuiuo.
2,3&- .1.,.$(&- Empleauo
2,3&-)% %),*1($-.&% -
4)%*5)1 El empleauo mouifica el estauo ue uno o vaiios
peuiuos en la base ue uatos.
!-),&1(.,.&1)% El peuiuo se ha iealizauo pieviamente. El empleauo
est conectauo a su Intianet
!&%3,&1(.,.&1)% Los uatos uel peuiuo queuan mouificauos en el
sistema.
613)-$,,.&1)% ()7 *%*$-.& 897.:$,.&1)% ()7 %.%3)5$ ;7*<& () )=)13&%
1. El empleauo pincha en
"Cambiai el estauo ue un
peuiuo" ue su Intianet.
S. El empleauo intiouuce
el numeio uel peuiuo a
mouificai.
S. El empleauo cambia el
estauo uel peuiuo.
6. El empleauo pincha en
el boton "Actualizai".


2. El sistema muestia un
listauo con touos los
peuiuos y un buscauoi.
4. El sistema muestia el
peuiuo buscauo.



7. El sistema mouifica el
peuiuo en la base ue
uatos.
8. El sistema confiima
que el peuiuo se ha
mouificauo
coiiectamente.
>?3)1%.&1)% %@1,-&1$% En S y 6 el empleauo pueue cancelai la opeiacion.
En 7, si el empleauo intiouuce un estauo incoiiecto, el
sistema muestia el eiioi y vuelve a solicitai el nuevo
estauo.
>?3)1%.&1)% $%@1,-&1$% -


PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina S4 ue 64

#$%& () *%& Finalizai peuiuo.
+)%,-./,.01 El usuaiio finaliza su compia.
2,3&- .1.,.$(&- 0suaiio
2,3&-)% %),*1($-.&% -
4)%*5)1 El usuaiio finaliza su peuiuo y se almacena en la base
ue uatos.
!-),&1(.,.&1)% El usuaiio se ha iegistiauo pieviamente y ha aauiuo
al caiiito aiticulos
!&%3,&1(.,.&1)% El peuiuo queua iegistiauo en la base ue uatos.
613)-$,,.&1)% ()7 *%*$-.& 897.:$,.&1)% ()7 %.%3)5$ ;7*<& () )=)13&%
1. El usuaiio va a la pagina
"Caiiito" y pincha en
"Caja" paia finalizai el
peuiuo.



2. El sistema acceue al Iu.
uel usuaiio.
S. El sistema actualiza la
tabla peuiuo con una
nueva fila.
4. El sistema acceue a la
base ue uatos y busca la
infoimacion ue los
aiticulos uel caiiito.
S. El sistema actualiza la
tabla uetallepeuiuo con
una nueva fila.
6. El sistema infoima al
usuaiio meuiante un
mensaje la confiimacion
uel peuiuo.


>?3)1%.&1)% %@1,-&1$% -
>?3)1%.&1)% $%@1,-&1$% -

PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina SS ue 64
#$%& () *%& Login usuaiio.
+)%,-./,.01 El usuaiio se conecta a la Tienua viitual.
2,3&- .1.,.$(&- 0suaiio
2,3&-)% %),*1($-.&% -
4)%*5)1 El usuaiio inicia sesion con su BNI y contiasea a la
Tienua viitual.
!-),&1(.,.&1)% El usuaiio se ha iegistiauo pieviamente y uispone ue
una contiasea.
!&%3,&1(.,.&1)% -
613)-$,,.&1)% ()7 *%*$-.& 897.:$,.&1)% ()7 %.%3)5$ ;7*<& () )=)13&%
1. El usuaiio va a una
pagina uesue la que pueue
conectaise (Ej. "Caiiito").

S. El usuaiio intiouuce sus
uatos en el foimulaiio.
4. El usuaiio pincha en el
boton "valiuai".




2. El sistema solicita los
uatos a tiavs ue un
foimulaiio.


S. El sistema iecoge los
uatos uel foimulaiio.
6. El sistema compiueba
que uichos uatos se
encuentien en la base ue
uatos.
7. El sistema inicia sesion
con el usuaiio en
cuestion.
>?3)1%.&1)% %@1,-&1$% En 4 el usuaiio pueue cancelai la opeiacion.
En 7, si el empleauo intiouuce un BNI y contiasea
incoiiectos, el sistema muestia el eiioi y vuelve a
solicitai los uatos.
>?3)1%.&1)% $%@1,-&1$% -


PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina S6 ue 64
Anexo B. Besciipcion ue Tecnologias.
B.1. XBTNL
XBTNL, acionimo en ingls ue e=tensible ;ypei$ext "aikup :anguage
(lenguaje extensible ue maicauo ue hipeitexto), es el lenguaje ue
maicauo pensauo paia sustituii a BTNL como estnuai paia las
pginas Web. En su veision 1.u, XBTNL es solamente la veision XNL
ue BTNL, poi lo que tiene, bsicamente, las mismas funcionaliuaues,
peio cumple las especificaciones, ms estiictas, ue XNL. Su objetivo es
avanzai en el pioyecto uel Woilu Wiue Web Consoitium ue logiai una
Web semntica, uonue la infoimacion, y la foima ue piesentaila estn
claiamente sepaiauas. La veision 1.1 es similai, peio paite a la
especificacion en mouulos. En sucesivas veisiones la WSC planea
iompei con los tags clsicos tiaiuos ue BTNL.
Las piincipales ventajas uel XBTNL sobie otios foimatos son:
- Compatibiliuau paicial con navegauoies antiguos: la infoimacion
se visualiza, aunque sin foimato. Apuntai que el XBTNL 1.u fue
uiseauo expiesamente paia sei mostiauo en navegauoies que
sopoitan BTNL ue base.
- 0n mismo uocumento pueue auoptai uiseos iauicalmente
uistintos en uistintos apaiatos, puuienuo incluso escogeise entie
vaiios uiseos paia un mismo meuio.
- Faciliuau ue euicion uiiecta uel couigo y ue mantenimiento.
- Foimato abieito, compatible con los nuevos estnuaies que
actualmente est uesaiiollanuo el WSC como iecomenuacion paia
futuios agentes ue usuaiio o navegauoies.
Inconvenientes:
- Algunos navegauoies antiguos no son totalmente compatibles con
los estnuaies, lo que hace que las pginas no siempie se
muestien coiiectamente. Esto caua vez es menos pioblemtico, al
ii cayenuo en uesuso.
- Nuchas heiiamientas ue uiseo Web an no piouucen couigo
XBTNL coiiecto.


PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina S7 ue 64
B.2. BTTP y la aiquitectuia Cliente - Seiviuoi.
El piotocolo ue tiansfeiencia ue hipeitexto (BTTP, O?23'K3M& K'5%143'
8'(&(+(F) es el piotocolo usauo en caua tiansaccion ue la Web (WWW).
BTTP uefine la sintaxis y la semntica que utilizan los elementos
softwaie ue la aiquitectuia Web (clientes, seiviuoies, pioxies) paia
comunicaise. Es un piotocolo oiientauo a tiansacciones y sigue el
esquema peticion-iespuesta entie un cliente y un seiviuoi. Al cliente
que efecta la peticion (un navegauoi o un spiuei) se lo conoce como
"usei agent" (agente uel usuaiio). A la infoimacion tiansmitiua se la
llama iecuiso y se la iuentifica meuiante un 0RL. Los iecuisos pueuen
sei aichivos, el iesultauo ue la ejecucion ue un piogiama, una consulta
a una base ue uatos, la tiauuccion automtica ue un uocumento, etc.
BTTP es un piotocolo sin estauo, es uecii, que no guaiua ninguna
infoimacion sobie conexiones anteiioies. El uesaiiollo ue aplicaciones
Web necesita fiecuentemente mantenei estauo. Paia esto se usan las
cookies, que es infoimacion que un seiviuoi pueue almacenai en el
sistema cliente. Esto le peimite a las aplicaciones Web instituii la
nocion ue "sesion", y tambin peimite iastieai usuaiios ya que las
cookies pueuen guaiuaise en el cliente poi tiempo inueteiminauo.
La aiquitectuia cliente -seiviuoi consiste bsicamente en un cliente
que iealiza peticiones a otio piogiama (el seiviuoi) que le ua
iespuesta. Aunque esta iuea se pueue aplicai a piogiamas que se
ejecutan sobie una sola computauoia es ms ventajosa en un sistema
opeiativo multiusuaiio uistiibuiuo a tiavs ue una ieu ue
computauoias.
En esta aiquitectuia la capaciuau ue pioceso est iepaitiua entie los
clientes y los seiviuoies, aunque son ms impoitantes las ventajas ue
tipo oiganizativo uebiuas a la centializacion ue la gestion ue la
infoimacion y la sepaiacion ue iesponsabiliuaues, lo que facilita y
claiifica el uiseo uel sistema.
La sepaiacion entie cliente y seiviuoi es una sepaiacion ue tipo logico,
uonue el seiviuoi no se ejecuta necesaiiamente sobie una sola
mquina ni es necesaiiamente un solo piogiama. Los tipos especificos
ue seiviuoies incluyen los seiviuoies Web, los seiviuoies ue aichivo,
los seiviuoies uel coiieo, etc. Nientias que sus piopositos vaiian ue
unos seivicios a otios, la aiquitectuia bsica seguii sienuo la misma.
PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina S8 ue 64

En la aiquitectuia CS el iemitente ue una solicituu es conociuo como
cliente. Sus caiacteiisticas son:
Es quien inicia solicituues o peticiones, tienen poi tanto un papel
activo en la comunicacion (uispositivo maestio o amo).
Espeia y iecibe las iespuestas uel seiviuoi.
Poi lo geneial, pueue conectaise a vaiios seiviuoies a la vez.
Noimalmente inteiacta uiiectamente con los usuaiios finales
meuiante una inteifaz gifica ue usuaiio.
Al ieceptoi ue la solicituu enviaua poi cliente se conoce como seiviuoi.
Sus caiacteiisticas son:
Al iniciaise espeian a que lleguen las solicituues ue los clientes,
uesempean entonces un papel pasivo en la comunicacion
(uispositivo esclavo).
Tias la iecepcion ue una solicituu, la piocesan y luego envian la
iespuesta al cliente.
Poi lo geneial, aceptan conexiones uesue un gian nmeio ue
clientes (en cieitos casos el nmeio mximo ue peticiones pueue
estai limitauo).
No es fiecuente que inteiacten uiiectamente con los usuaiios
finales.
PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina S9 ue 64

2*)$'V'+
Centializacion uel contiol: los accesos, iecuisos y la integiiuau
ue los uatos son contiolauos poi el seiviuoi ue foima que un
piogiama cliente uefectuoso o no autoiizauo no pueua uaai el
sistema. Esta centializacion tambin facilita la taiea ue ponei al
uia uatos u otios iecuisos (mejoi que en las ieues P2P).
Escalabiliuau: se pueue aumentai la capaciuau ue clientes y
seiviuoies poi sepaiauo. Cualquiei elemento pueue sei
aumentauo (o mejoiauo) en cualquiei momento, o se pueuen
aauii nuevos nouos a la ieu (clientes yo seiviuoies).
Fcil mantenimiento: al estai uistiibuiuas las funciones y
iesponsabiliuaues entie vaiios oiuenauoies inuepenuientes, es
posible ieemplazai, iepaiai, actualizai, o incluso tiaslauai un
seiviuoi, mientias que sus clientes no se vein afectauos poi ese
cambio (o se afectain minimamente). Esta inuepenuencia ue los
cambios tambin se conoce como encapsulacion.
Existen tecnologias, suficientemente uesaiiollauas, uiseauas
paia el paiauigma ue CS que aseguian la seguiiuau en las
tiansacciones, la amigabiliuau uel inteifaz, y la faciliuau ue
empleo.
W*+&*)$'V'+
La congestion uel tifico ha siuo siempie un pioblema en el
paiauigma ue CS. Cuanuo una gian cantiuau ue clientes envian
peticiones simultaneas al mismo seiviuoi, pueue sei que cause
muchos pioblemas paia ste (a mayoi nmeio ue clientes, ms
pioblemas paia el seiviuoi). Al contiaiio, en las ieues P2P como
caua nouo en la ieu hace tambin ue seiviuoi, cuanto ms nouos
hay, mejoi es el ancho ue banua que se tiene.
El paiauigma ue CS clsico no tiene la iobustez ue una ieu P2P.
Cuanuo un seiviuoi est +5J)(, las peticiones ue los clientes no
pueuen sei satisfechas. En la mayoi paite ue ieues P2P, los
iecuisos estn geneialmente uistiibuiuos en vaiios nouos ue la
ieu. Aunque algunos salgan o abanuonen la uescaiga; otios
pueuen touavia acabai ue uescaigai consiguienuo uatos uel
iesto ue los nouos en la ieu.
PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina 6u ue 64
El softwaie y el haiuwaie ue un seiviuoi son geneialmente muy
ueteiminantes. 0n haiuwaie iegulai ue un oiuenauoi peisonal
pueue no pouei seivii a cieita cantiuau ue clientes.
Noimalmente se necesita softwaie y haiuwaie especifico, sobie
touo en el lauo uel seiviuoi, paia satisfacei el tiabajo. Poi
supuesto, esto aumentai el coste.
El cliente no uispone ue los iecuisos que pueuan existii en el
seiviuoi. Poi ejemplo, si la aplicacion es una Web, no pouemos
esciibii en el uisco uuio uel cliente o impiimii uiiectamente
sobie las impiesoias sin sacai antes la ventana pievia ue
impiesion ue los navegauoies.

B.S. PBP
PBP es un lenguaje inteipietauo ue pioposito geneial ampliamente
usauo y que est uiseauo al usai especialmente paia uesaiiollo Web y
pueue sei inciustauo uentio ue couigo BTNL. ueneialmente se ejecuta
en un seiviuoi Web, tomanuo el couigo en PBP como su entiaua y
cieanuo pginas Web como saliua. Pueue sei uesplegauo en la mayoiia
ue los seiviuoies Web y en casi touos los sistemas opeiativos y
platafoimas sin costo alguno. PBP se encuentia instalauo en ms ue 2u
millones ue sitios Web y en un millon ue seiviuoies, el nmeio ue
sitios en PBP ha compaitiuo algo ue su pieponueiante sitio con otios
nuevos lenguajes no tan poueiosos uesue agosto ue 2uuS. Este mismo
sitio Web ue Wikipeuia est uesaiiollauo en PBP. Es tambin el
mouulo Apache ms populai entie las computauoias que utilizan
Apache como seiviuoi Web. La veision ms ieciente ue PBP es la S.S.1
(foi Winuows) uel 19 ue noviembie ue 2uu9.
El gian paieciuo que posee PBP con los lenguajes ms comunes ue
piogiamacion estiuctuiaua, como C y Peil, peimiten a la mayoiia ue
los piogiamauoies cieai aplicaciones complejas con una cuiva ue
apienuizaje muy coita. Tambin les peimite involuciaise con
aplicaciones ue conteniuo uinmico sin tenei que apienuei touo un
nuevo giupo ue funciones.
Aunque touo en su uiseo est oiientauo a facilitai la cieacion ue
pgina Web, es posible cieai aplicaciones con una inteifaz gifica paia
el usuaiio, utilizanuo la extension PBP-Qt o PBP-uTK. Tambin pueue
sei usauo uesue la linea ue oiuenes, ue la misma maneia como Peil o
PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina 61 ue 64
Python pueuen haceilo, a esta veision ue PBP se la llama PBP CLI
(I(::5%) U,%3 $%&3'45+3).
Cuanuo el cliente hace una peticion al seiviuoi paia que le envie una
pgina Web, el seiviuoi ejecuta el intipiete ue PBP. Este piocesa el
sciipt solicitauo que geneiai el conteniuo ue maneia uinmica (poi
ejemplo obtenienuo infoimacion ue una base ue uatos). El iesultauo es
enviauo poi el intipiete al seiviuoi, quien a su vez se lo envia al
cliente. Neuiante extensiones es tambin posible la geneiacion ue
aichivos PBF, Flash, asi como imgenes en uifeientes foimatos.
Peimite la conexion a uifeientes tipos ue seiviuoies ue bases ue uatos
tales como NySQL, Postgies, 0iacle, 0BBC, BB2, Niciosoft SQL Seivei,
Fiiebiiu y SQLite.
PBP tambin tiene la capaciuau ue sei ejecutauo en la mayoiia ue los
sistemas opeiativos, tales como 0NIX (y ue ese tipo, como Linux o Nac
0S X) y Winuows, y pueue inteiactuai con los seiviuoies ue Web ms
populaies ya que existe en veision CuI, mouulo paia Apache, e ISAPI.
PBP es una alteinativa a las tecnologias ue Niciosoft ASP y ASP.NET
(que utiliza C# vB.NET como lenguajes), a ColuFusion ue la compaia
Auobe (antes Naciomeuia), a }SP}ava ue Sun Niciosystems, y a
CuIPeil. Aunque su cieacion y uesaiiollo se ua en el mbito ue los
sistemas libies, bajo la licencia uN0, existe auems un IBE (entoino ue
uesaiiollo integiauo) comeicial llamauo Zenu Stuuio. Recientemente,
Coueueai (la uivision ue lenguajes ue piogiamacion ue Boilanu) ha
sacauo al meicauo un entoino integiauo ue uesaiiollo paia PBP,
uenominauo Belphi foi PBP. Existe un mouulo paia Eclipse, uno ue los
IBE ms populaies.
2*)$'V'+
Es un lenguaje multiplatafoima.
Completamente oiientauo al uesaiiollo ue aplicaciones Web
uinmicas con acceso a infoimacion almacenaua en una Base ue
Batos.
El couigo fuente esciito en PBP es invisible al navegauoi y al
cliente ya que es el seiviuoi el que se encaiga ue ejecutai el
couigo y enviai su iesultauo BTNL al navegauoi. Esto hace que
la piogiamacion en PBP sea seguia y confiable.
PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina 62 ue 64
Capaciuau ue conexion con la mayoiia ue los motoies ue base ue
uatos que se utilizan en la actualiuau, uestaca su conectiviuau
con NySQL y PostgieSQL.
Capaciuau ue expanuii su potencial utilizanuo la enoime
cantiuau ue mouulos (llamauos exts o extensiones).
Posee una amplia uocumentacion en su pgina oficial, entie la
cual se uestaca que touas las funciones uel sistema estn
explicauas y ejemplificauas en un nico aichivo ue ayuua.
Es libie, poi lo que se piesenta como una alteinativa ue fcil
acceso paia touos.
Peimite aplicai tcnicas ue piogiamacion oiientaua a objetos.
Biblioteca nativa ue funciones sumamente amplia e incluiua.
No iequieie uefinicion ue tipos ue vaiiables aunque sus vaiiables
se pueuen evaluai tambin poi el tipo que estn manejanuo en
tiempo ue ejecucion.
Tiene manejo ue excepciones (uesue PBPS).
Si bien PBP no obliga a quien lo usa a seguii una ueteiminaua
metouologia a la hoia ue piogiamai (muchos otios lenguajes
tampoco lo hacen), aun estanuo uiiigiuo a alguna en paiticulai,
el piogiamauoi pueue aplicai en su tiabajo cualquiei tcnica ue
piogiamacion yo uesaiiollo que le peimita esciibii couigo
oiuenauo, estiuctuiauo y manejable. 0n ejemplo ue esto son los
uesaiiollos que en PBP se han hecho uel pation ue uiseo
Nouelo vista Contiolauoi (o NvC), que peimiten sepaiai el
tiatamiento y acceso a los uatos, la logica ue contiol y la inteifaz
ue usuaiio en ties componentes inuepenuientes (vei ms abajo
Fiamewoiks en PBP).
K)(#)&*)%*)$*+
La ofuscacion ue couigo es la nica foima ue ocultai los fuentes.

B.4 CSS (Bojas ue estilo)
Bojas ue Estilo en Cascaua (Cascauing Style Sheets), es un mecanismo
simple que uesciibe como se va a mostiai un uocumento en la pantalla,
o como se va a impiimii, o incluso como va a sei pionunciaua la
PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina 6S ue 64
infoimacion piesente en ese uocumento a tiavs ue un uispositivo ue
lectuia. Esta foima ue uesciipcion ue estilos ofiece a los
uesaiiollauoies el contiol total sobie estilo y foimato ue sus
uocumentos.
CSS se utiliza paia uai estilo a uocumentos BTNL y XNL, sepaianuo el
conteniuo ue la piesentacion. Los 01&,F(1 uefinen la foima ue mostiai
los elementos BTNL y XNL. CSS peimite a los uesaiiollauoies Web
contiolai el estilo y el foimato ue mltiples pginas Web al mismo
tiempo. Cualquiei cambio en el estilo maicauo paia un elemento en la
CSS afectai a touas las pginas vinculauas a esa CSS en las que
apaiezca ese elemento.
CSS funciona a base ue ieglas, es uecii, ueclaiaciones sobie el estilo ue
uno o ms elementos. Las hojas ue estilo estn compuestas poi una o
ms ue esas ieglas aplicauas a un uocumento BTNL o XNL. La iegla
tiene uos paites: un selectoi y la ueclaiacion. A su vez la ueclaiacion
est compuesta poi una piopieuau y el valoi que se le asigne.

B.S Nac 0S X
"'( R8 = es una linea ue sistemas opeiativos computacionales
uesaiiollaua, comeicializaua y venuiua poi Apple Inc.
Se basa en 0nix y usa una inteifaz gifica uesaiiollaua poi Apple
llamaua Aqua, que se inspiia libiemente en la inteifaz ue Nac 0S
Classic. El gestoi ue ventanas X11, caiacteiistico en la familia ue
sistemas 0nix, y }ava se usan solo paia compatibiliuau con softwaie no
nativo ue Nac.
Nac 0S X Seivei fue lanzauo en el ao 1999 y se uifeiencia poi
incoipoiai uifeientes heiiamientas auministiativas paia la gestion ue
ieues y seivicios ue ieu.
Este sistema tiene a su vez un subsistema llamauo Baiwin (bajo APSL,
una licencia open souice) que piopoiciona a Nac 0S X piestaciones
moueinas, como la memoiia piotegiua, la multitaiea poi uesalojo o
expulsiva, la gestion avanzaua ue memoiia y el multipioceso simtiico.
Sin embaigo, las capas supeiioies uel sistema (poi ejemplo el
subsistema gifico en geneial) son couigo ceiiauo.


PR0EYCT0 FINAL BE CARRERA - BISEN0 E INPLENENTACI0N BE 0NA TIENBA vIRT0AL Pgina 64 ue 64
B.6 Apache
El seiviuoi Apache es un seiviuoi BTTP ue couigo abieito paia
platafoimas 0nix (BSB, uN0Linux, etcteia), Winuows y otias, que
implementa el piotocolo BTTP1.1 (RFC 2616) y la nocion ue sitio
viitual. Cuanuo comenzo su uesaiiollo en 199S se baso inicialmente en
couigo uel populai NCSA BTTPu 1.S, peio ms taiue fue ieesciito poi
completo. Su nombie se uebe a que oiiginalmente Apache consistia
solamente en un conjunto ue paiches a aplicai al seiviuoi ue NCSA.
Eia, en ingls, 5 25&+b? 13'@3' (un seiviuoi paicheauo). El seiviuoi
Apache se uesaiiolla uentio uel pioyecto BTTP Seivei (httpu) ue la
Apache Softwaie Founuation. Apache piesenta entie otias cosas
mensajes ue eiioi altamente configuiables, bases ue uatos ue
autenticacion y negociauo ue conteniuo, peio fue ciiticauo poi la falta
ue una inteifaz gifica que ayuue en su configuiacion.
En la actualiuau (2uuS), Apache es el seiviuoi BTTP ms usauo, sienuo
el seiviuoi BTTP uel 68 ue los sitios Web en el munuo y ciecienuo
an su cuota ue meicauo (estauisticas histoiicas y ue uso uiaiio
piopoicionauas poi Netciaft.

B.7 NySQL
NySQL es un sistema ue gestion ue base ue uatos ielacional, multihilo y
multiusuaiio con ms ue seis millones ue instalaciones. NySQL AB
uesue eneio ue 2uu8 una subsiuiaiia ue Sun Niciosystems y sta a su
vez ue 0iacle Coipoiation uesue abiil ue 2uu9 uesaiiolla NySQL
como softwaie libie en un esquema ue licenciamiento uual.
Poi un lauo se ofiece bajo la uN0 uPL paia cualquiei uso compatible
con esta licencia, peio paia aquellas empiesas que quieian
incoipoiailo en piouuctos piivativos ueben compiai a la empiesa una
licencia especifica que les peimita este uso. Est uesaiiollauo en su
mayoi paite en ANSI C.
Al contiaiio ue pioyectos como Apache, uonue el softwaie es
uesaiiollauo poi una comuniuau pblica y el copyiight uel couigo est
en pouei uel autoi inuiviuual, NySQL es piopietaiio y est patiocinauo
poi una empiesa piivaua, que posee el copyiight ue la mayoi paite uel
couigo.

También podría gustarte