S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t....

82
S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION Y DESARROLLO TECNOLOGICO INTERMEDIARIO FACILITADOR DEL COMERCIO ELECTRONICO PARA PYMES BASADO EN WEB T E S I S PARA OBTENER EL GRADO DE M A E S T R O E N C I E N C I A S EN CIENCIAS DE LA COMPUTACION P R E S E N T A : R O B E R TO V E G A C A S T I L L O DIRECTOR DE TESIS DR. JOAQUIN PEREZ ORTEGA CODIRECTOR DE TESIS DR. RODOLFO A. PAZOS RANGEL CUERNAVACA, MORELOS, MEXICO AGOSTO DEL 2005

Transcript of S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t....

Page 1: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

S.E.P. S.E.S. D.G.E.S.T.

CENTRO NACIONAL DE INVESTIGACION Y DESARROLLO TECNOLOGICO

INTERMEDIARIO FACILITADOR DEL COMERCIO ELECTRONICO PARA PYMES BASADO EN WEB

T E S I S PARA OBTENER EL GRADO DE M A E S T R O E N C I E N C I A S EN CIENCIAS DE LA COMPUTACION P R E S E N T A : R O B E R TO V E G A C A S T I L L O

DIRECTOR DE TESIS DR. JOAQUIN PEREZ ORTEGA

CODIRECTOR DE TESIS DR. RODOLFO A. PAZOS RANGEL

CUERNAVACA, MORELOS, MEXICO AGOSTO DEL 2005

Page 2: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

i

Dedicatorias

A mi esposa, por todo su amor, apoyo, paciencia y comprensión que me

permitieron concluir mis estudios de postgrado.

A mi hija, por ser mi inspiración, motivación y la fuerza para continuar en

los tiempos difíciles.

Page 3: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

ii

Agradecimientos Al Centro Nacional de Investigación y Desarrollo Tecnológico por darme

la oportunidad de realizar mis estudios de postgrado.

A COSNET y SEP por brindarme su apoyo económico, ya que sin éste

no hubiera sido posible la conclusión de esta tesis.

A mis compañeros de generación por ser grandes amigos y brindarme

su apoyo incondicional en todo momento.

A mi director de tesis Dr. Joaquín Pérez Ortega, por guiarme y

orientarme durante el desarrollo de mi trabajo de tesis.

Page 4: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

iii

Tabla de contenido

Lista de figuras……………………………………………………………………. vi

Lista de tablas……………………………………………………………………... vii

1. Introducción……………………………………………………………………. 1

1.1. Contexto de la Tesis……………………………………………………... 3

1.2. Planteamiento del problema……………………………………………. 5

1.3. Objetivos…………………………………………………………………... 7

1.4. Organización del documento…………………………………………… 8

2. Marco Teórico…………………………………………………………………. 9

2.1. Comercio electrónico…………………………………………………….. 10

2.2. Aplicaciones Web………………………………………………………… 15

2.3. Arquitecturas Web orientadas a tecnologías java……………………. 16

2.4. Tecnologías java orientadas a aplicaciones Web……………………. 20

2.5. Marcos de trabajo para aplicaciones Web…………………………….. 23

3. Estado del arte………………………………………………………………… 29

3.1. Trabajos de tesis relacionados…………………………………………. 30

3.2. Tabla comparativa de trabajos relacionados………………………….. 34

4. Arquitectura y diseño del sistema…………………………………………… 35

4.1. Esquema general de operación del sistema………………………….. 36

4.2. Arquitectura detallada del sistema……………………………………... 36

4.3. Detalles en la implementación de los módulos del prototipo……….. 39

4.3.1. Módulo de administración………………………………………… 39

4.3.2. Módulo de catálogos……………...………………………………. 43

4.3.3. Módulo de diseño………………………………………………… 44

4.3.4. Sitio de comercio electrónico…………………………………….. 45

Page 5: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

iv

5. Plan de pruebas………………………………………………………………. 48

5.1. Consideraciones generales de los casos de prueba………………… 49

5.2. Casos de prueba…………………………………………………………. 50

6. Conclusiones…………………………………………………………………... 69

6.1. Conclusiones generales…………………………………………………. 70

6.2. Trabajos futuros………………………………………………………….. 70

6.3. Publicaciones…………………………………………………………….. 72

Referencias……………………………………………………………………….. 73

Page 6: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

v

Lista de figuras

Figura 1.1 Arquitectura del prototipo de la tesis “Arquitectura de un Sistema de

Comercio Electrónico para Pequeñas y Medianas Empresas”.

Figura 1.2. Arquitectura del prototipo de la tesis “Desarrollo de un Prototipo de

Comercio Electrónico Incorporando Sistemas de Pago”.

Figura 2.1 Modelo MVC.

Figura 2.2 Modelo 1.

Figura 2.3 Modelo 2.

Figura 2.4 Modelo 2X.

Figura 2.5 Petición de una página JSP

Figura 2.6 Pasos del ciclo de vida petición-respuesta JavaServer Faces.

Figura 2.7 Esquema del marco de trabajo Struts.

Figura 4.1 Esquema general del sistema.

Figura 4.2 Arquitectura del submódulo de creación de sitios de CE del módulo

de administración.

Figura 4.3 Arquitectura del submódulo de edición del módulo de catálogos.

Figura 4.4 Arquitectura del submódulo de diseño del módulo de catálogos.

Figura 4.5 Arquitectura del submódulo de publicación del módulo de catálogos.

Figura 4.6 Creación de sitios de comercio electrónico.

Figura 4.7 Consulta de los sitios de comercio dentro de la plaza.

Figura 4.8 Reiniciar o detener aplicaciones dentro de la plaza.

Figura 4.9 Iniciar una aplicación ya registrada dentro de la plaza.

Figura 4.11 Agregar un nuevo producto al catálogo.

Figura 4.12 Modificar o eliminar un producto del catálogo.

Figura 4.13 Personalizar la apariencia del sitio de comercio electrónico.

Figura 4.14 Proceso de serialización.

Figura 4.15 Esquema del sitio de comercio electrónico.

Figura 4.16 Extensión del marco de trabajo Struts.

Figura 5.1 Contexto de la aplicación de comercio electrónico dentro del servidor

Web.

Figura 5.2. Menú del administrador.

Page 7: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

vi

Figura 5.3. Formulario para alta de sitio de comercio electrónico.

Figura 5.4. Confirmación de datos de sitio de comercio electrónico.

Figura 5.5. Confirmación de alta de sitio de comercio electrónico.

Figura 5.6. Resultados de la consulta del estado de los sitios existentes en la

plaza de comercio electrónico.

Figura 5.7. Elegir la aplicación de comercio electrónico a detener.

Figura 5.8. Confirmar detener la aplicación de comercio electrónico.

Figura 5.9. Confirmación de que la aplicación de comercio electrónico se

detuvo.

Figura 5.10. Confirmar reiniciar la aplicación de comercio electrónico.

Figura 5.11. Confirmación de que la aplicación de comercio electrónico se

reinició.

Figura 5.12. Confirmar iniciar la aplicación de comercio electrónico.

Figura 5.13. Confirmación de que la aplicación de comercio electrónico se

inició.

Figura 5.14. Confirmar eliminar la aplicación de comercio electrónico.

Figura 5.15. Confirmación de que la aplicación de comercio electrónico se

eliminó.

Figura 5.16. Menú de la empresa.

Figura 5.17. Formulario de captura de datos de nuevo producto.

Figura 5.18. Elegir imagen nuevo producto.

Figura 5.19 Elegir categoría nuevo producto.

Figura 5.20. Confirmar datos nuevo producto.

Figura 5.21. Confirmación eliminar producto del catálogo.

Figura 5.22. Elegir el producto a modificar.

Figura 5.23. Confirmación modificación de producto.

Figura 5.24. Lista de productos en el catálogo.

Figura 5.25. Datos de la empresa que publica el sitio de comercio electrónico.

Figura 5.26. Logotipo de la empresa que publica el sitio de comercio

electrónico.

Figura 5.27. Datos, logotipo y plantilla de diseño de la empresa que publica el

sitio de comercio electrónico.

Page 8: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

vii

Lista de tablas

Tabla 3.1. Tabla comparativa de trabajos relacionados

Page 9: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

1

Capítulo 1 Introducción

En este capítulo se exponen los antecedentes que motivaron la realización de

la presente tesis. Además se incluye la descripción del problema, los alcances,

limitaciones y los objetivos de la misma.

Page 10: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 1. Introducción

2

El Comercio Electrónico es una de las áreas de mayor evolución y

desarrollo en Internet durante los últimos años, debido principalmente a

factores tales como el crecimiento exponencial de los usuarios de Internet, el

desarrollo de nuevas herramientas de software, el interés por parte de las

empresas en participar en el comercio electrónico y la apertura de la banca

comercial para brindar servicios de transacciones en línea.

El concepto de comercio electrónico no solamente abarca actividades

tales como la compra-venta electrónica de bienes, información o servicios, sino

que incluye actividades previas y posteriores a la venta, tales como la

publicidad, la búsqueda de información, negociaciones, trámites

administrativos, etc.

Actualmente en México existen grandes empresas que utilizan Internet

como mecanismo de venta de sus productos y servicios; sin embargo, no es el

caso de las pequeñas y medianas empresas (PyMEs). Las PyMEs tienen

características muy diferentes a las de las grandes corporaciones, tanto en

organización como en recursos, por lo que requieren aplicaciones a la medida y

al alcance de sus posibilidades económicas.

Desde hace poco más de 2 años, dentro del CENIDET se ha trabajado

en un proyecto institucional, cuyo objetivo es desarrollar aplicaciones de

comercio electrónico orientadas a los modelos de negocio de las pequeñas y

medianas empresas de México. Los requerimientos principales de estas

aplicaciones de comercio electrónico son: bajo costo y fácil uso [Bravo 2003].

Actualmente se cuenta con un prototipo de comercio electrónico que

cumple con los requerimientos estipulados, sin embargo, la funcionalidad de

este prototipo es limitada, en lo particular, está orientado a una sola tienda, y el

mantenimiento tiene que hacerse directamente sobre el código fuente.

Debido a estas limitaciones se planeó el dar funciones de administración

adicionales a este prototipo, algunas de las cuales fueron desarrolladas en la

presente tesis.

Page 11: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 1. Introducción

3

1.1. Contexto de la tesis

El presente trabajo de tesis forma parte de un proyecto institucional cuyo

objetivo es desarrollar aplicaciones de comercio electrónico orientadas a los

modelos de negocio de las pequeñas y medianas empresas de México.

Previo a la realización del presente trabajo de tesis se desarrollaron dos

trabajos de tesis más sobre esta línea de investigación.

A) “Arquitectura de un Sistema de Comercio Electrónico para Pequeñas y

Medianas Empresas” [Baeza 2002].

B) “Desarrollo de un Prototipo de Comercio Electrónico Incorporando

