UNIVERSIDAD REGIONAL AUTÓNOMA DE LOS ANDES
“UNIANDES” - IBARRA
FACULTAD DE SISTEMAS MERCANTILES
CARRERA DE SISTEMAS
PROYECTO DE INVESTIGACIÓN, PREVIO A LA OBTENCIÓN DEL
TÍTULO DE INGENIERO EN SISTEMAS E INFORMÁTICA
TEMA: “APLICACIÓN WEB DE COMERCIO ELECTRÓNICO PARA LA
FABRICA ROSSY DE LA CIUDAD DE ATUNTAQUI”
AUTOR: López Ruiz Rubén Darío
ASESOR: Ing. Martínez Campaña Carlos Eduardo
APROBACIÓN DEL ASESOR DEL TRABAJO DE TITULACIÓN
CERTIFICACIÓN:
Quien suscribe, legalmente
CERTIFICA QUE
: El presente Trabajo de
Titulación realizado por el señor
Rubén Dario López Ruiz,
estudiante de la
Carrera de Sistemas, Facultad de Sistemas Mercantiles
,
con el tema
“
APLICACIÓN WEB DE COMERCIO ELECTRONICO PARA LA
FABRICA ROSSY DE LA CIUDAD ATUNTAQUI
”, ha sido prolijamente
revisado, y cumple con todos los requisitos establecidos en la normativa
pertinente de la Universidad Regional Autónoma de los Andes -UNIANDES-,
por lo que apruebo su presentación.
Ambato, Julio de 2016
_______________________
Ing. Carlos Eduardo Martínez Campaña.
DECLARACIÓN DE AUTENTICIDAD
Yo,
Rubén Dario Lopez Ruiz
, estudiante de la Carrera de Sistemas, Facultad
de Sistemas Mercantiles, declaro que todos los resultados obtenidos en el
presente trabajo de investigación, previo a la obtención del título de
INGENIERO EN SISTEMAS E INFORMATICA, son absolutamente
originales, auténticos y personales; a excepción de las citas, por lo que son de
mi exclusiva responsabilidad.
Ambato, Julio de 2016
______________________________
Sr. Rubén Dario López Ruiz
CI. 1002321477
DERECHOS DE AUTOR
Yo,
Rubén Dario López Ruiz
, declaro que conozco y acepto la disposición
constante en el literal d) del Art. 85 del Estatuto de la Universidad Regional
Autónoma de Los Andes, que en su parte pertinente textualmente dice: El
Patrimonio de Ia UNIANDES, está constituido por: La propiedad intelectual
sobre las Investigaciones, trabajos científicos o técnicos, proyectos
profesionales y consultaría que se realicen en la Universidad o por cuenta de
ella;
Ambato, Julio de 2016
_______________________________
Sr. Rubén Dario López Ruiz
CI. 1002321477
DEDICATORIA
Esta tesis se la dedico a Dios quién supo guiarme por el buen
camino, darme fuerzas para seguir adelante y no desmayar en los
problemas que se presentaban, enseñándome a encarar las
adversidades sin perder nunca la fé ni desfallecer en el intento.
A mi familia quienes con su amor, paciencia, apoyo incondicional
han sabido tutelar mis decisiones buscando siempre mí bienestar,
a mi Padre ese ángel que me bendice desde el cielo en todo
momento y el cuál sé que se sentirá orgulloso al culminar mi
carrera. A todos quienes han estado en este largo camino quiero
AGRADECIMIENTO
El presente trabajo de tesis primeramente me gustaría agradecer
a Dios por bendecirme para llegar a culminar mis estudios, a mi
familia que con su apoyo incondicional me acompañaron en
todo momento para cumplir este sueño anhelado; a la
Universidad Regional Autónoma de los Andes “UNIANDES”
por darme la oportunidad de estudiar y formarme como un
profesional competente para servir a la sociedad.
A mi director de tesis, Ing. Carlos Martínez por su esfuerzo y
dedicación, quien con sus conocimientos, su experiencia, su
paciencia y su motivación han sido una guía para terminar mis
estudios con éxito.
También me gustaría agradecer a mis profesores que durante mi
carrera académica han aportado con sus conocimientos en mi
formación.
Son muchas las personas que han formado parte de mi vida
académica y profesional a quienes me gustaría agradecer su
amistad, consejos, apoyo, ánimo y compañía en los momentos
difíciles de mi vida. Para todos ellos muchas gracias y que Dios
INDICE DE CONTENIDOS
CERTIFICADO DEL ASESOR
AGRADECIMIENTO
DEDICATORIA
RESUMEN EJECUTIVO
ABSTRACT
INTRODUCCIÓN ... 1
Antecedentes de la investigación ... 1
Planteamiento del Problema ... 2
Formulación del problema ... 3
Delimitación del problema ... 3
Objeto de Investigación y Campo de Acción ... 3
Identificación de línea de investigación ... 4
Objetivo General ... 4
Objetivos Específicos ... 4
Idea a defender... 5
Justificación del Tema ... 5
Breve Explicación de la Metodología Investigativa a emplear ... 6
RESUMEN DE LA ESTRUCTURA DE LA TESIS ... 7
Elementos de novedad, aporte teórico y significación práctica, en dependencia del alcance de la tesis ... 8
CAPITULO I... 9
1. MARCO TEORICO ... 9
1.1. FRAMEWORK ... 9
1.1.1 Framework, Framework para aplicaciones web ... 9
1.1.2 Arquitectura de un Framework El Modelo – Vista – Controlador (Mvc) 10 1.1.2.1 La capa del Modelo ... 11
1.1.2.2 La capa de la Vista ... 12
1.1.2.3 La capa del Controlador ... 12
1.2 INTERNET ... 14
1.2.1 Usos de Internet ... 15
1.2.2 Los Protocolos ... 16
1.2.3 Las Direcciones TCP/IP... 17
1.2.4 Dominio de Internet ... 17
1.2.5 Dominio de Nivel Superior ... 17
1.2.6 Navegadores... 19
1.2.7 Aplicaciones Web ... 20
1.2.8 Cómo Funcionan las Aplicaciones Web ... 20
1.2.9 Estructura de una Aplicación Web ... 22
1.2.10 Las limitantes de las Aplicaciones Web ... 23
1.2.11 Inconvenientes ... 24
1.2.12 Uso Empresarial ... 25
1.3 HERRAMIENTAS DE DESARROLLO ... 26
1.3.1 PHP... 26
1.3.2 Dreamweaver CS6 ... 27
1.3.3 Javascript ... 28
1.3.4 Jquery... 29
1.3.5 HTML ... 29
1.3.6 Servidor Web ... 30
1.3.7 My SQL Server v.2.5.1 ... 30
1.3.8 Motor de Base de Datos ... 31
1.3.9 Metodologías de desarrollo de software ... 34
1.3.10 Disciplina de Desarrollo ... 35
1.3.11 Disciplina de Soporte ... 35
1.4 COMERCIO ELECTRÓNICO ... 36
1.4.1 Origen y Evolución Histórica ... 36
1.4.2 Ventajas para los Clientes ... 38
1.4.3 Ventajas para la Empresa ... 38
1.4.4 Categorías del comercio electrónico ... 39
1.4.5 Riesgos ... 40
1.4.6 Privacidad y seguridad ... 40
1.4.8 Tecnologías que Emplea ... 42
1.4.9 Tipos de relaciones que pueden presentarse ... 42
1.4.10 Efectos ... 43
1.4.11 Gestión de seguridad de la información ... 45
1.4.12 Conceptos Básicos de la Seguridad de la Información ... 46
1.5 CONCLUSIONES PARCIALES DEL CAPÍTULO ... 47
CAPITULO II ... 49
2 MARCO METODOLOGICO ... 49
2.1 CARACTERISACIÓN DEL SECTOR ... 49
2.2 DESCRIPCIÓN DEL PROCEDIMIENTO METODOLÓGICO ... 50
2.2.1 Modalidad de la Investigación ... 50
2.2.2 Tipo de Investigación ... 51
2.2.3 Modalidad de la Investigación ... 51
2.2.4 Instrumentos ... 51
2.2.5 Población y Muestra ... 52
2.2.6 Análisis e Interpretación de resultados ... 54
2.3 PROPUESTA DEL INVESTIGADOR ... 60
2.4 CONCLUSIONES DEL CAPITULO ... 61
CAPITULO III ... 62
3 MARCO PROPOSITIVO ... 62
3.1 TEMA ... 62
3.2 Objetivos ... 62
3.3 DESARROLLO DE LA PROPUESTA ... 63
3.3.1 Metodología de Desarrollo ... 63
3.3.2 Análisis del Sistema... 63
3.3.3 Análisis de Requisitos ... 64
3.3.3.1 Flujo de Información ... 64
3.3.4 Diagrama de flujo de datos para solicitud de servicios Nivel 0 ... 66
3.3.5 Caso de Uso para Iniciar Sesión ... 66
3.3.6 Caso de Uso para realizar un Pedido y pago ... 68
3.3.7 Diagrama flujo de datos de nivel 1 ... 69
3.3.8 Diagrama de flujo de datos del Administrador ... 69
3.3.10 Diseño ... 72
3.3.10.1 Modelo de Base De datos ... 73
3.3.10.2 Diccionario de Datos ... 74
3.3.10.3 Tabla Clientes ... 77
3.3.10.4 Tabla Productos... 77
3.3.10.5 Descripción del Portal ... 77
3.3.11 Diseño de Entrada y Salida de Datos ... 84
3.3.12 Codificación ... 86
3.3.13 Fase de Pruebas ... 93
3.3.14 Fase de Mantenimiento ... 94
3.3.15 Beneficios y Ventajas de la Propuesta ... 95
CONCLUSIONES GENERALES... 96
RECOMENDACIONES ... 97 Bibliografía
INDICE DE TABLAS
Tabla 1: Tipos de campos que se emplean en SQL ... 32
Tabla 2: Tipos de campos que se emplean en SQL ... 33
Tabla 3: Población a investigar... 52
Tabla 4: Tabulación Pregunta 1 ... 54
Tabla 5: Tabulación Pregunta 2 ... 55
Tabla 6: Tabulación Pregunta 3 ... 56
Tabla 7: Tabulación Pregunta 4 ... 57
Tabla 8: Tabulación Pregunta 5 ... 58
Tabla 9: Tabulación Pregunta 6 ... 59
Tabla 10: Caso de Uso ... 66
Tabla 11: Caso de Uso - Flujo de Datos de Pago y Pedido ... 68
Tabla 12: Detalle Recursos Humanos ... 70
Tabla 13: Detalle recursos de hardware ... 70
Tabla 14: Detalle recursos de software ... 71
Tabla 15: Detalle recursos materiales ... 71
Tabla 16: Detalle recursos varios ... 71
Tabla 17: Detalle costos recursos económicos ... 72
Tabla 18: Login... 74
Tabla 19: Carrito de compras ... 74
Tabla 20: Agregar Producto... 74
Tabla 21: Agregar categoría ... 74
Tabla 22: Pedido ... 75
Tabla 23: Confirmación de pago ... 75
Tabla 25: Usuarios ... 75
Tabla 26: Promociones ... 76
Tabla 27: Método Kardex ... 76
Tabla 28: Busca Producto ... 76
Tabla 29: Fase de pruebas – Registro Usuario ... 93
Tabla 30: Fase de pruebas – Carrito de compras ... 93
INDICE DE GRAFICOS Figura 1: Una petición MVC típica ... 13
Figura 2: Interacción sincrónica de una aplicación web clásica ... 24
Figura 3: Esquema del funcionamiento de PHP ... 27
Figura 4: Logotipo TEJIDOS ROSSY ... 49
Figura 5: Representación gráfica pregunta 1 ... 54
Figura 6: Representación gráfica pregunta 2 ... 55
Figura 7: Representación gráfica pregunta 3 ... 56
Figura 8: Representación gráfica pregunta 4 ... 57
Figura 9: Representación gráfica pregunta 5 ... 58
Figura 10: Representación gráfica pregunta 6 ... 59
Figura 11: Diagrama de la Metodología ... 63
Figura 12: Diagrama de Caso de Uso Cliente ... 65
Figura 13: Diagrama de Caso de Uso Administrador... 65
Figura 14: Diagrama de Flujo de Datos Nivel 0 ... 66
Figura 15: Diagrama de Flujo de Datos Nivel 1 ... 69
Figura 16: Diagrama de Flujo de Datos de Administrador... 69
Figura 17: Modelo de la Base de Datos ... 73
Figura 19: Detalle de Campos de la Tabla Productos ... 77
Figura 20: Pantalla Principal del Sitio Web ... 78
Figura 21: Pantalla de Registro... 79
Figura 22: Registro de Usuarios ... 79
Figura 23: Pantalla de Productos ... 80
Figura 24: Selección del Producto ... 80
Figura 25: Sección Carrito de Compras ... 81
Figura 26: Agregar Compra ... 81
Figura 27: Compra Prodcuto ... 81
Figura 28: Pantalla de Registro de Compras ... 82
Figura 29: Pantalla de Envío... 82
Figura 30: Pantalla de Forma de Pago ... 82
Figura 31: Envío de detalle ... 83
Figura 32: Finalización de transacción ... 83
Figura 33: Mensaje de finalización de compra ... 83
Figura 34: Pantallas de Finalización de compra ... 83
Figura 35: Cierre de Sesión ... 84
Figura 36: Agregar Usuarios ... 84
Figura 37: Pantalla de Registro de Usuarios ... 85
Figura 38: Activación de usuario ... 85
RESUMEN EJECUTIVO
La presente tesis da a conocer la realización e implementación de una “APLICACIÓN
WEB DE COMERCIO ELECTRÓNICO PARA LA FABRICA ROSSY DE LA
CIUDAD DE ATUNTAQUI”, provincia de Imbabura; la cual, fue llevada a cabo durante
un largo proceso de indagación, preparación, desarrollo, pruebas y ejecución de la
aplicación en un dominio fijo en la red de Internet.
Se ha desarrollado una aplicación que habilita el uso de herramientas web para las
diferentes actividades que se realizan dentro de la fábrica “ROSSY”, utilizando la
metodología RUP, la que nos permite ejecutar la aplicación de una forma más clara,
determinando un progreso y avance coherente del sistema web; cumpliendo las fases de
desarrollo de software: inicio, elaboración, construcción y pruebas para que el sistema sea
operativo ya en la web.
Dentro de todo este contexto, la implementación del sistema de gestión de ventas en la
fábrica “ROSSY” ha conllevado a una mejora, a una actualización de la empresa y más
aún, de sus empleados en el uso de herramientas web 2.0 acordes a las exigencias actuales,
tanto tecnológicas y de usuarios. Dando soluciones y estableciendo acciones de
automatización, se ha cumplido con una inclusión de tecnología a favor de la sociedad.
Esta implementación beneficiara a un universo amplio de usuarios de la provincia de
Imbabura y todo el Ecuador, sin olvidar mencionar el alto nivel de prestigio que adquirirá
la Fábrica “ROSSY”; sin menospreciar el mercado exterior.
Cabe indicar que, los siguientes son los aspectos principales que se desarrollan en el
Capítulo I, contiene la conceptualización de los elementos de uso del aplicativo web,
teorías y aspectos de la realidad en el contexto con la propuesta.
El capítulo II, describe la estructura metodológica usada en la propuesta sugerida,
especificando cada una de las fases y sus componentes que la integran, desarrollando así
una verdadera investigación en base a un objeto de estudio definido, como es la
Implementación de un sistema web, para la empresa textil “Rossy” de la ciudad de
Atuntaqui.
El capítulo III detalla la validación del proyecto en base a la exhaustiva investigación
realizada en los anteriores capítulos. Aquí, se muestra todas las pruebas necesarias hechas
al sistema, desde diversos enfoques; para así establecer los resultados adecuados que la
empresa demanda y a la vez, solucionar diversas problemáticas manuales y
específicamente cambiar el estándar de ventas acordes a los requerimientos actuales del
mercado competitivo.
Finalmente, el documento contiene conclusiones, recomendaciones y la bibliografía
EXECUTIVE SUMMARY
ABSTRACT
This thesis discloses the realization and implementation of a "WEB APPLICATION OF
ELECTRONIC COMMERCE FOR THE ROSSY FACTORY OF ATUNTAQUI
CITY", Imbabura Province; which was carried out during a long process of investigation,
preparation, development, testing and execution of the application in a fixed domain on
the Internet network.
An application was developed that enables the use of web tools for different activities
performed within the factory "ROSSY", using the RUP methodology, which allows us to
run the application in a clearer way, determining a coherent progress and advance of the
web system; fulfilling the software stages of development: initiation, elaboration,
construction and testing to make the system be already operational on the web.
Within all this context, the implementation of the management sales system in the factory
"ROSSY" has led to an improvement, an update of the company and even more, of its
employees in the use of web 2.0 tools according to the current requirements, both
technology and users. Providing solutions and establishing actions of automation, it has
complied with an inclusion of technology in favor of the society.
This implementation will benefit a broad universe of users in the Imbabura Province and
whole Ecuador, not forgetting to mention the high level of prestige that the Factory
It is noted that, the following are the main aspects developed in this document:
Chapter I contains the conceptualization of the use elements of the web application,
theories and aspects of the reality in the context with the proposal.
Chapter II describes the methodological structure used in the suggested proposal,
specifying each of the phases and components that compose it, thus developing a real
investigation based on a defined study object, such as the implementation of a web
system, for the textile company "Rossy" of Atuntaqui city.
Chapter III details the validation of the project based on the extensive research in the
previous chapters. Here, it shows all the necessary tests done to the system, from various
approaches; in order to establish suitable results that the company demands and at the
same time, to solve several manual problems, specifically to change the standards of sales
according to the current requirements of the competitive market.
Finally, the document contains conclusions, recommendations and the necessary
INTRODUCCIÓN
Antecedentes de la investigación
La evolución del comercio electrónico es de reciente data, esto quiere decir que apenas
tiene 20 años, su originen va con el uso comercial del Internet, a mediados de la última
década del siglo XX. Los antecedentes al presente trabajo investigativo han sido
elaborados en base a la recopilación de la información obtenida en varios repositorios y
bibliotecas de algunas Universidades, así tenemos:
Se encontró el trabajo de los Ingenieros Toainga L y Galio G de la ESPOL presentado
a inicios del 2011 con su tema “Portal de compras on-line para Solnega” en el cual se
desarrolla un portal web con los productos que vende la empresa y se hace la
comercialización de los mismos, se utiliza software libre y se agregan controles en java
script y Ajax.
También se llevó a cabo una investigación en la biblioteca de la Universidad Regional
Autónoma de Los Andes, encontrándose el trabajo de laIngeniera Zoraida Zambrano con
su tema “Planificación tecnológica para la gestión operativa de la empresa Gimsa de Santo Domingo de los Tsachilas” en la que se audita la plataforma informática y se
esquematizan nuevas proceso y equipos, aquí se da un enfoque para que la empresa
incursione en el comercio electrónico e incluso se elabora un portal rápido con esa
finalidad
Entre otros trabajos se puede señalar el desarrollado por el Magister Jaime Orozco, con
el tema Aplicación WEB MOVIL para el M-Comerce de la empresa Unifashion, el mismo
que ha sido presentado en el año 2012 y del cual se puede concluir que la nuevas
tendencias comerciales, están orientadas hacia los denominados teléfonos inteligentes
generando una variante del comercio electrónico denominado m-commerce la misma que
implica que todas las afectaciones de la web deben de rediseñarse para el uso en móviles.
A nivel internacional se encontró el trabajo del Ingeniero Comercial Carlos Vásquez de
las pequeñas empresa chilenas”, en el se analiza las ventajas y desventajas del sector de
la micro empresa ante la posibilidad de hacer comercio electrónico, esencialmente se
manifiesta los beneficios como la ampliación de mercados y lo económico de una
inversión tecnológica.
Planteamiento del Problema
“Las micro, pequeñas y medianas empresas, constituyen en cualquier país, el grupo
predominante, en algunos casos superan el 89% de unidades económicas, contribuyen
significativamente a la creación de empleo, a la generación de riqueza y además satisfacen
necesidades en ciertos mercados que son poco atractivos para las grandes empresas. Son
además el punto de partida en el que se forman grandes empresarios y el vehículo para el
autodesarrollo de millones de personas.” (BABIN, 2011)
También señala que: “Las empresas en nuestro entorno, para ser competitivas” necesitan
urgentemente reconfigurarse considerando la información y tecnología, para innovar
procesos de cambio y mejora. En este contexto las micro, pequeñas y medianas empresas
se han visto considerablemente afectadas por la extensión de la competitividad a escala
mundial. En estos escenarios, mantener la cuota de mercado equivale a incrementar
permanentemente la eficacia, para que de esa manera se pueda dar respuesta a los
requerimientos de los clientes y a la fuerte acción de la competencia” De acuerdo a los
datos anteriores, definitivamente el crecimiento de las mismas, está sujeto o depende
invariablemente de la competitividad que cada una genere, a través de adecuados modelos
de dirección y gestión. Aplicados en el mercado internacional, nacional o local, en donde
las empresas compiten entre sí, involucradas en los diversos sistemas productivos,
esquemas institucionales y organizaciones sociales, en los que la empresa es un elemento
importante, integrado en una red de interrelaciones y vinculaciones con el sistema
educativo, la infraestructura tecnológica, las relaciones gerencial-laborales, los órganos
institucional público y privado, el sistema financiero.
En el Ecuador la influencia tecnológica mundial también ha tenido un efecto comercial
muy grande, día a día es mayor el número de empresas que amplían sus medios de
marketing y promoción en varios entornos alejados de los medios tradicionales. De igual
forma en la pequeña empresa se nota esta influencia aunque en menor cuantía.
La Fábrica ROSSY proporciona a la ciudadanía de Atuntaqui diversos productos de
vestimenta. Luego de varias visitas realizadas a la fábrica en las cuales se ha procedido
analizar su funcionamiento, se ha encontrado varias dificultades entre las cuales se pueden
mencionar:
No se cuenta con un registro organizado que permita manejar crédito con los clientes, es
decir, se lo registra manualmente y al momento de cancelar la compra esto genera pérdida
de tiempo y muchas veces pérdida de ventas.
La empresa no utiliza medio electrónicos para su promoción tanto de la empresa como de
los diversos productos que ofrece, perjudicando su imagen a nivel competitivo, generando
gastos elevados en publicidad tradicional y pérdida de futuros clientes.
Formulación del problema
¿Cómo mejorar la gestión comercial interactiva, mediante medios digitales de la Fábrica
ROSSY de la ciudad de Atuntaqui en la provincia de Imbabura?
Delimitación del problema
Delimitación Física: La investigación se llevará a cabo en la Fábrica “ROSSY”, ubicada en el centro de la ciudad de
Atuntaqui, provincia de Imbabura.
Delimitación Tiempo: Se trabajará con la información producida en el año 2014 – 2015.
Objeto de Investigación y Campo de Acción
Campo De Acción: Sistemas De Información Orientados Al E-
Commerce
Identificación de línea de investigación
La presente tesis se enmarca dentro de la línea de investigación: “Desarrollo de Software
y programación de sistemas”. Ya que permite el desarrollo de una aplicación nueva, que
permita solucionar la diversidad de acciones cotidianas de la empresa, mediante el medio
web; como instrumento de comunicación mundial y la utilización de recursos multimedia
de forma inmediata y oportuna; y lo más importante ejercer el proceso de e-commerce
como un elemento innovador y propio de la red mundial, usando lenguajes de
programación web actuales.
Objetivo General
Implementar un software de promoción y ventas on-line, para qué en base a su utilización,
se logre el mejoramiento de la gestión comercial en la fábrica ROSSY de la ciudad de
Atuntaqui.
Objetivos Específicos
Fundamentar bibliográficamente los sistemas de información orientados a la web (portales y aplicaciones), sus herramientas de desarrollo y la gestión
comercial.
Diagnosticar la gestión comercial de la Fábrica ROSSY de la ciudad de Atuntaqui y sus requerimientos de automatización así como de apoyo
tecnológico.
Idea a defender
Con la utilización de un software de promoción y de ventas on-line caracterizado por ser
elaborado con herramientas informáticas de tipo libre como wordpress, php, mysql,
apache, se mejorará la gestión comercial de la Fábrica “ROSSY” de la ciudad d Atuntaqui.
Variable Dependiente: Aplicación web de comercio electrónico
Variable Dependiente: La fábrica “Rossy” de la ciudad de Atuntaqui.
Justificación del Tema
En la actualidad, el uso de plataformas digitales para la venta/compra de productos, bienes
y/o servicios se acrecentado significativamente en todo ámbito comercial; por lo tanto la
incorporación de estas nuevas opciones en cada una de las empresas a contribuido en la
mejora de las ventas y más aún la implementación de una infraestructura tecnológica,
como medio de inter-comunicación entre el usuario final y el empresario.
Por tanto la implementación de un sistema web de e-commerce para la empresa de
Textiles “Rossy”, mejorará significativamente sus promociones y ventas, tanto locales,
nacionales e internacionales; ya que ésta no cuenta actualmente con un sistema web
interactivo de ventas y que sólo existía una página web con carrusel de imágenes estáticas;
en tal virtud, generará mejores ingresos a la empresa, nuevas opciones de mercado,
estabilidad laboral de muchos trabajadores y lo principal, la automatización de procesos
de venta al mundo; logrando así ser una de las principales empresas en implementar estos
nuevos esquemas en la ciudad de Atuntaqui, como eje matriz de la economía textil del
Breve Explicación de la Metodología Investigativa a emplear.
La metodología investigativa que se empleará en el desarrollo del presente trabajo de
titulación, en lo que se refiere a la modalidad de la investigación concretamente se
utilizará el paradigma denominado
Cuali-cuantitativo, en este paradigma la modalidad cualitativa permite averiguar las cualidades o características generales del problema, esta averiguación normalmente se la
hace en base a observación y a visitas en la empresa. Las características cualitativas de la
problemática posteriormente son ratificadas mediante la cuantificación de la
investigación de campo llevada a cabo generalmente en base a encuestas.
Entre los tipos de investigación que se utilizaran tenemos:
Bibliográfica: consiste en la recopilación de información existente en libros revistas e internet, se la aplica para la elaboración del denominado marco teórico que es el que
fundamenta científicamente la propuesta de solución. En este caso concreto la
investigación bibliográfica se orienta a las herramientas de desarrollo de la aplicación
web, como por ejemplo PHP, MySql, Ajax, html, javascript, CSS, servidores web,
aplicaciones Web, marketing y la gestión comercial.
De campo: Esta investigación se lleva a cabo en el sitio mismo en donde se manifiestan los síntomas de la problemática, en este caso en particular en la empresa. Este proceso
investigativo se lo desarrollará llevando a cabo una encuesta orientada para los clientes
internos y externos de la empresa, así como una entrevista directa a la gerente de la misma.
Los métodos investigativos a utilizar son:
Analítico sintético: este método se aplicará para la elaboración del marco teórico, ya que toda la información recopilada en libros e internet deberá ser sintetizada y colocada en el
Las técnicas que se aplicaran en el proceso investigativo son: la encuesta que se llevará a
cabo a los clientes de la empresa así como a los empleados de la misma; también se
realizará una entrevista a la gerente-propietaria para recabar sus criterios relacionados a
la problemática y a la solución de la misma.
Técnicas e Instrumentos De Recolección De Datos
La investigación se la realizara mediante las siguientes técnicas:
Cuestionarios: Se utilizarán para las encuestas orientadas a los clientes y a los empleados y la guía de entrevistas para la gerente de la empresa.
RESUMEN DE LA ESTRUCTURA DE LA TESIS
La presente investigación, para su fácil compresión, considera como partes esenciales
de su estructura lo siguiente:
Introducción.-
Capítulo I.-
Corresponde al marco teórico, se encuentra dividido en cinco títulos: Internet y
Aplicaciones Web, Comercio Electrónico, Herramientas de Desarrollo, Framework con
Modelo Vista Controlador (MVC), Conclusiones Parciales de Capítulo.
Capítulo II.-
Este capítulo corresponde al marco metodológico y planteamiento de la propuesta,
según los resultados alcanzados y aportados por la metodología de la investigación,
Capítulo III.-
En este capítulo es donde se detalla el desarrollo de la propuesta a más de ello se hace
un análisis de todos los resultados alcanzados en la investigación, finalizando con
conclusiones generales y recomendaciones así como también bibliografía y anexos.
Elementos de novedad, aporte teórico y significación práctica, en dependencia del alcance de la tesis.
Entre los aspectos más importantes de todo trabajo investigativo es su fundamento
teórico, normalmente este fundamento sirve de base para la propuesta de solución. En el
caso del presente trabajo de investigación el aporte teórico tiene que ver con el
fundamento relacionado a las herramientas del software libre que se van a utilizar para
elaborar la aplicación web. Se fundamenta científicamente la base de datos Mysql, el
servidor web Apache (WampServer) y el lenguaje de programación web PHP, por otra
parte el marketing y los procesos de gestión comercial, se recogen los criterio de varios
autores y estos criterios son complementados por las ideas y opiniones del realizador del
presente trabajo investigativo.
El presente trabajo de titulación tiene una enorme significación práctica, primero esta
significación tiene que ver con la posibilidad que tiene la empresa de prácticamente
diversificar sus procesos de ventas saliéndose de canales tradicionales. En cambio la
significación práctica relacionada con el realizador del trabajo investigativo radica en el
desarrollo del software respectivo, en él se aplican todos los conceptos adquiridos durante
la maestría e incluso los de la vida práctica profesional, se puede resumir el trabajo de
titulación tiene una enorme significación práctica, tanto para el autor como para la
empresa.
Como novedad científica de este trabajo de titulación podemos señalar: la utilización de
aspectos complementarios novedosos como Ajax,CSS3, y JavaScript tendientes a
fortalecer el diseño de la aplicación la cual estará desarrolla usando wordpress y con la
CAPITULO I
1. MARCO TEORICO
1.1.FRAMEWORK
Framework (marco de trabajo) en términos generales es un conjunto estandarizado de
conceptos, prácticas y criterios para enfocar un tipo de problemática particular que
sirve como referencia, para enfrentar y resolver nuevos problemas de índole similar.
En el desarrollo de software, un framework o infraestructura digital, es una estructura
conceptual y tecnológica de soporte definido, normalmente con artefactos o módulos
de software concretos, que puede servir de base para la organización y desarrollo de
software. Típicamente, puede incluir soporte de programas, bibliotecas, y un lenguaje
interpretado, entre otras herramientas, para así ayudar a desarrollar y unir los
diferentes componentes de un proyecto. Representa una arquitectura de software que
modela las relaciones generales de las entidades del dominio, y provee una estructura
y una especial metodología de trabajo, la cual extiende o utiliza las aplicaciones del
dominio.
1.1.1 Framework, Framework para aplicaciones web
Los frameworks tienen como objetivo principal ofrecer una funcionalidad definida,
auto contenido, siendo construidos usando patrones de diseño, y su característica
principal es su alta unión y bajo ajuste. Para acceder a esa funcionalidad, se construyen
piezas, objetos, llamados objetos calientes, que vinculan las necesidades del sistema
con la funcionalidad que este presta. Esta funcionalidad, está constituida por objetos
llamados fríos, que sufren poco o ningún cambio en la vida del framework,
permitiendo la portabilidad entre distintos sistemas. Frameworks conocidos que se
pueden mencionar por ejemplo son Spring Framework, Hibernate, donde lo esencial
para ser denominados frameworks es estar constituidos por objetos casi estáticos con
funcionalidad definida a nivel grupo de objetos y no como parte constitutiva de estos,
El programador no necesita plantearse una estructura global de la aplicación,
sino que el framework le proporciona un esqueleto que hay que rellenar.
Facilita la colaboración. Cualquiera que haya tenido que lidiar con el código
fuente de otro programador (o incluso con el propio, pasado algún tiempo)
sabrá lo difícil que es entenderlo y modificarlo; por tanto, todo lo que sea
definir y estandarizar va a ahorrar tiempo y trabajo a los desarrollos
colaborativos.
Es más fácil encontrar herramientas (utilidades, librerías) adaptadas al
framework concreto para facilitar el desarrollo.
La utilización de un framework en el desarrollo de una aplicación implica un cierto
coste inicial de aprendizaje, aunque a largo plazo es probable que facilite tanto el
desarrollo como el mantenimiento.
Existen multitud de frameworks orientados a diferentes lenguajes, funcionalidades,
etc.
Aunque la elección de uno de ellos puede ser una tarea complicada, lo más probable
que a largo plazo sólo los mejor definidos permanezcan. Y si ninguno de ellos se
adapta a las necesidades de desarrollo, siempre es mejor definir uno propio que
desarrollarlo.
1.1.2 Arquitectura de un Framework El Modelo – Vista – Controlador (Mvc)
Es un patrón de arquitectura de software que separa los datos y la lógica de
negocio de una aplicación de la interfaz de usuario y el módulo encargado
de gestionar los eventos y las comunicaciones. Para ello MVC propone la
construcción de tres componentes distintos que son el modelo, la vista y el
controlador, es decir, por un lado define componentes para la representación
de la información, y por otro lado para la interacción del usuario. Este patrón
de arquitectura de software se basa en las ideas de reutilización de código y
la separación de conceptos, características que buscan facilitar la tarea de
1.1.2.1 La capa del Modelo
El modelo representa la parte de la aplicación que implementa la lógica
de negocio. Esto significa que es responsable de la recuperación de
datos convirtiéndolos en conceptos significativos para la aplicación,
así como su procesamiento, validación, asociación y cualquier otra
tarea relativa a la manipulación de dichos datos.
A primera vista los objetos del modelo puede ser considerado como la
primera capa de la interacción con cualquier base de datos que podría
estar utilizando la aplicación. Pero en general representan los
principales conceptos entorno a los cuales se desea implementar un
programa.
En el caso de una red social, la capa de modelo se haría cargo de tareas
tales como guardar datos del usuario, el almacenamiento de
asociaciones con amigos, el almacenamiento y la recuperación de fotos
de los usuarios, encontrar sugerencias de nuevos amigos, etc. Mientras
que los objetos del modelo pueden ser considerados como “Amigo”, “Usuario”, “Comentario” y “Foto”.
El modelo es el responsable de:
Acceder a la capa de almacenamiento de datos. Lo ideal es que
el modelo sea independiente del sistema de almacenamiento.
Define las reglas de negocio (la funcionalidad del sistema). Un
ejemplo de regla puede ser: Si la mercancía pedida no está en
el almacén, consultar el tiempo de entrega estándar del
proveedor.
Lleva un registro de las vistas y controladores del sistema.
Si estamos ante un modelo activo, notificará a las vistas los
cambios que en los datos pueda producir un agente externo (por
ejemplo, un fichero por lotes que actualiza los datos, un
1.1.2.2 La capa de la Vista
La vista hace una presentación de los datos del modelo estando
separada de los objetos del modelo. Es responsable del uso de la
información de la cual dispone para producir cualquier interfaz de
presentación de cualquier petición que se presente.
Por ejemplo, como la capa de modelo devuelve un conjunto de datos,
la vista los usaría para hacer una página HTML que los contenga. O un
resultado con formato XML para que otras aplicaciones puedan
consumir.
La capa de la Vista no se limita únicamente a HTML o texto que
represente los datos, sino que puede ser utilizada para ofrecer una
amplia variedad de formatos en función de sus necesidades tales como
videos, música, documentos y cualquier otro formato que puedas
imaginar.
Las vistas son responsables de:
Recibir datos del modelo y la muestra al usuario. Tienen un
registro de su controlador asociado (normalmente porque
además lo instancia).
Pueden dar el servicio de "Actualización", para que sea
invocado por el controlador o por el modelo (cuando es un
modelo activo que informa de los cambios en los datos
producidos por otros agentes).
1.1.2.3 La capa del Controlador
La capa del controlador gestiona las peticiones de los usuarios. Es
responsable de responder la información solicitada con la ayuda tanto
Los controladores pueden ser vistos como administradores cuidando de
que todos los recursos necesarios para completar una tarea se deleguen
a los trabajadores más adecuados. Espera peticiones de los clientes,
comprueba su validez de acuerdo a las normas de autenticación o
autorización, delega la búsqueda de datos al modelo y selecciona el tipo
de respuesta más adecuado según las preferencias del cliente.
Finalmente delega este proceso de presentación a la capa de la Vista.
El controlador es responsable de:
Recibir los eventos de entrada (un clic, un cambio en un campo de
texto, etc.).
Contiene reglas de gestión de eventos, del tipo "SI Evento Z, entonces
Acción W". Estas acciones pueden suponer peticiones al modelo o a las
vistas. Una de estas peticiones a las vistas puede ser una llamada al
método "Actualizar()".
1.1.3 El ciclo de una petición
El ciclo de una petición típica comienza cuando un usuario solicita una
página o un recurso de la aplicación. Esta solicitud es procesada por un
despachador que selecciona el controlador correcto para manejarlo.
Figura Nº 1: Una petición MVC típica
1.1.4 Beneficios
¿Por qué utilizar MVC? Debido a que es un patrón de diseño de software
verdaderamente probado que convierte una aplicación en un paquete
modular fácil de mantener y mejora la rapidez del desarrollo. La separación
de las tareas de la aplicación en modelos, vistas y controladores hace que la
aplicación sea muy fácil de entender. Las nuevas características se añaden
fácilmente y agregar cosas nuevas a código viejo se hace muy sencillo. El
diseño modular también permite a los desarrolladores y los diseñadores
trabajar simultáneamente, incluyendo la capacidad de hacer prototipos
rápidos.
La separación también permite a los desarrolladores hacer cambios en una
parte de la aplicación sin afectar a los demás.
1.2 INTERNET
Internet es una red de ordenadores conectados entre sí, que permite a los usuarios
compartir información.
En la actualidad los usuarios disponen de tres formas básicas de conectarse a
Internet:
Mediante un Proveedor de Servicios de Internet (PSI), que es una compañía
que permite, (pagando sólo el coste de la llamada o mediante una cuota
mensual), conectarse a los ordenadores de su red, que ya está conectada a
Internet y, así, disponer, también del acceso.
La conexión desde el ordenador a la red del PSI puede hacerse de varias
maneras, lo que excede en el precio y la velocidad de conexión: mediante un
módem conectado a la línea telefónica convencional (la misma que se utiliza
para las llamadas de voz normales), mediante una línea RDSI, ADSL o una
conexión por cable.
A través de una red de área local: en este caso, el ordenador del usuario está
está conectada a Internet mediante un PSI de la forma comentada
anteriormente.
1.2.1 Usos de Internet
Básicamente Internet se usa para buscar y compartir información. A esta
información se puede acceder de diversas formas, lo que da lugar a los distintos
servicios de Internet.
Los principales servicios son los siguientes:
Navegación Web: consiste en consultar páginas Web pasando de unas
a otras conociendo sus direcciones o utilizando los hipervínculos que
hay entre ellas.
Correo Electrónico: es la posibilidad de contar con una dirección en la
que puede enviar y recibir mensajes de otros usuarios.
Foros: son tablones de anuncios agrupados por temas, en los que los
usuarios depositan sus mensajes o contestan a los de otros,
encadenándose largas secuencias de respuestas.
Chat: es la posibilidad de comunicarse en tiempo real (lo que se escriba
es inmediatamente leído por los otros) con otras personas en salas
públicas o privadas.
Mensajería Instantánea: que brinda la posibilidad de avisar al usuario
cuando algún conocido se conecta a Internet, para poder establecer una
comunicación en tiempo real directamente.
La transferencia de archivos (FTP): es un servicio que permite la
transferencia de archivos en Internet.
Listas de correo o listas de distribución: Es algo similar a los foros pero
los mensajes que envían los usuarios no van solamente a un lugar
público, el foro, sino también al correo de cada uno de los miembros de
la lista.
El intercambio de archivos: con este nombre se hace referencia a un
servicio que permite a usuarios particulares intercambiar archivos de
sus ordenadores sin la intervención de servidores externos (FTP). Este
música, pues se ha vuelto complicado buscar un culpable al ser los
usuarios particulares los que intercambian los archivos.
1.2.2 Los Protocolos
La Internet se basa en la utilización de los protocolos TCP/IP que son las
normas que posibilitan la interconexión de ordenadores de diferentes
fabricantes utilizando todo tipo de tecnología. Esta familia está formada por
más de cien normas o protocolos que no dependen de ningún fabricante y son
estándar. (Shift, 2004)
Los dos protocolos más importantes son IP (Internet Protocol) y TCP
(Transmision Control Protocol). (Shift, 2004)
El Protocolo IP (Internet Protocol): es un protocolo de comunicación básico
que dio origen al nombre de la Red. Define una red de conmutación de paquetes
donde la información que se quiere transmitir está fragmentada en paquetes.
Cada paquete se envía a la dirección del ordenador destino y viaja
independientemente del resto.
La característica principal de los paquetes IP es que pueden utilizar cualquier
medio y tecnología de transporte. Los equipos que conectan las diferentes redes
y deciden por dónde es mejor enviar un paquete según el destino son los routers
o direccionadores.
El Protocolo TCP: se encarga de subsanar las deficiencias en la llegada de los
paquetes de información a su destino, para conseguir un servicio de transporte
fiable.
Este mecanismo de funcionamiento requiere que todos los ordenadores
1.2.3 Las Direcciones TCP/IP
Una dirección Internet identifica un ordenador. Cada ordenador conectado a la
red tiene una dirección asociada (dirección Internet). Estas direcciones son
números de 32 bits que normalmente se escriben como a.b.c.d donde a,b,c,d
son números menores de 255.
Una parte de la dirección identifica la red entre todas las redes conectadas a
Internet y la que utiliza los routers para encaminar los paquetes.
La otra parte de la dirección identifica el ordenador dentro de los conectados
en la misma red. Las aplicaciones dentro de un ordenador se identifican
mediante un número contenido en la cabecera de los paquetes TCP/IP, llamado
puerto.
Aunque se puede utilizar estas direcciones de Internet numéricas para acceder
a los servicios y ordenadores, normalmente se utiliza nombres que son más
fáciles de recordar.
1.2.4 Dominio de Internet
Un dominio de Internet es un nombre base que agrupa a un conjunto de equipos
o dispositivos y que permite proporcionar nombres de equipo más fácilmente
recordables en lugar de una dirección IP numérica. Permiten a cualquier
servicio moverse a otro lugar diferente en la topología de Internet, que tendrá
una dirección IP diferente.
1.2.5 Dominio de Nivel Superior
Un Dominio De Nivel Superior (TLD) es la parte final de un dominio de
Internet; esto es, las letras que siguen al punto final de cualquier nombre de
La Internet Assigned Numbers Authority (IANA) actualmente clasifica los
dominios de nivel superior en tres tipos:
Dominios de nivel superior geográfico (ccTLD): Usados por un país o un
territorio dependiente. Tienen dos letras de largo, por ejemplo es para España,
ec, para Ecuador.
Dominios de Internet genéricos (gTLD): Usado (al menos en teoría) por una
clase particular de organizaciones (por ejemplo, com para organizaciones
comerciales). Tiene tres o más letras de largo. La mayoría de los gTLDs están
disponibles para el uso mundial, pero por razones históricas mil (militares) y
gov (gubernamental) están restringidos para el uso por las respectivas
autoridades estadounidenses. Los gTLDs se clasifican, a su vez, en los
dominios de internet patrocinados (sTLD), ej. .aero, .coop y .museum, y los
dominios de internet no patrocinados (uTLD), ej. .biz, .info, .name y .pro.
Dominios de nivel superior de infraestructura: El dominio de nivel superior
arpa es el único confirmado, fue establecido en 1985 para que facilitara la
transición hacia los sistemas DNS y luego ser eliminado. La red ARPANET
fue la predecesora de Internet creada en el Departamento de Defensa de los
Estados Unidos por la Agencia de Proyectos de Investigación Avanzada
(ARPA) y cuando el sistema de DNS's comenzó a funcionar los dominios de
ARPANET fueron inicialmente convertidos al nuevo sistema añadiéndoles
.arpa al final. Otras redes también fueron convertidas al nuevo sistema usando
pseudo-dominios, añadiendo al final dominios como .uucp o .bitnet, aunque
estos nunca fueron añadidos a los dominios genéricos de Internet.
Dominios de nivel superior históricos: Un .nato fue añadido a finales de los
años 1980 por el NIC para el uso de la NATO (OTAN en otros países), que
sentía que ninguno de los dominios de nivel superior entonces existentes
reflejaba adecuadamente su estatus como una organización internacional. Poco
después de esta añadidura, sin embargo, el NIC creó dominio de nivel superior
OTAN usar el dominio nato.int. No obstante, el dominio de nivel superior nato,
aunque no se usó más, no fue borrado hasta julio de 1996.
Otros dominios de nivel superior históricos son .cs para Checoslovaquia y .zr
para el Zaire.
1.2.6 Navegadores
Un navegador web o explorador web (del inglés, navigator o browser) es una
aplicación software que permite al usuario recuperar y visualizar documentos
de hipertexto, comúnmente descritos en HTML, desde servidores web de todo
el mundo a través de Internet. Esta red de documentos es denominada World
Wide Web (WWW). Cualquier navegador actual permite mostrar o ejecutar
gráficos, secuencias de video, sonido, animaciones y programas diversos
además del texto y los hipervínculos o enlaces.
La funcionalidad básica de un navegador web es permitir la visualización de
documentos de texto, posiblemente con recursos multimedia incrustados. Los
documentos pueden estar ubicados en la computadora en donde está el usuario,
pero también pueden estar en cualquier otro dispositivo que esté conectado a la
computadora del usuario o a través de INTERNET, y que tenga los recursos
necesarios para la transmisión de los documentos (un software servidor web).
Tales documentos, comúnmente denominados páginas web, poseen
hipervínculos que enlazan una porción de texto o una imagen a otro documento,
normalmente relacionado con el texto o la imagen.
El seguimiento de enlaces de una página a otra, ubicada en cualquier
computadora conectada a la Internet, se llama navegación, que es de donde se
origina el nombre de navegador. Por otro lado, ojeador es una traducción literal
del original en inglés, browser, aunque su uso es minoritario.
Ejemplos de Navegadores:
Internet Explorer y derivados
Navegador web IBM para OS/2
Netscape Navigator (hasta la versión 4.xx)
OmniWeb
IEs4Linux
Mozilla FireFox
Google Chrome
OperaSafari
1.2.7 Aplicaciones Web
Una aplicación web es un conjunto de páginas que interactúan unas con otras
y con diversos recursos en un servidor web, incluidas bases de datos. Esta
interacción permite implementar características en su sitio como catálogos de
productos virtuales y administradores de noticias y contenidos. Adicionalmente
podrá realizar consultas a bases de datos, registrar e ingresar información,
solicitudes, pedidos y múltiples tipos de información en línea en tiempo real.
(SURONLINE, 2010)
1.2.8 Cómo Funcionan las Aplicaciones Web
Los administradores de contenidos vía web almacenan los datos en BASES DE
DATOS (BD). Estas BD están formadas por un número variable de tablas que
contienen columnas y filas, estas tablas se componen del contenido que ha sido
previamente cargado en ellas a través de formularios.
En estas tablas llamamos al nombre de cada columna CAMPO. Y a cada fila
REGISTRO. Ambos en el sistema poseen números de id (identificación) que
son únicos para cada uno de ellos.
Las páginas que se generan a partir de esos contenidos son llamadas dinámicas.
En este contexto el término dinámico no indica movimiento o animación, sino
máquina cliente a un servidor web (en este caso). Se podría decir que la página
dinámica no existe hasta que no es solicitada por el navegante. Cuando el
navegante la solicita oprimiendo alguno de los comandos disponibles se dispara
la consulta a la base de datos, y el sistema muestra una página web con el
contenido que este programado en la consulta. (SURONLINE, 2010)
En la ingeniería de software se denomina aplicación web a aquellas
herramientas que los usuarios pueden utilizar accediendo a un servidor web a
través de Internet o de una intranet mediante un navegador. En otras palabras,
es una aplicación software que se codifica en un lenguaje soportado por los
navegadores web en la que se confía la ejecución al navegador.
Las aplicaciones web son populares debido a lo práctico del navegador web
como cliente ligero, a la independencia del sistema operativo, así como a la
facilidad para actualizar y mantener aplicaciones web sin distribuir e instalar
software a miles de usuarios potenciales.
Existen aplicaciones como los web mails, wikis, blogs, tiendas en línea y la
propia Wikipedia que son ejemplos bastante conocidos de aplicaciones web.
Es importante mencionar que una página Web puede contener elementos que
permiten una comunicación activa entre el usuario y la información. Esto
permite que el usuario acceda a los datos de modo interactivo, gracias a que la
página responderá a cada una de sus acciones, como por ejemplo rellenar y
enviar formularios, participar en juegos diversos y acceder a gestores de base
de datos de todo tipo. (Mora, 2002)
En los primeros tiempos de la computación cliente-servidor, cada aplicación
tenía su propio programa cliente que servía como interfaz de usuario que tenía
que ser instalado por separado en cada ordenador personal de cada usuario. El
cliente realizaba peticiones a otro programa -el servidor- que le daba respuesta.
Una mejora en el servidor, como parte de la aplicación, requería normalmente
personal, añadiendo un coste de soporte técnico y disminuyendo la
productividad.
A diferencia de lo anterior, las aplicaciones web generan dinámicamente una
serie de páginas en un formato estándar, como HTML o XHTML, soportados
por los navegadores web comunes. Se utilizan lenguajes interpretados en el
lado del cliente, directamente o a través de plugins tales como JavaScript, Java,
Flash, etc., para añadir elementos dinámicos a la interfaz de usuario.
Generalmente cada página web en particular se envía al cliente como un
documento estático, pero la secuencia de páginas ofrece al usuario una
experiencia interactiva. Durante la sesión, el navegador web interpreta y
muestra en pantalla las páginas, actuando como cliente para cualquier
aplicación web. (Mora, Antecedentes)
1.2.9 Estructura de una Aplicación Web
Aunque existen muchas variaciones posibles, una aplicación web está
normalmente estructurada como una aplicación de tres-capas. En su forma más
común, el navegador web ofrece la primera capa, y un motor capaz de usar
alguna tecnología web dinámica, por ejemplo: PHP, Java Servlets o ASP,
ASP.NET, CGI, ColdFusion, embPerl, Python o Ruby on Rails que constituye
la capa intermedia. Por último, una base de datos constituye la tercera y última
capa. (Mora, 2002)
El navegador web manda peticiones a la capa intermedia que ofrece servicios
valiéndose de consultas y actualizaciones a la base de datos y a su vez
proporciona una interfaz de usuario.
Ventajas
Ahorra tiempo: Se pueden realizar tareas sencillas sin necesidad de
descargar ni instalar ningún programa.
No hay problemas de compatibilidad: Basta tener un navegador
Actualizaciones inmediatas: Como el software lo gestiona el propio
desarrollador, cuando nos conectamos estamos usando siempre la
última versión que haya lanzado.
Consumo de recursos bajo: Dado que toda (o gran parte) de la
aplicación no se encuentra en nuestro ordenador, muchas de las tareas
que realiza el software no consumen recursos nuestros porque se
realizan desde otro ordenador.
Multiplataforma: Se pueden usar desde cualquier sistema operativo
porque sólo es necesario tener un navegador.
Portables: Es independiente del ordenador donde se utilice (un PC de
sobremesa, un portátil...) porque se accede a través de una página web
(sólo es necesario disponer de acceso a Internet). La reciente tendencia
al acceso a las aplicaciones web a través de teléfonos móviles requiere
sin embargo un diseño específico de los ficheros CSS para no dificultar
el acceso de estos usuarios.
La disponibilidad suele ser alta porque el servicio se ofrece desde
múltiples localizaciones para asegurar la continuidad del mismo.
Los virus no dañan los datos porque éstos están guardados en el
servidor de la aplicación.
Colaboración: Gracias a que el acceso al servicio se realiza desde una
única ubicación es sencillo el acceso y compartición de datos por parte
de varios usuarios. Tiene mucho sentido, por ejemplo, en aplicaciones
online de calendarios u oficina.
Los navegadores ofrecen cada vez más y mejores funcionalidades para
crear aplicaciones web ricas (RIAs). (Mora, 2002)
1.2.10 Las limitantes de las Aplicaciones Web
El surgimiento de sistemas computacionales accesibles mediante un navegador
web conectado a una red, también llamados aplicaciones web, sucedió a
mediados de la década de 1990 impulsado por la aparición en escena de
lenguajes y herramientas como CGI, Flash, JavaScript, Java Applets y PHP,
marcado pionero en la web, HTML, ampliaban su funcionalidad más allá de la
visualización de documentos estáticos (Mora, 2002)
La rápida adopción de aquellas herramientas por parte de los desarrolladores
fomentó el advenimiento de una nueva generación de sitios web que rompían
los patrones hasta ese momento establecidos, al brindar a los usuarios servicios
novedosos con niveles de interactividad nunca antes vistos en Internet. Sin
embargo, a pesar de representar una evolución sustancial, el consenso general
era que, en comparación con las aplicaciones de escritorio, las aplicaciones web
aún tenían un gran camino que recorrer para lograr los mismos niveles de
desempeño y usabilidad.
Un importante número de tecnologías para el desarrollo de este tipo de
aplicaciones vio la luz y evolucionó desde aquel entonces, no obstante, en la
mayoría de los casos, la promesa de estas herramientas de brindar una
experiencia que se acercara a aquélla ofrecida por una aplicación de escritorio
resultó infructífera.
Figura Nº 2: Interacción sincrónica de una aplicación web clásica.
1.2.11 Inconvenientes
Habitualmente ofrecen menos funcionalidades que las aplicaciones de
escritorio. Se debe a que las funcionalidades que se pueden realizar desde un
La disponibilidad depende de un tercero, el proveedor de la conexión a internet
o el que provee el enlace entre el servidor de la aplicación y el cliente. Así que
la disponibilidad del servicio está supeditada al proveedor. (Mora, 2002)
Diferencia entre aplicación web y Aplicación De Internet Enriquecida (RIA)
Las aplicaciones web se ejecutan nativamente desde el navegador. Pero existen
algunas aplicaciones que funcionan desde el navegador pero además requieren
la instalación de un software en el ordenador para poder utilizarse. Estas
aplicaciones se denominan Aplicaciones de Internet Ricas. El motivo de usar
este software adicional es que hay muchas funcionalidades que los navegadores
no pueden ofrecer, y este enriquece a las aplicaciones web ofreciendo dichas
funcionalidades. (Mora, Uso Empresarial, 2002)
Ejemplos de funcionalidades que pueden ofrecer los programas online gracias
al uso de software instalado:
Procesamiento de imágenes
Captura de imágenes
Uso de webcam / Captura de video
1.2.12 Uso Empresarial
Una estrategia que está emergiendo para las empresas proveedoras de software
consiste en proveer acceso vía web al software. Para aplicaciones previamente
distribuidas, como las aplicaciones de escritorio, se puede optar por desarrollar
una aplicación totalmente nueva o simplemente por adaptar la aplicación para
ser usada con una interfaz web. Estos últimos programas permiten al usuario
pagar una cuota mensual o anual para usar la aplicación, sin necesidad de
instalarla en el ordenador del usuario. A esta estrategia de uso se la denomina
se les denomina Proveedores de Aplicaciones de Servicio (ASP por sus siglas
en inglés), un modelo de negocio que está atrayendo la atención de la industria
del software. (Mora, 2002)
1.3 HERRAMIENTAS DE DESARROLLO
1.3.1 PHP
PHP es un lenguaje de programación de servidor de alto nivel y el cual puede
ser embebido en el código HTML. Es un lenguaje muy potente y debido a su
gran similitud con lenguajes tradicionales como C es fácil aprender a utilizarlo.
Sin embargo antes de comenzar a usar PHP, es necesario comprender de qué
manera funciona y se ejecuta este.
Se conoce que la comunicación entre el cliente y el servidor PHP se da de la
siguiente manera:
El cliente escribe en su navegador una dirección, con lo que en realidad
está solicitado un archivo al servidor (también aplica cuando el cliente
en vez de escribir una dirección en el navegador hace clic sobre un link).
Suponiendo que el cliente escribió en su navegador la dirección
www.ejemplo.com/pagina1.php, el navegador envía hacia el servidor,
o para efectos prácticos al computador, llamado www.ejemplo.com una
solicitud para el archivo pagina1.php.
El servidor web (en este caso Apache que es el software de servicio web
instalado en computador que sirve de servidor remoto) recibe la
solicitud, identifica que se está solicitando un archivo de extensión php
e inmediatamente solicita al intérprete de PHP que procese y envíe el
archivo.
El intérprete PHP recupera y lee el archivo pagina1.php. Ejecuta los
proceso puede llegar a comunicarse con un motor de base de datos,
servidores de correo electrónico, etc.
Una vez se ha ejecutado los comandos, el archivo y los datos resultantes
se devuelven al servidor web (Apache).
El servidor web devuelve el archivo en formato HTML hacia el cliente
que lo solicitó y el navegador del cliente se encarga de construir y
presentar los datos del archivo. La salida de datos siempre será en
formato HTML sin importar si el archivo tiene extensión php, html o
de otro tipo.
Figura Nº 3: Esquema del funcionamiento de PHP Fuente: http://conozcamosphp.blogspot.com
1.3.2 Dreamweaver CS6
Es un editor, programa para crear páginas Web, es tipo WYSIWYG creado por
Macromedia (actualmente de Adobe Systems).
Es la aplicación de este tipo más usada en el sector de diseño y programación
Web. Posee, como toda la línea Macromedia/Adobe, excelentes
funcionalidades e integración con otras herramientas. Su éxito data desde 1990
Ventajas:
Es muy flexible, sobre todo para el diseño.
Tiene muchas opciones como botones flash, botones normales y
formularios.
Todas las herramientas se encuentran rápidamente.
Desventajas:
Las nuevas versiones no facilitan nada respecto a las anteriores.
Se necesita de alta resolución para manejar todas las barras
Le falta implementación de DHTML; su precio es considerable y
carga muy lentamente.
1.3.3 Javascript
Javascript es un lenguaje de programación de cliente. Viene integrado en todos
los navegadores web modernos. Su principal propósito es dar dinamismo del
lado del cliente, en el navegador web, y mejorar la experiencia del usuario.
Generalmente se utiliza para mostrar cuadros de dialogo al usuario o para
validación de entradas.
El código Javascript se embebe dentro del código HTML utilizando la etiqueta
<script>. El navegador interpreta y ejecuta el código escrito dentro de la
etiqueta.
Javascript es interpretado por el navegador a medida que aparece embebido
dentro del código HTML. Sin embargo Javascript también permite el uso y
creación de funciones y objetos, mediante lo cual es posible escribir código
estructurado, ordenado y reutilizable. Los elementos HTML son capaces de
invocar a estas funciones Javascript cuando se vean sometidos a cierto