Está en la página 1de 16

S10.s1.

s2-AVANCE 2 DE TRABAJO FINAL

DESARROLLO WEB INTEGRADO

Sección:
40483

Presentado por:

Álvarez Miranda, Sergio L. U20233880


Barreteo Gómez, Britney U19309694
Ortiz Abanto, Wagner J U19304363
Quispe Vilca, Ruben Dario U19311120
Lescano Salazar, Victor Andree U20201682

Grupo: 01

Lima, 14 de setiembre del 2022


Índice
1. INTRODUCCIÓN..................................................................................................3
2. DESCRIPCIÓN DEL PROBLEMA............................................................................4
3. DESCRIPCIÓN DE LA SOLUCIÓN..........................................................................5
4. TECNOLOGÍA UTILIZADA NIVEL CLIENTE............................................................5
5. TECNOLOGÍA UTILIZADA NIVEL WEB y NEGOCIOS.............................................5
5.1. Marco teórico...............................................................................................5
5.2. JAVA EE.........................................................................................................7
5.3. PATRONES DE DISEÑO..................................................................................8
5.4. FRAMEWORKS............................................................................................10
6. TECNOLOGÍA UTILIZADA NIVEL DATOS...........................................................11
6.1. Sistema de Gestión de Base de Datos........................................................11
7. INTERFACE DE APLICACIÓN.............................................................................13
7.1. Aplicación de HTML...................................................................................13
7.2. Aplicación de CSS......................................................................................13
7.3. Aplicación de código java de programación en el servidor......................14
8. CONCLUSIONES................................................................................................14
9. RECOMENDACIONES........................................................................................15
1. INTRODUCCIÓN
Se realiza una descripción breve del contexto del caso, para ubicar el escenario de la

aplicación java empresarial que se va a desarrollar.

Las oportunidades para viajar siempre se presentan para todos. Con el control

de la pandemia y la llegada de festividades como Semana Santa, Santa Rosa de

Lima, entre otras. Muchos de los peruanos se animaron a pasar vacaciones en

familia y, en la mayoría de los casos, a viajar a diferentes destinos dentro del

país, permitiendo un mayor ingreso económico en la industria turística.

Asimismo, situaciones en que mejores oportunidades se dan en el extranjero

suelen suceder, por lo que por algún motivo los peruanos suelen emigrar. Con

más de 3 años de experiencia en el rubro, la agencia de viajes Perú Travels se

dedica a ofrecer los precios más cómodos a diferentes destinos, tanto a nivel

nacional como internacional, pero que debido a problemas de eficacia en su

página web, poco a poco está perdiendo potenciales clientes. Por ello, con la

finalidad solucionar estos problemas de eficacia y de aplicar las diversas

herramientas de JEE en proyectos informáticos de ámbito empresarial, el

siguiente proyecto se enfoca en el desarrollo de un Sistema Web para la

empresa ya mencionada. Entre las funciones principales previstas para la página

web están: el registro, inicio de sesión, selección de destinos, efectuación de

pagos y una sección de Contacto para que el usuario tenga la facilidad de

contactarse con la empresa. El desarrollo del aplicativo se realizará en la


plataforma JSP, con conexión a base de datos MySql, Apache bajo el Entorno

de Desarrollo Integrado Netbeans 8.2 o superior.

En ese sentido, es necesaria la creación de una página web moderna que le

permita a los clientes de la agencia Perú Travels acceder de forma rápida y

sencilla a la información sobre sus ofertas y el servicio que brindan.

2. DESCRIPCIÓN DEL PROBLEMA


Muestra los requerimientos de información que el sistema proyectado va a

solucionar.

Por medio del desarrollo del presente proyecto se busca brindar una mejor

experiencia al usuario final con la creación de una plataforma moderna,

interactiva y de fácil uso a través de lenguajes como HTML, CSS y Javascript y,

la arquitectura MVC, el cual es un patrón de diseño que se utiliza para construir


mayormente aplicaciones web. Para ello, en este caso se tomará a una agencia

de viajes (Perú Travels), el cual presenta un problema enfocado en la eficiencia

de su página web, que es de difícil uso para sus clientes. El proyecto permitirá

que el usuario sea capaz de registrarse, iniciar sesión, seleccionar destinos de