Sistemas de Pago” [Bravo 2003].

A continuación se da un resumen de estos trabajos:

[Baeza 2002] su objetivo fue proponer la arquitectura de un sistema de

comercio electrónico que integre componentes de bajo costo, que esté

orientado a la pequeña y mediana empresa, e implementar un prototipo que

muestre las bondades de la arquitectura propuesta.

La Figura 1.1 muestra la arquitectura propuesta para el sitio de comercio

electrónico, misma que se utilizó para el desarrollo del prototipo de tesis.

Debido a que este prototipo fue pensado para ser de bajo costo, fue

desarrollado con herramientas de software de código abierto, tales como: el

sistema operativo Linux, SMBD PostgreSQL, Servidor Web Tomcat y Java

como lenguaje de programación.

Las características de este prototipo, desafortunadamente son limitadas;

concretamente, está orientado a una sola tienda, y el mantenimiento de los

catálogos se realiza por comandos sobre el SMBD del sistema. A pesar de esto

se han logrado incorporar funciones tales como: el manejo de un carrito de

Page 12: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 1. Introducción

4

compras, registro de los clientes y mecanismo de seguridad a través del

protocolo SSL, entre otras.

Figura 1.1 Arquitectura del prototipo de la tesis “Arquitectura de un Sistema de

Comercio Electrónico para Pequeñas y Medianas Empresas”

[Bravo 2003] Su objetivo principal fue el desarrollo e implementación de un

prototipo de comercio electrónico, de bajo costo, que incorpore sistemas de

pago por Internet, y que esté orientado a las pequeñas y medianas empresas

de México.

En general, dicho trabajo se realizó un análisis de los sistemas de pago

por Internet, con el objeto de determinar los requisitos establecidos por los

bancos para el manejo de transacciones en línea. Como resultado de este

análisis se desarrolló un nuevo prototipo, con el fin de demostrar la factibilidad

de implementación de un sistema de comercio electrónico orientado a las

pequeñas y medianas empresas que incorpore sistemas de pago en línea. La

arquitectura de este sistema se representa en la Figura 1.2.

Page 13: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 1. Introducción

5

Figura 1.2. Arquitectura del prototipo de la tesis “Desarrollo de un Prototipo de

Comercio Electrónico Incorporando Sistemas de Pago”

1.2. Planteamiento del problema

La problemática general para las pequeñas y medianas empresas que desean

incursionar en el comercio electrónico, se presenta principalmente en la etapa

de implantación y en la etapa de mantenimiento del sitio de comercio

electrónico.

Durante la etapa de implantación, el monto de la inversión necesaria

para el establecimiento de un sitio de comercio electrónico es muchas veces

una limitante para empresas con pocos recursos.

Page 14: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 1. Introducción

6

La conjunción de esfuerzos individuales (cooperativas, sociedades

anónimas) en busca de la disminución de costos ha sido una alternativa

probada que ha obtenido buenos resultados. Aplicando esta práctica a la

tecnología de comercio electrónico, nos encontramos con agrupaciones de

sitios de comercio electrónico denominadas plazas virtuales de comercio

electrónico, las cuales ofrecen ventajas en cuanto a la disminución de costos

de operación, mantenimiento y comercialización.

Durante la etapa de mantenimiento, el problema más común tiene que

ver con la forma en que se han de actualizar los datos de los productos

publicados en el sitio de comercio electrónico.

Actualmente, en muchos sitios de comercio electrónico se invierte

mucho tiempo y esfuerzo para mantener actualizada la información de los

productos que ahí se comercializan. Muchos de estos sitios todavía hacen la

actualización de sus catálogos de productos de manera manual. Al trabajar de

esta forma, se requiere de personal con conocimientos sobre la arquitectura del

sistema y sobre la tecnología utilizada para crear el sitio de comercio

electrónico.

Si consideramos el ejemplo de un sitio de comercio electrónico de

mediana magnitud, tal vez se requiera un número moderado de actualizaciones

al día. En cambio, si se trata de administrar varios sitios a la vez, se convierte

en un problema de considerable magnitud.

Cabe mencionar que se han hecho desarrollos tanto en empresas

dedicadas a proporcionar soluciones de tecnología Web, como en instituciones

de educación e investigación, para tratar de facilitar las labores de actualización

de catálogos de productos para sitios de comercio electrónico. Sin embargo, no

son muchos los que han invertido su tiempo en el desarrollo de prototipos

orientados a pequeñas y medianas empresas.

Page 15: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 1. Introducción

7

Existen muchas propuestas de arquitecturas y tecnologías para el

desarrollo de sitios y plataformas de comercio electrónico, sin embargo ninguna

ha destacado tanto sobre las demás como para considerarse una tendencia y

mucho menos un estándar.

En lo que se refiere a México, la AMECE (Asociación Mexicana de

Estándares de Comercio Electrónico) en conjunto con la AMCE (Asociación

Mexicana de Comercio Electrónico) se han dado a la tarea de definir

estándares y proponer soluciones para ofrecer a las empresas sistemas de

comercio electrónico. Actualmente tienen disponible un sistema de publicación

de catálogos denominado “cat@logalo” [AMECE 2005], el cual permite a las

empresas que lo soliciten, publicar su catálogo de productos y a su vez

consultar el catálogo de todas las empresas registradas, a través de un

directorio de empresas. Desgraciadamente, es necesario que la empresa que

adopte estas soluciones cuente previamente con una infraestructura

informática de alto costo (que permita la implantación de un

DATAWAREHOUSE), infraestructura que no existe en la mayoría de las

PyMEs de México.

El problema a resolver en la presente tesis consiste en el desarrollo de

un módulo de software para la administración de catálogos de productos para

un sitio de comercio electrónico y un módulo adicional que represente una

plaza virtual, que permita la adición de nuevos sitios, así como su modificación

y su salida del sistema, que cuente con un esquema de seguridad y que sea de

fácil uso.

1.3. Objetivos

El objetivo general de esta tesis es el de desarrollar un prototipo de un sistema

computacional que represente una plaza virtual de comercio electrónico

orientada a las pequeñas y medianas empresas de México.

Page 16: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 1. Introducción

8

Objetivos específicos.

a) Desarrollar un sistema computacional que represente una plaza virtual

de comercio electrónico, que cuente con herramientas de administración

para la misma.

b) Desarrollar una herramienta de software de ayuda al diseño y

mantenimiento de catálogos de productos, que permita la definición,

publicación y actualización de catálogos por las propias empresas.

1.4. Organización del documento

El presente documento de tesis se organiza de la siguiente manera:

Capítulo 2: En este capítulo se presenta la teoría relacionada con la

implementación de sistemas de comercio electrónico.

Capítulo 3: En este capítulo se presenta un resumen de los trabajos de

comercio electrónico relacionados con la presente tesis en los ámbitos

nacional y mundial.

Capítulo 4: En este capítulo se presenta la arquitectura de los módulos

del prototipo de tesis, así como los detalles de implementación del mismo.

Capítulo 5: En este capítulo se describen los casos de prueba para el

prototipo. En cada caso se especifica su objetivo, el procedimiento a seguir y

los resultados de dicho procedimiento.

Capítulo 6: En este capítulo se presentan las conclusiones y

aportaciones del presente trabajo de tesis. Además se sugieren trabajos

futuros, los cuales pueden ser desarrollados a partir de los resultados

obtenidos en este proyecto.

Page 17: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

9

Capítulo 2

Marco Teórico

En este capítulo se presenta la teoría relacionada con la implementación de

sistemas de comercio electrónico.

Page 18: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 2. Marco Teórico

10

2.1. Comercio electrónico

El comercio electrónico se puede definir como cualquier forma de transacción o

intercambio de información comercial basada en la transmisión de datos sobre

redes de comunicación como Internet. En este sentido, el concepto de

comercio electrónico no solamente incluye la compra y venta electrónica de

bienes, información o servicios, sino también el uso de la red para actividades

anteriores o posteriores a la venta, como los siguientes [Ministerio 1999]:

• La publicidad.

• La búsqueda de información sobre productos y proveedores.

• La negociación entre comprador y vendedor sobre el precio y

condiciones de entrega.

• La atención al cliente antes y después de la venta.

• El cumplimiento de trámites administrativos relacionados con la actividad

comercial.

• La colaboración entre empresas con negocios comunes (a largo plazo).

Estas actividades no necesariamente tienen que estar presentes en todos

los escenarios de comercio electrónico. En el comercio electrónico participan

como actores principales las empresas, los consumidores, las instituciones

bancarias y las administraciones públicas.

2.1.1. Tipos de comercio electrónico

A) Entre empresas B2B (business to business)

Este tipo de comercio se realiza entre dos o más empresas con el objetivo de

intercambiar bienes o servicios, a través de Internet o de otras redes de

comunicaciones. Es comúnmente utilizado para el intercambio de

presupuestos, pedidos y facturas entre otros.

Page 19: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 2. Marco Teórico

11

B) Entre empresa y consumidor B2C (business to consumer)

En este caso, el intercambio de bienes y servicios a través de Internet o de

otras redes de comunicaciones, se realiza entre empresas y clientes finales. El

crecimiento y popularidad de este tipo de comercio electrónico se debe a que

agiliza y minimiza los costos, ofreciendo productos de forma más rápida y

económica.

C) Entre empresa y administración B2A (business to administration)

Este tipo de comercio abarca todas las transacciones entre las empresas y las

organizaciones gubernamentales; por ejemplo, el pago de impuestos o

servicios a través de Internet.

D) Entre consumidor y administración C2A (consumer to administration)

Este tipo de comercio vincula la administración y los consumidores finales. A

través de esta modalidad del comercio electrónico, los gobiernos pueden

posibilitar el pago de algunos servicios.

2.1.2. Elementos de un sistema de comercio electrónico

Una tienda virtual es un tipo concreto de aplicación Web, donde todo el diseño

se orienta al máximo rendimiento del proceso comercial. Los elementos más

comunes dentro de un sistema de comercio electrónico son los siguientes [IAE

2005]:

A) Catálogo de productos

Se trata del vértice de la aplicación, y su finalidad es la de mostrar el abanico

de productos o servicios ofertados en la tienda virtual.

Page 20: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 2. Marco Teórico

12

El catálogo de productos ha de ser estructurado en familias o categorías,

permitiendo así la facilidad de localización de un artículo dentro de un rango de

productos concretos.

Del mismo modo, la información de los productos en el catálogo ha de

ser completa, proveyendo la información necesaria para la identificación única

e inequívoca del artículo.

B) Buscador de productos

Cuando un catálogo de productos contiene una cierta cantidad de artículos, es

altamente recomendable la incorporación a la tienda virtual de un buscador de

productos. De esta forma se elimina la necesidad de tener que navegar por

diferentes familias de productos para alcanzar un producto concreto.

C) Carrito de compras

En el carrito de compras es donde propiamente se realiza la acción del

