Full text
PROYECTO FIN DE GRADO
Escuela de Ingenie ía In o má ica
Uni e sidad de Las Palmas de G an Cana ia
JUNIO 2014
E-NATURAL: DESARROLLO DE UNA APLICACIÓN
ORIENTADA A LA GESTIÓN Y ADMINISTRACIÓN
DE LOS SERVICIOS DE EMPRESAS RELACIONADAS
CON ACTIVIDADES EN LA NATURALEZA
PARTE I
Au o : Ye ay Pé ez Valien e
Tu o 1: Agus ín Sánchez Medina
Tu o 2: Mónica Pelleje o Sil a
Ti ulación: G ado en Ingenie ía en In o má ica
P oyec o in de g ado de la Escuela de Ingene ía In o má ica de la Uni e sidad de Las Palmas
de G an Cana ia p esen ado po el alumno:
Ye ay Pé ez Valien e
Ti ulo del p oyec o:
E-Na u al: Desa ollo de una aplicación o ien ada a la ges ión y adminis ación de los
se icios de emp esas elacionadas con ac i idades en la na u aleza. Pa e I
Tu o 1:
Agus ín Sanchez Medina
Tu o 2:
Mónica Pelleje o Sil a
DEDICATORIA
A mis pad es y a mi no ia
2-i
Índice gene al
1 In oducción .......................................................................................................................... 5
2 Es ado ac ual y Obje i os ...................................................................................................... 6
2.1 Es ado ac ual del A e ................................................................................................... 7
3 Compe encias ...................................................................................................................... 11
4 Apo aciones Socio-Económicas ......................................................................................... 23
5 Plani icación del abajo ...................................................................................................... 24
5.1 Me odología de desa ollo .......................................................................................... 24
5.2 Plani icación y empo ización ..................................................................................... 26
6 Desa ollo del abajo.......................................................................................................... 28
6.1 Requisi os del sis ema ................................................................................................. 28
6.1.1 Modelo del dominio ............................................................................................ 28
6.1.2 Diag amas modelo de dominio ........................................................................... 28
6.1.3 Diag amas en idad elación ................................................................................ 30
6.1.4 Modelo elacional ............................................................................................... 34
6.2 Especi icación de equisi os de usua io. ..................................................................... 37
6.2.1 Desc ipción. ......................................................................................................... 37
6.2.2 Ac o es ................................................................................................................ 38
6.2.3 Lis ados de ac o es y sus oles ............................................................................ 39
6.2.4 Modelo de casos de uso ...................................................................................... 42
6.2.5 Lis a de Casos de Uso .......................................................................................... 47
6.2.6 P o o ipo de in e az de usua io ......................................................................... 48
6.3 Diseño a qui ec ónico ................................................................................................. 52
6.3.1 Ca ac e ís icas de es a a qui ec u a ................................................................... 52
6.3.2 A qui ec u a de la aplicación .............................................................................. 54
6.3.3 De alles de la implemen ación. ........................................................................... 57
6.3.4 Diag ama de Despliegue...................................................................................... 59
6.3.5 Diag amas de clases ............................................................................................ 61
6.3.6 Diag amas de secuencia ...................................................................................... 86
7 Conclusiones........................................................................................................................ 91
7.1 Uso del F amewo k Codeigni e .................................................................................. 91
7.2 Uso de Lib e ía G oce y CRUD .................................................................................... 91
7.3 Uso de componen es, ecnologías y es a egias. ........................................................ 91
7.4 Resul ado inal del p oyec o ....................................................................................... 92
2-ii
8 T abajo Fu u o: .................................................................................................................... 92
9 Anexos ................................................................................................................................. 94
9.1 Anexo I: Recu sos u ilizados ........................................................................................ 94
9.1.1 Recu sos so wa e ............................................................................................... 94
9.1.2 Recu sos ha dwa e ............................................................................................ 101
9.2 Anexo II: Especi icación de casos de uso ................................................................... 102
9.3 Anexo III: Implemen ación ........................................................................................ 133
9.3.1 TinyMce ............................................................................................................. 133
9.3.2 Codeigni e : ....................................................................................................... 134
9.3.3 Paypal ................................................................................................................ 177
9.3.4 G oce y C ud ..................................................................................................... 190
9.3.5 Image C ud ........................................................................................................ 204
9.3.6 Image Moo ........................................................................................................ 206
9.3.7 JRa ing ............................................................................................................... 210
9.4 Anexo IV: Manual de usua io .................................................................................... 223
9.5 Anexo V: Índice de Imágenes .................................................................................... 263
9.6 Anexo VI: Indice de igu as comple o ....................................................................... 266
9.7 Anexo VII: Indice de ablas comple o ........................................................................ 268
10 Bibliog a ía .................................................................................................................... 269
2-iii
10
Yumping:
Jumping es una emp esa que o ece p oduc os de ocio y depo es de a en u a. Median e un
buscado de ac i idades y una localización se pueden encon a los di e en es se icios
o ecidos. También iene la posibilidad de ealiza ese as y hace comen a ios (Véase Imagen
5).
Imagen 5: Página web Yumping
Da en u as:
Es un buscado de emp esas de depo es de a en u a y depo es ex emos. O ecen u ismo
de a en u a, campamen os y casas u ales. Solo ealiza búsquedas y enlaza con las páginas
webs de las emp esas (Véase Imagen 6).
Imagen 6: Página web DA en u as
11
Ena u al en cambio, además de los se icios an e io men e mencionados, p opo ciona un
se icio de ges ión de in o mación comple o pa a la c eación, man enimien o y hos ing de
si ios web pa a las emp esas alojadas.
3 Compe encias
En es e apa ado se mos a án las dis in as compe encias que se p e enden cub i con el
p esen e p oyec o:
CII01
Capacidad pa a diseña , desa olla , selecciona y e alua aplicaciones y sis emas
in o má icos, asegu ando su iabilidad, segu idad y calidad, con o me a p incipios é icos y a
la legislación igen e.
Es a compe encia queda cubie a con los capí ulos Es ado ac ual y obje i o del T abajo de Fin
de G ado y Requisi os Ha dwa e y So wa e. En ellos se especi ican, po un lado, los mo i os de
diseño, desa ollo, e c. explicando exhaus i amen e las ases de de inición de equisi os,
análisis y diseño de los casos de uso necesa ios pa a sa is ace las necesidades de la aplicación
Web, y po o o lado se jus i ica la u ilización del ha dwa e más adecuado pa a la
implemen ación de la misma, eniendo en cuen a pa áme os de iabilidad, calidad y
segu idad.
En esumen, con es a elección de ha dwa e y so wa e, la implemen ación de es e abajo de
in de g ado da como esul ado una aplicación obus a y con o me a los p incipios é icos y a la
legislación igen e.
CII02
Capacidad pa a plani ica , concebi , desplega y di igi p oyec os, se icios y sis emas
in o má icos en odos los ámbi os, lide ando su pues a en ma cha y su mejo a con inua y
alo ando su impac o económico y social.
De odos los elemen os de un sis ema de ges ión de p oyec os, la plani icación es
posiblemen e la más impo an e, pues o que una mala o inexis en e plani icación conduci á a
una mala ealización en el p oyec o, lo cual epe cu i á eno memen e an o en la calidad como
en el plazo de e minación del p oyec o, ocasionando g andes pe juicios. Es a es la azón po la
que es a compe encia queda cubie a, pues o que la buena plani icación de es e abajo de in
de g ado ha dado luga al p opósi o undamen al del mismo, que no es más que la inalización
en los plazos es ablecidos así como consegui de mane a adecuada los obje i os p opues os
inicialmen e.
Si además enemos en cuen a el capí ulo Apo aciones, pode nos ap ecia el impac o del
p oyec o en el ámbi o de aplicación en que nació. Hay que ene en cuen a que los obje i os
que siemp e se buscan al desa olla una aplicación no deben limi a se a esol e el p oblema
sino que hay que in en a elegi la solución más ap opiada y con o me a la in aes uc u a con
la que cuen a el clien e.
CII04
12
Capacidad pa a elabo a el pliego de condiciones écnicas de una ins alación in o má ica
que cumpla los es ánda es y no ma i as igen es.
Pliego de especi icaciones écnicas que han de egi en la con a ación de una pla a o ma
compues a po odo el desa ollo de la pla a o ma web y odo lo elacionado con su
implemen ación.
Obje o del con a o y condiciones
El con a o iene como obje o, la implemen ación de la pla a o ma web dinámica VideoEduca
pa a uso de la ULPGC.
Ámbi o geog á ico
El ámbi o geog á ico en que se p es a á el se icio se á mundial. Ya cualquie isi an e ex e no
puede accede a la pla a o ma, pe o sólo los alumnos ma iculados en la Ulpgc pod án
dis u a de la o alidad de sus se icios.
Requisi os de iabilidad
El desa ollo de la aplicación debe acome e se de al o ma que su esul ado ga an ice:
Al a iabilidad
Compo amien o es able
Plazo de ejecución
El con a is a se comp ome e a elabo a el so wa e de con o midad con lo es ablecido en es e
documen o y con la o e a que hubiese p esen ado, así como a en ega lo al con a an e.
Dicha en ega debe á hace se en el plazo máximo de 6 meses, a con a desde la echa de la
i ma del con a o.
El so wa e se conside a á debidamen e en egado cuando se haya ecibido la pla a o ma y a
su ez es é disponible pa a su inmedia o uncionamien o y se haya acili ado el manual de
usua io y la documen ación écnica co espondien e.
Documen ación
Las emp esas lici ado as debe án pone cla amen e de mani ies o las posibles ac ualizaciones
de la aplicación.
T ans e encia Tecnológica
Du an e la ejecución de los abajos obje o del con a o, el adjudica a io se comp ome e a
acili a en odo momen o a las pe sonas designadas po la Uni e sidad de las Palmas de G an
Cana ia a ales e ec os la in o mación que és a solici e pa a dispone de un pleno
conocimien o de las ci cuns ancias en que se desa ollan los abajos, así como de los
e en uales p oblemas que pueden plan ea se y de las ecnologías, mé odos y he amien as
u ilizados pa a esol e los.
P opiedad del esul ado de los abajos
13
Todos los documen os y esul ados de los abajos ealizados se án p opiedad de la
Uni e sidad de las Palmas de G an Cana ia que pod á eje ce el de echo de explo ación en su
cen o de abajo.
La emp esa adjudica a ia pod á hace uso de los mismos, ya sea como e e encia o base pa a
abajos u u os, siemp e que cuen e con la au o ización exp esa del con a an e.
En ega de la solución
Todo el p oceso de suminis o de so wa e, documen ación, manuales de ins alación y
con igu ación, manual de adminis ación y de usua io, desa ollo de p uebas, plan de ma cha
a ás, se ha á con o me al P oceso de Ges ión de la En ega de inido po la Di ección de la
Uni e sidad de las Palmas de G an Cana ia.
En o no P e-explo ación
De se necesa ias a eas co ec i as una ez implemen ada la solución obje o de es e con a o,
con el in de acili a los abajos, y ealización de p uebas sin a ec a al sis ema en p oducción,
se á p eciso que cualquie ac i idad a ealiza sob e la pla a o ma se ealice p e iamen e en el
en o no de p e-explo ación simila al de p oducción.
Se á p eciso e i ica y es ea el co ec o uncionamien o en es e en o no, como paso p e io
al despliegue en p oducción.
CII18
Conocimien o de la no ma i a y la egulación de la in o má ica en los ámbi os nacional,
eu opeo e in e nacional.
Un análisis de las legislaciones que se han p omulgado en di e sos países a oja que las
no mas ju ídicas que se han pues o en igo es án di igidas a p o ege la u ilización abusi a de
la in o mación eunida y p ocesada median e el uso de compu ado as, e incluso en algunas de
ellas se ha p e is o o ma ó ganos especializados que p o ejan los de echos de los ciudadanos
amenazados po los o denado es.
Desde hace ap oximadamen e diez años la mayo ía de los países eu opeos han hecho odo lo
posible pa a inclui den o de la ley, la conduc a punible penalmen e, como el acceso ilegal a
sis emas de cómpu o o el man enimien o ilegal de ales accesos, la di usión de i us o la
in e cep ación de mensajes in o má icos.
En la mayo ía de las naciones occiden ales exis en no mas simila es a los países eu opeos.
Todos es os en oques es án inspi ados po la misma de p eocupación de con a con
comunicaciones elec ónicas, ansacciones e in e cambios an con iables y segu os como sea
posible.
Da un concep o sob e deli os in o má icos no una labo ácil y es o en azón de que su misma
denominación alude a una si uación muy especial, ya que pa a habla de “deli os” en el
sen ido de acciones ipi icadas o con empladas en ex os ju ídico penales, se equie e que la
exp esión “deli os in o má icos” es e consignada en los códigos penales, lo cual en nues o
14
país, al igual que en muchos o os, no ha sido obje o de ipi icación aún; sin emba go, muchos
especialis as en de echo in o má ico emplean es a alusión a los e ec os de una mejo
concep ualización.
No ma i a y egulación de la in o má ica en el ámbi o in e nacional.
En el con ex o in e nacional, son pocos los países que cuen an con una legislación ap opiada.
En e ellos, des acan, Es ados Unidos, Alemania, Aus ia, G an B e aña, Holanda, F ancia,
España, A gen ina y Chile.
Po es a azón a con inuación se mencionan algunos aspec os elacionados con la ley en los
di e en es países, así como con los deli os in o má icos que pe sigue.
Alemania
Es e país sancionó en 1986 la Ley con a la C iminalidad Económica, que con empla los
siguien es deli os:
Espionaje de da os.
Es a a in o má ica.
Al e ación de da os.
Sabo aje in o má ico.
Aus ia
La Ley de e o ma del Código Penal, sancionada el 22 de Diciemb e de 1987, sanciona a
aquellos que con dolo causen un pe juicio pa imonial a un e ce o in luyendo en el esul ado
de una elabo ación de da os au omá ica a a és de la con ección del p og ama, po la
in oducción, cancelación o al e ación de da os o po ac ua sob e el cu so del p ocesamien o
de da os.
Además con empla sanciones pa a quienes comen en es e hecho u ilizando su p o esión de
especialis as en sis emas.
Es ados Unidos
Es e país adop ó en 1994 el Ac a Fede al de Abuso Compu acional que modi icó al Ac a de
F aude y Abuso Compu acional de 1986 con la inalidad de elimina los a gumen os
hipe écnicos ace ca de qué es y que no es un i us, un gusano, un caballo de T oya y en que
di ie en de los i us, la nue a ac a p osc ibe la ansmisión de un p og ama, in o mación,
códigos o comandos que causan daños a la compu ado a, a los sis emas in o má icos, a las
edes, in o mación, da os o p og amas. La nue a ley es un adelan o po que es á di ec amen e
en con a de los ac os de ansmisión de i us.
Asimismo, en ma e ia de es a as elec ónicas, de audaciones y o os ac os dolo osos
elacionados con los disposi i os de acceso a sis emas in o má icos, la legislación
15
es adounidense sanciona con pena de p isión y mul a, a la pe sona que de aude a o o
median e la u ilización de una compu ado a o ed in o má ica.
En el mes de Julio del año 2000, el Senado y la Cáma a de Rep esen an es de es e país, as un
año la go de delibe aciones, es ablece el Ac a de Fi mas Elec ónicas en el Come cio Global y
Nacional. La ley sob e la i ma digi al esponde a la necesidad de da alidez a documen os
in o má icos, mensajes elec ónicos y con a os es ablecidos median e In e ne , en e
emp esas (pa a el B2B) y en e emp esas y consumido es (pa a el B2C).
Chile
Chile ue el p ime país la inoame icano en sanciona una Ley con a deli os in o má icos, la
cual en ó en igencia el 7 de junio de 1993. Es a ley se e ie e a los siguien es deli os:
La des ucción o inu ilización de los de los da os con enidos den o de una compu ado a es
cas igada con penas de p isión. Asimismo, den o de esas conside aciones se encuen an los
i us.
Conduc a maliciosa endien e a la des ucción o inu ilización de un sis ema de a amien o de
in o mación o de sus pa es componen es o que dicha conduc a.
F ancia
En ene o de 1988, es e país dic ó la Ley ela i a al aude in o má ico, en la que se conside an
aspec os como:
In omisión audulen a que sup ima o modi ique da os.
Conduc a in encional en la iolación de de echos a e ce os que haya impedido o al e ado el
uncionamien o de un sis ema de p ocesamien o au oma izado de da os.
Conduc a in encional en la iolación de de echos a e ce os, en o ma di ec a o indi ec a, en la
in oducción de da os en un sis ema de p ocesamien o au oma izado o la sup esión o
modi icación de los da os que és e con iene, o sus modos de p ocesamien o o de ansmisión.
Sup esión o modi icación de da os con enidos en el sis ema, o bien en la al e ación del
uncionamien o del sis ema (sabo aje) impida, obs aculice o modi ique su uncionamien o.
Conduc a maliciosa que al e e, dañe o des uya los da os con enidos en un sis ema de
a amien o de in o mación.
G an B e aña
Debido a un caso de hacking en 1991, comenzó a egi en es e país la Compu e MisuseAc (Ley
de Abusos In o má icos). Median e es a ley el in en o,
Exi oso o no, de al e a da os in o má icos es penado con has a cinco años de p isión o mul as.
Es a ley iene un apa ado que especí ica la modi icación de da os sin au o ización.
Holanda
16
El 10 de Ma zo de 1993 en ó en igencia la Ley de Deli os In o má icos, en la cual se penaliza
los siguien es deli os:
El hacking.
El p eacking (u ilización de se icios de elecomunicaciones e i ando el pago o al o pa cial de
dicho se icio).
La ingenie ía social (a e de con ence a la gen e de en ega in o mación que en
ci cuns ancias no males no en ega ía).
La dis ibución de i us.
No ma i a y egulación de la in o má ica en el ámbi o eu opeo.
Has a aho a, el p incipal es ue zo eu opeo po egula el ema de los deli os 21 de no iemb e
de 2001. Es e documen o ue i mado po los ep esen an es de cada país miemb o del
Consejo de Eu opa, aunque su e icacia depende de su pos e io e endo po los ó ganos
nacionales de cada país i man e.
El “Con enio sob e la Cibe delincuencia” pe mi ió la de inición de los deli os in o má icos y
algunos elemen os elacionados con és os, ales como “sis emas in o má icos”, “da os
in o má icos”, o “p o eedo de se icios”.
Es os deli os in o má icos ue on clasi icados en cua o g upos:
1. Deli os con a la con idencialidad, la in eg idad y la disponibilidad de los da os y
sis emas in o má icos.
Acceso ilíci o a sis emas in o má icos.
In e cep ación ilíci a de da os in o má icos.
In e e encia en el sis ema median e la in oducción, ansmisión, p o ocación de daños,
bo ado, al e ación o sup esión de és os.
Abuso de disposi i os que acili en la comisión de deli os
2. Deli os in o má icos.
Falsi icación in o má ica que p oduzca la al e ación, bo ado o sup esión de da os in o má ico
que ocasionen da os no au én icos.
F audes in o má icos.
3. Deli os elacionados con el con enido.
Deli os elacionados con la po nog a ía in an il.
4. Deli os elacionados con in acciones de la p opiedad in elec ual y de echos a ines.
17
Es con iene des aca que en el “Con enio sob e la Cibe delincuencia” se encomienda a cada
Pa e que ome las medidas necesa ias pa a ipi ica como deli o en su de echo in e no cada
uno de los apa ados desc i os en cada ca ego ía.
En la Disposición 14221 del BOE núm. 226 de 2010, encon amos el Ins umen o de
Ra i icación del Con enio sob e la Cibe delincuencia, hecho en Budapes el 23 de no iemb e
de 2001.
No ma i a y egulación de la in o má ica en el ámbi o nacional.
Leyes y Dec e os Ley.
Ley O gánica de P o ección de da os de ca ác e pe sonal: égimen sancionado aplicable (BOE
no298 de 14/XII/99 que publicó la Ley O g. 15/1999 de 13 de Dic.)
Obje o: P o ege y ga an iza las libe ades públicas y de echos undamen ales de las
pe sonas, especialmen e su HONOR e INTIMIDAD pe sonal y amilia .
Aspec os de in e és: Se án esponsables: “Los esponsables de los iche os o de los
a amien os” y “los enca gados de los a amien os”.
Ley 7/1998 de 13 de Ab il que egula las condiciones gene ales de con a ación.
R.D. 1906/1999 de 17/XII que egula la con a ación ele ónica.
R.D.Ley 14/1999 de 17/XII sob e Fi ma Elec ónica (BOE No224 de 18/XII)
Fi ma elec ónica: Disposi i o elec ónico que pe mi e la iden i icación del
signa a io de las ope aciones ealizadas po In e ne .
Iden i ica: El i man e (au en i icación) y E i a el e ac o (no epudio).
Código Penal
Ley O gánica 10/1995 de 23/XI
Tipi ica deli os y al as po el uso de la in o má ica, conc e amen e con a la In imidad,
Pa imonio, Socioeconómicos y P opiedad In elec ual.
Tí ulo X: “Deli os con a la in imidad, de echo a la p opia imagen y la in iolabilidad del
Domicilio”.
Apode a se de papeles, e-mails, mensajes, o os...
C acks: deli os
Ob ene da os de e ce os...
Recomendaciones de la APD
In o mación en la ecogida de da os.
18
Cuando suminis e da os pe sonales a cualquie o ganización (p o eedo es de acceso,
p o eedo es de con enido, endedo es a a és de come cio elec ónico, e c.) sea conscien e
de a quién se los acili a y con qué inalidad.
Finalidad pa a la que se ecogen los da os
Descon íe si los da os que le solici an son excesi os pa a la inalidad con la que se ecogen o
innecesa ios pa a el se icio que se le p es a.
Tenga en cuen a que cuando in oduce su di ección de co eo elec ónico en un di ec o io,
lis a de dis ibución o g upo de no icias, dicha di ección puede se ecogida po e ce os pa a
se u ilizada con una inalidad di e en e, como po ejemplo, emi i le publicidad no deseada.
Cuando na egue po In e ne , sea conscien e de que los se ido es Web que isi a pueden
egis a an o las páginas a las que accede como la ecuencia y los emas o ma e ias po las
que busca, aunque no le in o men de ello.
Segu idad en el in e cambio de da os
U ilice, siemp e que sea posible, las úl imas e siones de los p og amas na egado es, ya que
cada ez suelen inco po a mejo es medidas de segu idad.
Conside e la posibilidad de ac i a en dichos p og amas las opciones que ale en sob e los
in e cambios de da os no deseados y no ellene aquellos da os que no desee hace públicos
(po ejemplo, di ección de co eo elec ónico, nomb e, apellidos, e c.).
No ealice ansacciones come ciales elec ónicas a a és de p o eedo es con sis emas
insegu os o no iables. Consul e el manual de su na egado pa a a e igua cómo in o ma de
que se ha es ablecido una conexión con un se ido segu o.
Recue de que exis en sis emas de dine o elec ónico que p ese an el anonima o de sus
comp as en In e ne .
U ilice los mecanismos de segu idad que enga a su alcance pa a p o ege sus da os de
accesos no deseados. El medio más iable pa a consegui lo es el ci ado de los mismos.
Sal o que se u ilicen mecanismos de in eg idad, au en icación y ce i icación ( i ma digi al,
no a ios elec ónicos, e c.) no con íe ciegamen e en que la pe sona u o ganización que le
emi e un mensaje es quien dice se y en que el con enido del mismo no se ha modi icado,
aunque es o sea así en la inmensa mayo ía de las ocasiones.
Pa a e mina :
Siemp e que se le solici en da os pe sonales que no es é obligado legalmen e a suminis a ,
sopese los bene icios que a a ecibi de la o ganización que los ecoge en e a los posibles
iesgos de u ilización i egula de los mismos.
An e cualquie duda sob e la legalidad de la u ilización de sus da os de ca ác e pe sonal,
póngase en con ac o con la Agencia de P o ección de Da os.
19
La p o ección ju ídica de p og amas de o denado . Pi a e ía in o má ica
El Real Dec e o Legisla i o 1/1996, po el que se ap ueba el Tex o Re undido sob e P opiedad
In elec ual, la p o ección ju ídica de los p og amas de o denado , an es egulada po la Ley de
P o ección Ju ídica de P og amas de O denado y po la Ley de P opiedad In elec ual, c ea un
ma co ju ídico en con a de la pi a e ía in o má ica.
El Tex o Re undido desa olla una se ie de medidas pa a comba i la pi a e ía in o má ica,
como la posibilidad de que los ab ican es de p og amas de o denado solici en a la jus icia
española la ealización de un egis o so p esa en emp esas en las que exis an sospechas
undadas o e idencias de deli o.
España es uno de los países en los que se puede acudi a es a medida cau ela .
De es a mane a se e adica la posibilidad de que los p esun os in ac o es puedan des ui las
p uebas exis en es, lo cual, indudablemen e ocu i á si se les no i ica po adelan ado la
ealización de un egis o.
¿En qué casos se in inge la Ley?
Al copia o dis ibui un p og ama de o denado o la documen ación que le acompaña,
incluidas aplicaciones, da os, códigos y manuales, sin pe miso exp eso o licencia del
p opie a io de los de echos de explo ación.
Al u iliza un p og ama sin la co espondien e licencia o au o ización del ab ican e, con
independencia de que se u ilice en un solo o denado o en a ios de o ma simul ánea.
Al u iliza p og amas de o denado en un núme o de copias supe io al au o izado po el
ab ican e en sus con a os o licencias de uso.
En emp esas y demás o ganizaciones, al omen a , conscien e o inconscien emen e, pe mi i ,
obliga o p esiona a los empleados a ealiza o dis ibui copias no au o izadas del p og ama.
Al e ec ua copias no au o izadas po que alguien lo equie e u obliga a ello. Al cede o p es a
el p og ama de o ma que pueda se copiado o al copia lo mien as es á en su posesión en
calidad de cedido o p es ado.
Al c ea , impo a , posee o negocia con a ículos des inados a bu la o neu aliza cualquie
medio écnico aplicado pa a p o ege el p og ama de o denado .
Medidas Judiciales
Si inalmen e exis e e idencia de deli o, las medidas judiciales que pueden adop a se son:
Solici a al Juez un egis o so p esa de las ins alaciones del p esun o in ac o , an o po la ía
ci il, como po la penal.
Solici a al Juez la adopción u gen e de medidas cau ela es de p o ección.
Exigi indemnizaciones aco des con los daños ma e iales y mo ales causados.
26
5.2 Plani icación y empo ización
A con inuación mos amos las imp esiones de la plani icación y empo ización del p oyec o
(Véase Tabla 1):
A la ase de Análisis le dedicamos unas ein a ho as de p oyec o, debido a la acilidad pa a
encon a manuales y ejemplos de las ecnologías web. También los equisi os ue on áciles
de analiza ya que e an é minos sencillos y manejables. Las es a egias y me odologías a
segui ue on bas an e cla as desde el p incipio y la expe iencia p e ia en es e ipo de
p oyec os, ue la cla e de e minan e pa a a anza dep isa en es e apa ado.
En cuan o a la ase de Implemen ación, el diseño p e io ue ela i amen e ápido u ilizando
he amien as “Mockup”, el diseño de la base de da os ue sencillo, el diseño de la pla a o ma
“backend” ue ela i amen e sencillo pe o el diseño del “F on end” ue bas an e más
complicado y lle ó mucho iempo comple a es a ase.
A la ase inal le dedicamos bas an e menos iempo, ya que, la ase de p uebas la íbamos
ealizando ambién du an e la ase de implemen ación.
FASE
HORAS
%
1. Análisis
Es udio inicial de necesidades y equisi os
5
0,016666667
Es udio de la he amien a en la que se a a ealiza el desa ollo
10
0,066666667
Ana omía y es uc u a de los se icios web.
5
Ana omía y es uc u a de la aplicación web.
3
0,02
Análisis y es a egia de con enidos
4
0,01
Documen ación de la in o mación gene ada en la ase de Análisis
3
0,033333333
TOTAL FASE DE ANÁLISIS
30
10%
2. Desa ollo del p oyec o
Diseño de aplicación y pla a o ma web
8
0,05
Análisis y p og amación (aplicación web y se icios Web)
70
0,233333333
Análisis y p og amación de base de da os
20
0,1
Finalización de ase diseño
135
0,083333333
Documen ación de la in o mación gene ada en la ase de Desa ollo
6
0,066666667
27
TOTAL FASE DE DESARROLLO
239
74,7%
3. Fase inal
P uebas inales
8
Plani icación del man enimien o de la pla a o ma
7
0,033333333
Plani icación del seguimien o de esul ados p e is o
7
0,033333333
Documen ación de la in o mación gene ada en la ase inal
7
0,033333333
TOTAL FASE FINAL
29
9,6%
TOTAL HORAS
300
Tabla 1: Plani icación y Tempo ización
28
6 Desa ollo del abajo
6.1 Requisi os del sis ema
6.1.1 Modelo del dominio
Un modelo del dominio cap u a los ipos más impo an es de obje os en el con ex o del
sis ema. Los obje os del dominio ep esen an las cosas que exis en o los e en os que suceden
en el en o no en el que abaja el sis ema.
Muchos de los obje os del dominio o pueden ob ene se de una especi icación de equisi os o
median e la en e is a con los expe os del dominio.
A con inuación se p esen a el modelo del dominio pa a el con ex o en el que se engloba la
aplicación. Debido a las dimensiones del modelo, es e se ha di idido en a ias pa es pa a
acili a su comp ensión y da mayo cla idad al mismo.
6.1.2 Diag amas modelo de dominio
El usua io adminis ado :
Figu a 1: Modelo de dominio de usua io adminis ado
El adminis ado puede c ea usua ios y se icios, los usua ios ienen un pe il y un ol único
(Véase Figu a 1).
29
El usua io clien e:
Figu a 2: Modelo de dominido de usua io clien e
El clien e puede publica comen a ios y asocia los a los p oduc os, además puede añadi
ese as y comp as de p oduc os (Véase Figu a 2).
30
El usua io ges o :
Figu a 3: Modelo de dominio de usua io ges o
El usua io ges o puede c ea ca ego ías y p oduc os, puede añadi a i as y ges iona la
isualización de los comen a ios en los p oduc os (Véase Figu a 3).
6.1.3 Diag amas en idad elación
Un diag ama o modelo en idad- elación (es una he amien a pa a el modelado de da os que
pe mi e ep esen a las en idades ele an es de un sis ema de in o mación así como sus
in e elaciones y p opiedades.
Pa a el TFG se han diseñado dos bases de da os:
La Base de Da os ena u al_db es á compues a po las ablas más impo an es de la base de
da os, an es de ealiza el diseño es udiamos p e iamen e sus en idades a con inuación las
enume amos:
Usua io: Es la en idad básica que ep esen a a un pa icipan e del sis ema, los
ipos de usua ios pueden se Usua io anónimo, Usua io Clien e, Usua io Ges o y
Usua io Adminis ado . Sus ca ac e ís icas son: Id,Email,Passwo d,Es ado,Idweb.
Re e encia: Rep esen a un código de ac i ación de cuen as de usua io. Sus
ca ac e ís icas son: Id, Código.
Rol: Rep esen a un ol de usua io, pueden se Adminis ado , Ges o y Clien e. Sus
ca ac e ís icas son: Id,Tipo.
Pe il: Rep esen a oda la in o mación pública y p i ada ela i a al usua io. Sus
ca ac e ís icas son: Id,Edad,Iduse ,A a a ,Nomb e,Apellidos,Comen a ios,Fecha de
nacimien o.
31
Regis o: Rep esen a una ac i idad ealizada po alguno de los usua ios de la web.
Sus ca ac e ís icas son: Id,Idi em,Accion,Fecha de emisión, Idweb.
Ca ego ía: Rep esen a una ipo de p oduc o. Sus ca ac e ís icas son: Id, Nomb e,
Desc ipción,Imagen.
Se icio: Rep esen a una ac i idad especí ica de la emp esa. Sus ca ac e ís icas
son: Id, Nomb e, Desc ipción, Imagen, Idweb.
Ta i a: Rep esen a un p ecio empo al de un p oduc o. Sus ca ac e ís icas son: Id,
Fecha inicio, Fecha in, Emisión, Tasas, P ecio1, P ecio2, impues os.
Rese a: Rep esen a un egis o que o o ga de mane a empo al el uso exclusi o
de un p oduc o a un usua io. Sus ca ac e ís icas son: Id, Fecha Inicio, Fecha Fin,
Fecha de emisión, In o mación, Email, Di ección.
P oduc o: Rep esen a una ac i idad, se icio o alojamien o. Sus ca ac e ís icas
son: Id, Gale ia de imágenes, A chi os, Nomb e, Imagen de po ada, Desc ipción.
Comen a io: Rep esen a una opinión de un p oduc o dado. Sus ca ac e ís icas
son: Id, Comen a io, Ac i o.
Municipio/P o incia: Rep esen a una localización. Sus ca ac e ís icas son: Id
municipio, Id P o incia, Codigo municipio, Digi o con ol, Nomb e.
Web empla e: Rep esen a la plan illa o colección de plan illas de la web de
clien es.
Seguidamen e se mues a el diag ama en idad elación que p e iamen e hemos diseñado pa a
las elaciones en e en idades (Véase Figu a 4):
32
Figu a 4: Diag ama en idad elación ena u al_db.
33
Po o o lado el esquema de la segunda base de da os s a is ics_db ue mucho más simple ya
que solo exis ían es elaciones usua ios, se icios y p oduc os . Una ca ac e ís ica impo an e
a ene en cuen a en es a base de da os es que las ablas se an a au ogene a
dinámicamen e, es deci , cada ez que un se icio, un p oduc o o un usua io se c een en el
sis ema, se gene a an ablas con la siguien e plan illa [se icio o usua io o p oduc o]_[id del
obje o]_[ id de la web]. De es a mane a se gua da an en es a base de da os las es adís icas de
uso de cada uno po sepa ado, p opo cionando una in o mación exac a de su uso.
A con inuación se mues a el diag ama en idad elación de la base de da os (Véase Figu a 5):
Figu a 5: Diag ama en idad elación db_s a is ics
34
6.1.4 Modelo elacional
En es e modelo odos los da os son almacenados en elaciones, y como cada elación es un
conjun o de da os, el o den en el que és os se almacenen no iene ele ancia (a di e encia de
o os modelos como el je á quico y el de ed). Es o iene la conside able en aja de que es más
ácil de en ende y de u iliza po un usua io no expe o. La in o mación puede se ecupe ada
o almacenada po medio de consul as que o ecen una amplia lexibilidad y pode pa a
adminis a la in o mación.
Es e modelo conside a la base de da os como una colección de elaciones. De mane a simple,
una elación ep esen a una abla que no es más que un conjun o de ilas, cada ila es un
conjun o de campos y cada campo ep esen a un alo que in e p e ado desc ibe el mundo
eal. Cada ila ambién se puede denomina upla o egis o y a cada columna ambién se le
puede llama campo o a ibu o.
Pa a manipula la in o mación u ilizamos un lenguaje elacional, ac ualmen e se cuen a con
dos lenguajes o males el Álgeb a elacional y el Cálculo elacional. El Álgeb a elacional
pe mi e desc ibi la o ma de ealiza una consul a, en cambio, el Cálculo elacional sólo
indica lo que se desea de ol e .
A con inuación se mue a el modelo elacional de la base de da os ena u al_db (Véase Figu a
6):
35
Figu a 6: Modelo elacional ena u al_db.
42
6.2.4 Modelo de casos de uso
Casos de usos de las a eas comunes pa a odos los usua ios:
Figu a 9: Caso de uso Regis a
Los usua ios anónimos pueden en cualquie momen o au o- egis a se en el sis ema pa a
accede a las ope aciones de ese a , comp a y comen a los p oduc os (Véase Figu a 9).
Casos de usos po oles:
Clien es:
Figu a 10: Casos de uso ol clien e
Usua io
Regis a Valida Email
<<include>>
Inicia Sesión
<<ex end>>
Usua io Clien e
Visualiza P oduc o
Rese a p oduc o
Inse a Comen a io
Cancela Rese a
In oduci da os
<<ex end>>
<<include>>
Realiza Comp a
Realiza Valo aciones
43
El clien e end á odas las ope aciones de usua io egis ado, pod á isualiza los p oduc os,
ese a p oduc os, cancela ese as y ealiza comp as de p oduc os a a és de Paypal.
Además el usua io clien e pod á ealiza alo aciones de p oduc os y de emp esas (Véase
Figu a 10).
Ges o es:
Figu a 11: Caso de uso Ges iona Comen a ios
Los ges o es pod án mos a o no mos a los comen a ios que se ealicen en sus p oduc os.
No se pod án bo a de la base de da os (Véase Figu a 11).
Figu a 12: Caso de uso Visualiza Regis o
Los ges o es pod án isualiza las ac i idades median e un iso de egis o que se ealicen en
su si io web (Véase Figu a 12).
Ges iona Comen a ios Visualiza Comen a ios
<<include>>
Ac i a Comen a ios
Desac i a Comen a ios
Usua io Ges o
<<ex end>>
<<ex end>>
Visualiza Regis o Busca
Busca Usua io
Busca Ac i idad
Busca Fecha
<<ex end>>
Usua io Ges o
44
Figu a 13: Caso de uso Ges iona P oduc o
El usua io ges o pod á c ea o edi a p oduc os in oduciendo los da os del p oduc o, una
imagen que lo ep esen e y además la posibilidad de ene una gale ía de imágenes o a chi os
elacionados con el p oduc o. También se pod á ene las opciones de elimina y busca
p oduc os elacionados con los se icios y ca ego ías de la emp esa (Véase Figu a 13).
Ges o
Ges iona P oduc o
C ea P oduc o
Ca ga Gale ia Imagenes
Edi a P odu o
Elimina P oduc o
<<include>>
In oduci Da os
<<include>>
<<ex end>>
<<ex end>>
Busca P oduc o
45
Adminis ado :
Figu a 14: Caso de uso Ges iona Ca ego ia
El usua io ges o pod á c ea o edi a ca ego ías in oduciendo los da os necesa ios, subiendo
una imagen y eligiendo un se icio pa a la ca ego ía. También pod án elimina y busca
ca ego ías de se icio elacionados con las ac i idades de las emp esas (Véase Figu a 14).
Adminis ado
Ges iona Ca ego ia
C ea Ca ego ia
Edi a Ca ego ia
Elimina Ca ego ia
Ca ga Imagen
<<include>>
In oduci Da os
<<include>>
<<ex end>>
<<ex end>>
Busca Ca ego ia
46
Figu a 15: Caso de uso Ges iona Se icio
El adminis ado pod á c ea o edi a los se icios comunes pa a odas las emp esas de la web.
También end á la posibilidad de busca y elimina se icios (Véase Figu a 15).
Figu a 16: Caso de uso Ges iona Usua ios
Adminis ado
Ges iona Se icio
C ea Se icio
Ca ga Imagen
<<include>>
Edi a Se icio
Elimina Se icio
In oduci Da os
<<include>>
<<ex end>>
<<ex end>>
Busca Se icio
Adminis ado
Ges iona Usua ios
C ea Usua io
Edi a Usua io
Elimina Usua io
In oduci Da os
<<ex end>>
<<include>>
Busca Usua io
47
El adminis ado pod á c ea o edi a a odos los usua ios con oles de ges o y clien es den o
del sis ema. También pod á elimina los y busca usua ios (Véase Figu a 16).
6.2.5 Lis a de Casos de Uso
A con inuación mos amos una abla con odo el lis ado de casos de uso (Véase Tabla 4):
Ac o (Roles)
Caso de Uso
Nº Caso de uso
Usua io
Regis a se
01
Visualiza Web
02
Visualiza P oduc o
03
Usua io Regis ado
Inicia Sesión
04
Ce a Sesión
05
Usua io Clien e
Realiza Comp a
06
Realiza Rese a
07
Inse a Comen a io
08
Usua io Ges o
Visualiza Comen a ios
09
Visualiza Regis o
10
C ea Ta i a
11
Edi a Ta i a
12
Elimina Ta i a
13
Busca Ta i a
14
C ea Rese a
15
Elimina Rese a
16
Busca Rese a
17
C ea P oduc o
18
Edi a P oduc o
19
Elimina P oduc o
20
Busca P oduc o
21
Usua io Adminis ado
C ea Ca ego ía
22
Edi a Ca ego ía
23
Elimina Ca ego ía
24
Busca Ca ego ía
25
C ea Usua io
26
Edi a Usua io
27
Elimina Usua io
28
Busca Usua io
29
C ea Se icio
30
Edi a Se icio
31
Elimina Se icio
32
Busca Se icio
33
Tabla 4: Lis a de Casos de uso
La especi icación de los casos de uso se encuen an en el anexo.
48
6.2.6 P o o ipo de in e az de usua io
Los Mockups o p o o ipos de in e az de usua io nos mues a como queda ía una aplicación
an es de su diseño inal, de es e modo se ep esen a la aplicación de o ma isual sin la
implemen ación del diseño.
Aplicación Web:
In e az p incipal de usua io ges o :
Figu a 17: P o o ipo de in e az de usua io ges o
En la in e az se di e encia un menú a la izquie da con el que se pod á na ega po la
aplicación, en la pa e cen al, se isualizan g á icas de es adís icas pa a el con ol de la web y
en la pa e supe io de echa se isualiza la o o de pe il del ges o y un menú pa a edi a pe il
y ce a sesión (Véase Figu a 17).
49
In e az de p oduc o:
Figu a 18: P o o ipo de in e az de p oduc o
En la in e az se dispone de una abla con la in o mación asociada a la lis a de p oduc os, un
buscado de p oduc os y ambién se pod án ealiza di e en es ope aciones como edi a y
elimina p oduc os (Véase Figu a 18).
50
In e az edi o web:
Figu a 19: P o o ipo de in e az de Edi o Web
En la in e az del edi o web se dispond á de una plan illa web que el usua io pod á i
con igu ando y se pod á isualiza a a és del buscado del si io (Véase Figu a 19).
51
In e az Página p incipal:
Figu a 20: P o o ipo de página web p incipal
Mues a como queda ía la página p incipal de la emp esa una ez c eada (Véase Figu a 20).
58
La ca pe a Con ig almacena odos los a chi os de con igu ación ele an es pa a la aplicación.
Eso incluye qué lib e ías debe au o-ca ga la aplicación y de alles de la base de da os.
La ca pe a Con olle s almacena odos los con olado es de la aplicación.
La ca pe a E o s almacena odas las páginas de pa ones de e o es de la aplicación. Cuando
un e o apa ece, se gene a una página de e o a pa i de uno de es os pa ones.
La ca pe a Hooks con iene ex ensiones que modi ican el uncionamien o de los a chi os del
núcleo de CI.
La ca pe a Language con iene líneas de ex o que pueden se ca gadas a a és del módulo de
lenguaje pa a c ea si ios mul ilenguaje.
La ca pe a Lib a ies con iene odas las lib e ías o módulos especí icos pa a la aplicación.
La ca pe a Models almacena los modelos de la aplicación.
La ca pe a Views almacena las is as de la aplicación.
59
6.3.4 Diag ama de Despliegue
Cuando el sis ema es inalizado ha de se desplegado en los componen es ísicos (ha dwa e) que deben cumpli unos equisi os so wa e. Dichos
componen es necesa ios pa a es e despliegue son (Véase Imagen 13):
Imagen 13: Diag ama de despliegue
60
Se ido p incipal
Requisi os ha dwa e:
P ocesado : 2x In el® Xeon® E7-4820, 8C, 2.00GHz, 18M Cache, 5.86GT/s, 105W TDP,
Tu bo, HT, DDR3-980MHz
Memo ia: 16GB Memo y o 2 CPUs, 1066MHz (4x4GB 2R LV RDIMMs), 2 Memo y
Rise s, 1333MHz DIMMs
Almacenamien o: 4x 1TB, SATA, 2.5-in, 7.2K RPM Ha d D i e
Ta je a con olado a RAID: PERC H700 In eg a ed RAID Con olle , 512MB Cache
Conec i idad RAID: RAID5 o PERC H200/H700, 4 HDDs
Ta je as de ed: In el Gigabi ET Dual Po Se e Adap e , Cu, PCIe-4
Se ido de Base de da os 1:
Requisi os ha dwa e:
P ocesado : 2x In el® Xeon® E7-4820, 8C, 2.00GHz, 18M Cache, 5.86GT/s, 105W TDP,
Tu bo, HT, DDR3-980MHz
Memo ia: 16GB Memo y o 2 CPUs, 1066MHz (4x4GB 2R LV RDIMMs), 2 Memo y
Rise s, 1333MHz DIMMs
Almacenamien o: 4x 2TB, SATA, 2.5-in, 7.2K RPM Ha d D i e
Ta je a con olado a RAID: PERC H700 In eg a ed RAID Con olle , 512MB Cache
Conec i idad RAID: RAID5 o PERC H200/H700, 4 HDDs
Ta je as de ed: In el Gigabi ET Dual Po Se e Adap e , Cu, PCIe-4
Se ido de Base de da os 2:
Requisi os ha dwa e:
P ocesado : 2x In el® Xeon® E7-4820, 8C, 2.00GHz, 18M Cache, 5.86GT/s, 105W TDP,
Tu bo, HT, DDR3-980MHz
Memo ia: 16GB Memo y o 2 CPUs, 1066MHz (4x4GB 2R LV RDIMMs), 2 Memo y
Rise s, 1333MHz DIMMs
Almacenamien o: 4x 2TB, SATA, 2.5-in, 7.2K RPM Ha d D i e
Ta je a con olado a RAID: PERC H700 In eg a ed RAID Con olle , 512MB Cache
Conec i idad RAID: RAID5 o PERC H200/H700, 4 HDDs
Ta je as de ed: In el Gigabi ET Dual Po Se e Adap e , Cu, PCIe-4
Se ido de Copia:
Requisi os ha dwa e:
P ocesado : In el® Xeon® E3-1220, 4C/4T, 3.10GHz, 8M Cache, 80W TDP, Tu bo
Memo ia: 4GB Memo y (1x4GB), 1600Mhz, Dual Ranked, Low Vol UDIMM
Almacenamien o: 2x 1TB, SATA, 2.5-in, 7.2K RPM Ha d D i e
Ta je a con olado a RAID: PERC H200 In eg a ed RAID Con olle
61
Conec i idad RAID: RAID1 o PERC H200/H700, 2 HDDs Ta je as de ed: In el®
PRO/1000PT GbE Single Po Se e Adap e , Cu, PCIe-1
Requisi os so wa e:
SO: Ubun u Se e
Copias de segu idad: Bacula
Clien es mó iles:
Cualquie disposi i o mo il.
Clien es Na egado es ( e siones más ecien es):
Mozilla Fi e ox
Sa a i
Google Ch ome
6.3.5 Diag amas de clases
Seguidamen e se mos a á los diag amas de clase co espondien es a los módulos de la
aplicación:
63
Ca ego ías:
Figu a 21: Diag ama de clases Ca ego ias
PageView
Ca ego yCon olle
<<con olle >>
Ca ego yModel
<<model>>
Websi eModel
<<model>>
CICon olle
<<con olle >>
C ea eCa ego yView
<< iew>>
Ca ego yLis View
<< iew>>
MenuLe AdminView
<< iew>>
HeadView
<< iew>>
Heade View
<< iew>>
MenuHo izon alView
<< iew>>
Foo e View
<< iew>>
CIModel
<<con olle >>
Se iceModel
<<model>>
is as
con olado es modelos
64
Home:
Figu a 22: Diag ama de clases Home
HomeView
<< iew>>
CICon olle
<<con olle >>
HomeCon olle
<<con olle >>
PageView
MenuLe AdminView
<< iew>>
HeadView
<< iew>>
Heade View
<< iew>>
MenuHo izon alView
<< iew>>
Foo e View
<< iew>>
S a is icsModel
<<model>>
Rese eModel
<<model>>
con olado es
is as modelos
CIModel
<<con olle >>
65
Regis o de e en os:
Figu a 23: Diag ama de clases Regis o de e en os
Ac i i yCon olle
<<con olle >>
Ac i i yView
<< iew>>
Ac i i yModel
<<model>>
CICon olle
<<con olle >>
PageView
MenuLe AdminView
<< iew>>
HeadView
<< iew>>
Heade View
<< iew>>
MenuHo izon alView
<< iew>>
Foo e View
<< iew>>
is as con olado es modelos
CIModel
<<con olle >>
67
Comen a ios:
Figu a 24: Diag ama de clases comen a ios
Commen Con olle
<<con olle >>
Commen View
<< iew>>
Commen Model
<<model>>
Commen Lis View
<< iew>>
O e Model
<<model>>
P o ileModel
<<model>>
Websi eModel
<<model>>
PageView
MenuLe AdminView
<< iew>>
HeadView
<< iew>>
Heade View
<< iew>>
MenuHo izon alView
<< iew>>
Foo e View
<< iew>>
CICon olle
<<con olle >>
is as con olado es modelos
CIModel
<<con olle >>
74
Con olado web:
Figu a 31: Diag ama de clases websi e
CICon olle
<<con olle >>
CIModel
<<con olle >>
modelos
con olado es
is as
Websi eCon olle
<<con olle >>
Websi eModel
<<model>>
HomeView
<< iew>>
Use Model
<<model>>
75
Ta i a
Figu a 32: Diag ama de clases a i a
PageView
MenuLe AdminView
<< iew>>
HeadView
<< iew>>
Heade View
<< iew>>
MenuHo izon alView
<< iew>>
Foo e View
<< iew>>
P izeCon olle
<<con olle >>
CICon olle
<<con olle >> Se iceModel
<<model>>
Ca ego yModel
<<model>>
O e Model
<<model>>
P izeView
<< iew>>
CIModel
<<con olle >>
is as con olado es modelos
P izeModel
<<model>>
76
Regis o login:
Figu a 33: Diag ama de clases login
Use Model
<<model>>
Re e enceModel
<<model>>
TablesModel
<<model>>
LoginView
<< iew>>
Regis enLoginCon olle
<<con olle >>
CICon olle
<<con olle >>
CIModel
<<con olle >>
is as con olado es modelos
77
Rese as:
Figu a 34: Diag ama de clases ese a
PageView
MenuLe AdminView
<< iew>>
HeadView
<< iew>>
Heade View
<< iew>>
MenuHo izon alView
<< iew>>
Foo e View
<< iew>>
O e Model
<<model>>
Rese eC ea eView
<< iew>>
Websi eModel
<<model>>
P izeModel
<<model>>
Websi eModel
<<model>>
Rese eModel
<<model>>
Rese esView
<< iew>>
Rese esLis View
<< iew>>
Rese esCon olle
<<con olle >>
CICon olle
<<con olle >>
CIModel
<<con olle >>
is as con olado es modelos
78
Sa e index:
Figu a 35: Diag ama de clases sa eindex
Websi eModel
<<model>>
WebModel
<<model>>
O e Model
<<model>>
Se iceModel
<<model>>
IndexH mlView
<< iew>> Sa eIndexCon olle
<<con olle >>
CICon olle
<<con olle >>
CIModel
<<con olle >>
is as con olado es modelos
79
Usua io:
Figu a 36: Diag ama de clases usua io
PageView
MenuLe AdminView
<< iew>>
HeadView
<< iew>>
Heade View
<< iew>>
MenuHo izon alView
<< iew>>
Foo e View
<< iew>>
CICon olle
<<con olle >>
Use Con olle
<<con olle >>
C ea euse View
Use Lis iew
Use Model
<<model>>
is as con olado es modelos
CIModel
<<con olle >>
80
Pago Paypal:
Figu a 37: Diag ama de clases Paypal
PaypalCon olle
<<con olle >>
CICon olle
<<con olle >>
PaypalSe e Con olle
<<con olle >>
IPNLis ene
Rese eModel
<<model>>
Pu chaseModel
<<model>>
CIModel
<<model>>
Pu chaseView
<< iew>>
is as con olado es modelos
81
Gua da Se icio:
Figu a 38: Diag ama de clases gua da se icio
WebModel
<<model>>
O e Model
<<model>>
Se iceModel
<<model>>
Ca ego yModel
<<model>>
CIModel
<<con olle >>
CICon olle
<<con olle >>
con olado es modelos
Websi eModel
<<model>>
Sa eSe icesCon olle
<<con olle >>
82
Re e encias:
Figu a 39: Diag ama de clases e e encias
Re e enceCon olle
<<con olle >>
Re e enceModel
<<model>>
CIModel
<<con olle >>
CICon olle
<<con olle >>
Use Model
<<model>>
con olado es modelos
83
Sa e in o:
Figu a 40: Diag ama de clases sa ein o
WebModel
<<model>>
Websi eModel
<<model>>
O e Model
<<model>>
Se iceModel
<<model>>
Sa eIn oCon olle
<<con olle >>
CICon olle
<<con olle >>
CIModel
<<con olle >>
con olado es modelos
91
7 Conclusiones
7.1 Uso del F amewo k Codeigni e
En el inicio de un p oyec o de es as ca ac e ís icas debemos decidi que es a egia de
p og amación se a ha usa pa a consegui el obje i o ijado. En es e caso la es a egia es aba
cla a al a a se de un p oyec o web, se op ó po desa olla un p oyec o con pa ones
modelo- is a-con olado .
Aunque exis en mul i ud de F amewo ks que usan es e pa ón, se decidió elegi Codeigni e
debido a la acilidad de uso y a kis helpe s que p opo cionaba la pla a o ma. Es e amewo k
iene una cu a de ap endizaje bas an e al a pe o, una ez que se domina el edimien o que se
ob iene es conside able. Así, una ez que se a conociendo cómo es el lujo de ejecución y el
manejo de odos sus componen es, es posible desa olla aplicaciones en muy poco iempo
haciendo uso de oda la po encia de su a qui ec u a y lib e ías. G acias a odos los
mencionados componen es ha sido posible ene elemen os an impo an es como un sis ema
de e i icación de usua ios, alidación de o mula ios, in e acción cohe en e y mapeada con la
base de da os, paginación, sencillo manejo con espues as JSON, con ol de pe iciónes y
espues as AJAX, e c.
Sin duda, y no menos impo an e, el abaja con el pa ón modelo- is a-con olado pe mi e
abs ae se e implemen a componen es eu ilizables. O o pun o impo an e a ene en
cuen a es que Codeigni e abaja cien po cien con obje os, lo cual me ha pe mi ido con inua
el odaje y ap endizaje con inuo con es a iloso ía, que es u ilizada de o ma p o esional. Po
odo ello el uso de un amewo k y en conc e o Codeigni e ha sido muy uc í e o y desde
luego muy ecomendable pa a desa olla cualquie aplicación web.
7.2 Uso de Lib e ía G oce y CRUD
En un p oyec o en el que el uso de ope aciones C.R.U.D. (C ea e, Read, Upda e, Dele e) es
undamen al, e a ine i able ene que usa algún ipo de he amien a pa a a ianza los
posibles e o es asociados a la en ada de in o mación del sis ema y la compa ibilidad con los
dis in os na egado es. Es a lib e ía, que es cien po cien compa ible con el F amewo k
Codeigni e , ue la solución. Así, no solo pe mi e un uso adecuado de la in o mación ecibida
sino que, además, es a au oma izada y es anda izada, pe mi iendo de mane a ácil e in ui i a
la c eación de sis ema de ges ión de con enidos o CMS (C ea e Managemen Sys em).
7.3 Uso de componen es, ecnologías y es a egias.
En es e apa ado de las conclusiones me gus a ía ema ca la impo ancia de la eu ilización e
in eg ación de código. G acias a lib e ías y componen es como JQue y, Ja aSc ip , JRa ing,
Boo s ap, CSS3, Spinne y o as ha sido posible mos a un buen aspec o y uncionalidad.
Resul a imp escindible y ecomendable en es e ipo de p oyec os u iliza los ci ados elemen os
que colabo an de o ma ac i a al desa ollo de las aplicaciones.
92
Bi bucke , el con ol de e siones p i ado, pa a el desa ollo de la aplicación web ha supues o
un componen e esencial pa a el a ance del p oyec o. Con es e p oyec o he conseguido
comp ende mejo y coge sol u a en la u ilización de es os elemen os que aho a me esul an
imp escindibles pa a desa olla cualquie aplicación web.
7.4 Resul ado inal del p oyec o
La conclusión inal de es e p oyec o es que ha inalizado cumpliendo los obje i os y me as que
se p opusie on eniendo como esul ado:
Un po al web con un sis ema de in o mación que pe mi e in oduci odos los da os
necesa ios pa a la desc ipción de o e as en u ismo u al con especial a ención en el
alojamien o.
Un sis ema de ges ión de con enidos que au ogene a páginas web p o esionales pa a las
emp esas del sis ema, con posibilidad de edición de páginas.
Un sis ema de ges ión de ese as y en a de p oduc os.
Un sis ema de clasi icación de p oduc os y páginas web del sis ema, median e o ación de
usua ios egis ados.
Es o pe mi e que la salida de es e p oyec o concluya con un po al web dónde se localizan
emp esas de u ismo u al, que se publici an y enden sus p oduc os.
8 T abajo Fu u o:
Es e p oyec o a pesa de su complejidad puede o ece oda ía mul i ud de mejo as. Su
expansión se puede ealiza po una g an can idad de en es, algunos de ellos se comen an a
con inuación:
1.-Ampliación de las plan illas del edi o web:
Ac ualmen e el edi o dispone de una sola plan illa con igu able muy básica, se pod ían
gene a mul i ud de plan illas con igu ables y añadi las en el edi o pa a que el usua io pudie a
selecciona la más idónea pa a su ac i idad come cial. Las plan illas pod ían ene dis in os
diseños, imágenes, combinaciones de colo es e iconos di e en es.
2.-In e az mul i-idioma:
En los iempos que co en ene una página en mul iples idiomas es algo básico. Al se una
ac i idad u ís ica los clien es po enciales pueden se de o os países. Po ello, se ía
ecomendable dispone de al menos uno o dos idiomas más. El F amewo k Codeigni e
dispone de una clase “Language Class”, és a pe mi e abs ae la lógica de la aplicación del
idioma de la in e az median e iche os donde se con iene la in o mación del idioma con las
e ique as, pudiendo habe an os idiomas como iche os disponibles.
93
3.-Comp as con a je a de c édi o:
En la ac ualidad no solo se paga con Paypal, los clien es debe ían dispone de o as o mas de
pago. Implemen a una pasa ela de pago con segu idad ci ada se á uno de los siguien es
pasos a ealiza .
Paypal o Paymil o e an se icios de pagos dónde implemen an oda la pasa ela de pago.
4.- Descuen os:
Las emp esas debe ían pode o e a descuen os de sus p oduc os, el p óximo paso debe ía
se la c eación de un ges o de descuen os. Es e ges o pe mi i ía la c eación de descuen os
empo ales asociados a p oduc os de la emp esa.
5.- P omociones:
Las emp esas debe ían dispone de un ges o de p omociones y la posibilidad de hace egalos
sob e los p oduc os o e ados, pa a ideliza a los clien es.
6.-Mejo a las búsquedas:
Se á necesa io c ea un sis ema de cali icaciones pa a o dena de mane a equi a i a y jus a
según la alo ación de los usua ios.
7.- In e az Web y Mó il:
Cambia pe iódicamen e el diseño de la web y el mó il, pa a da una imagen de luidez y
dinamismo y no es anca se en el pasado.
94
9 Anexos
9.1 Anexo I: Recu sos u ilizados
9.1.1 Recu sos so wa e
SO - Ubun u Linux.
Ubun u es un sis ema ope a i o basado en Debian y que se dis ibuye como so wa e lib e y
g a ui o, el cual incluye su p opio en o no de esc i o io denominado Uni y. Es á o ien ado al
usua io no el y p omedio, con un ue e en oque en la acilidad de uso y en mejo a la
expe iencia de usua io. Es á compues o de múl iple so wa e no malmen e dis ibuido bajo
una licencia lib e o de código abie o.
Cada seis meses se publica una nue a e sión de Ubun u. Es a ecibe sopo e po pa e de
Canonical du an e nue e meses po medio de ac ualizaciones de segu idad, pa ches
pa a bugs c í icos y ac ualizaciones meno es de p og amas. Las e siones LTS (Long Te m
Suppo ), que se libe an cada dos años, eciben sopo e du an e cinco años en los sis emas de
esc i o io y de se ido (Véase Imagen 14).
Imagen 14: S.O. Ubun u Linux
Se ha u ilizado mayo i a iamen e pa a hace p uebas en el se ido .
95
SO – Mac OSX.
Es el nomb e del sis ema ope a i o c eado po Apple pa a su línea de compu ado as
Macin osh. Es conocido po habe sido uno de los p ime os sis emas di igidos al g an público
en con a con una in e az g á ica compues a po la in e acción del mouse con en anas, Icono
y menús. Desde la exis encia del sis ema ope a i o en los p ime os años den o de la línea
Macin osh ha cen ado sus es ue zos en a o de que la máquina esul a a más ag adable al
usua io, di e enciándolo de o os sis emas con empo áneos, como MS-DOS, que e an un
desa ío écnico. El equipo de desa ollo del Mac OS o iginal incluía a Bill A kinson, Je
Raskin y Andy He z eld.
Es a ue la base del Mac OS clásico, desa ollado ín eg amen e po Apple, cuya p ime a e sión
io la luz en 1985. Su desa ollo se ex ende ía has a la e sión 9 del sis ema, lanzada en 1999.
A pa i de la e sión 10 (Mac OS X), el sis ema cambió su a qui ec u a o almen e y pasó a
basa se en Unix, sin emba go su in e az g á ica man iene muchos elemen os de las e siones
an e io es.
Hay una g an a iedad de e siones sob e cómo ue desa ollado el Mac OS o iginal y dónde se
o igina on las ideas subyacen es. Pese a es o documen os his ó icos p ueban la exis encia
en e el p oyec o Macin osh y el p oyec o Al o de Xe ox PARC. Las con ibuciones iniciales del
Ske chpad de I an Su he land y el On-Line Sys em de Doug Engelba ambién ue on
signi ica i as (Véase Imagen 15).
Imagen 15: S.O. MaCosX
96
PhpMyAdmin
PhpMyAdmin es una he amien a esc i a en PHP con la
in ención de maneja la adminis ación de MySQL a
a és de páginas web u ilizando In e ne . Ac ualmen e
puede c ea y elimina Bases de da os, c ea , elimina y
al e a ablas, bo a , edi a y añadi campos, ejecu a
cualquie sen encia SQL, adminis a cla es en campos,
adminis a p i ilegios, expo a da os en a ios
o ma os y es á disponible en 62 idiomas. Se encuen a
disponible bajo la licencia GPL. Es e p oyec o se encuen a igen e desde el año 1998, siendo
el mejo e aluado en la comunidad de desca gas de Sou ceFo ge.ne .
Es a he amien a ha sido u ilizada pa a ges iona la base da os. Se ha usado p incipalmen e en
el se ido de p uebas pa a la inse ción y consul a de da os en nues a aplicación web (Véase
Imagen 16).
Apache
El se ido HTTP Apache es un se ido web HTTP de
código abie o, pa a pla a o mas Unix (BSD,
GNU/Linux, e c.), Mic oso Windows, Macin osh y
o as, que implemen a el p o ocolo HTTP/1.12 y la
noción de si io i ual. Apache p esen a en e o as
ca ac e ís icas al amen e con igu ables, bases de da os
de au en icación y negociado de con enido, pe o ue
c i icado po la al a de una in e az g á ica que ayude
en
su con igu ación. Sus ca ac e ís icas p incipales y po el que es muy ex ensamen e u ilizado es
po se un se ido muy modula , de código abie o, mul i-pla a o ma y ex ensible.
Ha sido el se ido u ilizado pa a desa olla la aplicación en p ep oducción (Véase Imagen 17).
Gi Hub
Es una pla a o ma de desa ollo colabo a i o de so wa e que si e pa a
aloja p oyec os u ilizando el sis ema de con ol de e siones Gi . U iliza el
amewo k Ruby on Rails po Gi Hub, Inc. (an e io men e conocida como
Logical Awesome). El código se almacena de o ma pública, aunque
ambién se puede hace de o ma p i ada, c eando una cuen a de pago.
Es a he amien a se ha u ilizado pa a lle a el con ol de las e siones del
p oyec o y acili a el desa ollo colabo a i o de la aplicación (Véase
Imagen 18).
Imagen 16: PhpMyAdmin
Imagen 17: Apache
Imagen 18: Gi hub
97
Bi bucke
Bi bucke es un se icio de alojamien o basado
en web, pa a los p oyec os que u ilizan el
sis ema de con ol de e isiones Me cu ial y Gi .
Bi bucke o ece planes come ciales y g a ui os.
Se o ece cuen as g a ui as con un núme o
ilimi ado de eposi o ios p i ados (que puede
ene has a cinco usua ios en el caso de cuen as
g a ui as). Es e sis ema en línea pe mi e ges iona y compa i mul i ud de eposi o ios
públicos y p i ados en la nube. Desde sep iemb e de 2010, los eposi o ios p i ados no se
mues an en las páginas de pe il si un usua io sólo iene depósi os p i ados, el si io web da á
el mensaje “Es e usua io no iene eposi o ios”. El se icio es á esc i o en Py hon. Es simila a
Gi Hub, que u iliza Gi .
Es a he amien a se ha u ilizado jun o con Gi pa a lle a el con ol de las e siones del
p oyec o (Véase Imagen 19).
Mic oso Visio P emium 2010
Mic oso Visio es un so wa e de dibujo ec o ial pa a Mic oso
Windows. Visio comenzó a o ma pa e de los p oduc os de Mic oso
cuando ue adqui ida la compañía Visio en el año 2000. Las
he amien as que lo componen pe mi en ealiza diag amas de
o icinas, diag amas de bases de da os, diag amas de lujo de
p og amas, UML, y más, que pe mi en inicia al usua io en los
lenguajes de p og amación.
Es a he amien a se ha u ilizado pa a elabo a diag amas de
casos de uso y diag amas de bases de da os (Véase Imagen 20).
No epad++
No epad++ es un edi o de ex o y de código uen e lib e con
sopo e pa a a ios lenguajes de p og amación. De sopo e
na i o a Mic oso Windows. Se pa ece al Bloc de no as en
cuan o al hecho de que puede edi a ex o sin o ma o y de
o ma simple. No obs an e, incluye opciones más a anzadas
que pueden se ú iles pa a usua ios a anzados como
desa ollado es y p og amado es. Se dis ibuye bajo los
é minos de la Licencia Pública Gene al de GNU.
Se ha u ilizado es a he amien a pa a la edición de di e en es
ipos de código, ja asc ip , jque y, h ml, php, e c (Véase Imagen 21).
Imagen 9.1.1.1: Bi bucke
Imagen 19: Bi bucke
Imagen 20: Mic oso Visio
Imagen 21: No epad++
98
Sublime ex 2
Sublime Tex es un edi o de ex o y edi o de código uen e c eado en
Py hon desa ollado o iginalmen e como una ex ensión de Vim, con el
iempo ue c eando una iden idad p opia, po es o aún conse a un modo de
edición ipo i llamado Vin age mode. Se dis ibuye de o ma g a ui a, sin
emba go no es so wa e lib e o de código abie o, se puede ob ene
una licencia pa a su uso ilimi ado, pe o el no dispone de es a no
gene a ninguna limi ación más allá de una ale a cada cie o iempo.
Se ha u ilizado es a he amien a pa a edición de código php. (Véase Imagen
22)
HTML5
Rep esen a oda la es uc u a en la que es á undamen ada la web hoy
en día. Sus siglas signi ican Hype Tex Ma kup Languaje y hace e e encia
al lenguaje de ma cado pa a la elabo ación de páginas web. Es e lenguaje
se esc ibe en o ma de e ique as y se enca ga de de ini y es uc u a
cada uno de los elemen os que apa ecen en una página web. Fue
publicado po p ime a ez en In e ne po Tim Be ne s-Lee en 1991.
Ac ualmen e la W3C se enca ga de desa olla es ánda es abie os pa a
asegu a el co ec o c ecimien o de la web. La úl ima e sión de HTML,
HTML 5, o ece nue as e ique as pa a inc us a ideos y g á icos de
mane a di ec a en la p opia página en e o as muchas nue as ca ac e ís icas.
Se ha u ilizado pa a el desa ollo web y mó il de la aplicación (Véase Imagen 23).
PHP
Es un lenguaje de p og amación de uso gene al que abaja
del lado del se ido y ue diseñado pa a el desa ollo web
de con enido dinámico. Es uno de los p ime os lenguajes
que pe mi ió inco po a código di ec amen e en el HTML en
ez de un iche o ex e no que p ocesa a da os. Fo ma pa e
de la amilia de lenguajes in e p e ados y el se ido web es
quien se enca ga de p ocesa lo y gene a la página web
esul an e. Es posible u iliza lo an o en sis emas
UNIX como en Mic oso Windows apoyándose en se ido es como Apache, CGI e ISAPI. Es un
lenguaje que de i ó en su nacimien o (1995) de los lenguajes más comunes de p og amación
es uc u ada como C y Pe l. Ac ualmen e es uno de los lenguajes más u ilizados en el
desa ollo en la web y cons i uye una al e na i a a o os lenguajes como Mic oso ASP y las
páginas JSP de Ja a. PHP iene inco po ados unos puen es que pe mi en ealiza conexiones
con di e en es ipos de bases de da os como MySQL, Pos g eSQL, O acle,ODBC, Mic oso SQL
Se e , Fi ebi d y SQLi e (Véase Imagen 24).
Imagen 22: Sublime
Tex 2
Imagen 23: H ml5
Imagen 24: Php
99
AJAX
AJAX no es en sí un lenguaje de p og amación sino una
écnica de desa ollo web pa a c ea aplicaciones
in e ac i as. Como su p opio nomb e indica, Asynch onous
Ja aSc ip And XML, u iliza el lenguaje de p og amación
Ja aSc ip y la es uc u ación de da os XML en el lado del
clien e pa a comunica se de o ma asínc ona con el
se ido . Es a ecnología pe mi e modi ica elemen os de
la página web sin necesidad de eca ga la o i a o a página. De es a o ma es posible inc us a
da os ecupe ados de la B.B.D.D. en un elemen o conc e o de la página. Su p incipal en aja es
que e i a la necesidad de ca ga odo el con enido cuando sólo es necesa io e esca o ca ga
algunos elemen os de la página. Su uncionamien o es á basado en pe iciones ealizadas
median e XMLH pReques y p ocesado y modi icado de elemen os en la pa e del clien e con
Ja aSc ip y DOM (Véase Imagen 25).
CSS
Las hojas de es ilo en cascada son un lenguaje que pe mi en desc ibi
es ilos de un documen o (página web) a a és de ma cas. Es a
in o mación puede es a inc us ada en el p opio HTML o po el con a io
sepa ada en iche os .css. Su sin axis es á basado en uno o más selec o es
y un bloque de es ilos donde se de inen los alo es de las p opiedades del
documen o. Los selec o es pueden se únicos cuando se a a del id de un
elemen o o múl iple cuando se habla de una clase de elemen os (Véase
Imagen 26).
SQL
El SQL es un lenguaje de consul a es uc u ado de acceso a bases
de da os elaciones que pe mi e especi ica di e sos ipos de
ope aciones en e ellas. Una de sus ca ac e ís icas es el manejo
del álgeb a y el cálculo elaciones que pe mi en e ec ua
consul as con el in de ecupe a , de o ma sencilla, in o mación
en bases de da os, así como hace cambios en ella. En SQL una
sola sen encia puede equi ale a uno o más p og amas que se
u iliza ían en un lenguaje de bajo ni el o ien ado a egis os (Véase Imagen 27).
Imagen 25: Ajax
Imagen 26: Css3
Imagen 27: MySql
106
Nomb e:
Realiza ese a
Desc ipción:
El usua io una ez au en i icado puede selecciona un p oduc o
y hace una ese a en el sis ema.
P econdición:
Usua io au en i icado y isualizando p oduc o.
Pa áme os:
Nomb e
Apellidos
Di ección
País
P o incia/Municipio
Email
Código pos al
Telé ono
Fecha inicio
Fecha in
Nº Adul os
Nº Niños
Comen a ios
Flujo de Ejecución:
1.- El usua io isualiza el p oduc o.
2.-El usua io selecciona haciendo click en bo ón “Rese a ”.
3.-El usua io accede al o mula io de ese a.
4.-El usua io in oduce los da os necesa ios pa a comple a la
solici ud.
5.-Se calculan y mues an los da os de la ese a.
6.-El usua io hace click en el bo ón “Rese a aho a”.
7.- Se en ía un email con la in o mación de la ese a.
8.- La ese a se ha ealizado.
Caminos Al e na i os:
(4)E o es al in oduci da os.
Se emi e un mensaje in o mando al usua io y se uel e
al pun o de pa ida.
(4)No se dispone de a i as.
Se emi e un mensaje in o mando al usua io y se uel e
al pun o de pa ida.
(6)E o en conexión de base de da os no se han podido
gua da los da os.
Se emi e un mensaje in o mando al usua io y se uel e
al pun o de pa ida.
Pos condición:
Rese a ealizada
Tabla 11: Desc ipción caso de uso Realiza Rese a
107
Nomb e:
Inse a Comen a io
Desc ipción:
Una ez el usua io es e isualizando el p oduc o puede ealiza
comen a ios sob e sus alo aciones.
P econdición:
Usua io au en i icado y Visualizando el p oduc o.
Pa áme os:
Comen a io
Flujo de Ejecución:
1.- Al usua io se le mues a el p oduc o.
2.-El usua io in oduce el comen a io.
3.- El sis ema inse a el comen a io en la base de da os.
4.- El sis ema mues a el comen a io inse ado.
Caminos Al e na i os:
(3)E o en la base de da os
Se emi e un mensaje in o mando al usua io y se uel e
al pun o de pa ida.
(4)No exis en comen a ios
Se emi e un mensaje in o mando al usua io y se uel e
al pun o de pa ida.
Pos condición:
Comen a io gua dado.
Tabla 12: Desc ipción caso de uso Inse a Comen a io
108
Usua io Ges o :
A con inuación mos amos los casos de uso con más de alle pa a el usua io ges o (Véase
Tablas desde la 13 has a la 25).
Nomb e:
Visualiza Comen a ios
Desc ipción:
El usua io ges o puede busca comen a ios de p oduc os pa a
decidi si se mues an o no se mues an en el p oduc o
seleccionado.
P econdición:
Usua io au en i icado .
Pa áme os:
Ninguno.
Flujo de Ejecución:
1.- Al usua io se le mues a una lis a de p oduc os.
2.-El usua io selecciona un p oduc o.
3.- El sis ema mues a una abla con los comen a ios del
p oduc o seleccionado.
4.- El usua io selecciona un comen a io.
5.- El usua io isualiza el comen a io.
Caminos Al e na i os:
(3)E o en la base de da os
Se emi e un mensaje in o mando al usua io y se uel e
al pun o de pa ida.
(3)No exis en comen a ios
Se emi e un mensaje in o mando al usua io y se uel e
al pun o de pa ida.
Pos condición:
Ninguno.
Tabla 13: Desc ipción caso de uso Visualiza Comen a ios
109
Nomb e:
Visualiza Regis o
Desc ipción:
El usua io ges o una ez au en i icado puede isualiza odas
las ac i idades que se ealizan los ges o es en la aplicación web.
P econdición:
Usua io ges o au en i icado.
Pa áme os:
Ninguno.
Flujo de Ejecución:
1.- El usua io accede a la aplicación web.
2.-El usua io selecciona haciendo click en el menú p incipal
“Regis o de E en os”.
3.- El sis ema mues a median e una abla odos los da os
ela i os a los e en os.
Caminos Al e na i os:
(3) Los Da os no exis en en la base de da os.
Se emi e un mensaje in o mando al usua io y se uel e
al pun o de pa ida.
(3) No se puede conec a a la base de da os.
Se emi e un mensaje in o mando al usua io y se uel e
al pun o de pa ida.
Pos condición:
Ninguno.
Tabla 14: Desc ipción caso de uso Visualiza Regis o
110
Nomb e:
C ea Ta i a
Desc ipción:
El usua io ges o una ez au en i icado puede c ea una o
dis in as a i as pa a un p oduc o.
P econdición:
Usua io ges o au en i icado.
Pa áme os:
Fecha inicio
Fecha in
P ecio Adul o
P ecio Niño
Impues os
Tasas
Flujo de Ejecución:
1.- El usua io accede a la aplicación web.
2.-El usua io selecciona haciendo click en el menú p incipal
“Ges iona Ta i as”.
3.- El sis ema mues a median e una abla odos los p oduc os.
4.- El usua io selecciona un p oduc o.
5.- El usua io hace click en el icono nue a a i a.
6.- El usua io in oduce los da os.
7.- El sis ema gua da la nue a a i a.
Caminos Al e na i os:
(3)No exis en p oduc os.
Se emi e un mensaje in o mando al usua io y se uel e
al pun o de pa ida.
(6) E o de base de da os.
Se emi e un mensaje in o mando al usua io y se uel e
al pun o de pa ida.
Pos condición:
Ta i ca Gua dada.
Tabla 15: Desc ipción caso de uso C ea Ta i a
111
Nomb e:
Edi a Ta i a
Desc ipción:
El usua io ges o una ez au en i icado puede edi a una a i a
de p oduc o.
P econdición:
Usua io ges o au en i icado.
Pa áme os:
Fecha inicio
Fecha in
P ecio Adul o
P ecio Niño
Impues os
Tasas
Flujo de Ejecución:
1.- El usua io accede a la aplicación web.
2.-El usua io selecciona haciendo click en el menú p incipal
“Ges iona Ta i as”.
3.- El sis ema mues a median e una abla odos los p oduc os.
4.- El usua io selecciona un p oduc o.
5.- El usua io hace click en el icono edi a a i a.
6.- El usua io in oduce los da os.
7.- El sis ema modi ica la a i a seleccionada.
Caminos Al e na i os:
(3)No exis en p oduc os.
Se emi e un mensaje in o mando al usua io y se uel e
al pun o de pa ida.
(6) E o de base de da os.
Se emi e un mensaje in o mando al usua io y se uel e
al pun o de pa ida.
Pos condición:
Ta i a modi icada.
Tabla 16: Desc ipción caso de uso Edi a Ta i a
112
Nomb e:
Elimina Ta i a
Desc ipción:
El usua io ges o una ez au en i icado puede elimina una a i a
de un p oduc o.
P econdición:
Usua io ges o au en i icado.
Pa áme os:
Ninguno.
Flujo de Ejecución:
1.- El usua io accede a la aplicación web.
2.-El usua io selecciona haciendo click en el menú p incipal
“Ges iona Ta i as”.
3.- El sis ema mues a median e una abla odos los p oduc os.
4.- El usua io selecciona un p oduc o.
5.- El usua io hace click en el icono elimina a i a.
6.- El sis ema mues a un mensaje de segu idad.
7.- El usua io selecciona acep a
6.- El sis ema elimina la a i a seleccionada.
Caminos Al e na i os:
(3)No exis en p oduc os.
Se emi e un mensaje in o mando al usua io y se uel e
al pun o de pa ida.
(7) El usua io selecciona la opción cancela elimina .
Se emi e un mensaje in o mando al usua io y se uel e
al pun o de pa ida.
(8) E o la a i a no pudo elimina se.
Se emi e un mensaje in o mando al usua io y se uel e
al pun o de pa ida.
Pos condición:
Ta i a eliminada.
Tabla 17: Desc ipción caso de uso Elimina Ta i a
113
Nomb e:
Busca Ta i a
Desc ipción:
El usua io ges o una ez au en i icado puede busca una a i a
de un p oduc o.
P econdición:
Usua io ges o au en i icado.
Pa áme os:
P oduc o
Fecha inicio
Fecha in
P ecio Adul o
P ecio Niño
Impues os
Tasas
Flujo de Ejecución:
1.- El usua io accede a la aplicación web.
2.-El usua io selecciona haciendo click en el menú p incipal
“Ges iona Ta i as”.
3.- El sis ema mues a median e una abla odos los p oduc os.
4.- El usua io busca en la abla la a i a.
5.- El sis ema mues a el/los p oduc os asociados a es a a i a.
6.- El usua io selecciona el p oduc o.
7.- El usua io selecciona la a i a.
Caminos Al e na i os:
(3)No exis en p oduc os.
Se emi e un mensaje in o mando al usua io y se uel e
al pun o de pa ida.
(5) No exis en a i as con es os pa áme os.
Se emi e un mensaje in o mando al usua io y se uel e
al pun o de pa ida.
Pos condición:
Ninguno.
Tabla 18: Desc ipción caso de uso Busca Ta i a
114
Nomb e:
C ea Rese a
Desc ipción:
El usua io una ez au en i icado puede selecciona un p oduc o
y hace una ese a en el sis ema de o ma manual pa a un
clien e.
P econdición:
Usua io au en i icado.
Pa áme os:
Nomb e
Apellidos
Di ección
País
P o incia/Municipio
Email
Código pos al
Telé ono
Fecha inicio
Fecha in
Nº Adul os
Nº Niños
Comen a ios
Flujo de Ejecución:
1.- El usua io accede a la aplicación web.
2.-El usua io selecciona haciendo click en el menú p incipal
“Ges iona Rese as”.
3.- El sis ema mues a median e una abla odos los p oduc os.
4.- El usua io busca el p oduc o pa a ealiza la ese a.
5.- El usua io in oduce los da os en el o mula io de ese a.
6.- El sis ema gua da los da os de la ese a.
Caminos Al e na i os:
(3)No exis en p oduc os
Se emi e un mensaje in o mando al usua io y se uel e
al pun o de pa ida.
(5)E o al in oduci los da os
Se emi e un mensaje in o mando al usua io y se uel e
al pun o de pa ida.
(6)E o en conexión de base de da os no se han podido
gua da los da os.
Se emi e un mensaje in o mando al usua io y se uel e
al pun o de pa ida.
Pos condición:
Rese a ealizada.
Tabla 19: Desc ipción caso de uso C ea Rese a
115
Nomb e:
Elimina Rese a
Desc ipción:
El usua io una ez au en i icado elimina ese as de p oduc os
de o ma manual.
P econdición:
Usua io au en i icado.
Pa áme os:
Ninguno.
Flujo de Ejecución:
1.- El usua io accede a la aplicación web.
2.-El usua io selecciona haciendo click en el menú p incipal
“Ges iona Rese as”.
3.- El sis ema mues a median e una abla odos los p oduc os.
4.- El usua io busca el p oduc o pa a elimina la ese a.
5.- El usua io hace click en el icono elimina .
6.- El sis ema mues a un mensaje de segu idad.
7.- El usua io hace click en acep a .
8.- El sis ema elimina la ese a.
Caminos Al e na i os:
(3)No exis en p oduc os
Se emi e un mensaje in o mando al usua io y se uel e
al pun o de pa ida.
(7)El usua io cancela la ope ación de elimina .
Se emi e un mensaje in o mando al usua io y se uel e
al pun o de pa ida.
(8)E o en conexión de base de da os no se han podido
gua da los da os.
Se emi e un mensaje in o mando al usua io y se uel e
al pun o de pa ida.
Pos condición:
Rese a eliminada.
Tabla 20: Desc ipción caso de uso Elimina Rese a
122
Nomb e:
Edi a Ca ego ía
Desc ipción:
El usua io una ez au en i icado puede edi a ca ego ías de
p oduc os asociados a un se icio en el sis ema.
P econdición:
Usua io au en i icado.
Pa áme os:
Nomb e
Se icio
Imagen de Icono
Flujo de Ejecución:
1.- El usua io accede a la aplicación web.
2.-El usua io selecciona haciendo click en el menú p incipal
“Ges iona Ca ego ías”.
3.-El usua io selecciona haciendo click en el submenú p incipal
“Busca Ca ego ía”.
4.- El sis ema mues a una abla con las ca ego ías.
5.- El sis ema mues a un o mula io de edición de la ca ego ía.
6.- El usua io in oduce o modi ica los da os de la ca ego ía.
7.- El sis ema gua da la ca ego ía.
Caminos Al e na i os:
(4)No exis en ca ego ías.
Se emi e un mensaje in o mando al usua io y se uel e
al pun o de pa ida.
(6)E o es de da os
Se emi e un mensaje in o mando al usua io y se uel e
al pun o de pa ida.
(7)E o en conexión de base de da os no se han podido gua da
los da os.
Se emi e un mensaje in o mando al usua io y se uel e
al pun o de pa ida.
Pos condición:
Ca ego ía modi icada.
Tabla 27: Desc ipción caso de uso Edi a Ca ego ía
123
Nomb e:
Elimina Ca ego ía
Desc ipción:
El usua io una ez au en i icado puede elimina ca ego ías de
p oduc os asociados a un se icio en el sis ema.
P econdición:
Usua io au en i icado.
Pa áme os:
Ninguno.
Flujo de Ejecución:
1.- El usua io accede a la aplicación web.
2.-El usua io selecciona haciendo click en el menú p incipal
“Ges iona Ca ego ías”.
3.-El usua io selecciona haciendo click en el submenú p incipal
“Busca Ca ego ía”.
4.- El sis ema mues a una abla con las ca ego ías.
5.- El usua io hace click en el icono elimina .
6.- El sis ema mues a un mensaje de segu idad.
7.- El usua io hace click en acep a .
8.- El sis ema elimina la ca ego ía.
Caminos Al e na i os:
(4)No exis en ca ego ías.
Se emi e un mensaje in o mando al usua io y se uel e
al pun o de pa ida.
(7)El usua io cancela la ope ación elimina .
Se emi e un mensaje in o mando al usua io y se uel e
al pun o de pa ida.
(8)E o en conexión de base de da os no se han podido gua da
los da os.
Se emi e un mensaje in o mando al usua io y se uel e
al pun o de pa ida.
Pos condición:
Ca ego ía eliminada.
Tabla 28: Desc ipción caso de uso Elimina Ca ego ía
124
Nomb e:
Busca Ca ego ía
Desc ipción:
El usua io una ez au en i icado puede busca ca ego ías de
p oduc os asociados a un se icio den o d el sis ema.
P econdición:
Usua io au en i icado.
Pa áme os:
Nomb e
Se icio
Imagen de Icono
Flujo de Ejecución:
1.- El usua io accede a la aplicación web.
2.-El usua io selecciona haciendo click en el menú p incipal
“Ges iona Ca ego ías”.
3.-El usua io selecciona haciendo click en el submenú p incipal
“Busca Ca ego ía”.
4.- El usua io in oduce los pa áme os de búsqueda.
5.- El sis ema mues a una abla con las ca ego ías.
Caminos Al e na i os:
(5)No exis en ca ego ías.
Se emi e un mensaje in o mando al usua io y se uel e
al pun o de pa ida.
(5)E o en conexión de base de da os no se han podido gua da
los da os.
Se emi e un mensaje in o mando al usua io y se uel e
al pun o de pa ida.
Pos condición:
Ninguno.
Tabla 29: Desc ipción caso de uso Busca Ca ego ía
125
Nomb e:
C ea Usua io
Desc ipción:
El adminis ado una ez au en i icado puede c ea nue os
usua ios y aplica le los oles co espondien es.
P econdición:
Usua io adminis ado au en i icado.
Pa áme os:
Da os pe sonales (email, passwo d).
Rol de e minado según ipo de usua io.
Flujo de Ejecución:
1.- El usua io accede a la aplicación web.
2.-El usua io selecciona haciendo click en el menú p incipal
“Ges iona Usua ios”.
3.-El usua io selecciona haciendo click en el submenú p incipal
“C ea usua io”.
4.- El sis ema mues a un o mula io de c eación del usua io.
5.- El usua io in oduce los da os co espondien es.
6.- El sis ema gua da la ca ego ía.
Caminos Al e na i os:
(5)E o es de da os
Se emi e un mensaje in o mando al usua io y se uel e
al pun o de pa ida.
(6)E o en conexión de base de da os no se han podido gua da
los da os.
Se emi e un mensaje in o mando al usua io y se uel e
al pun o de pa ida.
Pos condición:
Usua io gua dado.
Tabla 30: Desc ipción caso de uso C ea Usua io
126
Nomb e:
Edi a Usua io
Desc ipción:
El usua io una ez au en i icado puede edi a usua ios
egis ados en el sis ema
P econdición:
Usua io adminis ado au en i icado.
Pa áme os:
Da os pe sonales (passwo d).
Flujo de Ejecución:
1.- El usua io accede a la aplicación web.
2.-El usua io selecciona haciendo click en el menú p incipal
“Ges iona Usua ios”.
3.-El usua io selecciona haciendo click en el submenú p incipal
“Busca Usua ios”.
4.- El sis ema mues a una abla con los usua ios.
5.-El usua io selecciona haciendo click en el icono de opciones
“Edi a ” del pe il de usua io a modi ica .
6.- El sis ema mues a un o mula io de edición del usua io.
7.- El usua io in oduce o modi ica los da os del usua io.
7.- El sis ema gua da la modi icación del usua io.
Caminos Al e na i os:
(4)No exis en usua ios.
Se emi e un mensaje in o mando al usua io y se uel e
al pun o de pa ida.
(6)E o es de da os
Se emi e un mensaje in o mando al usua io y se uel e
al pun o de pa ida.
(7)E o en conexión de base de da os no se han podido gua da
los da os.
Se emi e un mensaje in o mando al usua io y se uel e
al pun o de pa ida.
Pos condición:
Usua io modi icado.
Tabla 31: Desc ipción caso de uso Edi a Usua io
127
Nomb e:
Elimina Usua io
Desc ipción:
El usua io una ez au en i icado puede elimina un usua io en el
sis ema.
P econdición:
Usua io adminis ado au en i icado.
Pa áme os:
Ninguno.
Flujo de Ejecución:
1.- El usua io accede a la aplicación web.
2.-El usua io selecciona haciendo click en el menú p incipal
“Ges iona Usua ios”.
3.-El usua io selecciona haciendo click en el submenú p incipal
“Busca Usua ios”.
4.- El sis ema mues a una abla con los usua ios.
5.- El usua io hace click en el icono elimina .
6.- El sis ema mues a un mensaje de segu idad.
7.- El usua io hace click en acep a .
8.- El sis ema elimina el usua io.
Caminos Al e na i os:
(4)No exis e el usua io.
Se emi e un mensaje in o mando al usua io y se uel e
al pun o de pa ida.
(7)El usua io cancela la ope ación elimina .
Se emi e un mensaje in o mando al usua io y se uel e
al pun o de pa ida.
(8)E o en conexión de base de da os no se han podido gua da
los da os.
Se emi e un mensaje in o mando al usua io y se uel e
al pun o de pa ida.
Pos condición:
Usua io eliminado.
Tabla 32: Desc ipción caso de uso Elimina Usua io
128
Nomb e:
Busca Usua io
Desc ipción:
El usua io una ez au en i icado puede busca usua ios den o
del sis ema.
P econdición:
Usua io adminis ado au en i icado.
Pa áme os:
Usua io
Rol
Es ado
Flujo de Ejecución:
1.- El usua io accede a la aplicación web.
2.-El usua io selecciona haciendo click en el menú p incipal
“Ges iona Usua ios”.
3.-El usua io selecciona haciendo click en el submenú p incipal
“Busca Usua ios”.
4.- El usua io in oduce los pa áme os de búsqueda.
5.- El sis ema mues a una abla con los usua ios.
Caminos Al e na i os:
(5)No exis en usua ios.
Se emi e un mensaje in o mando al usua io y se uel e
al pun o de pa ida.
(5)E o en conexión de base de da os no se han podido gua da
los da os.
Se emi e un mensaje in o mando al usua io y se uel e
al pun o de pa ida.
Pos condición:
Ninguno.
Tabla 33: Desc ipción caso de uso Busca Usua io
129
Nomb e:
C ea Se icio
Desc ipción:
El usua io una ez au en i icado puede c ea nue os se icios en
el sis ema.
P econdición:
Usua io adminis ado au en i icado.
Pa áme os:
Nomb e
Desc ipción del se icio
Imagen de Icono
Flujo de Ejecución:
1.- El usua io accede a la aplicación web.
2.-El usua io selecciona haciendo click en el menú p incipal
“Ges iona Se icios”.
3.-El usua io selecciona haciendo click en el submenú p incipal
“C ea Se icio”.
4.- El sis ema mues a un o mula io de c eación del se icio
5.- El usua io in oduce los da os del se icio.
6.- El sis ema gua da el se icio.
Caminos Al e na i os:
(5)E o es de da os
Se emi e un mensaje in o mando al usua io y se uel e
al pun o de pa ida.
(6)E o en conexión de base de da os no se han podido gua da
los da os.
Se emi e un mensaje in o mando al usua io y se uel e
al pun o de pa ida.
Pos condición:
Se icio gua dado.
Tabla 34: Desc ipción caso de uso C ea Se icio
130
Nomb e:
Edi a Se icio
Desc ipción:
El usua io una ez au en i icado puede edi a se icios en el
sis ema.
P econdición:
Usua io adminis ado au en i icado.
Pa áme os:
Nomb e
Se icio
Imagen de Icono
Flujo de Ejecución:
1.- El usua io accede a la aplicación web.
2.-El usua io selecciona haciendo click en el menú p incipal
“Ges iona Se icios”.
3.-El usua io selecciona haciendo click en el submenú p incipal
“Busca Se icio”.
4.- El sis ema mues a una abla con los se icios.
5.- El sis ema mues a un o mula io de edición del se icio.
6.- El usua io in oduce o modi ica los da os del se icio.
7.- El sis ema gua da el se icio.
Caminos Al e na i os:
(4)No exis en se icios.
Se emi e un mensaje in o mando al usua io y se uel e
al pun o de pa ida.
(6)E o es de da os
Se emi e un mensaje in o mando al usua io y se uel e
al pun o de pa ida.
(7)E o en conexión de base de da os no se han podido gua da
los da os.
Se emi e un mensaje in o mando al usua io y se uel e
al pun o de pa ida.
Pos condición:
Se icio modi icado.
Tabla 35: Desc ipción caso de uso Edi a Se icio
131
Nomb e:
Elimina Se icio
Desc ipción:
El usua io una ez au en i icado puede elimina se icios en el
sis ema.
P econdición:
Usua io adminis ado au en i icado.
Pa áme os:
Ninguno.
Flujo de Ejecución:
1.- El usua io accede a la aplicación web.
2.-El usua io selecciona haciendo click en el menú p incipal
“Ges iona Se icios”.
3.-El usua io selecciona haciendo click en el submenú p incipal
“Busca Se icio”.
4.- El sis ema mues a una abla con los se icios.
5.- El usua io hace click en el icono elimina .
6.- El sis ema mues a un mensaje de segu idad.
7.- El usua io hace click en acep a .
8.- El sis ema elimina el se icio.
Caminos Al e na i os:
(4)No exis en se icios.
Se emi e un mensaje in o mando al usua io y se uel e
al pun o de pa ida.
(7)El usua io cancela la ope ación elimina .
Se emi e un mensaje in o mando al usua io y se uel e
al pun o de pa ida.
(8)E o en conexión de base de da os no se han podido gua da
los da os.
Se emi e un mensaje in o mando al usua io y se uel e
al pun o de pa ida.
Pos condición:
Se icio eliminado.
Tabla 36: Desc ipción caso de uso Elimina Se icio
138
' alue'
'maxleng h'
'size'
's yle'
=> 'usua io',
=> 'usua io',
=> 'na alia_na alia',
=> '100',
=> '50',
=> 'wid h:50%',
);
echo o m_inpu ($da a);
// P oduci ía:
<inpu ype=" ex " name="usua io" id="usua io" alue="na alia_na alia"
maxleng h="100" size="50" s yle="wid h:50%" />
Si quisie a que su o mula io con u ie a algún da o adicional, como Ja asc ip , pod ía
pasá selo en una cadena como e ce pa áme o:
o m_passwo d()
Es a unción es idén ica en odos los aspec os a la unción o m_inpu () an e io sal o que
pe mi e gene a un ipo "passwo d".
o m_upload()
Es a unción es idén ica en odos los aspec os a la unción o m_inpu () an e io sal o que
pe mi e gene a un ipo " ile", pe mi iéndole usa la pa a subi a chi os.
o m_ ex a ea()
Es a unción es idén ica en odos los aspec os a la unción o m_inpu () an e io sal o que
pe mi e gene a un ipo " ex a ea". No a: En luga de los a ibu os "maxleng h" y "size" del
ejemplo an e io , debe á es ablece " ows" y "cols".
o m_d opdown()
Le pe mi e c ea un campo de lis a desplegable es ánda . El p ime pa áme o con end á el
nomb e del campo, el segundo pa áme o con end á un a ay asocia i o de opciones y el
139
e ce pa áme o con end á el alo que desee que se seleccione. También puede pasa le un
a ay de a ios elemen os median e el e ce pa áme o y CodeIgni e c ea á un selec o
múl iple. Ejemplo:
$js = 'onClick="alguna_ uncion()"';
echo o m_inpu ('usua io', 'na alia_na alia', $js);
$opciones = a ay(
's' => 'Camisa S',
'm' => 'Camisa M',
'l' => 'Camisa L',
'xl'=> 'Camisa XL',
);
$camisas_en_ en a = a ay('s', 'l');
echo o m_d opdown('camisas', $opciones, 'l');
// P oduci ía:
selec name="camisas">
<op ion alue="s">Camisa S</op ion>
<op ion alue="m">Camisa M</op ion>
<op ion alue="l" selec ed="selec ed">Camisa L</op ion>
<op ion alue="xl">Camisa XL</op ion>
</selec >
echo o m_d opdown('camisas', $opciones, $camisas_en_ en a);
// P oduci ía:
<selec name="camisas" mul iple="mul iple">
<op ion alue="s" selec ed="selec ed">Camisa S</op ion>
<op ion alue="m">Camisa M</op ion>
<op ion alue="l" selec ed="selec ed">Camisa L</op ion>
<op ion alue="xl">Camisa XL</op ion>
</selec >
140
Si quisie a que la ape u a <selec > con u ie a da os adicionales, como un a ibu o id o
Ja aSc ip , puede pasa le una cadena como cua o pa áme o:
Si el a ay pasado como $opciones es mul idimensional, o m_d opdown() p oduci á un
<op g oup> con la cla e del a ay como ó ulo.
o m_mul iselec ()
Le pe mi e c ea un campo de selección múl iple es ánda . El p ime pa áme o con end á el
nomb e del campo, el segundo pa áme o con end á un a ay asocia i o de opciones, y el
e ce pa áme o con end á el alo o alo es que desea que es én seleccionados. El uso de
pa áme os es idén ico a usa el an e io o m_d opdown(), sal o po supues o que el nomb e
del campo end á que usa la sin axis del a ay POST, po ejemplo oo[].
o m_ ieldse ()
Le pe mi e gene a los campos " ieldse "/"legend".
$js = 'id="camisas" onChange="alguna_ uncion();"';
echo o m_d opdown('camisas', $opciones, 'la ge', $js);
echo o m_ ieldse ('In o mación de la di ección');
echo "<p>con enido del conjun o de campos aquí</p> n";
echo o m_ ieldse _close();
// P oduce
< ieldse >
<legend>In o mación de la di ección</legend>
<p>con enido del conjun o de campos aquí</p>
</ ieldse >
Simila a o as unciones, puede en ia un a ay asocia i o en el segundo pa áme o si p e ie e
es ablece a ibu os adicionales.
$a ibu es = a ay('id' => 'add ess_in o', 'class' => 'add ess_in o');
echo o m_ ieldse ('In o mación de la di ección', $a ibu es);
echo "<p>con enido del conjun o de campos aquí</p> n";
echo o m_ ieldse _close();
// P oduce
< ieldse id="add ess_in o" class="add ess_in o">
141
<legend>In o mación de la di ección</legend>
<p>con enido del conjun o de campos aquí</p>
</ ieldse >
o m_ ieldse _close()
P oduce una e ique a </ ieldse > de cie e. La única en aja de usa es a unción es que le
pe mi e pasa da os a ella, los que se ag ega án debajo de la e ique a. Po ejemplo:
o m_checkbox()
Le pe mi e gene a un campo de casilla de e i icación. Ejemplo sencillo:
El e ce pa áme o con iene un booleano TRUE/FALSE pa a de e mina si la caja se debe ía
ma ca o no.Simila a las o as unciones de o mula io en es e helpe , ambién puede pasa le
a la unción un a ay de a ibu os:
$s ing = "</di ></di >";
echo ieldse _close($s ing);
// P oduci ía:
</ ieldse >
</di ></di >
echo o m_checkbox('newsle e ', 'accep ', TRUE);
// P oduci ía:
<inpu ype="checkbox" name="newsle e " alue="accep " checked="checked" />
$da a = a ay(
'name' => 'newsle e ',
'id' => 'newsle e ',
' alue' => 'accep ',
'checked' => TRUE,
's yle' => 'ma gin:10px',
);
echo o m_checkbox($da a);
// P oduci ía:
inpu ype="checkbox" name="newsle e " id="newsle e " alue="accep "
142
checked="checked" s yle="ma gin:10px" />
Como con o as unciones, si quisie a que la e ique a con enga da os adicionales, como
Ja aSc ip , puede pasa le una cadena como cua o pa áme o:
$js = 'onClick="alguna_ uncion()"';
echo o m_checkbox('newsle e ', 'accep ', TRUE, $js);
Es a unción es idén ica en odos los aspec os a la unción o m_checkbox() an e io , sal o que
es ablece un ipo " adio".
o m_submi ()
Le pe mi e gene a un bo ón en ia es ánda . Ejemplo sencillo:
Simila a o as unciones, puede pasa un a ay asocia i o en el p ime pa áme o si p e ie e
es ablece sus p opios a ibu os. El e ce pa áme o le pe mi e ag ega da os adicionales al
o mula io, como Ja aSc ip .
o m_label()
Le pe mi e gene a un <label>. Ejemplo sencillo:
Simila a o as unciones, puede pasa un a ay asocia i o en el e ce pa áme o si p e ie e
es ablece sus p opios a ibu os.
echo o m_submi ('mi_submi ', 'En ia mensaje');
// P oduci ía:
<inpu ype="submi " name="mi_submi " alue="En ia mensaje" />
echo o m_label('Cual es su nomb e?', 'use name');
// P oduci ía:
<label o ="use name">Cual es su nomb e?</label>
$a ibu es = a ay(
'class' => 'mi_clase',
's yle' => 'colo : #000;',
);
echo o m_label('Cual es su nomb e?', 'use name', $a ibu es);
// P oduci ía:
143
<label o ="use name" class="mi_clase" s yle="colo : #000;">Cual es su nomb e?
</label>
o m_ ese ()
Le pe mi e gene a un bo ón es ánda de ese . El uso es idén ico a o m_submi ().
o m_bu on()
Le pe mi e gene a un elemen o de bo ón es ánda . Mínimamen e puede pasa el nomb e del
bo ón y con enido en el p ime y segundo pa áme os:
echo o m_bu on('nomb e','con enido');
// P oduci ía
<bu on name="nomb e" ype="bu on">con enido</bu on>
O puede pasa le un a ay asocia i o con eniendo cualquie da o que desee que su o mula io
con enga:
$da a = a ay(
'name' => 'bu on',
'id' => 'bu on',
' alue' => ' ue',
' ype' => ' ese ',
'con en ' => 'Rese '
);
echo o m_bu on($da a);
// P oduci ía:
<bu on name="bu on" id="bu on" alue=" ue" ype=" ese ">Rese </bu on>
Si desea que su o mula io con enga algunos da os adicionales, como Ja aSc ip , puede
pasa los como una cadena en el e ce pa áme o:
o m_close()
P oduce una e ique a </ o m> de cie e. La única en aja de usa es a unción es que le
pe mi e pasa da os a ella, los que se ag ega án debajo de la e ique a. Po ejemplo:
$js = 'onClick="alguna_ uncion()"';
144
echo o m_bu on('mi_bo on', 'Clic aquí', $js);
$s ing = "</di ></di >";
echo o m_close($s ing);
// P oduci ía:
</ o m>
</di ></di >
o m_p ep()
Le pe mi e usa con segu idad HTML y ca ac e es ales como comillas den o de elemen os de
o mula io sin ompe el o mula io. Conside e es e ejemplo:
Como la cadena an e io con iene un conjun o de comillas, ese causa á que el o mula io se
ompa. La unción o m_p ep con ie e HTML pa a que se pueda usa en o ma segu a:
$s ing = 'Aquí hay una cadena que con iene ex o en e "comillas".';
<inpu ype=" ex " name="mi_ o mula io" alue="$s ing" />
<inpu ype=" ex " name="mi_ o mula io" alue="<?php echo o m_p ep($s ing); ?>" />
No a: Si usa alguna de las unciones del Helpe Fo m lis adas en es a página los alo es del
o mula io se p epa a án au omá icamen e, po lo que no hay necesidad de llama a es a
unción. Úsela solamen e si es á c eando sus p opios elemen os de o mula io.
se _ alue()
Le pe mi e es ablece el alo de una en ada de o mula io o de un ex a ea. Tiene que
suminis a el nomb e del campo median e el p ime pa áme o de la unción. El segundo
pa áme o (opcional) le pe mi e es ablece un alo po de ec o pa a el o mula io. Ejemplo:
El o mula io an e io mos a á "0" cuando se ca gue po p ime a ez. se _selec ().
Si usa un menú <selec >, es a unción le pe mi e mos a el elemen o de menú que se
seleccionó. El p ime pa áme o iene que con ene el nomb e del menú selec , el segundo
pa áme o iene que con ene el alo de cada elemen o y el e ce pa áme o (opcional) le
pe mi e es ablece un elemen o po de ec o (usa el booleano TRUE/FALSE). Ejemplo:
<inpu ype=" ex " name="can idad"
alue="<?php echo se _ alue('can idad', '0'); ?>" size="50" />
<selec name="mi_selec ">
<op ion alue="uno" <?php echo se _selec ('mi_selec ', 'uno', TRUE); ?> >
Uno</op ion>
145
<op ion alue="dos" <?php echo se _selec ('mi_selec ', 'dos'); ?> >
Dos</op ion>
<op ion alue=" es" <?php echo se _selec ('mi_selec ', ' es'); ?> >
T es</op ion>
</selec >
se _checkbox()
Le pe mi e mos a una casilla de e i icación en el es ado en que se en ió. El p ime
pa áme o iene que con ene el nomb e de la casilla de e i icación, el segundo pa áme o
iene que con ene su alo y el e ce pa áme o (opcional) le pe mi e es ablece un elemen o
po de ec o (usa el booleano TRUE/FALSE). Ejemplo:
se _ adio()
Le pe mi e mos a bo ones de adio en el es ado en que se en ia on. Es a unción es idén ica
a la unción se _checkbox() an e io .
<inpu ype="checkbox" name="mi_casilla" alue="1"
<?php echo se _checkbox('mi_casilla', '1'); ?> />
<inpu ype="checkbox" name="mi_casilla" alue="2"
<?php echo se _checkbox('mi_casilla', '2'); ?> />
<inpu ype=" adio" name="mi_ adio" alue="1"
<?php echo se _ adio('mi_ adio', '1', TRUE); ?> />
<inpu ype=" adio" name="mi_ adio" alue="2"
<?php echo se _ adio('mi_ adio', '2'); ?> />
9.3.2.4 Helpe Da abase
CodeIgni e iene con una clase de base de da os abs ac a muy ápida y comple a que
sopo a an o las es uc u as adicionales como los pa ones Ac i e Reco d. Las unciones de
base de da os o ecen una sin axis cla a y sencilla.
Inicio Rápido: Código de Ejemplo
146
La siguien e página con iene código de ejemplo mos ando como se usa la clase da abase.
Pa a ob ene de alles comple os, po a o lea las páginas indi iduales que desc iben cada
unción.
Inicializa la Clase Da abase
El siguien e código ca ga e inicializa la clase da abase basado en los alo es de su
con igu ación:
$ his->load->da abase();
Una ez ca gada la clase, es á lis a pa a usa se como se desc ibe a con inuación.
Consul a Es ánda con Resul ados Múl iples (Ve sión Obje os)
$que y = $ his->db->que y('SELECT nomb e, i ulo, email FROM mi_ abla');
o each ($que y-> esul () as $ ow)
{
echo $ ow-> i ulo;
echo $ ow->nomb e;
echo $ ow->email;
}
echo 'Resul ados o ales: ' . $que y->num_ ows();
La unción esul () an e io de uel e un a ay de obje os. Ejemplo: $ ow-> i ulo.
Consul a Es ánda con Resul ados Múl iples (Ve sión A ay)
$que y = $ his->db->que y('SELECT nomb e, i ulo, email FROM mi_ abla');
o each ($que y-> esul _a ay() as $ ow)
{
echo $ ow[' i ulo'];
echo $ ow['nomb e'];
echo $ ow['email'];
}
147
La unción esul _a ay() an e io de uel e un a ay de índices de a ay es ánda . Ejemplo:
$ ow[' i ulo'].
Comp oba Resul ados
Si ejecu a consul as que pueden no p oduci esul ados, le aconsejamos p oba p ime o de
usa la unción num_ ows():
$que y = $ his->db->que y("SU CONSULTA");
i ($que y->num_ ows() > 0)
{
o each ($que y-> esul () as $ ow)
{
echo $ ow-> i ulo;
echo $ ow->nomb e;
echo $ ow->cue po;
} }
Consul a Es ánda con Resul ado Simple
La unción ow() an e io de uel e un obje o. Ejemplo: $ ow->nomb e.
Consul a Es ánda con Resul ado Simple (Ve sión A ay)
La unción ow_a ay() an e io de uel e un a ay. Ejemplo: $ ow['nomb e'].
Inse ción Es ánda
Consul a Ac i e Reco d
El Pa ón Ac i e Reco d le da una o ma simpli icada de de ol e los da os:
$que y = $ his->db->que y('SELECT nomb e FROM mi_ abla LIMIT 1');
$ ow = $que y-> ow();
echo $ ow->nomb e;
$que y = $ his->db->que y('SELECT nomb e FROM mi_ abla LIMIT 1');
$ ow = $que y-> ow_a ay();
echo $ ow['nomb e'];
250
Ges iona Rese as:
El usua io ges o pod á en cualquie momen o gene a ese as de modo manual sob e
p oduc os de la emp esas (Véase Imagen 103).
Imagen 103: Ges ión de ese as.
Pa a pode ealiza ope aciones sob e las ese as de los p oduc os el usua io debe á hace
click en el bo ón “Rese as” (Véase Imagen 104).
Imagen 104: Rese as
Seguidamen e el usua io puede selecciona la ese a o c ea una nue a (Véase Imagen 105).
Imagen 105: Edi a ese as.
251
C ea Rese a:
Pa a pode añadi una ese a el usua io debe á hace clic en el bo ón “Añadi Rese a” (Véase
Imagen 106).
Imagen 106: Añadi ese a.
Al usua io se le mues a un o mula io de c eación de ese as de un p oduc o. Se debe án
odos los campos del o mula io pa a c ea la ese a (Véase Imagen 107).
Imagen 107: Fo mula io de añadi ese a.
Al usua io se le mues a un lis ado de odas las ese as disponibles de la emp esa. El usua io
puede selecciona una ese a y ealiza una se ie de ope aciones (Véase Imagen 108):
Imagen 108: Acciones de edi a ese as.
Edi a Rese a:
El usua io pod á añadi o modi ica in o mación de la ese a median e un o mula io (Véase
Imagen 109).
252
Imagen 109: Fo mula io de edi a ese a.
Elimina Rese a:
El usua io puede elimina la ese a seleccionada. El sis ema le mues a un mensaje de ale a
de segu idad y el usua io pod á decidi si elimina la ese a o cancela la ope ación (Véase
Imagen 110).
Imagen 110: Elimina ese a.
253
Visualiza Rese a:
El usua io pod á isualiza un lis ado de a i as asociadas al p oduc o (Véase Imagen 111).
Imagen 111: Visualiza ese a.
Ges iona Comen a ios:
El usua io iene la opción de ocul a o mos a comen a ios en los p oduc os de la página web
de la emp esa. Al usua io se le mues a una lis a de los p oduc os disponibles (Véase Imagen
112).
Imagen 112: Ges iona comen a ios.
254
El usua io iene la posibilidad modi ica la isualización de comen a ios (Véase Imagen 113).
Imagen 113: Edi a comen a ios.
Al usua io se le mues a un lis ado de los comen a ios del p oduc o (Véase Imagen 114).
Imagen 114: Edi a comen a ios de p oduc o.
El usua io puede modi ica el es ado de isualización del comen a io seleccionado (Véase
Imagen 115).
Imagen 115: Es ado del comen a io.
255
Ges iona Web:
El usua io pod á con igu a el aspec o isual de las páginas web de la emp esa (Veáse Imagen
166).
Imagen 116: Edi o web.
El usua io ges o pod á ealiza dis in as acciones en el edi o :
Acciones de la página web p incipal (Véase Imagen 117).
Imagen 117: Menu de acciones de página p incipal.
Gua da web:
El usua io pod á gua da los cambios ealizados. Has a que el usua io no haga clic en gua da la
página empo al no aplica á los cambios a la página web o iginal.
Reinicia :
El usua io puede einicia a la página web o iginal en cualquie momen o y deshace los
cambios.
Edi a Imágenes de Slide :
El usua io puede edi a las imágenes del slide p incipal( Véase Imagen 118).
256
Imagen 118: Gale ía de imágenes del Slide p incipal.
Social Media:
El usua io puede c ea , edi a , isualiza y elimina da os de enlaces a las edes sociales más
impo an es (Véase Imagen 119).
Imagen 119: Social media.
Edi a página p incipal:
El usua io puede edi a los da os de la página p incipal median e un o mula io (Véase Imagen
120).
257
Imagen 120: Fo mula io de edición de página p incipal.
Página de in o mación:
El usua io pod á edi a la página de in o mación median e un o mula io (Véase Imagen 121).
Imagen 121: Edición web de página de in o mación.
258
Página de Se icios:
El usua io pod á edi a la página de se icios median e un o mula io (Véase Imagen 122).
Imagen 122: Edición web de página de se icios.
Regis o de E en os:
Al usua io se le mues a un lis ado de odas las ac i idades ealizadas po la emp esa en la
aplicación po odos los usua ios del sis ema. Si lo desea el usua io puede il a la in o mación
(Véase Imagen 123).
Imagen 123: Viso de ac i idades.
259
El usua io puede la e in o mación ampliada de los egis os (Véase Imagen 124).
Imagen 124: Ve egis o de ac i idad.
266
9.6 Anexo VI: Indice de igu as comple o
Figu a 1: Modelo de dominio de usua io adminis ado ............................................................ 28
Figu a 2: Modelo de dominido de usua io clien e ...................................................................... 29
Figu a 3: Modelo de dominio de usua io ges o ......................................................................... 30
Figu a 4: Diag ama en idad elación ena u al_db. ..................................................................... 32
Figu a 5: Diag ama en idad elación db_s a is ics ...................................................................... 33
Figu a 6: Modelo elacional ena u al_db. ................................................................................... 35
Figu a 7: Modelo elacional db_s a is ics ................................................................................... 36
Figu a 8: Ac o es ......................................................................................................................... 38
Figu a 9: Caso de uso Regis a ................................................................................................... 42
Figu a 10: Casos de uso ol clien e .............................................................................................. 42
Figu a 11: Caso de uso Ges iona Comen a ios .......................................................................... 43
Figu a 12: Caso de uso Visualiza Regis o .................................................................................. 43
Figu a 13: Caso de uso Ges iona P oduc o ................................................................................ 44
Figu a 14: Caso de uso Ges iona Ca ego ia ............................................................................... 45
Figu a 15: Caso de uso Ges iona Se icio .................................................................................. 46
Figu a 16: Caso de uso Ges iona Usua ios ................................................................................. 46
Figu a 17: P o o ipo de in e az de usua io ges o ..................................................................... 48
Figu a 18: P o o ipo de in e az de p oduc o ............................................................................. 49
Figu a 19: P o o ipo de in e az de Edi o Web .......................................................................... 50
Figu a 20: P o o ipo de página web p incipal ............................................................................. 51
Figu a 21: Diag ama de clases Ca ego ias ................................................................................... 63
Figu a 22: Diag ama de clases Home .......................................................................................... 64
Figu a 23: Diag ama de clases Regis o de e en os .................................................................... 65
Figu a 24: Diag ama de clases comen a ios ................................................................................ 67
Figu a 25: Diag ama de clases p oduc os ................................................................................... 68
Figu a 26: Diag ama de clases se icios ...................................................................................... 69
Figu a 27: Diag ama de clases si es ............................................................................................ 70
Figu a 28: Diag ama de clases edi o web .................................................................................. 71
Figu a 29: Diag ama de clases webedi o in o ............................................................................. 72
Figu a 30: Diag ama de clases webedi o se ices ...................................................................... 73
Figu a 31: Diag ama de clases websi e ....................................................................................... 74
Figu a 32: Diag ama de clases a i a ........................................................................................... 75
Figu a 33: Diag ama de clases login ............................................................................................ 76
Figu a 34: Diag ama de clases ese a ........................................................................................ 77
Figu a 35: Diag ama de clases sa eindex .................................................................................... 78
Figu a 36: Diag ama de clases usua io ........................................................................................ 79
Figu a 37: Diag ama de clases Paypal ......................................................................................... 80
Figu a 38: Diag ama de clases gua da se icio .......................................................................... 81
Figu a 39: Diag ama de clases e e encias .................................................................................. 82
Figu a 40: Diag ama de clases sa ein o ...................................................................................... 83
Figu a 41: Diag ama de clases login ............................................................................................ 84
Figu a 42: Diag ama de clases login2 .......................................................................................... 85
267
Figu a 43: Diag ama de secuencia c ea usua io ........................................................................ 86
Figu a 44: Diag ama de secuencia c ea se icio ........................................................................ 87
Figu a 45: Diag ama de secuencia c ea ese a ........................................................................ 87
Figu a 46: Diag ama de secuencia inse a comen a io ............................................................. 88
Figu a 47: Diag ama de secuencia comp a p oduc o ................................................................ 89
268
9.7 Anexo VII: Indice de ablas comple o
Tabla 1: Plani icación y Tempo ización ....................................................................................... 27
Tabla 2: Lis ado de ac o es y oles .............................................................................................. 39
Tabla 3: Lis ado de ac o es y sus obje i os ................................................................................. 41
Tabla 4: Lis a de Casos de uso ..................................................................................................... 47
Tabla 5: Desc ipción caso de uso Regis a se ........................................................................... 102
Tabla 6: Desc ipción caso de uso Visualiza Web ..................................................................... 103
Tabla 7: Desc ipción caso de uso Visualiza P oduc o .............................................................. 103
Tabla 8: Desc ipción caso de uso Inicia Sesión ........................................................................ 104
Tabla 9: Desc ipción caso de uso Ce a Sesión ........................................................................ 104
Tabla 10: Desc ipción caso de uso Realiza Comp a ................................................................. 105
Tabla 11: Desc ipción caso de uso Realiza Rese a ................................................................. 106
Tabla 12: Desc ipción caso de uso Inse a Comen a io ........................................................... 107
Tabla 13: Desc ipción caso de uso Visualiza Comen a ios ...................................................... 108
Tabla 14: Desc ipción caso de uso Visualiza Regis o .............................................................. 109
Tabla 15: Desc ipción caso de uso C ea Ta i a ........................................................................ 110
Tabla 16: Desc ipción caso de uso Edi a Ta i a ........................................................................ 111
Tabla 17: Desc ipción caso de uso Elimina Ta i a .................................................................... 112
Tabla 18: Desc ipción caso de uso Busca Ta i a ...................................................................... 113
Tabla 19: Desc ipción caso de uso C ea Rese a ..................................................................... 114
Tabla 20: Desc ipción caso de uso Elimina Rese a ................................................................ 115
Tabla 21: Desc ipción caso de uso Busca Rese a ................................................................... 116
Tabla 22: Desc ipción caso de uso C ea P oduc o ................................................................... 117
Tabla 23: Desc ipción caso de uso Edi a P oduc o .................................................................. 118
Tabla 24: Desc ipción caso de uso Elimina P oduc o .............................................................. 119
Tabla 25: Desc ipción caso de uso Busca P oduc o ................................................................. 120
Tabla 26: Desc ipción caso de uso C ea Ca ego ía .................................................................. 121
Tabla 27: Desc ipción caso de uso Edi a Ca ego ía ................................................................. 122
Tabla 28: Desc ipción caso de uso Elimina Ca ego ía .............................................................. 123
Tabla 29: Desc ipción caso de uso Busca Ca ego ía ................................................................ 124
Tabla 30: Desc ipción caso de uso C ea Usua io ..................................................................... 125
Tabla 31: Desc ipción caso de uso Edi a Usua io .................................................................... 126
Tabla 32: Desc ipción caso de uso Elimina Usua io ................................................................. 127
Tabla 33: Desc ipción caso de uso Busca Usua io ................................................................... 128
Tabla 34: Desc ipción caso de uso C ea Se icio ..................................................................... 129
Tabla 35: Desc ipción caso de uso Edi a Se icio .................................................................... 130
Tabla 36: Desc ipción caso de uso Elimina Se icio ................................................................. 131
Tabla 37: Desc ipción caso de uso Busca Se icio ................................................................... 132
269
10 Bibliog a ía
Luke Welling, Lau a Thomson. “Desa ollo web con PHP y MySQL”. Anaya Mul imedia.
Ma Doyle. “PHP P ác ico”. Anaya Mul imedia.
Julie C. Meloni. “HTML5, CSS3 y Ja aSc ip ”. Anaya Mul imedia.
Da id Flanagan, “JQue y”. O’Really.
Douglas C ock o d. “Ja aSc ip The Good Pa s”. O’Really.
Zacha y Kessin. “HTML5 Applica ions”.O’Really.
PHP:
h p://www.php.ne
G oce y C ud:
h p://www.g oce yc ud.com/
Codeigni e :
h p://ellislab.com/codeigni e /use -guide/
Image Moo:
h p://www.ma moo.com/digi al-d ibble/codeigni e /image_moo/
Image C ud:
h p://www.g oce yc ud.com/image-c ud
Ajax:
h p://www.w3schools.com/Ajax/
JQue y:
h p://api.jque y.com/
JQue y UI:
h p://jque yui.com/
Boo s ap:
h p://ge boo s ap.com/2.3.2/index.h ml
h p:// o awesome.gi hub.io/Fon -Awesome/
Ja asc ip :
h p://www.w3schools.com/js/DEFAULT.asp
270
h p://www.w3.o g/s anda ds/webdesign/sc ip .h ml
Paypal:
h ps://de elope .paypal.com/webapps/de elope /applica ions/accoun s
JRa ing:
h p://demos.myjque yplugins.com/j a ing/
Email Codeigni e :
h p://www. ena o.16mb.com/ u o ial-codeigni e -class-e-mail
HTML5:
h p://www.w3.o g/s anda ds/webdesign/h mlcss.h ml
h p://www.w3schools.com/h ml/h ml5_in o.asp
CSS:
h p://www.w3schools.com/css/css3_in o.asp