viaje, ya sean de América Latina, Europa o Asia, así como realizar los pagos

concernientes a los destinos seleccionados. Adicionalmente, contará con un

blog, en el cual se podrá obtener información referencial sobre algunos destinos

de mayor preferencia por parte de los usuarios, y una sección de Contacto para

que el usuario tenga la facilidad de contactarse con la empresa.

3. DESCRIPCIÓN DE LA SOLUCIÓN
Describe la propuesta de solución para resolver el problema detectado, sustentado en

la arquitectura java EE de aplicación distribuida, incluyendo como anexos los

diagramas UML: Caso de uso, Clases, diagramas ER / Relacionales que sean

pertinentes.

4. TECNOLOGÍA UTILIZADA NIVEL CLIENTE


Describe el marco teórico que sustenta el proyecto de la aplicación a nivel cliente:

HTML, CSS, JavaScript

5. TECNOLOGÍA UTILIZADA NIVEL WEB y NEGOCIOS


Describe el marco teórico que sustenta el proyecto de la aplicación a nivel web y de

negocio:
5.1. Marco teórico.
5.1.1. Aplicación Web
Una aplicación web es un programa, que trabaja con los archivos, por lo general

se trabaja con procesos almacenados en la web. Lo informático es construido y

diseñado para ser exclusivamente dentro de un navegador web tal como Google

Chrome, Internet Explorer o Mozilla Firefox, entre otros, accediendo a un

servidor web a través de internet o de una intranet. Las aplicaciones web,

actualmente son populares debido a la facilidad para actualizar y darle

mantenimiento, sin tener la necesidad de distribuir e instalar software en forma

directa a los usuarios, ni tener que comprar.

5.1.2. Características y ventajas de las aplicaciones web.


Este tipo de aplicaciones suelen ser de fácil uso gracias a la flexibilidad en su

uso.

Las principales ventajas serían los siguiente:

 Ahorrar tiempo: Es para realizar las tareas, que se trabaja vía online,

donde ya no se requiere de descargar un programa ni instalar

aplicaciones adicionales, de esa manera, te ahorrarías tiempo y un costo.

 Compatibilidad: Lo único que se requiere de un navegador web, para

poder darle uso a las aplicaciones. Es más, no habría problemas con

alguno sistema operativo sea Windows, Linux, IOS, etc.

 Ahorra espacio en disco duro: Lo que se pude notar al usar una

aplicación web, para el usuario, no le genera un gasto en su disco duro,

ya que no requiere de ninguna instalación.


 Actualización: Los Software son gestionado por el propio desarrollador o

programador, al momento al dar uso y conexión de la aplicación, de tal

manera asegura que está usando las últimas versiones sin que el usuario

lo note.

 Múltiples Usuarios: Al ser una aplicación web, se pude dar un uso de

varios usuarios al mismo tiempo, se puede hacer compras, hacer podido

de vuelo para un viaje, etc.

5.2. JAVA EE
Java EE es un entorno independiente de la plataforma centrado en Java para

desarrollar, crear e implementar en línea aplicaciones empresariales basadas en web.

Java EE incluye muchos componentes de Java Standard Edition (Java SE). La

plataforma Java EE consta de un conjunto de servicios, API y protocolos que

proporcionan la funcionalidad necesaria para desarrollar aplicaciones basadas en web

de varios niveles.

Java EE simplifica el desarrollo de aplicaciones y reduce la necesidad de programación

y formación para programadores al crear componentes modulares normalizados y

reutilizables, así como al permitir controlar muchos aspectos de la programación

automáticamente por nivel.

Si es un desarrollador empresarial, necesita Java EE. Los desarrolladores

empresariales necesitan Java EE porque crear aplicaciones empresariales distribuidas


no es sencillo, y necesitan una solución de alta productividad que les permita centrarse

únicamente en escribir su lógica empresarial y disponer de una gama completa de

servicios de clase empresarial en la que confiar, como objetos distribuidos

transaccionales, middleware orientado a mensajes y servicios de directorio y

asignación de nombres.

5.3. PATRONES DE DISEÑO


Los patrones de diseño son soluciones habituales a problemas que ocurren con

frecuencia en el diseño de software. Son como planos prefabricados que se pueden