comercio electrónico, puesto que es el lugar en el que se registran los artículos

solicitados por el cliente o distribuidor, y a partir del cual se iniciará el proceso

de compra electrónica.

D) Medios de pago

Para que una operación comercial se lleve a cabo, se debe hacer efectiva una

transacción económica por la cual el cliente abona a la empresa el importe

requerido por ésta, según se indica en el carrito de la compra.

Los medios de pago son aquellos intermediarios entre la empresa y el

cliente por las cuales se hacen efectivas las transacciones económicas, y son

de vital importancia para el ejercicio del comercio electrónico.

Page 21: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 2. Marco Teórico

13

La importancia de los medios de pago viene determinada por la

percepción que de éstos tienen los clientes, puesto que pueden constituirse en

una barrera si les provocan desconfianza.

E) Seguimiento de pedidos

Una tienda virtual no sólo debe proporcionarle al cliente un medio fácil y

confiable de compra de productos o servicios, sino que debe considerar en

todo momento la satisfacción del cliente. El plazo entre el proceso de compra y

la recepción del producto es vital para la percepción del sistema de comercio

electrónico por parte del cliente, y por ello resulta muy satisfactorio el contar

con información continua sobre el estado del pedido.

F) Integración en buscadores

El éxito de una tienda virtual viene determinado por las ventas que se generen

a partir de ella, y el número de éstas es un factor directamente proporcional al

número de visitas que reciba.

La principal fuente de visitas en Internet son los buscadores: más del

80% de visitantes provienen de los principales motores de búsqueda. Por eso

es vital que exista una adecuada integración de una tienda virtual en los

buscadores más usados, permitiendo que los productos ofertados puedan ser

localizados por los potenciales clientes a través de ellos.

G) Administración remota

Al igual que el comercio tradicional, el escaparate y el catálogo de productos

deben ser actualizados periódicamente. Un adecuado sistema de comercio

electrónico para compras por Internet, debe permitir renovar con facilidad la

información publicada de los productos.

Page 22: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 2. Marco Teórico

14

De la misma forma, la tienda virtual debe proveer al administrador un

método eficiente para las labores administrativas, permitiendo consultar

pedidos, entregas, cobros, etc.

H) Integración en la infraestructura informática existente

Una adecuada solución para tiendas virtuales no debe proporcionar tan sólo

soluciones puntuales de presencia en Internet, sino que todo el proceso

comercial debe estar integrado en la infraestructura informática existente en la

empresa: la gestión de artículos, clientes y pedidos debe estar perfectamente

integradas, convirtiendo a la tienda virtual en un escaparate más de la

empresa.

2.1.3. Beneficios del comercio electrónico

Una adecuada implantación de un sistema de comercio electrónico apropiado

repercute en importantes beneficios [PADSOFT 2005]:

A) Para la empresa

• Crecimiento de mercado: las fronteras desaparecen, expandiendo la

cobertura geográfica, permitiéndole así captar nuevos clientes.

• Reducción de costos: Internet es un medio económico, por lo que

ahorrará en comparación con los medios de comunicación tradicionales

(teléfono, fax, correo ordinario, etc.).

• Reducción de tiempos de producción: la velocidad en las

comunicaciones por Internet hace posible la minimización de tiempos de

espera, acelerando el proceso productivo en cualquiera de sus etapas.

• Posición estratégica (competitividad): la empresa es capaz de rivalizar

con las de su sector, ofreciendo mejores servicios.

Page 23: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 2. Marco Teórico

15

• Amortización a corto plazo: la inversión realizada se amortiza

rápidamente con los nuevos clientes adquiridos y por la satisfacción de

sus clientes existentes.

• Percepción por parte del cliente: el cliente adquiere una imagen de

empresa dinámica y flexible que se adapta a las nuevas tendencias

tecnológicas, proyectando en el cliente la imagen de empresa

emprendedora.

B) Para los clientes

• Disponibilidad: los clientes podrán establecer comunicación con la

empresa sin depender de horarios, pudiendo relacionarse en el

momento en que lo consideren necesario.

• Velocidad: los accesos a los servicios no requieren colas de espera ni

trámites especiales, por lo que los clientes obtienen lo que necesitan en

el instante.

• Comodidad: a los clientes no les supone desempeñar esfuerzos

adicionales para conseguir sus objetivos, los pueden llevar a cabo

cómodamente sentados frente a sus computadoras.

• Flexibilidad: los clientes pueden realizar cualquier tipo de operaciones y

consultas adecuándolas a sus necesidades en todo momento.

• Economía: los clientes ahorrarán tiempo y dinero en las comunicaciones

establecidas con la empresa.

• Atención personalizada: podrá adecuar los contenidos ofrecidos a los

clientes, procurándoles los servicios a su medida.

2.2. Aplicaciones Web

Una "aplicación Web" es un conjunto de páginas Web cuyo contenido puede

variar de forma automatizada dependiendo de fuentes internas o externas

(bases de datos o sistemas servidores de información), las cuales, el usuario

Page 24: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 2. Marco Teórico

16

invoca usando un navegador el cual contacta algún servidor vía Internet. Para

los usuarios y navegadores pasa usualmente inadvertida a diferencia entre

contactar un servidor Web que tenga solamente páginas estáticas y uno que

contenga solamente aplicaciones Web, pero a diferencia de las páginas

estáticas, las aplicaciones Web crean sus páginas dinámicamente. Un sitio

Web construido dinámicamente utiliza un programa de computadora para

conseguir el dinamismo. Este tipo de aplicaciones dinámicas pueden ser

escritas en algún tipo de lenguaje de programación [ZOPE 2005].

2.3. Arquitecturas Web orientadas a tecnologías java

La arquitectura Web provee la manera más simple y eficiente de construir,

administrar y mantener cualquier tipo de aplicación Web, optimizando los

costos y tiempos de desarrollo. Las arquitecturas de las aplicaciones Web

están evolucionando hacia modelos más avanzados que les permitan

adaptarse a los nuevos enfoques de desarrollo. Siguiendo esta tendencia, en

los últimos años se han propuesto múltiples arquitecturas y marcos de trabajo

orientados a tecnologías Java, las cuales se describen brevemente a

continuación.

2.3.1. MVC

En el paradigma MVC (Figura 2.1), los datos que maneja la aplicación, la lógica

de negocio y la vista que el usuario recibe están explícitamente separados en 3

objetos, cada cual especializado en su tarea. La vista gestiona el aspecto de la

presentación gráfica (look & feel) que recibe el usuario [Kofman 2003].

El controlador interpreta los datos que da el usuario coordinando la vista

y el modelo para que la aplicación se comporte conforme a lo esperado. Y por

último, el modelo maneja los datos y el estado de la aplicación, responde a las

peticiones de información sobre su estado que hace la vista y responde a las

instrucciones que le da el controlador para que modifique su estado.

Page 25: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 2. Marco Teórico

17

Figura 2.1 Modelo MVC.

2.3.2. Modelo 1

En los inicios de los JSPs (JavaServer Pages), la forma natural de trabajar era

la de usar estos mismos para realizar casi todas las tareas dentro de la

aplicación Web, tales como: extraer los parámetros de la solicitud HTTP, hacer

llamadas a las clases de la lógica del negocio (implementada en los

JavaBeans) o directamente dentro de los JSPs, manejar la sesión de HTTP

(HyperText Transfer Protocol) y generar el documento HTML (HyperText

Markup Language) de salida. Este enfoque de programación fue denominado

“Modelo 1” y es mostrado en la Figura 2.2.

Aunque el Modelo 1 es ideal para aplicaciones sencillas, no lo es tanto

para aplicaciones más complejas, debido a que hace difícil el mantenimiento, la

escalabilidad y el rehúso de componentes, el código tiende a no ser modular, y

se duplica gran cantidad de código ya que varias páginas implementan las

mismas rutinas [Orbeon 2004].

Page 26: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 2. Marco Teórico

18

Figura 2.2 Modelo 1.

2.3.3. Modelo 2

El Modelo 2, mostrado en la Figura 2.3, es una implementación de la

arquitectura MVC (Model-View-Controller) orientada a tecnologías Java. En el

Modelo 2 el controlador está constituido por servlets, los cuales tienen la

función de controlar el flujo de la aplicación, el modelo está integrado por

JavaBeans, los cuales encapsulan la lógica del negocio, y la vista se construye

con JSPs, cuya función es la de elaborar el código HTML de salida.

Figura 2.3 Modelo 2.

Page 27: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 2. Marco Teórico

19

Este modelo permite una separación más clara de la lógica del negocio y

la presentación, haciendo más fáciles las tareas de mantenimiento y rehúso de

componentes. Los elementos de la vista no deben conocer los objetos del

modelo y viceversa. El ejemplo más popular de un marco de trabajo que

implementa el Modelo 2 es un proyecto de Apache Jakarta llamado Struts

[Seshadri 2004].

2.3.4. Modelo 2X

Los marcos de trabajo basados en el Modelo 2 son un gran paso en la

dirección correcta, sin embargo, en algunos casos no es óptimo entregar

código HTML directamente de los JSPs al navegador Web del usuario.

Figura 2.4 Modelo 2X.

El modelo 2X, mostrado en la Figura 2.4, surge como una evolución del

Modelo 2, con el objeto de dar solución a la necesidad de desarrollar

aplicaciones multicanal; es decir, aplicaciones Web que pueden ser accedidas

desde diferentes tipos de clientes remotos. Así una aplicación Web multicanal

Page 28: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 2. Marco Teórico

20

podrá ejecutarse desde una PDA (Personal Digital Assistant), un teléfono móvil,

o desde cualquier navegador en una computadora personal. La forma para

poder publicar la misma aplicación para distintos dispositivos, es usando

plantillas XSL (eXtensible Stylesheet Language) para transformar los datos

contenidos en documentos XML (eXtensive Markup Language) al formato de

salida que se ajuste al dispositivo que hace la solicitud, ya sea WML (Wireless

Markup Language), HTML, etc [Orbeon 2004].

2.4. Tecnologías java orientadas a aplicaciones Web

A). JavaServer Pages

La tecnología de las JavaServer Pages (JSP) aparece para aliviar la molestia

que supone generar páginas Web mediante servlets. Además, de esta forma es

posible dividir el trabajo de construir una aplicación Web entre programadores

(servlets) y diseñadores gráficos (JSPs).

Una página JSP no es más que una página HTML que contiene ciertas

etiquetas especiales (acciones) o fragmentos de código (scriptlets) para incluir

contenido dinámico en dicha página. El código HTML se añade tal cual a la

respuesta, mientras que los elementos dinámicos se evalúan con cada petición.

Cuando un cliente pide esa página al servidor (Figura 2.5) de

aplicaciones, se traduce a un archivo fuente de Java que implementa un

Servlet, se compila y se ejecuta para devolver el resultado de la petición. Una

vez compilado el servlet, las peticiones posteriores se reducen a ejecutar dicho

servlet en lugar de realizar el proceso una y otra vez. Esta es la razón por la

que la primera petición tarda mucho más en responderse que las siguientes.

Dado que una JSP no es más que un servlet, hay que recordar que todo

el código se ejecuta en el servidor y las respuestas son puramente páginas

HTML.

Page 29: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 2. Marco Teórico

21

Figura 2.5 Petición de una página JSP

B). Servlets

Los servlets son módulos que extienden los servidores orientados a petición-

respuesta, como los servidores Web compatibles con Java. Por ejemplo, un

servlet podría ser responsable de tomar los datos de un formulario de entrada

de pedidos en HTML y aplicarle la lógica de negocios utilizada para actualizar

la base de datos de pedidos de la compañía.

Los servlets son para los servidores lo que los applets son para los

navegadores. Sin embargo, al contrario que los applets, los servlets no tienen

interfaz gráfica de usuario. Son un reemplazo efectivo para los scripts CGI.

Proporcionan una forma de generar documentos dinámicos que son fáciles de

escribir y rápidos en ejecutarse.

Los servlets también solucionan el problema de hacer la programación

del lado del servidor con APIs específicos de la plataforma. Estos pueden ser

incluidos en muchos servidores diferentes porque el API Servlet que se utiliza

no supone nada sobre el entorno o protocolo del servidor.

Page 30: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 2. Marco Teórico

22

C). JavaBeans

Los JavaBeans se idearon como un mecanismo para diseñar componentes,

generalmente de tipo gráfico, que pudiesen ser reutilizados por los entornos de

desarrollo integrado (IDE).

Para ello la interfaz de un JavaBean debería ser capaz de mostrar su

contenido en tiempo de ejecución. Esta característica ha hecho que los

JavaBeans se utilicen en otros entornos, tal como el desarrollo de aplicaciones

Web.

Un JavaBean no es más que una clase java que sigue ciertas

convenciones en el nombrado de sus métodos, de forma que sea posible

operar con ella en tiempo de ejecución. Se dice que un JavaBean tiene

propiedades o atributos, y dependiendo de que los métodos getPropiedad() y

setPropiedad() estén definidos, la propiedad será de lectura, de escritura o de

lectura/escritura.

D). XML

XML "Extensible Markup Language" es un metalenguaje usado para definir

documentos que contienen datos estructurados. Las características y

beneficios del XML se pueden agrupar en tres áreas principales:

Extensibilidad: Como metalenguaje, XML puede usarse para crear sus

propios lenguajes de marcas. Hoy en día existen muchos lenguajes de marcas

basados en XML, incluyendo "Wireless Markup Language" (WML).

Estructura precisa: HTML sufre de una pobre estructura que hace difícil

procesar eficientemente documentos HTML. Por otro lado, los documentos

XML están bien estructurados, cada documento tiene un elemento raíz y todos

los demás elementos deben estar anidados dentro de otros elementos.

Page 31: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 2. Marco Teórico

23

Hay dos tipos principales de documentos XML.

• Documentos válidos: un documento XML válido está definido por una

"Document Type Definition" (DTD), que es la gramática del documento

que define qué tipos de elementos, atributos y entidades podría haber en

el documento. El DTD define el orden y también la ocurrencia de

elementos.

• Documentos bien-formados: un documento XML bien formateado no

tiene que adherirse a una DTD, pero debe seguir dos reglas: 1) todo

elemento debe tener una etiqueta de apertura y otra de cierre, y 2) debe

haber un elemento raíz que contenga todos los otros elementos.

Extensión poderosa: Como se mencionó anteriormente, XML sólo se usa

para definir la sintaxis. En otras palabras, se usa para definir contenido. Para

definir la semántica, el estilo o la presentación, necesitamos usar "Extensible

Stylesheet Language" (XSL). Un documento podría tener múltiples hojas de

estilo que podrían ser usadas por diferentes usuarios.

El XML se ha convertido en el formato estándar de facto para la representación

de datos en Internet. Los datos XML se pueden procesar e interpretar en

cualquier plataforma. XML es un compañero perfecto para las aplicaciones

Java que necesitan datos portables.

2.5. Marcos de trabajo para aplicaciones Web

Los marcos de trabajo orientados a objetos son la piedra angular de la

moderna ingeniería del software, y están ganando rápidamente la aceptación

debido a su capacidad para promover la reutilización del código del diseño y el

código fuente. Los marcos de trabajo son los generadores de aplicaciónes que

se relacionan directamente con un dominio específico, es decir, con una

familia de problemas relacionados.

Page 32: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 2. Marco Teórico

24

La capacidad de reutilización del código y del diseño de marcos de

trabajo orientados a objetos permite una productividad mayor y un tiempo de

entrega breve en el desarrollo de aplicaciones, en comparación con el

desarrollo tradicional de los sistemas de software.

Existen múltiples beneficios en el uso de marcos de trabajo, entre los que

se encuentran:

• Apego a estándares y políticas.

• Congruencia de la aplicación sobre múltiples plataformas.

• Proporciona un método para el rehusó de componentes.

• Producción de aplicaciones más robustas, rápidas, estables y

consistentes.

• Menor tiempo de programación.

• Permite extensiones para darle mayor funcionalidad.

A continuación se describen algunos marcos de trabajo para aplicaciones

Web basados en tecnologías java.

2.4.1. Cocoon

Apache Cocoon es un marco de trabajo basado en XML y tecnologías XSLT,

diseñado para obtener un mejor desempeño y escalabilidad en base a

procesamiento SAX. Cocoon ofrece un ambiente flexible basado en la

separación de contenidos, lógica y estilo. Cocoon interactúa con múltiples

fuentes de datos, incluyendo sistema de archivos, RDBMS, LDAP, bases de

datos nativas XML y orígenes de datos sobre redes de trabajo. Adapta los

contenidos de salida a las capacidades de diferentes dispositivos como HTML,

WML, PDF, SVG y RTF, entre otros [Garvey 2003].

Page 33: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 2. Marco Teórico

25

2.4.2. JavaServer faces

La tecnología JavaServer Faces [Armstrong 2003] es un marco de trabajo de

interfaces de usuario (UI) del lado de servidor para aplicaciones Web basadas

en tecnología Java. Los principales componentes de la tecnología JavaServer

Faces son:

• Un API y una implementación de referencia para: representar

componentes UI y manejar su estado; manejar eventos, validar del lado

del servidor y convertir datos; definir la navegación entre páginas;

soportar internacionalización y accesibilidad; y proporcionar

extensibilidad para todas estas características. • Una biblioteca de etiquetas JavaServer Pages (JSP) personalizadas

para dibujar componentes UI dentro de una página JSP.

Este modelo de programación bien definido y la biblioteca de etiquetas para

componentes UI, facilitan de forma significativa la tarea de construcción y

mantenimiento de aplicaciones Web con UIs del lado del servidor.

Una de las grandes ventajas de la tecnología JavaServer Faces es que

ofrece una clara separación entre el comportamiento y la presentación. Las

aplicaciones Web construidas con tecnología JSP conseguían parcialmente

esta separación. Sin embargo, una aplicación JSP no puede mapear peticiones

HTTP al manejo de eventos específicos de los componentes o manejar

elementos UI como objetos con estado en el servidor. La tecnología

JavaServer Faces nos permite construir aplicaciones Web las cuales

implementan una separación entre el comportamiento y la presentación del

lado del cliente.

Otro objetivo importante de la tecnología JavaServer Faces es mejorar los

conceptos familiares de componente-UI y capa-Web sin limitarnos a una

tecnología de script particular o un lenguaje de marcas. Aunque la tecnología

JavaServer Faces incluye una biblioteca de etiquetas JSP personalizadas para

Page 34: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 2. Marco Teórico

26

representar componentes en una página JSP, los APIs de la tecnología

JavaServer Faces se han creado directamente sobre el API JavaServlet. Esto

nos permite hacer algunas cosas: usar otra tecnología de presentación junto a

JSP, crear nuestros propios componentes personalizados directamente desde

las clases de componentes, y generar salida para diferentes dispositivos

cliente.

Pero lo más importante, la tecnología JavaServer Faces proporciona una

rica arquitectura para manejar el estado de los componentes, procesar los

datos, validar la entrada del usuario, y manejar eventos.

El ciclo de vida de una página JavaServer Faces es similar al de una página

JSP: El cliente hace una petición HTTP de la página, y el servidor responde

con la página traducida a HTML. Sin embargo, debido a las características

extras que ofrece la tecnología JavaServer Faces, el ciclo de vida proporciona

algunos servicios adicionales mediante la ejecución de algunos pasos extras.

Figura 2.6 Pasos del ciclo de vida petición-respuesta JavaServer Faces.

Page 35: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 2. Marco Teórico

27

Los pasos que se ejecutan en el ciclo de vida dependen de si la petición se

originó o no desde una aplicación JavaServer Faces y si la respuesta es o no

generada con la fase de renderizado del ciclo de vida de JavaServer Faces. El

procesamiento de una solicitud se divide en 6 pasos principales, los cuales se

muestran en la Figura 2.6.

2.4.3. Struts

Es un marco de trabajo que implementa el patrón de la arquitectura MVC en

Java (Modelo 2). Simplifica notablemente la implementación de una

arquitectura según el patrón Modelo 2; separa muy bien lo que es la gestión del

flujo de trabajo de la aplicación, del modelo de objetos de negocio y de la

generación de interfaz.

Figura 2.7 Esquema del marco de trabajo Struts.

Page 36: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 2. Marco Teórico

28

El controlador mostrado en la Figura 2.7 ya se encuentra implementado

por Struts, aunque de ser necesario se puede heredar y extender o modificar, y

el flujo de trabajo de la aplicación se puede programar desde un documento

XML. Las acciones que se ejecutarán sobre el modelo de objetos de negocio,

se implementan basándose en clases predefinidas por el marco de trabajo y

siguiendo el patrón Facade [Gamma 1995]. La generación de interfaz se

soporta mediante un conjunto de tags (etiquetas) predefinidas por Struts cuyo

objetivo es evitar el uso de Scriplets (los trozos de código Java entre "<%" y

"%>"), lo cual genera ventajas de mantenibilidad y de desempeño [Antoniucci

2004].

Logísticamente, Struts separa claramente el desarrollo de interfaz del

flujo de trabajo y la lógica de negocio, permitiendo desarrollar ambas en

paralelo o con personal especializado. También es evidente que potencializa el

rehúso, el soporte de múltiples interfaces de usuario (HTML, sHTM (Server

HTML), WML, Desktop Applications, etc.) y de múltiples idiomas, localismos,

etc.

Page 37: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

29

Capítulo 3

Estado del arte

En este capítulo se presenta un resumen de algunos de los trabajos de

comercio electrónico relacionados con la presente tesis en los ámbitos

nacional y mundial.

Page 38: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 3. Estado del arte

30

3.1. Trabajos Relacionados