personalizar para resolver un problema de diseño recurrente en tu código.

No se puede elegir un patrón y copiarlo en el programa como si se tratara de funciones

o bibliotecas ya preparadas. El patrón no es una porción específica de código, sino un

concepto general para resolver un problema particular. Puedes seguir los detalles del

patrón e implementar una solución que encaje con las realidades de tu propio

programa.

A menudo los patrones se confunden con algoritmos porque ambos conceptos

describen soluciones típicas a problemas conocidos. Mientras que un algoritmo

siempre define un grupo claro de acciones para lograr un objetivo, un patrón es una

descripción de más alto nivel de una solución. El código del mismo patrón aplicado a

dos programas distintos puede ser diferente.

Una analogía de un algoritmo sería una receta de cocina: ambos cuentan con pasos

claros para alcanzar una meta. Por su parte, un patrón es más similar a un plano, ya

que puedes observar cómo son su resultado y sus funciones, pero el orden exacto de

la implementación depende de ti.


MVC: Es un patrón de diseño que se estructura mediante tres componentes: modelo,

vista y controlador. Este patrón tiene como principio que cada uno de los componentes

esté separado en diferentes objetos, esto significa que los componentes no se pueden

combinar dentro de una misma clase. Sirve para clasificar la información, la lógica del

sistema y la interfaz que se le presenta al usuario.

Modelo: este componente se encarga de manipular, gestionar y actualizar los

datos de una base de datos. No contiene ninguna lógica que describa como

presentar los datos a un usuario.

Vista: este componente presenta los datos del modelo al usuario. La vista sabe

cómo acceder a los datos del modelo, pero no sabe que significa esta

información o que puede hacer el usuario para manipularla.

Controlador: este componente se encarga de gestionar las instrucciones que se

reciben, atenderlas y procesarlas. Por medio del controlador se comunican el

modelo y la vista: solicitando los datos necesarios, manipularlos para obtener los

resultados y entregarlos a la vista para que pueda mostrarlos.

DAO: El patrón DAO permite que los mecanismos de acceso a los datos

cambien independientemente del código que utiliza los datos. La principal

ventaja de usar DAO es la separación relativamente simple y rigurosa entre 2

partes importantes de una aplicación que pueden, pero no deben saber nada

entre sí. Cambiar la lógica empresarial puede basarse en la misma interfaz DAO,

mientras que los cambios en la lógica de persistencia no afectan a los clientes

DAO siempre que la interfaz siga implementada correctamente.


En el contexto general del lenguaje de programación Java, los objetos de acceso

a datos como concepto de diseño se pueden implementar de varias formas. Esto

puede variar desde una interfaz bastante simple que separa las partes de

acceso a los datos de la lógica de la aplicación, hasta frameworks y productos

comerciales.

Interface: Una interfaz es una "clase abstracta" completamente que se utiliza

para agrupar métodos relacionados. Para acceder a los métodos de la interfaz,

la interfaz debe ser "implementada" por otra clase con la palabra clave

implements (en lugar de extends). El cuerpo del método de interfaz lo

proporciona la clase "implement".

5.4. FRAMEWORKS
En programación, un framework es un marco de trabajo que tiene como objetivo

facilitar la solución de problemas que pueden surgir al programar. Los frameworks

aceleran el proceso de programar facilitando tareas como la organización del código o

el trabajo en equipo dentro de un proyecto, por ejemplo:

En otras palabras, el objetivo de un framework en programación es facilitar la tarea de

los programadores.

También hay que destacar que muchos de estos frameworks no sólo facilitan la

organización del trabajo, sino que también ofrecen recursos desarrollados por otros

programadores. Estos recursos pueden ser informes o códigos que pueden usarse
para solucionar los problemas más habituales que se dan al llevar a cabo determinadas

tareas.

5.5. SERVICIOS

6. TECNOLOGÍA UTILIZADA NIVEL DATOS


Describe el marco teórico que sustenta el proyecto de la aplicación, a nivel datos:

SERVLET: Un servlet es una clase en el lenguaje de programación Java, utilizada para

ampliar las capacidades de un servidor. Aunque los servlets pueden responder a

cualquier tipo de solicitudes, estos son utilizados comúnmente para extender las