A XML-Based Catalogs for B2B Electronic Commerce

B. Omelayenko, D. Fensel.

Division of Mathematics and Computer Science, Vrije Universiteit.

[Omelayenko, 2001]

Los mercados electrónicos orientados al comercio electrónico B2B reúnen una

gran cantidad proveedores y consumidores en línea. Para que éstos puedan

funcionar adecuadamente se requiere de la integración de múltiples catálogos

de productos, proporcionados por los participantes en el mercado electrónico.

Cada participante puede utilizar su propio formato para representar los

productos en su catálogo de productos. Si un mercado electrónico es un

intermediario entre n proveedores y m consumidores, entonces éste debe ser

capaz de relacionar cada uno de los n catálogos de los proveedores con los m

formatos de los consumidores, realizando n x m relaciones. Los valores de n y

m pueden ser suficientemente altos como para hacer que el problema de

creación y mantenimiento de las reglas de integración deje de ser trivial.

Los diferentes proveedores tienden a usar esquemas de representación

completamente diferentes, incluso para un concepto tan simple como lo es una

dirección. Afortunadamente la mayoría de éstos usan la sintaxis XML en su

codificación, pero las estructuras de las descripciones difieren grandemente y

un número de variantes han sido desarrolladas e implementadas.

Este trabajo de tesis se enfoca a los métodos para la aplicación de

tecnologías XSLT en el intercambio de documentos B2B en base a resultados

hechos en investigaciones previas.

Con la utilización de un catálogo intermedio, al cual se ha llamado

Catálogo Unificado, el mercado electrónico solamente tiene que realizar una

sola relación entre el catálogo de cada proveedor o consumidor y el Catálogo

Unificado y por lo tanto solamente requiere de n + m relaciones.

Page 39: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 3. Estado del arte

31

Existen 2 estrategias opuestas para la selección de los elementos para la

inclusión en el Catálogo Unificado.

1. El Catálogo Unificado almacena la menor cantidad de atributos por cada

producto.

2. El Catálogo Unificado almacena la mayor cantidad de atributos por cada

producto.

B e-CoUSAL

F. García.

Departamento de Informática y Automática, Universidad de Salamanca.

[García 2002]

En este trabajo se presenta una propuesta de arquitectura de comercio

electrónico dirigida a las pequeñas y medianas empresas, que basan su

negocio en la venta por catálogos de productos.

También propone el desarrollo de una herramienta de software que

permite la definición, publicación y actualización de catálogos de productos,

junto con una arquitectura para un servidor Web para permitir a los clientes el

acceso a la herramienta de definición de catálogos.

La arquitectura de comercio electrónico ofrece una plataforma uniforme

que implementa los servicios comerciales principales para una estrategia de

desarrollo de comercio electrónico, reduciendo la cantidad de recursos

necesarios para la organización.

La arquitectura propuesta se centra en negocios basados en la venta por

catálogo de productos, aunque la arquitectura está definida de manera

genérica para permitir la implementación de distintas políticas del lado del

servidor.

Page 40: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 3. Estado del arte

32

Los objetivos de dicho trabajo son:

1. Incrementar la flexibilidad en el ambiente de negocios, para permitir que

la organización adapte el modelo de negocio a sus necesidades.

2. Que la empresa pueda mantener su negocio electrónico de manera

autónoma y así eliminar las dependencias de entidades externas a la

organización.

C) Desarrollo de un Prototipo de Comercio Electrónico Incorporando Sistemas de Pago.

M. Bravo.

Centro Nacional de Investigación y Desarrollo Tecnológico

[Bravo 2003]

En este trabajo de tesis, se propuso el desarrollo e implementación de un

prototipo de comercio electrónico, de bajo costo, que incorpore sistemas de

pago por Internet, y que esté orientado a las pequeñas y medianas empresas

de México.

En general, dicho trabajo se realizó un análisis de los sistemas de pago

por Internet, con el objeto de determinar los requisitos establecidos por los

bancos para el manejo de transacciones en línea. Como resultado de este

análisis se desarrolló un nuevo prototipo, con el fin de demostrar la factibilidad

de implementación de un sistema de comercio electrónico orientado a las

pequeñas y medianas empresas que incorpore sistemas de pago en línea.

Centra su atención en los procedimientos para realizar transacciones en

línea con las diferentes instituciones bancarias, y para tal efecto se desarrolló

un prototipo para simular el proceso real de las transacciones.

Page 41: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 3. Estado del arte

33

D) El comercio electrónico en la pequeña empresa mexicana

A. Pérez, J. Leyva.

Universidad de Sonora en Hermosillo

[Pérez 2004]

El presente trabajo de investigación consistió en un estudio de la situación

actual del empresario de la pequeña empresa en el noroeste de México ante

los negocios electrónicos y una evaluación de su nivel de capacitación para

ingresar a esta nueva forma de transacciones comerciales.

La metodología consistió en la aplicación de encuestas y entrevistas a

los responsables de las empresas en una de las ciudades más importantes del

Noroeste de México, que es la ciudad de Hermosillo en el estado de Sonora, en

el sector comercial. Para la aplicación de las encuestas se formaron grupos de

características comunes considerando el giro al que se dedican. A las

empresas encuestadas se les preguntó, entre otros aspectos, las actividades y

productos que manejan, el uso de correo electrónico en la empresa, compras

efectuadas por Internet, elementos de publicidad en la red, ventas realizadas

con apoyo de estos elementos, y seguridad en las compras por medios

electrónicos.

El estudio concluye que los empresarios en esta región, no cuentan con

la información suficiente para ingresar a Internet como una nueva forma de

proyectar su imagen. Se requieren además planes de capacitación para la

utilización de esta nueva forma de realizar negocios y de ofertar productos y/o

servicios.

Page 42: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 3. Estado del arte

34

3.2. Tabla comparativa de trabajos relacionados

Tabla 3.1. Tabla comparativa de trabajos relacionados

TRABAJOS RELACIONADOS CARACTERÍSTICA A COMPARAR

ACTUAL A B C D

1 Se desarrolló un prototipo ✔ ✔ ✔ ✔

2 Herramienta de definición de catálogos ✔ ✔ ✔

3 Módulo Administrativo ✔

4 Multiplataforma ✔ ✔ ✔

5 Basado en Web ✔ ✔ ✔ ✔

6 Basado en XML ✔ ✔ ✔

7 Modulo de pagos en línea ✔ ✔

8 Configuración por medio de asistentes ✔

9 Estructura del catálogo variable ✔ ✔ ✔

10 Utiliza patrones de diseño, marcos de trabajo ✔

11 Manejo de conexiones seguras ✔ ✔

12 Categorías multinivel ✔ ✔

13 Soporta varios tipos de moneda ✔

14 Soporta varios idiomas ✔

Page 43: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

35

Capítulo 4

Arquitectura y diseño del sistema

En este capítulo se presentan la arquitectura de los módulos del prototipo de

tesis así como los detalles de implementación del mismo.

Page 44: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 4. Arquitectura y diseño del sistema

36

4.1. Esquema general de operación del sistema

Figura 4.1 Esquema general del sistema.

Cabe mencionar la existencia de diferentes tipos de usuarios del prototipo, los

cuales se muestran en la Figura 4.1. Por una parte están las PyMEs, las cuales

accederán al sistema para publicar la información de su empresa y productos

que comercializa, también están los usuarios de Internet, quienes podrán

consultar la información que esté disponible de las empresas que han

publicado su información dentro del prototipo; y finalmente están los

administradores, quienes tendrán la responsabilidad de configurar y mantener

la integridad del sistema.

4.2. Arquitectura detallada del sistema

4.2.1. Módulo de administración

Las funciones del módulo de administración incluyen: generación de sitios de

comercio electrónico, generación de reportes y estadísticas del estado de los

múltiples sitios de comercio electrónico, y algunos aspectos de seguridad de la

plaza virtual.

Page 45: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 4. Arquitectura y diseño del sistema

37

El módulo de administración (Figura 4.2) está diseñado para ser operado

por el administrador del sistema, que tiene a su cargo la responsabilidad de

configurar y mantener la integridad del sistema.

Figura 4.2 Arquitectura del submódulo de creación de sitios de CE del módulo

de administración.

Para la creación de un sitio de comercio electrónico, el administrador del

sistema debe acceder al módulo de administración y usar el asistente para la

creación de sitios. Este toma como entrada los datos básicos de la empresa

que desea contar con su sitio, y como salida se obtiene un sitio de comercio

electrónico y los datos de autentificación para la empresa. Estos servirán para

posteriormente acceder al módulo de catálogos, y así poder diseñar y editar

sus páginas y su propio catálogo de productos.

4.2.2. Módulo de catálogos

La arquitectura del módulo de catálogos se divide en tres secciones principales:

edición, diseño y publicación.

La función del submódulo de edición, mostrada en la Figura 4.3 es la de

asistir al usuario (PyME) en la construcción del catálogo de productos de su

propio sitio de comercio electrónico; primeramente en la edición de la

Page 46: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 4. Arquitectura y diseño del sistema

38

estructura del catálogo (campos que contiene el catálogo) y posteriormente en

el ingreso del contenido del propio catálogo.

Figura 4.3 Arquitectura del submódulo de edición del módulo de catálogos.

El submódulo de diseño se encarga de la apariencia de las páginas del

sitio de comercio electrónico. Permite especificar la apariencia deseada,

seleccionando alguna de las múltiples vistas disponibles (Plantillas de XSL) y

permite editar la información de la empresa que se exhibe en el sitio. Esta

sección se muestra en la Figura 4.4.

Figura 4.4 Arquitectura del submódulo de diseño del módulo de catálogos.

Page 47: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 4. Arquitectura y diseño del sistema

39

El submódulo de publicación hace uso de APIs (Application Program

Interface) de Java, primero para extraer los datos que se van a presentar en el

catálogo del origen de datos y estructurarlos en un documento XML, y

posteriormente combinarlos con la plantilla (XSL) para construir una página que

se presentará al usuario final (en formato HTML). Esta sección se muestra en

la Figura 4.5.

Figura 4.5 Arquitectura del submódulo de publicación del módulo de catálogos.

4.3. Detalles en la implementación de los módulos del prototipo

4.3.1. Módulo de administración

Funciones

A) Creación de sitios de comercio electrónico

Para dar de alta un sitio de comercio electrónico (CE) dentro de la plaza,

primeramente el usuario (administrador) debe introducir los datos del nuevo

sitio a través de un formulario. Posteriormente el sistema realizará las

siguientes acciones: crear las tablas del sitio de CE y usuario del sitio dentro de

Page 48: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 4. Arquitectura y diseño del sistema

40

la base de datos del sistema, copiar la carpeta de la aplicación base a la

carpeta webapps del contenedor Tomcat y finalmente hacer una petición a la

aplicación manager del Tomcat, para lo cual se forma la cadena de comando

en donde se le especifica la acción “install”, la ruta de la carpeta de la

aplicación y el nombre que deseamos para nuestra aplicación. Este proceso se

muestra en la Figura 4.6.

Figura 4.6 Creación de sitios de comercio electrónico

B) Consulta de los sitios de comercio dentro de la plaza

Para obtener la lista de las aplicaciones existentes dentro de la plaza,

primeramente se hace una petición a la aplicación manager del Tomcat, para lo

cual se forma la cadena de comando en donde se le especifica la acción “list”.

Posteriormente se procesa la respuesta y se extraen los nombres, los estados

y las conexiones activas de cada aplicación. Finalmente se pasa por un filtro la

lista de aplicaciones para dejar fuera las aplicaciones que pudieran existir en el

contenedor, pero que no están registradas en el sistema. Este proceso se

muestra en la Figura 4.7.

Además se pueden filtrar las aplicaciones dependiendo de su estado

STOPPED o RUNNING que nos indica si están o no en línea.

Page 49: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 4. Arquitectura y diseño del sistema

41

Figura 4.7 Consulta de los sitios de comercio dentro de la plaza

C) Reiniciar o detener aplicaciones dentro de la plaza

Para reiniciar o detener algún sitio dentro de la plaza, se debe elegir la

aplicación que se desea reiniciar/detener, se forma la cadena de comando en

donde se le especifica la acción “reload/stop”, y se hace una petición a la

aplicación manager del Tomcat. Este proceso se muestra en la Figura 4.8.

Figura 4.8 Reiniciar o detener aplicaciones dentro de la plaza

Page 50: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 4. Arquitectura y diseño del sistema

42

D) Iniciar una aplicación ya registrada dentro de la plaza

Para iniciar algún sitio dentro de la plaza se debe elegir la aplicación que se

desea iniciar, se forma la cadena de comando en donde se le especifica la

acción “start”, y se hace una petición a la aplicación manager del Tomcat. Este

proceso se muestra en la Figura 4.9.

Figura 4.9 Iniciar una aplicación ya registrada dentro de la plaza

E) Eliminar un sitio de comercio dentro de la plaza

Para eliminar algún sitio dentro de la plaza se debe de elegir la aplicación que

se desea eliminar, y se sigue el proceso inverso a la creación de un sitio:

primero se forma la cadena de comando en donde se le especifica la acción

“remove”, y se hace una petición a la aplicación manager del Tomcat; después

se eliminan las tablas y el usuario del sitio y se elimina la carpeta de la

aplicación. Este proceso se muestra en la Figura 4.10.

Figura 4.10 Eliminar un sitio de comercio dentro de la plaza.

Page 51: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 4. Arquitectura y diseño del sistema

43

4.3.2. Módulo de catálogos

Funciones

A) Agregar un nuevo producto al catálogo

Este es un proceso sencillo en donde se capturan los datos del producto y la

imagen a través de formularios, y posteriormente se almacenan en las tablas

de la aplicación (Figura 4.11).

Figura 4.11 Agregar un nuevo producto al catálogo.

B) Modificar o eliminar un producto del catálogo

Figura 4.12 Modificar o eliminar un producto del catálogo.

Page 52: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 4. Arquitectura y diseño del sistema

44

Primeramente se extraen los productos de la base de datos y se presentan

para que se elija el que se desea modificar/eliminar. Para modificar el producto

se presentan los datos y la imagen para que sean introducidos los nuevos

datos y se almacenan en la base de datos. Para eliminar, simplemente se

borran de la base de datos (Figura 4.12).

4.3.4. Módulo de diseño

Funciones A) Personalizar la apariencia del sitio de comercio electrónico

Para personalizar la apariencia de un sitio de comercio, se debe de modificar el

archivo de configuración config-site.xml, para lo cual se sigue un sencillo

proceso basado en formularios. Primeramente se extraen los datos del archivo

de configuración (deserialización) con ayuda de la API JOX, la cual nos permite

pasar los valores del documento XML a un objeto JavaBean, posteriormente se

capturan los nuevos datos, logotipo y apariencia del sitio (plantilla XSL) y

finalmente se almacenan los datos en el documento XML (serialización) con

ayuda de la API JOX y un DTD del documento XML. Este proceso se muestra

en la Figura 4.13.

Figura 4.13 Personalizar la apariencia del sitio de comercio electrónico.

Page 53: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 4. Arquitectura y diseño del sistema

45

En la Figura 4.14 se muestra un ejemplo de cómo se llevaría a cabo la

serialización de un objeto JavaBean a un documento XML. El único requisito es

que exista una correspondencia entre los métodos get y set de los atributos del

objeto con las etiquetas dentro del documento XML.

Figura 4.14 Proceso de serialización.

4.3.5 Sitio de comercio electrónico

Características

El desarrollo de un sitio de comercio electrónico no estaba contemplado en el

plan de trabajo, pero debió realizarse este desarrollo debido a que los

prototipos anteriores tienen un grado de acoplamiento muy grande, lo cual hace

imposible la reutilización de dicho código.

Figura 4.15 Esquema del sitio de comercio electrónico.

Page 54: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 4. Arquitectura y diseño del sistema

46

Por lo tanto se decidió desarrollar nuevamente este módulo, haciendo

una reestructura en base al Modelo 2 sobre el marco de trabajo Struts.

Este módulo tiene las funciones básicas de todo sitio de comercio

electrónico: un catálogo de productos, un carrito de compras, módulo de

autenticación y registro de clientes, módulo de pagos, etc. (Figura 4.15)

Cabe aclarar que el módulo de pagos no lleva a cabo el cobro del

importe de las ventas, debido a que no es el propósito de la tesis el

implementar dicha función.

El sitio de comercio electrónico se diseñó para implementar el modelo

2X, con el fin de lograr una separación entre los datos y el diseño (diseño

gráfico del sitio, imágenes, colores) y permitir que el diseño se adecue a las

preferencias de la empresa a la que pertenece el sitio de comercio.

Figura 4.16 Extensión del marco de trabajo Struts.

Page 55: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 4. Arquitectura y diseño del sistema

47

Debido a que el marco de trabajo Struts no soporta el modelo 2X, se

desarrollo una extensión o adaptación para permitir la implantación de dicho

modelo sobre Struts. En la Figura 4.16 se muestra un esquema de la extensión

para soporte al modelo 2X.

Page 56: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

48

Capítulo 5

Plan de pruebas

En este capítulo se describen los casos de prueba para el prototipo. En cada

caso se especifica su objetivo, el procedimiento a seguir y los resultados de

dicho procedimiento.

Page 57: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 5. Plan de pruebas

49

5.1. Consideraciones generales de los casos de prueba

Figura 5.1 Contexto de la aplicación de comercio electrónico dentro del servidor

Web.

Los casos de prueba del prototipo se llevaron a cabo usando el servidor de

aplicaciones Apache Tomcat 4.0.4 y el sistema manejador de bases de datos

MySQL sobre una plataforma Windows (Figura 5.1).

Para que el sistema de la plaza virtual funcione apropiadamente se requiere

que las carpetas de las aplicaciones sean dispuestas dentro del servidor de

aplicaciones tal y como se muestra en la Figura 5.1 y de la configuración de

ciertos parámetros en tres archivos de configuración:

1. En el archivo “config-site.properties” se especifica el directorio donde se

encuentra la carpeta de la aplicación de la plaza virtual y la carpeta de la

aplicación del sitio de comercio electrónico.

Page 58: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 5. Plan de pruebas

50

2. En el archivo “config-tomcat.properties” se define la IP y el puerto

designado para peticiones HTTP del servidor de aplicaciones, así como

el usuario y contraseña de la aplicación MANAGER del Apache Tomcat

(este usuario y contraseña se especifican en el archivo conf/tomcat-

users.xml Apache Tomcat).

3. Finalmente en el archivo “struts-config.xml” se especifican los

parámetros para la conexión a la base de datos así como el número de

conexiones activas que se manejarán en el pool de conexiones.

5.2. Casos de prueba

A continuación se describen los casos de prueba para cada uno de los

módulos y submódulos del prototipo. Dichos casos de prueba se dividen en tres

secciones: casos de prueba para el módulo de administración, casos de prueba

para el módulo de catálogos y casos de prueba para el sitio de comercio

electrónico. Para cada caso se especifica su objetivo, el procedimiento a seguir

y los resultados de dicho procedimiento.

5.2.1. Casos de prueba para el módulo de administración 5.2.1.1. Caso 1: Creación de un nuevo sitio de comercio electrónico

Objetivo: Dar de alta un nuevo sitio de comercio electrónico dentro de la plaza

virtual.

Procedimiento:

1. Seleccionar la opción “Crear nuevo sitio” dentro del menú del

administrador (Figura 5.2).

Page 59: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 5. Plan de pruebas

51

Figura 5.2. Menú del administrador.

2. Llenar el formulario que se presenta con los datos de la empresa que

solicita el sitio, y presionar en el botón Siguiente (Figura 5.3).

Figura 5.3. Formulario para alta de sitio de comercio electrónico.

Page 60: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 5. Plan de pruebas

52

3. Presionar el botón Finalizar para confirmar que los datos son correctos e

iniciar el proceso de creación del sitio de comercio electrónico (Figura

5.4).

Figura 5.4. Confirmación de datos de sitio de comercio electrónico.

Resultados: Al finalizar este proceso se presenta una pantalla donde se

confirma que se ha creado el sitio de comercio electrónico y que se encuentra

en funcionamiento (Figura 5.5).

Figura 5.5. Confirmación de alta de sitio de comercio electrónico.

Page 61: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 5. Plan de pruebas

53

En caso de que ocurra algún incidente durante el proceso, se presentará uno

de los siguientes mensajes de error:

• El nombre del sitio ya ha sido registrado anteriormente.

• El nombre de usuario ya ha sido registrado anteriormente.

• La confirmación de la contraseña del usuario es incorrecta.

• Error al generar el sitio de comercio electrónico.

• Error al montar el sitio de comercio electrónico en el contenedor Web.

5.2.1.2. Caso 2: Consultar el estado de los sitios de comercio electrónico

existentes en la plaza virtual

Objetivo: Obtener la lista de todos los sitios de comercio electrónico registrados

en la plaza, conocer el estado actual (activo o inactivo) y cuántos usuarios

visitan cada sitio en ese instante.

Procedimiento:

1. Seleccionar la opción “Consultar sitios” dentro del menú del

administrador.

Resultados: Como resultado se nos presenta una tabla con la lista de todos los

sitios de comercio electrónico registrados en la plaza, su estado actual (activo ó

inactivo) y el número de usuarios que visitan cada uno de estos (Figura 5.6).

Figura 5.6. Resultados de la consulta del estado de los sitios existentes en la

plaza de comercio electrónico.

Page 62: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 5. Plan de pruebas

54

5.2.1.3. Caso 3: Detener temporalmente el funcionamiento de un sitio de comercio electrónico de la plaza