aplicaciones alojadas por servidores web, de tal manera que pueden ser vistos como

applets de Java que se ejecutan en servidores en vez de navegadores web. Este tipo

de servlets son la contraparte Java de otras tecnologías de contenido dinámico Web,

como PHP y ASP.NET.

La palabra servlet deriva de otra anterior, applet, que se refiere a pequeños programas

que se ejecutan en el contexto de un navegador web.

El uso más común de los servlets es generar páginas web de forma dinámica a partir

de los parámetros de la petición que envíe el navegador web.

6.1. Sistema de Gestión de Base de Datos.


Un sistema gestor de base de datos o SGBD (del inglés: Data Base Management

System o DBMS) es un software que permite administrar una base de datos. Esto
significa que mediante este programa se puede utilizar, configurar y extraer información

almacenada1. Los usuarios pueden acceder a la información usando herramientas

específicas de consulta y de generación de informes, o bien mediante aplicaciones al

efecto.

Estos sistemas también proporcionan métodos para mantener la integridad de los

datos, para administrar el acceso de usuarios a los datos y para recuperar la

información si el sistema se corrompe. Permiten presentar la información de la base de

datos en variados formatos. La mayoría incluyen un generador de informes. También

pueden incluir un módulo gráfico que permita presentar la información con gráficos y

tablas.

Generalmente se accede a los datos mediante lenguajes de consulta, lenguajes de alto

nivel que simplifican la tarea de construir las aplicaciones. También simplifican las

consultas y la presentación de la información. Un SGBD permite controlar el acceso a

los datos, asegurar su integridad, gestionar el acceso concurrente a ellos, recuperar los

datos tras un fallo del sistema y hacer copias de seguridad. Las bases de datos y los

sistemas para su gestión son esenciales para cualquier área de negocio, y deben ser

gestionados con esmero.

MySQL: MySQL es un sistema de gestión de bases de datos relacional desarrollado

bajo licencia dual: Licencia pública general/Licencia comercial por Oracle Corporation y

está considerada como la base de datos de código abierto más popular del mundo,1 2

y una de las más populares en general junto a Oracle y Microsoft SQL Server, todo

para entornos de desarrollo web.


MySQL fue inicialmente desarrollado por MySQL AB (empresa fundada por David

Axmark, Allan Larsson y Michael Widenius). MySQL AB fue adquirida por Sun

Microsystems en 2008, y ésta a su vez fue comprada por Oracle Corporation en 2010,

la cual ya era dueña desde 2005 de Innobase Oy, empresa finlandesa desarrolladora

del motor InnoDB para MySQL.

7. INTERFACE DE APLICACIÓN
7.1. Aplicación de HTML
Se aplico HTML en la página para estructurar la barra de navegación los

formularios, títulos, párrafos que nos requiere una página web.

7.2. Aplicación de CSS


Se aplicó Hojas de estilo de Cascada (CSS), para agregar un atractivo visual a

la página y poder personalizarla con la idea de negocio de Peru Travels.


7.3. Aplicación de código java de programación en el servidor
El código de Java en el servidor se realizó siguiendo los patrones de diseño

MVC, DAO creando paquetes de Modelo-Vista-Controlador y DAO con

interfaces para la conexión con el cliente-servidor.


8. CONCLUSIONES
 El proceso de sistema de aerolínea fue automatizado para proporcionar una

información confiable para los pasajeros, manejando una interfaz amigable y

fácil de usar.

 En el proyecto se aplicó el Modelo Vista Controlador, tomando en consideración

la validación, registro y búsqueda de usuarios por medio de las interfaces, así

como la conexión con la base de datos por medio de una clase DAO sin

necesidad de aplicar una API del recurso a la lógica comercial.

 Como recurso de conexión a la base de datos, se utilizó el software libre XAMPP

para el sistema de gestión de base de datos MYSQL.

9. RECOMENDACIONES
 Se recomienda capacitar a los usuarios encargados de gestionar el sistema,

para que conozcan los procesos y funcionamiento del sistema.

 En caso se realicen nuevas implementaciones al sistema se debe seguir el

patrón de diseño MVC y DAO.


 Se recomienda implementar un manual de usuario con las especificaciones

convenientes para su fácil entendimiento.

Observación:

También podría gustarte