Objetivo: Desactivar momentáneamente un sitio de comercio electrónico de la

plaza, ya sea por cuestión de mantenimiento o por solicitud de la empresa que

contrató dicho sitio.

Procedimiento:

1. Seleccionar la opción “Detener sitio” dentro del menú del administrador.

2. Elegir el nombre del sitio de comercio electrónico a detener dentro de la

lista desplegable (Figura 5.7) que se presenta, y presionar el botón

Siguiente.

Figura 5.7. Elegir la aplicación de comercio electrónico a detener.

3. Presionar el botón Finalizar para confirmar que se desea detener el sitio

de comercio electrónico elegido (Figura 5.8).

Figura 5.8. Confirmar detener la aplicación de comercio electrónico.

Resultados: Al finalizar este proceso se presentará una pantalla donde se nos

confirma que el sitio de comercio electrónico ha sido desactivado, o en caso de

que ocurra algún incidente, se informará que este proceso no concluyó

satisfactoriamente (Figura 5.9).

Page 63: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 5. Plan de pruebas

55

Figura 5.9. Confirmación de que la aplicación de comercio electrónico se

detuvo.

5.2.1.4. Caso 4: Reiniciar un sitio de comercio electrónico de la plaza virtual

Objetivo: Inicializar el sitio de comercio electrónico de la plaza, ya sea por

cambios mayores en el sitio o por solicitud de la empresa que contrató dicho

sitio.

Procedimiento:

1. Seleccionar la opción “Reiniciar sitio” dentro del menú del administrador.

2. Elegir el nombre del sitio de comercio electrónico a reiniciar dentro de la

lista desplegable que se presenta, y presionar el botón Siguiente.

3. Presionar el botón Finalizar para confirmar que se desea reiniciar el sitio

de comercio electrónico elegido (Figura 5.10).

Figura 5.10. Confirmar reiniciar la aplicación de comercio electrónico.

Resultados: Al finalizar este proceso se presenta una pantalla donde se

confirma que el sitio de comercio electrónico ha sido reiniciado, o en caso de

que ocurra algún incidente, se informará que este proceso no concluyó

satisfactoriamente (Figura 5.11).

Page 64: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 5. Plan de pruebas

56

Figura 5.11. Confirmación de que la aplicación de comercio electrónico se

reinició.

5.2.1.5. Caso 5: Iniciar un sitio de comercio electrónico de la plaza virtual

Objetivo: Poner en funcionamiento un sitio de comercio electrónico de la plaza,

el cual había sido desactivado anteriormente.

Procedimiento:

1. Seleccionar la opción “Iniciar sitio” dentro del menú del administrador.

2. Elegir el nombre del sitio de comercio electrónico a iniciar dentro de la

lista desplegable que se presenta, y presionar el botón Siguiente.

3. Presionar el botón Finalizar para confirmar que se desea poner en

funcionamiento el sitio de comercio electrónico elegido (Figura 5.12).

Figura 5.12. Confirmar iniciar la aplicación de comercio electrónico.

Resultados: Al finalizar este proceso se presenta una pantalla donde se

confirma que el sitio de comercio electrónico se encuentra en funcionamiento, o

en caso de que ocurra algún incidente, se informará que este proceso no

concluyó satisfactoriamente (Figura 5.13).

Page 65: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 5. Plan de pruebas

57

Figura 5.13. Confirmación de que la aplicación de comercio electrónico se

inició.

5.2.1.6. Caso 6: Eliminar un sitio de comercio electrónico de la plaza virtual

Objetivo: Remover un sitio de comercio electrónico de la plaza virtual.

Procedimiento:

1. Seleccionar la opción “Eliminar sitio” dentro del menú del administrador.

2. Elegir el nombre del sitio de comercio electrónico a eliminar dentro de la

lista desplegable que se presenta, y presionar el botón Siguiente.

3. Presionar el botón Finalizar para confirmar que se desea eliminar el sitio

de comercio electrónico elegido (Figura 5.14).

Figura 5.14. Confirmar eliminar la aplicación de comercio electrónico.

Resultados: Al finalizar este proceso se presenta una pantalla donde se

confirma que el sitio de comercio electrónico ha sido eliminado de la plaza

virtual (Figura 5.15), en caso de que ocurra algún incidente durante el proceso,

se presentará uno de los siguientes mensajes de error:

Page 66: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 5. Plan de pruebas

58

Figura 5.15. Confirmación de que la aplicación de comercio electrónico se

eliminó.

• Error al detener el sitio de comercio electrónico.

• Error al eliminar las tablas de la base de datos.

• Error al eliminar la carpeta de la aplicación del contenedor Web.

5.2.2. Casos de prueba para el módulo de catálogos

5.2.2.1. Caso 7: Agregar un producto al catálogo de productos

Objetivo: Añadir un nuevo producto al catálogo de productos.

Procedimiento:

1. Elegir la opción “Agregar producto” dentro del menú de usuario (Figura

5.16).

Figura 5.16. Menú de la empresa.

Page 67: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 5. Plan de pruebas

59

2. Llenar el formulario que se presenta con los datos del producto (nombre,

descripción, precio, etc.), y presionar el botón Siguiente (Figura 5.17).

Figura 5.17. Formulario de captura de datos de nuevo producto.

3. Seleccionar la fotografía o imagen del producto y presionar el botón

Siguiente, en caso de que no se desee mostrar una imagen, solamente

presionar el botón Omitir (Figura 5.18).

Figura 5.18. Elegir imagen nuevo producto.

Page 68: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 5. Plan de pruebas

60

4. Elegir la categoría en la que se agrupará el producto o especificar el

nombre de una nueva categoría, y presionar el botón siguiente (Figura

5.19).

Figura 5.19 Elegir categoría nuevo producto.

5. Presionar el botón Finalizar, para confirmar y almacenar los datos

(Figura 5.20).

Figura 5.20. Confirmar datos nuevo producto.

Page 69: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 5. Plan de pruebas

61

Resultados: Como resultado de este procedimiento, los datos del producto son

almacenados en la base de datos, para posteriormente ser publicados en el

catálogo de productos.

5.2.2.2. Caso 8: Eliminar un producto del catálogo de productos

Objetivo: Remover un producto del catálogo de productos.

Procedimiento:

1. Elegir la opción “Eliminar producto” dentro del menú de usuario.

2. Elegir la categoría a la que pertenece el producto que se desea eliminar.

3. Elegir el producto que se desea eliminar.

4. Presionar el botón Finalizar para confirmar la eliminación del producto.

Resultados: Al finalizar este proceso se presenta una pantalla donde se

confirma que el producto ha sido removido del catálogo de productos (Figura

5.21).

Figura 5.21. Confirmación eliminar producto del catálogo.

5.2.2.3. Caso 9: Modificar los datos de un producto del catálogo de productos

Objetivo: Cambiar uno o varios datos de un producto que se encuentra

publicado en el catálogo.

Procedimiento:

Page 70: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 5. Plan de pruebas

62

1. Elegir la opción “Modificar producto” dentro del menú de usuario.

2. Elegir la categoría a la que pertenece el producto que se desea

modificar.

3. Elegir el producto que se desea modificar (Figura 5.22).

Figura 5.22. Elegir el producto a modificar.

4. Llenar el formulario que se presenta con los nuevos datos del producto

y presionar el botón Siguiente.

5. Elegir la nueva imagen del producto u omitir este paso para conservar la

imagen actual, y presionar el botón Siguiente.

6. Elegir la nueva categoría en la que se agrupará el producto.

7. Presionar el botón Finalizar, para confirmar los datos y almacenar los

cambios.

Resultados: Al término de este proceso se presenta una pantalla donde se

informa si el proceso se llevó a cabo satisfactoriamente (Figura 5.23); en caso

de que ocurra algún incidente durante el proceso, se presentará el mensaje de

error apropiado.

Figura 5.23. Confirmación modificación de producto.

Page 71: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 5. Plan de pruebas

63

5.2.2.4. Caso 10: Consultar los productos registrados en el catálogo de productos

Objetivo: Consultar la lista de todos los productos existentes en el catálogo de

productos.

Procedimiento:

1. Elegir la opción “Consultar productos” dentro del menú de usuario.

Resultados: Como resultado se obtiene la lista de todos los productos

registrados en el catálogo de productos (Figura 5.24).

Figura 5.24. Lista de productos en el catálogo.

5.2.2.5. Caso 11: Elegir diseño (apariencia) del sitio y especificar los datos particulares de la empresa que publica dicho sitio

Objetivo: Personalizar el sitio de comercio electrónico para que se adapte lo

más posible a la identidad de la empresa que publica dicho sitio.

Procedimiento:

Page 72: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 5. Plan de pruebas

64

1. Elegir la opción “Elegir diseño” dentro del menú de usuario.

2. Elegir la plantilla deseada de entre las opciones disponibles, y presionar

el botón Siguiente.

3. Llenar el formulario que se presenta con los datos que se desea que se

publiquen en el sitio de comercio electrónico (nombre de la empresa,

slogan, datos de localización, etc.), y presionar el botón Siguiente

(Figura 5.25).

Figura 5.25. Datos de la empresa que publica el sitio de comercio electrónico.

4. Especificar la ruta donde se encuentra la imagen que representa el

logotipo de la empresa y presionar el botón Siguiente (Figura 5.26).

Figura 5.26. Logotipo de la empresa que publica el sitio de comercio

electrónico.

Page 73: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 5. Plan de pruebas

65

5. Presionar el botón Finalizar, para confirmar y almacenar los datos

introducidos (Figura 5.27).

Figura 5.27. Datos, logotipo y plantilla de diseño de la empresa que publica el

sitio de comercio electrónico.

Resultados: Los datos personalizados para el sitio de comercio electrónico son

almacenados en el archivo config-site.xml (estos datos son usados para

generar las páginas del sitio de comercio electrónico en tiempo de ejecución).

5.2.2.6. Caso 12: Modificar los datos particulares de la empresa que

publica el sitio de comercio electrónico

Page 74: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 5. Plan de pruebas

66

Procedimiento:

1. Elegir la opción “Cambiar datos del sitio” dentro del menú de usuario.

2. Llenar el formulario que se presenta con los nuevos datos que se desea

que se publiquen en el sitio de comercio electrónico y presionar el botón

Siguiente.

3. Especificar la ruta donde se encuentra la imagen que representa el

logotipo de la empresa, y presionar el botón Siguiente u omitir este paso

si es que se desea continuar usando la imagen proporcionada

anteriormente.

4. Presionar el botón Finalizar, para confirmar y almacenar los datos

introducidos.

Resultados: Los datos personalizados para el sitio de comercio electrónico son

almacenados en el archivo config-site.xml (estos datos son usados para

generar las páginas del sitio de comercio electrónico en tiempo de ejecución).

5.2.2.7. Caso 13: Modificar el diseño del sitio de comercio electrónico

Objetivo: Cambiar la apariencia del sitio de comercio electrónico de la empresa

propietaria del mismo.

Procedimiento:

1. Elegir la opción “Cambiar Plantilla” dentro del menú de usuario.

2. Elegir la plantilla deseada de entre las opciones disponibles y presionar

el botón siguiente.

3. Presionar el botón Finalizar, para confirmar y almacenar los datos.

Resultados: Los datos personalizados para el sitio de comercio electrónico son

almacenados en el archivo config-site.xml (estos datos son usados para

generar las páginas del sitio de comercio electrónico en tiempo de ejecución).

Page 75: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 5. Plan de pruebas

67

5.2.3. Casos de Prueba para el sitio de comercio electrónico

5.2.3.1. Caso 14: Proceso de compra en el sitio de comercio electrónico

Objetivo: Realizar una compra dentro de algún sitio de comercio electrónico de

la plaza virtual.

Procedimiento:

1. Entrar al catálogo de productos de alguno de los sitios de comercio

electrónico de la plaza virtual.

2. Seleccionar alguna de las categorías de productos dentro del menú de

categorías.

3. Seleccionar el producto de la lista que se presenta para ver su

descripción.

4. Presionar el botón “Agregar al carrito” para añadir dicho producto al

carrito de compras.

5. Dentro del carrito de compras es posible aumentar o disminuir la

cantidad de productos de un tipo, especificando la cantidad deseada en

el cuadro de texto “Cantidad” y presionando el botón Actualizar. También

es posible suprimir un producto del carrito presionando el botón Eliminar

contiguo al producto.

6. El proceso se puede repetir nuevamente del paso 1 al 5 las veces que

sea necesario.

7. Cuando se presiona el botón “Finalizar compra” se solicita la

autenticación del usuario, en caso de no contar con los datos para la

autenticación, se procede al registro como nuevo usuario.

8. Se pide la confirmación de los datos de la compra (carrito de compras).

9. Se pide la confirmación de los datos de envío.

10. Se pide la confirmación de los datos de facturación.

11. Se solicita la elección del tipo de pago (depósito referenciado o tarjeta

de crédito). Si se elige la opción “deposito referenciado”, se continúa en

el siguiente paso, si se eligió la opción “tarjeta de crédito”, se solicita que

Page 76: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 5. Plan de pruebas

68

se especifique el tipo de tarjeta (Visa/Mastercard o American Express)

así como el número de tarjeta y el código de seguridad.

12. El pedido es almacenado y se envía un e-mail de confirmación.

13. Se muestra una pantalla de confirmación, donde se notifica que el

pedido ha sido registrado y el pedido se encuentra en proceso de

entrega.

Resultados:

Por parte del sitio de comercio electrónico se registra el pedido en la base de

datos; y si el pago fue realizado con tarjeta de crédito, se realiza el cargo a la

cuenta proporcionada.

Por parte del cliente, se obtiene una pantalla de confirmación que sirve como

comprobante de la compra y un e-mail con los detalles de la transacción

realizada.

Page 77: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

69

Capítulo 6

Conclusiones

En este capítulo se presentan las conclusiones y aportaciones del presente

trabajo de tesis. Además se sugieren trabajos futuros, los cuales pueden ser

desarrollados a partir de los resultados obtenidos en este proyecto.

Page 78: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 6. Conclusiones

70

6.1. Conclusiones generales

En base a los resultados obtenidos en el desarrollo del presente proyecto de

tesis se concluye lo siguiente.

• Se cumplieron los objetivos de la tesis de desarrollar un sistema que

representa una plaza virtual de comercio electrónico y un modulo de

definición y administración de catálogos de productos para un sitio de

comercio electrónico. Adicionalmente se desarrollo un módulo de diseño,

el cual permite adaptar la vista (presentación gráfica) del sitio a la

identidad de la empresa que publica dicho sitio en la plaza virtual.

• Se logró la asimilación y se pusieron en práctica técnicas avanzadas

para el desarrollo de aplicaciones Web orientadas a marcos de trabajo

(Struts, Cocoon, Java Server Faces) y patrones de diseño (MVC, Modelo

1, Modelo 2, Modelo 2X).

• La principal aportación de este proyecto de tesis está dirigida a la línea

de investigación sobre la que estuvo trabajando. En general se hereda

una plataforma de comercio electrónico robusta basada en marcos de

trabajo y patrones de diseño. De esta manera se potencializa la

extensibilidad y el rehúso de los componentes de software de la

plataforma.

6.2. Trabajos futuros

Durante la realización del presente trabajo de tesis surgieron varias propuestas

de trabajos futuros como respuesta a necesidades inherentes a este tipo de

proyecto y algunas otras en base a los resultados obtenidos en este proyecto.

Se considera de gran importancia el desarrollo de estos trabajos a fin de

abarcar todas las posibles necesidades de un sistema de comercio electrónico

Page 79: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 6. Conclusiones

71

de este tipo. A continuación se describen los módulos de software que

constituyen dichos trabajos futuros.

Módulo de seguimiento de envíos, el cual permita a los clientes

potenciales de la plaza virtual de comercio electrónico obtener

información detallada y en tiempo real del estado de su pedido.

Módulo de facturación, el cual permita la impresión de facturas de las

compras realizadas por los clientes en los sitios de comercio electrónico

de la plaza. La impresión de dichas facturas debe adaptarse a los

formatos preestablecidos por cada empresa propietaria de un sitio en la

plaza, o bien trabajar con el esquema de facturación electrónica.

Módulo cotizador de envíos. Debido a que en la plaza virtual existen

múltiples sitios de comercio electrónico, los cuales pueden poseer

distintos domicilios, la cotización de un envío se debe realizar en base a

múltiples parámetros (domicilio del cliente y de la empresa vendedora,

peso y medidas del paquete, etc.).

Módulo de estadísticas y bitácoras, el cual genere informes del acceso y

movimientos en los sitios de la plaza virtual.

Módulo generador de la vista, el cual genere en tiempo de ejecución la

salida (páginas) que se presentan a los clientes que navegan en los

sitios de la plaza virtual, y además adapte esta salida al formato mas

adecuado para el agente de usuario.

Módulo de comercialización, el cual administre de manera centralizada

todos los pagos de cada sitio de la plaza virtual y posteriormente abone

los montos de las ventas a los propietarios de cada sitio.

Page 80: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

Capítulo 6. Conclusiones

72

6.3. Publicaciones

Del trabajo realizado en la presente tesis se publicaron varios artículos en

foros nacionales e internacionales.

Desarrollo de un Prototipo de Comercio Electrónico Incorporando Sistemas de Pago, en la 14ª reunión de otoño de comunicaciones,

computación y electrónica (IEEE ROC&C’2003), en Acapulco, Guerrero,

3003.

Arquitectura de un Sistema de Comercio Electrónico para Pequeñas y Medianas Empresas de México, en el Primer Taller

Internacional de Comercio Electrónico, en La Habana, Cuba, 2003.

Intermediario Facilitador del Comercio Electrónico para PyMEs Basado en Web, 1er Congreso de Sistemas y Computación del Instituto

Tecnológico de Zihuatanejo, en Zihuatanejo, Guerrero, 2004.

Page 81: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

73

Referencias

[Amstrong 2003] E. Armstrong, J. Ball, S. Bodoff, D. Bode, M. Fisher, S. Fordin,

D. Green, K. Haase, E. Jendrock, “The Java Web Services Tutorial“

http://java.sun.com/webservices /docs/1.2/tutorial/doc/index.html, 2003.

[Antoniucci 2004] J. Antoniucci. “Manual Básico de Struts”. Madrid España,

http://programacion.com/java/tutorial/joa_struts/, 2004.

[Baeza 2002] C. Baeza, “Arquitectura de un Sistema de Comercio Electrónico

para pequeñas y Medianas Empresas”, tesis de maestría. CENIDET, 2002.

[Bravo 2003] M. Bravo, “Desarrollo de un Prototipo de Comercio Electrónico

Incorporando Sistemas de Pago”, tesis de maestría, CENIDET, 2003.

[AMECE 2005] Asociación Mexicana de Comercio Electrónico, “Catálogo

Electrónico de Productos AMECE", http://www.amece.org.mx/catalogalo/

index.php, 2005.

[Gamma 1995] E. Gamma, R. Helm, R. Johnson y J. Vlissides, “Design

Patterns: Elements of Reusable Object-Oriented Software”, 1995.

[García 2002] F. García, “e-CoUSAL: Una Arquitectura para Pequeñas y

Medianas empresas”, Departamento de Informática y Automática, Facultad

de Ciencias, Universidad de Salamanca, 2002.

[Garvey 2003] P. Garvey, M. Gratacos, J. Jairo, C. Smith, “The Berkeley XML

Application Infrastructure”, School of Information Management and Systems,

University of California, Berkeley http://groups.sims.berkeley.edu/CDE/

report/go-five-final-report.html, 2003.

Page 82: S.E.P. S.E.S. D.G.E.S.T. CENTRO NACIONAL DE INVESTIGACION ... Robe… · s.e.p. s.e.s. d.g.e.s.t. centro nacional de investigacion y desarrollo tecnologico intermediario facilitador

74

[IAE 2005] Instituto de Apoyo Empresarial, “Tienda On-Line”, Madrid España,

http://www.iaedirecto.net/iframe.php?file=secciones/servicios/internet/tienda.

htm, 2005.

[Ministerio 1999] Ministerio de Ciencia y Tecnología, “Estudio de la Situación

del Comercio Electrónico en España”, Madrid España,

http://www.sgc.mfom.es/sat/ce/sec2/ par212.html, 1999.

[Omelayenko, 2001] B. Omelayenko, D. Fensel, “XML-Based Catalogs for B2B

Electronic Commerce”, Division of Mathematics and Computer Science, Vrije

Universiteit., Holanda, 2001.

[Orbeon 2004] Orbeon, Inc. “Model 2X Introduction”, http://www.orbeon.com/

oxf/doc/model2x-intro, Mountain View, California E.U., 2004.

[PADSOFT 2005] Programación, Análisis y Desarrollo para Empresas,

“Beneficios del Comercio Electrónico”, http://www.padsoft.net/internet/

comercio-electronico/beneficios.asp, 2005.

[Pérez 2004] A. Pérez, J. Leyva, “El Comercio Electrónico en la Pequeña

Empresa Mexicana”, Universidad de Sonora en Hermosillo, 2004.

[Seshadri 2004] G. Seshadri, “Understanding JavaServer Pages Model 2

architecture”, Java World, http://www.javaworld.com/javaworld/jw-12-1999/

jw-12-ssj-jspmvc.html. California, E.U, 2004.

[Kofman 2003] V Kofman, “Applying MVC to Web-Based Applications with

Generic Views”, http://www.developer.com/java/web/article.php/

10935_3115111_2, 2003.

[ZOPE 2005] Zope Community, “The Zope Book (2.6 Edition)”, www.zope.org,

2005.