S02 - S2 - Curso Integrador I - Trabajo Final Ejemplo

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 96

FACULTAD DE INGENIERÍA

Carrera Profesional de Ingeniería de


Sistemas e Informática

CURSO INTEGRADOR I: SISTEMAS – SOFTWARE

Título:
Sistema Web para la empresa “Taller UTP”

Ciclo: 6

Autores:
• Paul Quispe Segales
• Luis Rodrigo Puma Herencia
• Yulisse Zapata Vargas

Docente: Ing. Aníbal Sardón Paniagua

Arequipa - Perú
2022
ÍNDICE

Contenido
ÍNDICE DE FIGURAS............................................................................................................. iv
ÍNDICE DE TABLAS ............................................................................................................... v
HISTORIAL DE VERSIONES ................................................................................................ vi
RESUMEN ................................................................................................................................ 1
ABSTRACT............................................................................................................................... 1
CAPÍTULO 1 - ASPECTOS GENERALES ............................................................................. 2
1.1 DEFINICIÓN DEL PROBLEMA ................................................................................. 2

1.1.1 DESCRIPCIÓN DEL PROBLEMA .................................................................... 2

1.1.2 DIAGRAMAS DE PROCESOS DE NEGOCIO ................................................. 4

1.2 PLANTEAMIENTO DE ALTERNATIVAS DE SOLUCIÓN ..................................... 9

ALTERNATIVA DE SOLUCIÓN 01................................................................................ 9

ALTERNATIVA DE SOLUCIÓN 02 .............................................................................. 12

ALTERNATIVA DE SOLUCIÓN 03 .............................................................................. 16

1.3 DEFINICIÓN DE OBJETIVOS .................................................................................. 24

1.3.1 OBJETIVO GENERAL ..................................................................................... 24

1.3.2 OBJETIVOS ESPECÍFICOS............................................................................. 24

1.3.3 ALCANCES Y LIMITACIONES ..................................................................... 24

1.3.4 JUSTIFICACIÓN .............................................................................................. 26

1.3.5 ESTADO DEL ARTE........................................................................................ 27

CAPÍTULO 2 - MARCO TEÓRICO....................................................................................... 29


2.1 FUNDAMENTO TEÓRICO .......................................................................................... 29

CAPÍTULO 3 - DESARROLLO DE LA SOLUCIÓN ........................................................... 34


3.1 ANALISIS DEL SISTEMA ......................................................................................... 34

3.1.1 REQUISITOS FUNCIONALES........................................................................ 34

3.1.2 REQUISITOS NO FUNCIONALES ................................................................. 39

3.2 DISEÑO DEL SISTEMA ............................................................................................ 41

ii
3.2.1 CASOS DE USO ............................................................................................... 41

3.2.2 MODELO CONCEPTUAL ............................................................................... 55

3.2.3 DISEÑO DE CLASES ....................................................................................... 56

3.2.4 DISEÑO DE LA BASE DE DATOS ................................................................ 57

3.2.4.1 MODELO ENTIDAD RELACIÓN................................................................... 57

3.2.4.2 DISEÑO FÍSICO ............................................................................................... 58

3.2.5 CÓDIGO FUENTE ............................................................................................ 59

CONCLUSIONES ................................................................................................................... 70
RECOMENDACIONES .......................................................................................................... 71
BIBLIOGRAFÍA ..................................................................................................................... 72
ANEXOS ................................................................................................................................. 74
PROJECT CHARTER ............................................................................................................. 74
1. NOMBRE DE PROYECTO ........................................................................................ 74

2. DESCRIPCIÓN DEL PROYECTO ............................................................................. 74

3. DEFINICIÓN DEL PRODUCTO ................................................................................ 75

3.1 CARACTERÍSTICAS DEL SISTEMA ................................................................ 75

3.2 ALCANCE ............................................................................................................ 77

3.3 CONTEXTO DEL SISTEMA ............................................................................... 78

4. DEFINICIÓN DEL PROYECTO ................................................................................ 79

4.1 OBJETIVOS DEL PROYECTO ........................................................................... 79

4.2 EQUIPO DE TRABAJO ....................................................................................... 79

4.3 RECURSOS Y PRESUPUESTO .......................................................................... 82

4.4 CRONOGRAMA DE ACTIVIDADES ..................................................................... 83

4.4 CRONOGRAMA DE HITOS DEL PROYECTO ................................................ 86

MODELO LEAN CANVAS ................................................................................................... 87


ENCUESTA............................................................................................................................. 88

iii
ÍNDICE DE FIGURAS

Figura 1: Proceso de Atención a Domicilio.............................................................................. 4


Figura 2: Proceso de Programación de Visitas a Domicilio ..................................................... 5
Figura 3: Proceso de Atención en el Taller .............................................................................. 6
Figura 4: Proceso de Registro y Control de Técnicos .............................................................. 7
Figura 5: Proceso de Registro y Control de Repuestos y Partes .............................................. 8
Figura 6: Pantallas propuestas para la aplicación móvil......................................................... 10
Figura 7: Pantallas propuestas para la aplicación móvil......................................................... 11
Figura 8: Pantallas propuestas para la aplicación de escritorio .............................................. 13
Figura 9: Pantallas propuestas para la aplicación de escritorio .............................................. 14
Figura 10: Pantallas propuestas para la aplicación de escritorio ............................................ 15
Figura 11: Pantallas propuestas para la aplicación web ......................................................... 18
Figura 12: Pantallas propuestas para la aplicación web ......................................................... 19
Figura 13: Pantallas propuestas para la aplicación web ......................................................... 20
Figura 14: Diagrama de Casos de Uso ................................................................................... 41
Figura 15: Modelo Conceptual ............................................................................................... 55
Figura 16: Diagrama de Clases ............................................................................................... 56
Figura 17: Modelo ER de la Base de Datos............................................................................ 57
Figura 18: Modelo Lógico de la Base de Datos ..................................................................... 58

iv
ÍNDICE DE TABLAS

Tabla 1 – Características del Sistema ...................................................................................... 77


Tabla 2 – Alcances del sistema ................................................................................................ 77
Tabla 3 – Roles y Funciones .................................................................................................... 81
Tabla 4 – Recursos y Presupuestos .......................................................................................... 82
Tabla 5 – Cronograma de Actividades..................................................................................... 84
Tabla 6 – Cronograma de Hitos del Proyecto .......................................................................... 86

v
HISTORIAL DE VERSIONES

Fecha de Elaborado Revisado Fecha de


Versión Descripción
Elaboración por por Revisión

Primer avance:
L. Puma
- Capítulo 1 del informe
22-04-2022 1.0 P. Quispe Docente 22-04-2022
- Anexo Project Charter
Y. Zapata
- Anexo Modelo Lean
Canvas

Segundo avance:
L. Puma
- Análisis del Sistema:
06-05-2022 2.0 P. Quispe Requisitos funcionales y no Docente 06-05-2022
Y. Zapata funcionales.
- Casos de uso del sistema

Tercer avance:
L. Puma - Diseño del sistema: Modelo
03-06-2022 3.0 P. Quispe conceptual, diseño de las Docente 03-06-2022
clases, diseño de la base de
Y. Zapata datos.
- Etapa 1

L. Puma Cuarto avance:

10-06-2022 4.0 P. Quispe - Especificaciones de casos Docente 10-06-2022


de uso.
Y. Zapata
- Avance de la Etapa 2

Quinto avance:
L. Puma
- Estado del arte
27-06-2022 5.0 P. Quispe Docente 27-06-2022
- Marco teórico
Y. Zapata
- Avance de la Etapa 2

L. Puma Trabajo Final:


25-07-2022 6.0 P. Quispe - Etapa 1 y 2 Finalizada. Docente 25-07-2022
T. Zapata - Informe concluido.

vi
RESUMEN

El presente proyecto fue realizado a la empresa “Taller UTP”, ubicada en la ciudad de


Arequipa, se dedica a realizar reparaciones y mantenimientos a diversos aparatos
electrodomésticos de todo tipo de marcas. En este contexto, se ha encontrado algunos
problemas en la empresa, tales como: retardos en la atención a los clientes vía WhatsApp,
lentitud en la consulta de técnicos disponibles y programación de horarios, retardos en la
gestión de la información de los servicios prestados y la información en las hojas de cálculo
esta propensa a perderse. Por ello, se planteó realizar un sistema web que usa principalmente
tecnología Java. El proyecto está estructurado en 2 etapas, la primera etapa está conformada
por los siguientes módulos: Registro y control de técnicos, registro y control de repuestos o
partes y Atención a domicilio; y la segunda incluye los módulos: programación de visitas a
domicilio y, atención en el taller y reportes. Asimismo, considerando los capítulos
desarrollados en el presente trabajo, básicamente tratan acerca de: los aspectos generales del
problema, marco teórico y, por último, el desarrollo de la solución informática
Palabras clave: Sistema web, taller de reparación, Java.

ABSTRACT

This project was carried out for the company “Taller UTP”, located in the city of Arequipa,
which is dedicated to carrying out repairs and maintenance to various electrical appliances of
all kinds of brands. In this context, some problems have been found in the company, such as:
delays in customer service via WhatsApp, slowness in consulting available technicians and
scheduling, delays in managing information on the services provided and information in
spreadsheets is prone to getting lost. Therefore, it was proposed to make a web system that
mainly uses Java technology. The project is structured in 2 stages, the first stage is made up of
the following modules: Registration and control of technicians, registration and control of spare
parts or parts and home care; and the second includes the modules: programming of home visits
and care in the workshop and reports. Also, considering the chapters developed in this project,
they basically deal with the general aspects of the problem, theoretical framework and finally,
the development of the IT solution.
Keywords: Web system, repair shop, Java.

1
CAPÍTULO 1 - ASPECTOS GENERALES

1.1 DEFINICIÓN DEL PROBLEMA

1.1.1 DESCRIPCIÓN DEL PROBLEMA

La empresa Taller UTP, es una empresa se dedica a la reparación y mantenimiento de


aparatos electrodomésticos de todas las marcas, cuenta con un servicio técnico que atiende las
solicitudes de instalaciones, reparaciones y mantenimiento para brindar la mejor experiencia a
los clientes.

El giro de negocio de la empresa es de servicios ya que se encarga de ofrecer un servicio


de reparación y mantenimiento de los electrodomésticos. Además, la empresa cuenta con 3
áreas: área de reparaciones, área del encargado y el área de atención al cliente. Asimismo, la
empresa presenta problemas tales como: retardos en la atención a los clientes por WhatsApp,
lentitud en la consulta de técnicos disponibles y programación de horarios, retardos en la
gestión de la información de los servicios prestados y la información en las hojas de cálculo es
propensa a perderse.

La empresa cuenta con dos tipos de trabajadores: el técnico y el encargado del taller.
Por un lado, el técnico se encarga de comunicarse con el cliente acerca de todos los aspectos
relacionados con la reparación de electrodomésticos. Por otro lado, el encargado se encarga de
supervisar las hojas de cálculo que contengan la información de los técnicos disponibles,
horarios de los técnicos y servicios planificados para cada día, así también, se encarga de
revisar las hojas de servicios que son entregados por el técnico, en el cual se detalla todos los
detalles del servicio que se realizó.

Visión
Ser la mejor empresa de servicios técnico del sur del Perú. Dándole soluciones de
calidad a nuestros clientes.

Misión
Somos una empresa con más de 15 años en el mercado Arequipeño, ofreciendo a
nuestros clientes la seguridad y confianza de contar con un servicio técnico especializado que
resuelva los problemas que puedan presentarse con sus electrodomésticos.

2
Entorno

Los talleres son los establecimientos en los que se realizan operaciones para la
restitución de las condiciones normales del estado de funcionamiento del electrodoméstico o
de equipos y componentes de este, en los que se pusiera de manifiesto alteraciones en sus
condiciones con posterioridad al término de su fabricación.

Existen muchos tipos de averías, y cada una de ellas tiene una solución diferente y
habitualmente muy compleja. Precisamente por esto, ante cualquier avería se sugiere al cliente
contactar con un técnico o una empresa reparadora de confianza.

No olvidar que todos los electrodomésticos y aparatos eléctricos disponen de un período


de garantía, en algunos es más larga que en otros. Así que antes de contactar con algún servicio
de reparación, se debe revisar el vencimiento de la garantía y qué servicios cubre. Si esta
estuviera vigente, se debe ponerse en contacto con la marca del aparato o con el servicio técnico
del mismo, para analizar la avería y encargarse de la misma si se tratara de un fallo de fábrica
o si estuviera cubierta por la garantía.

El taller contrata técnicos con diversas especialidades y experiencias en el campo de


reparación de electrodomésticos. El trabajo que se realiza es de garantía y los clientes pueden
estar tranquilos con el servicio ya las partes/piezas utilizadas para las reparaciones.

Actualmente existen en el mercado varios talleres que se especializan en algunas


marcas, pero no tienen los años de experiencia de nuestro taller. De todas maneras, esto obliga
a la empresa a mejorar la calidad de los servicios que brinda.

3
1.1.2 DIAGRAMAS DE PROCESOS DE NEGOCIO

Figura 1: Proceso de Atención a Domicilio

Proceso de Atención a Domicilio

Fuente: Elaboración propia

4
Figura 2: Proceso de Programación de Visitas a Domicilio

Proceso de Programación de Visitas a Domicilio

Fuente: Elaboración propia

5
Figura 3: Proceso de Atención en el Taller

Proceso de Atención en el Taller

Fuente: Elaboración propia

6
Figura 4: Proceso de Registro y Control de Técnicos

Proceso de Registro y Control de Técnicos

Fuente: Elaboración propia

7
Figura 5: Proceso de Registro y Control de Repuestos y Partes

Proceso de Registro y Control de Repuestos y Partes

Fuente: Elaboración propia

8
1.2 PLANTEAMIENTO DE ALTERNATIVAS DE SOLUCIÓN

ALTERNATIVA DE SOLUCIÓN 01

Aplicación Móvil

La alternativa propone desarrollar un aplicativo móvil, el cual estaría conformado por


tres niveles: los clientes, los técnicos y el administrador. Los clientes tendrán la opción de
registrarse y escoger una opción de servicio. Los técnicos estarían facultados de observar sus
horarios de visitas técnicas y actualizar el estado del servicio prestado. El administrador o
encargado daría seguimiento a los servicios solicitados por los clientes, además el registro y
control de los técnicos, y llevar un registro de las partes o accesorios que se retiran del almacén
cada vez que se realiza una reparación o mantenimiento o la compra de alguno.

❖ Módulos a incorporar

◦ Inicio de Sesión: El módulo estaría destinado a autenticarse e identificarse entre cliente,


técnico o administrador.

◦ Registro: El módulo tendría la opción de registrar un cliente nuevo.

◦ Registro de Cita: El módulo mostraría las opciones de servicio que presta la empresa
dirigida a los clientes.

◦ Atención a clientes: El módulo mostraría el horario al técnico y detalla la información


de las citas técnicas asignadas.

◦ Gestión de técnicos: El módulo tendría la opción de registrar, modificar o eliminar los


datos de un técnico.

◦ Gestión de clientes: El módulo tendría la opción de registrar, modificar o eliminar los


datos de un cliente.

◦ Gestión de citas: El módulo se podría dar seguimiento a las citas técnicas, tanto de
reparación, mantenimiento y cualquier otro servició que preste la empresa.

◦ Gestión de partes y repuestos: El módulo llevaría el control y registro de partes o


accesorios utilizados durante la cita técnica.

9
❖ Tecnologías por utilizar

◦ Java: Es un lenguaje de programación orientado a objetos

◦ Android Studio: Entorno de desarrollo integrado oficial para la plataforma Android.

◦ SQLite: Es un sistema de gestión de bases de datos relacional

❖ Prototipos

Figura 6: Pantallas propuestas para la aplicación móvil

Pantallas propuestas para la aplicación móvil

Nota. Elaborado con Balsamiq Wireframes

10
Figura 7: Pantallas propuestas para la aplicación móvil

Pantallas propuestas para la aplicación móvil

11
ALTERNATIVA DE SOLUCIÓN 02

Aplicación de Escritorio

La alternativa propone desarrollar un aplicativo de escritorio, el cual estaría


conformado por tres niveles: Los clientes, los técnicos y el administrador. Los clientes tendrán
la opción de registrarse y escoger una opción de servicio. Los técnicos estarían facultados de
observar sus horarios de visitas técnicas y actualizar el estado del servicio prestado. El
administrador o encargado daría seguimiento a los servicios solicitados por los clientes, además
el registro y control de los técnicos, y llevar un registro de las partes o accesorios que se retiran
del almacén cada vez que se realiza una reparación o mantenimiento o la compra de alguno.

❖ Módulos a incorporar

◦ Inicio de Sesión: El módulo estaría destinado a autenticarse e identificarse entre cliente,


técnico o administrador.

◦ Registro de cliente: El módulo tiene la opción de registrar un cliente nuevo.

◦ Registro de Cita: El módulo mostraría las opciones de servicio que presta la empresa
dirigida a los clientes.

◦ Registro de servicios prestados: En este módulo el técnico se encargará de registrar los


datos del servicio prestado al cliente, el cual contendrá los datos del servicio, datos del
cliente y datos del electrodoméstico.

◦ Atención a clientes: El módulo mostraría el horario al técnico y detalla la información


de las citas técnicas asignadas.

◦ Gestión de técnicos: El módulo tendría la opción de registrar, modificar o eliminar los


datos de los técnicos que trabajan en la empresa.

◦ Gestión de clientes: El módulo tendría la opción de registrar, modificar o eliminar los


datos de un cliente.

◦ Gestión de citas: El módulo en el cual se podrá realizar un seguimiento a las citas


técnicas, tanto de reparación, mantenimiento, asimismo, se podrá realizar un
mantenimiento a la programación de visitas a domicilio.

12
◦ Gestión de partes y repuestos: El módulo llevaría el control y registro de partes o
accesorios utilizados durante la cita técnica.

◦ Gestión de electrodomésticos: El módulo que se encargará de realizar un


mantenimiento a los electrodomésticos reparados y por revisar.

❖ Tecnologías por utilizar

◦ Java: Es un lenguaje de programación orientado a objetos.

◦ NetBeans IDE: Es un entorno de desarrollo integrado libre, orientado principalmente al


desarrollo de aplicaciones Java.

◦ MySQL: Es un sistema de gestión de bases de datos relacionales

❖ Prototipos

Figura 8: Pantallas propuestas para la aplicación de escritorio

Pantallas propuestas para la aplicación de escritorio

Nota. Elaborado con Balsamiq Wireframes

13
Figura 9: Pantallas propuestas para la aplicación de escritorio

Pantallas propuestas para la aplicación de escritorio

14
Figura 10: Pantallas propuestas para la aplicación de escritorio

Pantallas propuestas para la aplicación de escritorio

15
ALTERNATIVA DE SOLUCIÓN 03

Aplicación Web

La alternativa propone desarrollar un aplicativo web, el cual estaría conformado por


tres niveles: Los clientes, los técnicos y el administrador. Los clientes tendrán la opción de
registrarse y escoger una opción de servicio. Los técnicos estarían facultados de observar sus
horarios de visitas técnicas y actualizar el estado del servicio prestado. El administrador o
encargado daría seguimiento a los servicios solicitados por los clientes, además el registro y
control de los técnicos, y llevar un registro de las partes o accesorios que se retiran del almacén
cada vez que se realiza una reparación o mantenimiento o la compra de alguno.

❖ Módulos a incorporar

◦ Inicio de Sesión: El módulo estaría destinado a autenticarse e identificarse entre cliente,


técnico o administrador.

◦ Registro: El módulo tiene la opción de registrar un cliente nuevo.

◦ Registro de Cita: El módulo mostraría las opciones de servicio que presta la empresa
dirigida a los clientes.

◦ Atención a clientes: El módulo mostraría el horario al técnico y detalla la información


de las citas técnicas asignadas.

◦ Gestión de técnicos: El módulo tendría la opción de registrar, modificar o eliminar los


datos de un técnico.

◦ Gestión de clientes: El módulo tendría la opción de registrar, modificar o eliminar los


datos de un cliente.

◦ Gestión de citas: El módulo se podría dar seguimiento a las citas técnicas, tanto de
reparación, mantenimiento y cualquier otro servició que preste la empresa.

◦ Gestión de partes y repuestos: El módulo llevaría el control y registro de partes o


accesorios utilizados durante la cita técnica.

16
❖ Tecnologías por utilizar

◦ Eclipse IDE: Es un entorno de desarrollo software multilenguaje construido alrededor


de un workspace al que pueden incluirse un gran número de plugins.

◦ PostgreSQL: Es un sistema de gestión de bases de datos relacional orientado a objetos


y de código abierto.

◦ Servlets: Programa Java que se ejecuta en un servidor.

◦ Bootstrap: Bootstrap es un framework front-end utilizado para desarrollar aplicaciones


web y sitios mobile first, o sea, con un layout que se adapta a la pantalla del dispositivo
utilizado por el usuario.

◦ CSS: Diseñada para marcar la separación del contenido de las páginas web y la forma de
presentación de estas.

◦ JavaScript: Lenguaje de secuencias de comandos que te permite crear contenido de


actualización dinámica, controlar multimedia, animar imágenes y prácticamente todo lo
demás.

◦ Wildfly: Especialmente orientado para actuar como motor de aplicaciones e-business,


WildFly es un servidor de aplicaciones Java de código abierto y multiplataforma.

❖ Motivo de elección
Se ha optado por la alternativa de la aplicación web (opción 3), debido a que cumple
con las necesidades de la empresa y optimiza la prestación de los servicios.

17
❖ Prototipos

Figura 11: Pantallas propuestas para la aplicación web

Pantallas propuestas para la aplicación web

18
Figura 12: Pantallas propuestas para la aplicación web

Pantallas propuestas para la aplicación web

19
Figura 13: Pantallas propuestas para la aplicación web

Pantallas propuestas para la aplicación web

20
Figura 14

Pantallas propuestas para la aplicación web

21
Figura 15

Pantallas propuestas para la aplicación web

22
Figura 16

Pantallas propuestas para la aplicación web

23
1.3 DEFINICIÓN DE OBJETIVOS

1.3.1 OBJETIVO GENERAL

Elaborar un sistema web para automatizar los procesos en la empresa “TALLER UTP”
la cual ofrece servicios de diagnóstico, mantenimiento o reparación de los electrodomésticos a
los clientes a domicilio o en el taller.

1.3.2 OBJETIVOS ESPECÍFICOS

- Analizar y entender el funcionamiento de los procesos de atención al cliente a


domicilio, programación de visitas técnicas, atención en el taller, control de técnicos y
control de repuestos y partes.
- Determinar los requisitos funcionales y no funcionales para el sistema web.
- Diseñar, implementar y ejecutar un sistema web intuitivo y accesible que cubra con los
requisitos previamente identificados.
- Construir el programa según la arquitectura MVC, usando Java Web para la parte del
backend y HTML, CSS y JavaScript para la parte del frontend.
- Probar el prototipo o aplicación web en un ambiente de datos reales.
- Promover el uso de una base de datos para guardar los registros de los servicios
prestados a cada cliente, así como los datos de los clientes, técnicos y electrodomésticos
para facilitar la gestión de la información.

1.3.3 ALCANCES Y LIMITACIONES

1.3.3.1 Dentro del Alcance


El proyecto desarrollará una propuesta de sitio web en el que se crearán las siguientes
secciones:

• Registro de Clientes: Los clientes entran al sistema e ingresan sus datos para
registrarse, todos los datos se guardarán en la base de datos para tener un registro
de cada cliente.
• Registro de los electrodomésticos: El sistema debe contar con un registro de todos los

24
electrodomésticos que pueda reparar e identificarlos con un código, de esta manera se
podrá saber cuáles son las características de cada electrodoméstico con tan solo tener
su código.
• Registro de las partes o repuestos de los electrodomésticos: El sistema debe contener
los registros de las partes de los electrodomésticos para tener una cantidad ya
establecida y que además esta se vaya actualizando conforme los técnicos vayan usando
• Registro de los servicios: El sistema debe tener un registro de todos los servicios que
se han prestado, el cual servirá para tener un histórico de los servicios prestados a los
clientes.
• Programación de visitas a domicilio: El sistema contara con un apartado en el cual se
mostrarán todas las visitas que se tienen planificadas en la semana, esto servirá para
que el encargado tenga una noción de la cantidad de clientes que serán atendidos por
día.
• Registro de Técnicos: El sistema debe contar con un registro del técnico para tener
una buena gestión de los técnicos ya que podremos conocer toda la información
necesaria de un técnico, asimismo, el sistema tendrá la funcionabilidad de ordenar los
registros de los clientes para poder organizar los registros como deseemos.
• Seguimiento del estado del electrodoméstico: El sistema tendrá la opción para que el
técnico pueda subir la información del estado en el que se encuentra el
electrodoméstico, información que el cliente podrá observar una vez que el técnico suba
dicha información al sistema.
• Generación de reportes: El sistema contará con la capacidad de generar los reportes
en donde se mostrará los servicios realizados por cada técnico y los servicios que se
realizaron a cada cliente.

25
1.3.3.2 Fuera del Alcance

• Gestión de los ingresos de la empresa: El sistema no estará enfocado al manejo de la


economía de la empresa, ya sea el manejo del ingreso y egreso.

• Chat Bot: El sistema no contará con un chat bot, en donde el cliente pueda chatear con
la empresa en tiempo real.

1.3.3.3 Limitaciones

• Se necesitará usar los navegadores Google Crome, Opera, FireFox, Microsotf Edge y
Brave para poder operar de manera eficiente.

• El sistema solo funcionará con acceso a internet.

1.3.4 JUSTIFICACIÓN

En la actualidad, la tendencia para los negocios es mantenerse actualizado de manera


constante con programas innovadores que brinden facilidades a los trabajadores y a los clientes,
de esta manera generan mayores ingresos, mejoran sus registros y operatividad de la empresa.

El presente trabajo de investigación se realiza en una empresa de reparación y


mantenimiento de electrodomésticos denominada “Taller UTP” donde la mayoría de sus
proceso de servicios administrativos se realizaba empíricamente, no les ha permitido realizar
un control óptimo de sus demandas diarias tales como las reservas de citas, el control de los
servicios realizados, demora en la atención a los clientes, entre otros; por lo que los directivos
solicitaron la implementación de un sistema web que tenga un soporte a las demandas para
tener un control del negocio de manera automatizada y rápida.

De esta manera el sistema permitirá ofrecer sus servicios a los clientes que puedan
acceder desde cualquier dispositivo móvil, así como la calidad del diagnóstico y reparaciones
para que estos queden satisfechos con la empresa no solo por la calidad, sino también por la
rapidez de contacto, honestidad y responsabilidad con ahorro de tiempo y dinero.

26
1.3.5 ESTADO DEL ARTE
1.3.6 Tesis: Sistema Informático para talleres

La tesis realizada por Denyse Parodis Mejías y Pável Garrido Gonzáles, la cual
básicamente busca promover el uso de las TI en las Fuerzas Armadas
Revolucionarias, la cual cuenta con un área de reparaciones y modernización durante
su periodo de explotación, para ello se han creado talleres encargados de realizar
dichas tareas. La razón de esta investigación es para brindar una solución informática
que permita controlar el estado de la reparación de los medios materiales y los
recursos que se utilizan para ello. El proceso de reparación de medios se divide en
varios subprocesos los cuales generan volúmenes de información de vital
importancia para la realización de las tareas que le suceden. Para recibir lo servicios
del taller la persona debe estar debidamente autorizada para poder realizar la
planificación, recepción, reparación y entrega del medio material. La siguiente
solución propone realizar cada una de estas actividades de forma informatizada,
brindando significativas ventajas en la disponibilidad de la información facilitando
la toma de decisiones puntuales por cada uno de los jefes de talleres y sus superiores,
mejora las condiciones de trabajo, ayuda en la planificación y asignación de recursos
y responde a las necesidades específicas de la institución (Parodis y Garrido, 2008,
p. 7).

1.3.7 Tesis: Diseño de un sistema de gestión de programación de servicio técnico de


campo para una empresa de mantenimiento de equipos electrodomésticos
En este trabajo realizado por Manuel Jesús Querevalú Purizaca y Diego Valdiviezo
Alvarado se realizó el análisis y diseño de un sistema para la gestión de programación
de servicio técnico de campo en la empresa SERFAC S.A.C. Se plantea una solución
con georreferenciación para calcular rutas de aproximación de manera que se
programen las solicitudes de manera automática y tecnologías de cloud computing
para brindar seguridad y confidencialidad a los datos. Para el diseño, se usó la
arquitectura AWS (Amazon Web Services), la capa de negocio (API BACKEND)
utiliza NODEJS como lenguaje de programación y funciones Lambda AWS que
hacen la función de servidor. Se verifica que la arquitectura de software propuesta es
viable y cumple con los objetivos de la empresa (Querevalú y Valdiviezo, 2020).

27
1.3.8 Tesis: Implementación de un sistema de control de citas médicas integrado con
una aplicación móvil que facilite la gestión de búsqueda y reservas en clínicas

El siguiente proyecto de fin de carrera tiene como finalidad crear una aplicación
móvil que pueda funcionar como un motor de búsqueda personalizado y que permita
realizar reservas de citas médicas desde cualquier lugar y a cualquier momento.
A su vez, la integración con un sistema web que permita recibir las peticiones de
citas. De esta forma las clínicas podrían estar integradas al sistema que se propone,
dándole facilidades en su gestión de reservas y que de esta forma funcione como una
posible nueva alternativa de negocio (Arévalo Ramírez-Gastón, 2015).

28
CAPÍTULO 2 - MARCO TEÓRICO

2.1 FUNDAMENTO TEÓRICO

2.1.1 Java
Java es un lenguaje de programación orientado a objetos desarrollado por la
compañía Sun Microsystems (posteriormente adquirida por la Oracle). Está diseñado
para tener la menor cantidad posible de dependencias de implementación. Java
combina el poder de los lenguajes compilados con la flexibilidad de los lenguajes
interpretados. El compilador de Java (javac), compila el código fuente en un código
de bytes (bytecode), luego la máquina virtual (JVM) ejecuta este código de bytes
transformándolo en un código legible por máquina (Baeldung, 2022).

La tecnología Java es tanto un lenguaje de programación como una plataforma.


Actualmente, Oracle tiene cuatro plataformas de lenguaje de programación Java:
Java Micro Edition (Java ME), Java Standard Edition (Java SE), Java Enterprise
Edition (Java EE) y JavaFX (Oracle, 2022).

2.1.2 Programación Orientada a Objetos


La programación orientada a objetos (Object Oriented Programming, OOP) es un
estilo o paradigma de programación por el cual, el código de un programa se organiza
en objetos, cada uno de los cuales representa una instancia de alguna clase. En OOP,
un objeto es un conjunto de datos (características o atributos) y métodos
(comportamiento).

Gavilán (2018), describe 4 pilares de la programación orientada a objetos, estos son:

• Abstracción: Consiste en captar las características y funcionalidades esenciales


de un objeto y representarlas en clases por medio de atributos y métodos.

• Encapsulamiento: Es un mecanismo que permite asegurar que el contenido de


la información de un objeto esté oculto al mundo exterior. En OOP, cada objeto
es responsable de su propia información y de su propio estado, por tanto, la
encapsulación garantiza la integridad de los datos.
29
• Herencia: La herencia es una relación especial entre dos clases, la clase base y
la clase derivada, en donde la clase derivada obtiene la habilidad de utilizar
ciertas propiedades y funcionalidades de la clase base, incluso pudiendo sustituir
funcionalidad de la clase base.

• Polimorfismo: Es la capacidad que tienen los objetos de una clase en ofrecer


respuesta distinta e independiente en función de los parámetros (diferentes
implementaciones) utilizados durante su invocación.

2.1.3 HTML5
HTML5 (Hyper Text Markup Language) sirve para definir la estructura y el
contenido de una página web con el uso de etiquetas que pueden ser usadas para
agregarle contenido a la página web, tales como: texto, imágenes, vídeos, juegos,
entre otros (Pérez, 2019).

2.1.4 CSS
Hojas de Estilo en Cascada (del inglés Cascading Style Sheets) o CSS es el lenguaje
de estilos utilizado para describir la presentación de documentos HTML o XML (en-
US) (incluyendo varios lenguajes basados en XML como SVG, MathML o
XHTML). CSS describe como debe ser renderizado el elemento estructurado en la
pantalla, en papel, en el habla o en otros medios (pauli.rodriguez.c, 2022).

2.1.5 Bootstrap
Bootstrap es un framework front-end utilizado para desarrollar aplicaciones web y
sitios mobile first. El objetivo principal de Bootstrap es crear sitios web responsivos
y orientados a los dispositivos móviles. Bootstrap consta de scripts basados en
HTML, CSS y JS para diversas funciones y componentes relacionados con el diseño
web (Deymar, 2022).

2.1.6 JavaScript
JavaScript (JS) es un lenguaje de programación ligero, interpretado, o compilado
justo-a-tiempo (just-in-time) con funciones de primera clase. Si bien es más conocido
como un lenguaje de scripting (secuencias de comandos) para páginas web, y es

30
usado en muchos entornos fuera del navegador, tal como Node.js, Apache CouchDB
y Adobe Acrobat JavaScript es un lenguaje de programación basada en prototipos,
multiparadigma, de un solo hilo, dinámico, con soporte para programación orientada
a objetos, imperativa y declarativa (por ejemplo, programación funcional).
(pauli.rodriguez.c, 2022).

2.1.7 JSP
JSP es un acrónimo de Java Server Pages, y está orientada a crear páginas web con
programación en Java. Con ella se pueden crear aplicaciones web que se ejecuten en
variados servidores web, de múltiples plataformas, ya que Java es una esencia de un
lenguaje multiplataforma. Las páginas JSP están compuestas de código HTML/XML
mesclado con etiquetas especiales para programar scripts de servidor en sintaxis Java
(Álvarez, 2002).

2.1.8 JSTL
JSP Standard Tag Library (JSTL) es una colección de etiquetas JSP, que encapsula
las aplicaciones JSP comunes funcionalidad básica. JSTL sirve de apoyo para tareas
genéricas y estructurados, tales como la manipulación de documentos iteración,
condicionales, entre otros. JSTL permite reducir las complejidades del desarrollo de
las plantillas web JSP creando código estandarizado para mejorar la coherencia de la
presentación y el manejo de los datos (IBM, 2021).

2.1.9 Servlets
Los servlets son clases Java diseñadas para responder a solicitudes HTTP en el
contexto de una aplicación web, permiten procesar, sincronizar y coordinar múltiples
peticiones de clientes, reenviar peticiones a otros servlets o a otros servidores, etc.
Con el modelo de Servlets, la máquina virtual de Java, el entorno donde se ejecutan,
se arranca al iniciar el servidor, permaneciendo arrancada durante toda la ejecución
del mismo. A diferencia del modelo tradicional de CGI (common gateway interface),
para atender cada petición, los servlets no arrancan un nuevo proceso, sino un thread,
un proceso ligero de Java, mucho más rápido (Valenzuela, 2004).

31
2.1.10 PosgreSQL
PostgreSQL es un gestor de bases de datos relacional y orientado a objetos. Su
licencia y desarrollo es de código abierto, siendo mantenida por una comunidad de
desarrolladores, colaboradores y organizaciones comerciales de forma libre y
desinteresadamente. Esta comunidad es denominada PDGD (PostgreSQL Global
Development Group, por sus siglas en inglés) (Alojamiento Web, 2019).

2.1.11 MVC
El patrón Modelo – Vista – Controlador fue inventado en el contexto de Smalltak
para realizar una separación entre la interfaz gráfica y el código del funcionamiento
de una aplicación. Esta idea teórica afectó, de forma importante, a gran parte del
código de Smalltalk y fue posteriormente aplicada a los lenguajes que están basados
en objetos (Junta de Andalucía, s.f.).

2.1.12 Java Mail


JavaMail es una librería desarrollada por SUN encaminada al envío de correos
electrónicos directamente desde una aplicación Java. Asimismo, para que el envio de
correo electrónico se realice de manera exitosa es menester crear una clase en el
código en la cual se deben establecer propiedades como: el servidor SMTP, TLS,
puerto SMTP, E-mail del emisor y receptor, usuario de acceso al servidor, SMTP,
contraseña del emisor (Gómez, 2008)

2.1.13 Jasper Report


La función de JasperReports consiste en compilar el archivo fuente del reporte con
extensión jrxml, donde se encuentran todas las características de diseño propias del
reporte, para generar una slida en formatos como: PDF, XML, HTML, CSV, XLS,
DOC, TXT, etc. Con Java se puede compilar un archivo .jrxml con la sintaxis:
JasperReport report = JasperCompileManager.compileReport(“archivo.jrxml”); el
siguiente paso es rellenar el reporte con datos y después se genera el archivo .jrprint
con la sintaxis: JasperPrint print = JasperFillManager.fillReport(reporte origen,
parámetros, conexión); finalmente se selecciona el formato para presentar el reporte
(Acosta, 2007, p. 25).
32
2.1.14 WildFly
WildFly, conocido antes como JBoss As, o solo JBoss, es un servidor Open Source
de aplicaciones Java EE. Es útil para crear, implementar y hospedar aplicaciones y
servicios Java. Wildfly es compatible con cualquier sistema operativo en el que se
encuentre disponible la máquina virtual Java (Genos, 2021).

2.1.15 Maven
Maven es una herramienta de gestión de proyectos y compilación que se utiliza
generalmente en marcos creados en Java. Desarrollado por Apache Software
Foundation, Maven garantiza que los archivos JAR y bibliotecas del proyecto se
descarguen automáticamente con solo describir la información relacionada con las
versiones del software y el tipo de dependencias en el fichero pom.xml
(myservername, s.f.).

33
CAPÍTULO 3 - DESARROLLO DE LA SOLUCIÓN

3.1 ANALISIS DEL SISTEMA

3.1.1 REQUISITOS FUNCIONALES

RF001 Registro de los clientes


Descripción El sistema debe permitir registrarse al cliente al sistema colocando la
siguiente información:
✓ Nombre
✓ Apellidos
✓ Correo electrónico
✓ Dirección
✓ Teléfono
Importancia Alta

RF002 Autenticación del usuario


Descripción El sistema permitirá verificar los datos del usuario registrado, al
momento de iniciar sesión, desde cualquier dispositivo conectado a
internet, solo ingresando su correo y contraseña.
Importancia Alta

RF003 Solicitud de servicio


Descripción El sistema debe mostrar todos los servicios ofrecidos por el taller y
una breve descripción de cada uno, de forma que el cliente tenga la
opción de seleccionar un servicio en específico.
Importancia Alta

RF004 Registro de cita


Descripción El sistema debe mostrar una lista de técnicos con sus respectivos
horarios, de forma que el cliente pueda seleccionar entre los días y
las horas disponibles para reservar una cita a domicilio.
Importancia Alta

34
RF005 Detalles del electrodoméstico
Descripción El sistema debe permitir ingresar las características del
electrodoméstico en un formulario de reserva de cita, sin importar el
servicio seleccionado por el cliente.
Importancia Alta

RF006 Detalles de las fallas


Descripción El sistema debe permitir ingresar una descripción del problemas o
fallas del electrodoméstico de tratarse de los siguientes servicios:
✓ Reparaciones
✓ Diagnostico Técnico
✓ Visita Técnica
Importancia Alta

RF007 Elección del lugar de atención


Descripción El sistema debe permitir seleccionar el lugar de atención, podrá elegir
entre dos opciones, a domicilio o en el taller.

Importancia Alta

RF008 Lugar de atención


Descripción El sistema debe mostrar al cliente el lugar de atención de los
siguientes servicios:
✓ Reparaciones
✓ Mantenimiento
✓ Diagnostico Técnico
✓ Asesoría Técnica
✓ Venta a accesorios (compra en el taller o envío a domicilio)
✓ Visita Técnica
Solo a domicilio:
✓ Estudio de factibilidad
✓ Instalaciones
✓ Conversiones
Importancia Alta

35
RF009 Confirmación de la cita
Descripción El sistema debe mostrar toda la información de la cita, como datos
del técnico, hora y atención; el detalle del electrodoméstico y datos
del cliente.
Importancia Alta

RF010 Control de técnicos


Descripción El sistema debe permitir al encargado, visualizar la información de
todos los técnicos, con el fin de ingresar, modificar o eliminar la
información de un técnico.
✓ Nombre
✓ Apellidos
✓ Dirección
✓ Teléfono
✓ Correo electrónico
✓ Especialización
✓ Experiencia laboral
Importancia Media

RF011 Control de citas


Descripción El sistema debe permitir al encargado manipular la información de
la cita técnica, con el fin de ingresar, modificar o eliminar la
información de una cita.
Importancia Media

RF012 Control de horarios del técnico


Descripción El sistema debe permitir al encargado, programar los horarios
disponibles de los técnicos, de forma que puedan ser visualizados por
el cliente, para su posterior reserva.
Importancia Alta

36
RF013 Información de citas para el técnico
Descripción El sistema debe permitir al técnico, visualizar un listado con la
información de todas las citas.
Importancia Alta

RF014 Horario de citas del técnico


Descripción El sistema debe permitir al técnico, visualizar el horario de citas
pendientes y programadas durante la semana con su respectiva
información detallada.
Importancia Alta

RF015 Actualización de la cita


Descripción El sistema debe permitir al técnico, seleccionar la cita actual, ingresar
el diagnóstico del electrodoméstico, repuestos utilizados y actualizar
el estado de la cita a culminada.
Importancia Alta

RF016 Registro del servicio


Descripción El sistema debe permitir al técnico, registrar los servicios brindados
al cliente, el cual contendrá:
✓ Datos del Servicio.
✓ Datos del Cliente.
✓ Datos del Electrodoméstico.
Importancia Alta

RF017 Control de repuestos y Accesorios


Descripción El sistema debe permitir al encargado, actualizar los registros de
repuestos y accesorios en la base de datos.
Importancia Alta

37
RF018 Reportes
Descripción El sistema debe generar los siguientes reportes usando la librería
Jasper Reports:
✓ Reportes de servicios por técnico
✓ Reporte de servicios por cliente
Importancia Media

RF019 Impresiones
Descripción El sistema debe permitir exportar en PDF y la impresión de los
siguientes documentos:
✓ Hoja de servicio
✓ Cotizaciones
✓ Servicio planificado para los técnicos
Importancia Media

RF020 Actualización de electrodomésticos


Descripción El sistema debe permitir actualizar la información de los
electrodomésticos, en la base de datos, con los que se trabajan.
Importancia Media

RF021 Sugerencias de electrodomésticos


Descripción El sistema debe permitir el auto llenado de las características del
electrodoméstico, solo ingresando el modelo, al principio de la
reserva de la cita técnica.
Importancia Media

RF022 Envío de correo electrónico


Descripción El sistema debe permitir el envío de correo electrónico con la
información del formulario de ingreso y la hoja de servicio.
Importancia Media

38
3.1.2 REQUISITOS NO FUNCIONALES

RNF001 Facilidad de uso


Descripción • El sistema debe proporcionar una interfaz intuitiva, de manera que
los usuarios puedan utilizarla con facilidad sin necesidad de tener
muchos conocimientos en computación.
• El sistema debe tener interfaces gráficas de administración y
operación en idioma español.
• La aplicación debe contar con un diseño estético y responsivo a fin
de garantizar una adecuada visualización en múltiples dispositivos.
• El sistema debe proporcionar mensajes informativos de éxito o
error para las operaciones de mantenimiento.
Importancia Alta

RNF002 Confiabilidad
Descripción • El sistema estará diseñado para asegurar el mínimo riesgo de fallo
una vez puesto en funcionamiento.
• El sistema deber tener la capacidad de realizar modificaciones o
reparaciones a un proceso sin afectar la continuidad del servicio.
Importancia Media

RNF003 Rendimiento
Descripción • El sistema debe soportar una gran cantidad de transacciones y
usuarios que acceden concurrentemente. Cada transacción no debe
tomar más de 5 segundos en ser ejecutada.
• El sistema deberá ser capaz de operar adecuadamente con una
capacidad de hasta 300 usuarios en sesiones concurrentes.
• Estar disponible 100% o muy cercano a esta disponibilidad durante
el horario hábil laboral de la empresa “Taller UTP”.
Importancia Alta

39
RNF004 Portabilidad
Descripción • El sistema debe tener la capacidad de funcionar correctamente en
diferentes navegadores, tales como Chrome, Edge, Firefox, Opera y
Brave.
• El sistema deberá proporcionar, para los diferentes reportes
solicitados, salidas en documentos electrónicos PDF Acrobat.
Importancia Media

RNF005 Seguridad
Descripción • El sistema debe garantizar que el acceso a la información está
adecuadamente autorizado.
• Para el registro de nuevos usuarios, es necesario que se indique un
correo electrónico válido.
• La cuenta del usuario se bloqueará por un periodo de 30 minutos
luego de 5 intentos fallidos para evitar vulnerabilidades en la
seguridad del sistema.
Importancia Alta

RNF006 Restricciones de diseño


Descripción • El sistema debe desarrollarse usando tecnologías Java para la web
siguiendo los patrones de diseño DAO y MVC.
• El SGBD a usar será PostgreSQL.
• Se utilizará el servidor de aplicaciones WildFly 24.0.1
Importancia Alta

40
3.2 DISEÑO DEL SISTEMA

3.2.1 CASOS DE USO

Figura 17: Diagrama de Casos de Uso

Diagrama de Casos de Uso

Sistema Web “Taller UTP”

Fuente: Elaboración propia

41
CU001 - Registrar Cliente

CASO DE USO Registrar Cliente

Actor Cliente

El presente caso de uso trata acerca de cómo el cliente se


Descripción registra en el sistema para que pueda tener con una cuenta y, de
esta manera, poder ingresar al sistema.

Precondición El email del cliente no debe estar registrado en la base de datos.

1. El cliente accede a la página de “Registro de cliente”.


2. El sistema le muestra un formulario, donde el cliente llenará
sus datos personales.
3. El cliente llena sus datos personales (nombres, apellidos,
dirección, correo electrónico, teléfono).
4. El sistema le pide al cliente ingresar dos veces una contraseña

Flujo Principal de mínimo 8 caracteres que incluya letras mayúsculas y


minúsculas, números y al menos un carácter especial.
5. El cliente ingresa la contraseña adecuadamente y se registra.
6. El sistema registra la nueva cuenta del cliente y le muestra un
mensaje de éxito.
7. El sistema redirecciona al cliente a la página de “Inicio de
Sesión.”

Postcondiciones Se ha creado una cuenta nueva para el cliente


En el paso 5, Si el cliente ingresa un correo ya existente, el
sistema envía un mensaje de error “El cliente ya se encuentra
registrado”.
En el paso 5, si el cliente ingresa información invalida o falta
Flujo alternativo
llenar un campo, el sistema envía un mensaje de error de los
campos a volver a llenar.
En el paso 5, si el cliente cancela la creación de la cuenta, el
caso de uso queda sin efecto.

42
Prototipo

CU002 – Iniciar Sesión

CASO DE USO Iniciar Sesión

Actor Cliente, Encargado y Técnico.

Descripción Este caso de uso permite a los usuarios validar su identidad ante
el sistema, muestra la página de iniciar sesión, en la cual, el
usuario digita su correo electrónico y contraseña para poder
ingresar a la aplicación.

Precondición El usuario debe ingresar al sistema a través de su enlace del


sistema

Flujo Normal 1. El sistema le muestra la página de Iniciar Sesión.

2. El usuario ingresa su correo y contraseña adecuadamente.

3. El sistema le muestra a la página principal, en la cual el


usuario puede seleccionar el módulo que desee de acuerdo con
sus necesidades.

Postcondición El usuario ingresa a la página principal del sistema.

En el paso 2, en el caso de que el usuario ingrese su correo y


Flujo alternativo
contraseña de manera incorrecta, el sistema le mostrará un
mensaje de error y la pagina se recargará.

43
Prototipo

CU003 – Reservar Cita Técnica

CASO DE USO Reservar Cita Técnica

Actor Cliente

El sistema permite al cliente elegir un servicio (reparación,


Descripción mantenimiento, diagnóstico, asesoría, instalaciones,
conversiones, etc.) y reservar una cita con el técnico escogido.

Precondición El cliente debe estar registrado en el sistema.

44
1. Incluir (Iniciar Sesión)
2. El sistema muestra la pantalla de menú principal con los
servicios brindados por la empresa.
3. El cliente elige un servicio.
4. El sistema le muestra al cliente, un formulario en donde el
cliente debe ingresar los datos del electrodoméstico y la
descripción de sus fallas.
Flujo Principal
5. El cliente ingresa los datos del electrodoméstico y la
descripción de sus fallas.
6. El sistema le muestra al cliente los técnicos disponibles y
sus horarios.
7. El cliente elige un técnico y uno de sus horarios.
8. El sistema registra la cita y muestra un mensaje de éxito al
cliente.

Postcondiciones La cita técnica se debe guardar en la base de datos.

En el paso 7, si el cliente cancela la reserva de la cita técnica el


Flujo alternativo
caso de uso queda sin efecto.

Prototipo

45
CU004 - Solicitar Revisión de Electrodoméstico

CASO DE USO Solicitar Revisión de Electrodoméstico

Actor Cliente

El cliente solicitará una revisión de su electrodoméstico


apersonándose al taller, en donde el técnico ingresará los datos
Descripción en el Formulario de Ingreso y creará una cuenta al cliente para
que este pueda observar el diagnóstico y presupuesto de su
electrodoméstico de manera virtual.

Precondición El cliente no debe estar registrado en el sistema.

46
1. Incluir (Iniciar Sesión).
2. El sistema le muestra un menú de opciones.
3. El técnico selecciona la opción de Formulario de Ingreso.
4. El sistema le muestra el Formulario de Ingreso.
5. El técnico llena el formulario: “Formulario de Ingreso”
donde registra los datos del cliente y del electrodoméstico.

Flujo Principal 6. El técnico registra los datos del cliente y del


electrodoméstico.
7. El sistema le informa al técnico que su operación fue
realizada con éxito.
8. El cliente podrá ingresar al sistema para que pueda observar
el diagnóstico y presupuesto de su electrodoméstico de
manera virtual.

Postcondiciones El cliente posee una cuenta para iniciar sesión.

En el paso 7, si el técnico llena los datos del cliente o del


electrodoméstico de manera incorrecta, el sistema le mostrará
un mensaje de error y la pagina se recargará.
Flujo alternativo
En el paso 7, si el técnico no llena un dato del cliente o del
electrodoméstico, el sistema le informará que debe llenar todos
los campos.

Prototipo

47
CU005 – Gestionar técnicos

CASO DE USO Registrar y gestionar Técnicos


El encargado del taller ingresa al sistema, para registrar y
Descripción
gestionar los registros de los técnicos en la base de datos.
Actor Encargado

Precondiciones El encargado debió iniciar sesión en el sistema.

1. Incluir (Iniciar Sesión)


2. El sistema muestra un menú principal con las siguientes
opciones:
2.1 Mantenimiento de Servicios
2.2 Mantenimiento de Clientes
2.3 Mantenimiento de Citas
2.4 Mantenimiento de Técnicos
2.5 Mantenimiento de horarios
3. El encargado selecciona Mantenimiento de técnicos
4. El sistema muestra las opciones de insertar, modificar y
eliminar.
5. Si el encargado selecciona insertar:
5.1 El sistema muestra un formulario para llenar los datos
Flujo principal
del técnico.
5.2 El encargado llena el formulario y registra al técnico.
5.3 El sistema le informa al encargado que su operación
se realizó con éxito.
6. Si el encargado selecciona modificar:
6.1 El sistema muestra un formulario con los datos del
técnico para que sean modificados.
6.2 El encargado llena el formulario y acepta las
modificaciones.
6.3 El sistema muestra un mensaje diciendo que su
operación se realizó con éxito.

48
7. Si el encargado selecciona eliminar:
7.1 El encargado selecciona al técnico a eliminar.
7.2 El sistema elimina al técnico de la base de datos.
7.3 El sistema le informa al encargado que su operación
se realizó con éxito.

Se actualiza el sistema y los registros modificados se almacenan


Postcondiciones
en la base de datos.
En el paso 5.2, si el encargado ingresa información invalida o
falta llegar un campo, el sistema envía un mensaje de error de
Flujo alternativo los campos a volver a llenar.
En el paso 5.2, si el encargado ingresa un correo ya existente,
el sistema envía un mensaje de que el técnico ya está registrado.
Prototipo

CU006 – Gestionar Horarios Disponibles

CASO DE USO Gestionar Horarios Disponibles


El encargado del taller ingresa al sistema y programa los
Descripción
horarios disponibles durante la semana.
Actor Encargado
Precondiciones El encargado debió iniciar sesión en el sistema.

1. Incluir (Iniciar Sesión)


Flujo principal
2. El sistema muestra un menú principal con las siguientes

49
opciones:
2.1 Mantenimiento de Servicios
2.2 Mantenimiento de Clientes
2.3 Mantenimiento de Citas
2.4 Mantenimiento de Técnicos
2.5 Mantenimiento de horarios
3. El encargado selecciona Mantenimiento de horarios
4. El sistema muestra un listado de los técnicos
registrados.
5. En el caso de que el encargado desee insertar un horario
para el técnico.
5.1 El encargado selecciona la opción de agregar
horario.
5.2 El sistema muestra un calendario y un listado de
horas.
5.3 El encargado selecciona un día del calendario y una
hora de la lista y acepta la operación.
5.4 El sistema muestra un mensaje confirmando la
agregación del día y hora.
6. En el caso de que el encargado desee modificar un
horario del técnico.
6.1 El encargado selecciona la opción de modificar.
6.2 El sistema muestra un calendario y un listado de
horas.
6.3 El encargado selecciona el nuevo día y hora del
horario y acepta la modificación.
6.4 El sistema muestra un mensaje confirmando la
agregación del día y hora.
7. En el caso que el encargado desee eliminar un horario
del técnico.
7.1 El encargado selecciona la opción de eliminar.
7.2 El sistema le muestra un mensaje preguntándole al
encargado si está seguro de eliminar el horario.
7.3 El encargado acepta la eliminación.

50
7.4 El sistema le informa al encargado que su operación
fue realizada conexito.
Se actualiza el sistema con los mantenimientos realizados a
Postcondiciones
los horarios.
En el paso 7, si el encargado ingresa información invalida o
falta llegar un campo, el sistema envía un mensaje de error
de los campos a volver a llenar.
Flujo alternativo
En el paso 7, si el encargado ingresa una hora ya existente,
el sistema envía un mensaje de que el día y la hora ya está
registrados.
Prototipo

CU007 – Gestionar de repuestos o partes

CASO DE USO Gestionar los repuestos o partes

Actor Encargado

Descripción Una vez dentro de este módulo, el sistema debe permitir al


encargado, actualizar los registros de repuestos y accesorios
en la base de datos, en el cual tendrá la capacidad de agregar,

51
modificar y eliminar los registros de las partes o repuestos de
los electrodomésticos.

Precondición El encargado debió iniciar sesión en el sistema


1. Incluir (Iniciar Sesión)
Flujo Normal
2. El sistema le envía a la página principal
3. El encargado selecciona la opción de Mantenimiento de
repuestos o partes.
4. El sistema le muestra los registros de los repuestos o
partes.
5. En al caso de que el administrador quiere agregar un
repuesto, selecciona la opción de agregar.
5.1 El sistema le mostrará un formulario.
5.2 El encargado ingresará los datos del repuesto y la
cantidad que desee agregar.
5.3 El encargado registra el repuesto.
5.4 El sistema le informara al encargado que su consulta
se realizó de manera exitosa.
6. En al caso de que el administrador quiera modificar el
registro de un repuesto, el encargado deberá seleccionar la
opción de modificar.
6.2 El sistema le mostrará un formulario con los datos del
repuesto seleccionado.
6.3 El encargado modifica los datos del repuesto que haya
seleccionado.
6.4 El encargado acepta los cambios.
6.5 El sistema le informa que si consulta se realizó de
manera exitosa.
7. En al caso de que el administrador quiera eliminar el
registro de un repuesto, el encargado selecciona la opción
eliminar.
7.1 El sistema mostrara un mensaje al encargado “¿Está
seguro de eliminar el registro?”.

52
7.2 El encargado confirma la eliminación.
7.3 El sistema le informará al encargado que su consulta
se realizó de manera exitosa

Postcondición Se realizó un registro o control de repuestos y partes.

En el paso 5.4, si el encargado ingresa los datos del repuesto


Flujos Alternativos
de manera incorrecta, el sistema le informará un mensaje de
error y la pagina se recargará.
En al paso 6.4, si el encargado ingresa los datos del repuesto
de manera incorrecta, el sistema le informará un mensaje de
error y la pagina se recargará.
En el paso 7.2, si el encargado cancela la operación, la
operación queda sin efecto.
Prototipo

CU008 – Generar Reportes


CASO DE USO Generar Reportes

Actor Encargado

Una vez dentro de este módulo, el sistema debe permitir al


Descripción encargado, buscar un técnico o cliente, según se requiera y
mostrar los servicios que le fueron brindados.

53
Precondición El encargado debió iniciar sesión en el sistema.
1. Incluir (Iniciar Sesión).
2. El sistema le muestra un menú de opciones.
3. El encargado selecciona la opción de Reportes.
4. El sistema le muestra la interfaz de “Reportes de Atención”
con las siguientes opciones:
4.1 Reporte de servicios por técnico
4.2 Reporte de servicios por cliente
Flujo Principal
5. El encargado ingresa el nombre del técnico/cliente y las
fechas entre las cuales se mostrarán las atenciones, luego,
selecciona la opción Buscar
6. El sistema le muestra una tabla con servicios realizados por
un determinado técnico/recibidos por un cliente.
7. El encargado selecciona la opción Imprimir.
8. El sistema exporta en PDF el reporte de atenciones.

Postcondiciones Se genera y almacena el archivo PDF correctamente.

Prototipo

54
MODELO CONCEPTUAL

Figura 18: Modelo Conceptual

Modelo Conceptual

Fuente: Elaboración Propia

55
3.2.2 DISEÑO DE CLASES

Figura 19: Diagrama de Clases

Diagrama de Clases

Fuente: Elaboración Propia

56
3.2.3 DISEÑO DE LA BASE DE DATOS

3.2.3.1 MODELO ENTIDAD RELACIÓN

Figura 20: Modelo ER de la Base de Datos

Modelo ER

Fuente: Elaboración Propia


57
3.2.3.2 DISEÑO FÍSICO

Figura 21: Modelo Lógico de la Base de Datos


Modelo Lógico de la Base de Datos

Nota: Vínculo al script de la base de datos

58
3.2.4 CÓDIGO FUENTE

ORGANIZACIÓN DE LOS PAQUETES


Figura 22: Estructura de paquetes

Estructura de paquetes

59
MÓDULO – ENVÍO CORREO

60
MÓDULO – INTERFAZ CRUD

61
MÓDULO – REGISTRO Y CONTROL DE TÉCNICOS

62
MÓDULO - REGISTRO Y CONTROL DE REPUESTOS O PARTES

63
MÓDULO - ATENCIÓN A DOMICILIO

64
MÓDULO - ATENCIÓN A DOMICILIO

65
MÓDULO - ATENCIÓN EN EL TALLER

66
MÓDULO - PROGRAMACIÓN DE VISITAS A DOMICILIO

67
MODULO - PROGRAMACIÓN DE VISITAS A DOMICILIO

68
MÓDULO - REPORTES

69
CONCLUSIONES

Primero: Se llega a la conclusión, que el sistema web desarrollado en este proyecto, será
capaz de automatizar los procesos de la empresa “TALLER UTP”.

Segundo: Se concluye que se el funcionamiento de los procesos de atención al cliente,


atención al cliente a domicilio, programación de visitas técnicas, atención en el taller,
control de técnicos y control de repuestos y partes, permitieron la elaboración correcta del
sistema web.

Tercero: En conclusión, los requisitos funcionales y no funcionales sirvieron para analizar


las tecnologías que se deben implementar en el sistema.

Cuarto: Se llega a la conclusión que el sistema es intuitivo y accesible y cubre los requisitos
establecidos.

Quinto: Se llegó a la conclusión, que el sistema sigue una estructura MVC, se implementó
tecnologías de Java Web en el backend y HTML, CSS y JavaScript para el frente.

Sexto: Para concluir, el uso de una base de datos implementado en el servidor local permitió
el almacenamiento organizado de los datos del sistema, tales como: los registros de los
servicios prestados a cada cliente, así como los datos de los clientes, técnicos y
electrodomésticos para facilitar la gestión de la información.

70
RECOMENDACIONES

Primero: En la base de datos se puede mejorar, implementado de “Jobs”, los cuales permitirían
automatizar algunos procesos, en el actual trabajo se utilizaría para mejorar los horarios de
atención, ya que el sistema podría dar lugar a horarios de atención en el día actual, y esta
herramienta actualizaría los estados de los horarios a vencidos, durante el transcurso del día.

Segundo: El hacer uso de framework como React, agilizaría el proceso de la creación de la


interfaz de usuario, además de permitir un mantenimiento por otros desarrolladores.

Tercero: El sistema debe ser administrado con responsabilidad, debido a que la información
que contiene de los clientes es confidencial. A pesar de que el sistema contiene una seguridad
estándar, los usuarios que administren el sistema deben ser cuidadosos al respecto.

Cuarto: El sistema mejoraría la atención haciendo uso de un chatbot, el cual respondería dudas
acerca de la utilización del sistema.

Quinto: El actual proyecto podría ser ampliado y adecuarlo a otro tipo de organizaciones, como
por ejemplo a la administración de atención médica.

Sexto: Se recomienda el uso de encriptación de contraseña con la finalidad proteger la


información del cliente.

71
BIBLIOGRAFÍA

Acosta, G. (2007). Utilización de herramientas de código abierto para la generación de


reportes en Java. Instituto Tecnológico Centroamericaco.
http://redicces.org.sv/jspui/bitstream/10972/522/1/C%c3%b3digo%20abierto%20Java
.pdf

Alojamiento Web. (07 de febrero de 2019). PostgreSQL. HostingPedia.


https://hostingpedia.net/postgresql.html

Álvarez, M. A. (8 de julio de 2002). La tecnología Java para la creación de páginas web con
programación en el servidor. desarrolloweb.
http://redicces.org.sv/jspui/bitstream/10972/522/1/C%c3%b3digo%20abierto%20Java.pdf

Arévalo Ramírez-Gastón, K. (2015). Implementación de un sistema de control de citas médicas


integrado con una aplicación movil que facilite la gestión de búsqueda y reservas en
clinicas. Lima. https://tesis.pucp.edu.pe/repositorio/handle/20.500.12404/6052

Baeldung. (18 de febrero de 2022). A Brief History of the Java Programming Language.
https://www.baeldung.com/java-history

Cirello, M. (16 de noviembre de 2013). Diagrama de Flujo de Datos (DFD).


https://manuel.cillero.es/doc/metodologia/metrica-3/tecnicas/diagrama-de-flujo-de-
datos/

Deymar, A. (3 de junio de 2022). ¿Qué es Bootstrap? – Una guía para principiantes. Hostinger
Turoriales. https://www.hostinger.es/tutoriales/que-es-bootstrap

Fuller, D. (2003). Apuntes de Taller de Ingeniería de Software. UTA.


http://profayadira.yolasite.com/resources/Roles_desarrollo_software.pdf

Gavilán, F. (5 de julio de 2018). Los 4 pilares de la Programación Orientada a Objetos.


Gavilanch. https://gavilanch.wordpress.com/2018/07/05/los-4-pilares-de-la-
programacion-orientada-a-objetos/

Genos. (2021). Soporte WilFly by Genos. Genos. https://genos.es/wildfly/

Gómez, R. (1 de diciembre de 2008). JavaMail: Envía e-mails desde tu proyecto Java. Adictos
al trabajo. https://www.adictosaltrabajo.com/2008/12/01/javamail/

72
International Business Machines Corporation. (26 de abril de 2021). JavaServer Pages
Standard Tag Library (JSTL) - Visión general. IBM.
https://www.ibm.com/docs/es/b2b-integrator/6.0.0?topic=extensions-javaserver-
pages-standard-tag-library-jstl-overview

Junta de Andalucía. (s.f.). Patrón Modelo Vista Controlador. Obtenido de


https://www.juntadeandalucia.es/servicios/madeja/contenido/recurso/122

mysavername. (s.f.). Qué es Maven - Tutorial de Maven para principiantes. mysavername.


https://spa.myservername.com/what-is-maven-maven-tutorial

Oracle. (2022). The Java Programming Language Platforms. Oracle.


https://docs.oracle.com/cd/E19798-01/821-1770/gcrkk/index.html

Parodis, D., y Garrido, D. (2008). Sistema Informático para Talleres (tesis de grado).
Universidad de Ciencias Informáticas.
https://repositorio.uci.cu/jspui/bitstream/ident/TD_1812_08/1/TD_1812_08.pdf

Pérez, (2019). Qué es HTML5. OpenWebinars. https://openwebinars.net/blog/que-es-html5/

Poveda, A. (2016). Modelamiento de procesos con BPMN. Universidad de los Andes.


https://planeacion.uniandes.edu.co/images/Arquitectura-Institucional/INS-45-1-01-
01_Modelamiento_de_Procesos_con_BPMN1.pdf

pauli.rodriguez.c. (30 de mayo de 2022). mdn web docs. Obtenido de


https://developer.mozilla.org/es/docs/Web

Querevalú, M., Valdiviezo, D. (2020). Diseño de un sistema de gestión de programación de


servicio técnico de campo para una empresa de mantenimiento de equipos
electrodomésticos (tesis de grado). Universidad Peruana de Ciencias Aplicadas.
https://repositorioacademico.upc.edu.pe/bitstream/handle/10757/324418/donayre_ve.
pdf?sequence=1

Valenzuela, J. (19 de noviembre de 2004). CGI, Servlet y JSP.


http://profesores.elo.utfsm.cl/~agv/elo330/2s04/projects/JoseLuisValenzuela/pagina1.
html

73
ANEXOS
PROJECT CHARTER

1. NOMBRE DE PROYECTO

Sistema Web para la empresa “Taller UTP”

2. DESCRIPCIÓN DEL PROYECTO

El proyecto por realizar estará dirigido a talleres que se dediquen al servicio técnico de
electrodomésticos y empresas que cuenten con este servicio, ya que servirá para mejorar los
procesos de atención al cliente y gestión de registros, de esta manera mejorará la productividad
de los trabajadores.

Este proyecto centra su atención en elaborar un sistema web que permita automatizar
los procesos de la empresa “Taller UTP”. Las fechas en las cuales será realizado el proyecto
será entre el 1 de abril hasta el 14 de junio del presente año.

El equipo de desarrollo está conformado por Paul Quispe Segales, Luis Rodrigo Puma
Herencia y Yulisse Zapata Vargas, estudiantes del sexto ciclo de la carrera de Ingeniería de
Sistemas e Informática.

74
3. DEFINICIÓN DEL PRODUCTO

3.1 CARACTERÍSTICAS DEL SISTEMA

ID Descripción Prioridad

El sistema debe autenticar a los usuarios para


CAR-01 Media
tener acceso al sistema desde cualquier lugar.
El sistema debe permitir ingresar y registrar los
CAR-02 datos de los clientes (nombres, apellidos, Alta
dirección, teléfono).
El sistema debe permitir ingresar y registrar los
CAR-03 datos de los electrodomésticos (tipo, número de Alta
serie, marca, modelo).
El sistema debe realizar el cálculo de
presupuesto según los servicios seleccionados y
CAR-04 Alta
las partes o repuestos a utilizar, en caso de que
los hubiera.
El sistema debe permitir ingresar y registrar los
CAR-05 datos del servicio (fecha, hora, descripción, Alta
monto).
El sistema debe permitir exportar en PDF el
CAR-06 Media
recibo del servicio realizado a un cliente.
El sistema debe exportar en PDF la Hoja de
CAR-07 Media
Servicio
El sistema debe permitir el registro y control de
técnicos. Tendrá la funcionalidad de buscar,
CAR-08 Alta
ordenar, insertar, actualizar y eliminar registros
de técnicos.
El sistema debe permitir el registro y control de
piezas Tendrá la funcionalidad de buscar,
CAR-09 Alta
ordenar, insertar, actualizar y eliminar registros
de piezas.

75
ID Descripción Prioridad

El sistema debe permitir la programación de


CAR-10 Media
visitas a domicilio por parte de los técnicos.
El sistema debe permitir al cliente hacer
CAR-11 seguimiento del estado de su electrodoméstico en Media
el caso de la atención al taller.
El sistema debe tener la capacidad de generar
CAR-12 Media
reportes de servicios por técnico.
El sistema debe tener la capacidad de generar
CAR-13 Media
reportes de servicios por cliente.
El sistema debe soportar una gran cantidad de
transacciones y usuarios que acceden
CAR-14 Alta
concurrentemente. Cada transacción no debe
tomar más de 5 segundos en ser ejecutada.
El sistema debe asegurar que el acceso a la
CAR-15 Alta
información está adecuadamente autorizado.
El sistema debe incluir un procedimiento de
autorización de usuario en el cual la
identificación de usuario será mediante un
CAR-16 Alta
nombre de usuario y una contraseña. Solo los
usuarios autorizados podrán acceder a los datos
del sistema.
El sistema debe tener la menor complejidad
CAR-17 posible para que el cliente pueda usarlo con Media
facilidad.
El sistema debe tener la capacidad de funcionar
CAR-18 Media
en diferentes plataformas.
Posibilidad de realizar modificaciones o
CAR-19 reparaciones a un proceso sin afectar la Alta
continuidad del servicio.

76
ID Descripción Prioridad

El sistema deberá permitir que la contraseñas


sean cifradas mediante el HASHEADOR
CAR-20 Alta
SHA2_256 que se usara cuando se realice un
registro a la base de datos.
El sistema deberá ser capaz de operar
CAR-21 adecuadamente con hasta 300 usuarios con Alta
sesiones concurrentes.

Tabla 1 – Características del Sistema

3.2 ALCANCE
Número de
Tema principal ID de características a incluir
entrega

CAR-02, CAR-03, CAR- 04,


1.0 Funcionalidad básica CAR- 05, CAR- 08, CAR- 09,
CAR-14, CAR-15 y CAR-18.
CAR- 01, CAR- 06, CAR- 07,
2.0 Funcionalidad y Disponibilidad CAR- 10, CAR- 11, CAR- 12
CAR-13, CAR-16 y CAR -17.

Tabla 2 – Alcances del sistema

77
3.3 CONTEXTO DEL SISTEMA

3.3.1 DIAGRAMA DE CONTEXTO

3.3.2 ENTORNO DE OPERACIÓN

Navegadores:
• Internet Explorer
• Google Chrome
• Microsoft Edge
• Mozilla Firefox
• Opera
• Brave

Gestor de base de datos:


• PostgreSQL 14

Servidor:
• Wildfly 24.0.1

78
4. DEFINICIÓN DEL PROYECTO

4.1 OBJETIVOS DEL PROYECTO

4.1.1 OBJETIVO GENERAL


El propósito del proyecto es elaborar un sistema web para automatizar los procesos en
la empresa “TALLER UTP” la cual ofrece servicios de diagnóstico, mantenimiento o
reparación de los electrodomésticos a los clientes a domicilio o en el taller.

4.1.2 OBJETIVOS ESPECÍFICOS

• Analizar y entender el funcionamiento de los procesos de atención al cliente a


domicilio, programación de visitas técnicas, atención en el taller, control de técnicos y
control de repuestos y partes.
• Determinar los requisitos funcionales y no funcionales para el sistema web.
• Diseñar, implementar y ejecutar un sistema web intuitivo y accesible que cubra con los
requisitos previamente identificados.
• Construir el programa según la arquitectura MVC, usando Java Web para la parte del
backend y HTML, CSS y JavaScript para la parte del frontend.
• Probar el prototipo o aplicación web en un ambiente de datos reales.
• Promover el uso de una base de datos para guardar los registros de los servicios
prestados a cada cliente, así como los datos de los clientes, técnicos y electrodomésticos
para facilitar la gestión de la información.

4.2 EQUIPO DE TRABAJO

Jefe de
proyecto

Administrador de
Diseñador Programadores Tester Analista Documentador la configuración

79
ROLES-INTEGRANTE FUNCIONES
▪ Planificar, ejecutar y hacer seguimiento, así como control
oportuno de las acciones que forman parte del proceso en su
conjunto.
▪ Definir los objetivos del proyecto.
▪ Alinear el proyecto con las estrategias empresariales.
▪ Administrar los costos y presupuestos.
▪ Gestionar los recursos tecnológicos, económicos y humanos.
JEFE DE PROYECTOS:
▪ Controlar y coordinar las reuniones de equipo y la
Luis Rodrigo Puma Herencia
presentación de avances.
▪ Velar por el comienzo y fin cada actividad de acuerdo a lo
planificado y resolver cualquier desviación o retraso.
▪ Mantener una comunicación fluida con cada miembro del
equipo e informar al cliente sobre el estado del proyecto.
▪ Seleccionar el lenguaje de programación y las herramientas
de desarrollo apropiadas.
▪ Diseñar la arquitectura del sistema de acuerdo a los recursos
asignados al proyecto.
▪ Prototipado rápido del sistema, junto al analista y
programadores para verificar requerimientos.
DISEÑADOR: ▪ Diseñar, probar y poner en funcionamiento la base de datos.
Yulisse Zapata Vargas ▪ Asegurarse de que el producto final se ajuste al diseño
realizado teniendo niveles de abstracción bien definidos.
▪ Apoyar los programadores en la selección del lenguaje y
paradigma apropiado.
▪ Estudiar la metodología de diseño.
▪ Traducir a código fuente ejecutable las especificaciones del
sistema proporcionadas por el analista.
▪ Reducir la complejidad del programa.
▪ Mantener el código eficiente, documentado y adaptable para
PROGRAMADORES: luego unirlo al código de los otros programadores.
- Paul Quispe Segales ▪ Hacer revisiones al código de los otros programadores.

- Yulisse Zapata Vargas ▪ Depurar errores si los hubiera.


▪ Implementar nuevas funcionalidades cuando se necesiten.
- Luis Rodrigo Puma Herencia
▪ Ayudar al jefe de proyecto en la estimación de tiempos y
costes de las actividades de programación.
▪ Estar al corriente de los últimos desarrollos en la industria del
software y cómo pueden beneficiar al proyecto.

80
ROLES-INTEGRANTE FUNCIONES

▪ Apoyar en el proceso de detección y eliminación de errores y


defectos del sistema en construcción.
▪ Testear y monitorizar el funcionamiento del programa
TESTER:
▪ Identificar fallas y crea soluciones informáticas

Paul Quispe Segales ▪ Supervisar el funcionamiento del sistema.


▪ Desarrollar e implementar planes de prueba unitarios, de
módulo, des sistema y de aceptación parcial, manteniéndolos
actualizados durante todo el proyecto.
▪ Se encarga de estudiar el problema, de cierta complejidad, y
descomponerlo en subproblemas de menor complejidad.
▪ Trabajar con el cliente para identificar sus necesidades y
realizar un correcto análisis y especificación del sistema.
▪ Liderar las fases de especificación de requisitos de usuario y
ANALISTA:
especificación de requisitos de software.
Yulisse Zapata Vargas ▪ Definir la estructura básica del sistema, incluyendo fuentes
de información, módulos de procesamiento y resultados
esperados.
▪ Interactuar con el jefe de proyecto par estudiar la viabilidad
del sistema a desarrollar.
▪ Mantener el estado de los documentos a la par con el
desarrollo del proyecto.
▪ Garantizar la integridad y precisión (sin ambigüedad) de
todos los documentos del proyecto.
DOCUMENTADOR: ▪ Construir un repositorio de información compartido para
Luis Rodrigo Puma Herencia almacenar la documentación del proceso (planes, calendarios,
reportes de recursos utilizados, logística de las decisiones,
etc.) y la documentación del producto (documentación de
sistema y de usuario).
▪ Elaborar el manual de usuarios del sistema (MUS)

ADMINISTRACIÓN DE LA ▪ Administrar el software utilizado para el control de versiones.


CONFIGURACIÓN: ▪ Velar por la completitud y exactitud del repositorio del
proyecto.
Paul Quispe Segales

Tabla 3 – Roles y Funciones

81
4.3 RECURSOS Y PRESUPUESTO

Recurso y Presupuestos Abril Mayo Junio Julio Totales


1. Análisis
Líder del Proyecto S/ 3.000,00 S/ 2.700,00 S/ 2.500,00 S/ 2.400,00 S/ 10.600,00
Analista S/ 2.200,00 S/ 2.500,00 S/ 2.300,00 S/ 2.200,00 S/ 9.200,00
2. Diseño
Diseñador de Base de Datos S/ 1.400,00 S/ 1.400,00 S/ 1.400,00 S/ 1.400,00 S/ 5.600,00
Programador S/ 2.000,00 S/ 2.000,00 S/ 2.000,00 S/ 2.000,00 S/ 8.000,00

Especialista en UI y UX S/ 1.500,00 S/ 1.500,00

3. Implementación
Técnico de sistemas S/ 1.500,00 S/ 1.300,00 S/ 1.300,00 S/ 1.200,00 S/ 5.300,00
4. Pruebas
Especialista en seguridad
S/ 2.300,00 S/ 1.800,00 S/ 1.600,00 S/ 1.400,00 S/ 7.100,00
informática (externo)
5. Costos fijos
Hosting S/ 400,00 S/ 400,00 S/ 400,00 S/ 400,00 S/ 1.600,00
Licencia de Mysql (dos
S/ 2.000,00 S/ 2.000,00 S/ 2.000,00 S/ 2.000,00 S/ 8.000,00
procesadores)
Internet de alta velocidad S/ 100,00 S/ 100,00 S/ 100,00 S/ 100,00 S/ 400,00
6. Costo variable
Pago de luz S/ 200,00 S/ 200,00 S/ 200,00 S/ 200,00 S/ 800,00
Pago de agua S/ 100,00 S/ 100,00 S/ 100,00 S/ 100,00 S/ 400,00
7. Reservas S/ 1.200,00 S/ 1.200,00 S/ 1.200,00 S/ 1.200,00 S/ 4.800,00
TOTAL S/ 16.400,00 S/ 15.700,00 S/ 16.600,00 S/ 14.600,00 S/ 63.300,00

Tabla 4 – Recursos y Presupuestos

82
4.4 CRONOGRAMA DE ACTIVIDADES

Nombre de tarea Duración Comienzo Fin Encargado

SISTEMA WEB - TALLER UTP 105 días vie 1/04/22 jue 14/07/22

Jefe de proyecto
Project Charter 4 días vie 1/04/22 lun 4/04/22
Documentador
Nombre del proyecto 1 día vie 1/04/22 vie 1/04/22
Descripción del proyecto 1 día vie 1/04/22 vie 1/04/22
Definición del producto 1 día sáb 2/04/22 sáb 2/04/22
Definición del proyecto 2 días dom 3/04/22 lun 4/04/22
Modelo Lean Canvas 2 días mar 5/04/22 mié 6/04/22 Analista
CAPÍTULO 1 - ASPECTOS
11 días sáb 9/04/22 mar 19/04/22 Documentador
GENERALES
1.1 Definición del problema 2 días sáb 9/04/22 dom 10/04/22 Analista
Descripción del problema 1 día sáb 9/04/22 sáb 9/04/22
Diagramas de procesos de negocio 1 día dom 10/04/22 dom 10/04/22
1.2 Planteamiento de alternativas Analista
3 días lun 11/04/22 mié 13/04/22
de solución Jefe de proyecto
Alternativa de Solución Nº1 1 día lun 11/04/22 lun 11/04/22
Alternativa de Solución Nº2 1 día mar 12/04/22 mar 12/04/22
Alternativa de Solución Nº3 1 día mié 13/04/22 mié 13/04/22
1.3 Definición de objetivos 5 días vie 15/04/22 mar 19/04/22 Jefe de proyecto
Objetivo general y específicos 1 día vie 15/04/22 vie 15/04/22
Alcances y limitaciones 1 día sáb 16/04/22 sáb 16/04/22
Justificación 1 día dom 17/04/22 dom 17/04/22
Estado del arte 2 días lun 18/04/22 mar 19/04/22
CAPÍTULO 2 - MARCO TEÓRICO 2 días mié 20/04/22 jue 21/04/22 Documentador
2.1 Fundamento teórico 2 días mié 20/04/22 jue 21/04/22
CAPÍTULO 3 - DESARROLLO DE
78 días vie 22/04/22 vie 8/07/22
LA SOLUCIÓN
3.1 Análisis del sistema 2 días vie 22/04/22 sáb 23/04/22 Analista
Requisitos funcionales 1 día vie 22/04/22 vie 22/04/22
Requisitos no funcionales 1 día sáb 23/04/22 sáb 23/04/22
3.2 Diseño del sistema 75 días lun 25/04/22 vie 8/07/22
Casos de uso 2 días lun 25/04/22 mar 26/04/22 Analista
Modelo conceptual 1 día mié 27/04/22 mié 27/04/22 Analista
Diseño de las clases 1 día jue 28/04/22 jue 28/04/22 Diseñador
Diseño de la Base de datos 2 días sáb 30/04/22 dom 1/05/22 Diseñador
Modelo Entidad Relación 1 día sáb 30/04/22 sáb 30/04/22
Diseño Físico 1 día dom 1/05/22 dom 1/05/22

83
Nombre de tarea Duración Comienzo Fin Encargado
Código fuente 68 días lun 2/05/22 vie 8/07/22
ETAPA 1 34 días lun 2/05/22 sáb 4/06/22
Programadores
Construcción 30 días lun 2/05/22 mar 31/05/22
Diseñador, Tester
Módulo de Registro y control de
10 días lun 2/05/22 mié 11/05/22
técnicos
Módulo de Registro y control de
10 días jue 12/05/22 sáb 21/05/22
repuestos y partes
Módulo de Atención a domicilio 10 días dom 22/05/22 mar 31/05/22
Tester
Pruebas 4 días mié 1/06/22 sáb 4/06/22
Programadores
ETAPA 2 34 días dom 5/06/22 vie 8/07/22
Construcción 30 días dom 5/06/22 lun 4/07/22
Módulo de Programación de
10 días dom 5/06/22 mar 14/06/22
visitas a domicilio
Módulo de Atención en el taller 10 días mié 15/06/22 vie 24/06/22
Módulo de Reportes 10 días sáb 25/06/22 lun 4/07/22
Tester
Pruebas finales 4 días mar 5/07/22 vie 8/07/22
Programadores
Jefe de proyecto
CONCLUSIONES 1 día sáb 9/07/22 sáb 9/07/22
Documentador
RECOMENDACIONES 1 día dom 10/07/22 dom 10/07/22 Jefe de proyecto
BIBLIOGRAFÍA 1 día lun 11/07/22 lun 11/07/22 Documentador
ENCUESTA 3 día mar 12/07/22 jue 12/07/22 Analista

Tabla 5 – Cronograma de Actividades

84
85
4.4 CRONOGRAMA DE HITOS DEL PROYECTO

Hito o Evento Significativo Fecha Programada


Inicio del Proyecto Viernes, 1 de abril de 2022
Elaboración del acta constitutiva Del 1 al 4 de abril de 2022
Elaboración del modelo Lean Canvas Del 5 al 6 de abril de 2022
Redacción del Capítulo 1 del informe Del 9 al 19 de abril de 2022
Presentación y sustentación del 1º Avance Viernes, 22 de abril de 2022
Redacción del Capítulo 2 del informe Del 20 al 21 de abril de 2022
Redacción del Capítulo 3 del informe Del 22 de abril al 8 de julio de 2022
Inicio de la fase de Análisis Viernes, 22 de abril de 2022
Inicio de la fase de Diseño Miércoles, 25 de abril de 2022
Inicio de la Etapa 1 del proyecto Lunes, 2 de mayo de 2022
Inicio de la fase de Construcción Viernes, 6 de mayo de 2022
Presentación y sustentación del 2º Avance Viernes, 6 de mayo de 2022
Inicio de la fase de Pruebas Miércoles, 1 de junio de 2022
Presentación y sustentación del 3º Avance Viernes, 3 de junio de 2022
Inicio de la Etapa 2 del proyecto Domingo, 5 de junio de 2022
Presentación y sustentación del 4º Avance Viernes, 10 de junio de 2022
Presentación y sustentación del 5º Avance Viernes, 24 de junio de 2022
Finalización del informe Martes, 12 de julio 2022
Encuesta Del 12 al 14 de julio de 2022
Inicio de la fase de Mantenimiento y evolución Miércoles, 15 de julio de 2022
Presentación final del Proyecto Lunes, 25 de julio de 2022

Tabla 6 – Cronograma de Hitos del Proyecto

86
MODELO LEAN CANVAS

Problemas Solución Propuesta de valor Ventaja Competitiva Segmento de


clientes
• Retardos en la atención al cliente • El cliente creará su solicitud en el • Sistema seguro e intuitivo con
vía WhatsApp. sistema y recibirá una respuesta Sistema web de capacidad de generar reportes y Talleres que
• Lentitud en la consulta de inmediata. servicio técnico a realizar consultas de los servicios
ofrecen servicios
técnicos disponibles y • El sistema facilitará la consulta de electrodomésticos, realizados. de reparación de
programación de horarios. técnicos y dinamizará la programación fácil de usar, • Accesible desde cualquier electrodomésticos.
• Retardos al gestionar la de horarios. automatiza la atención dispositivo con conexión a
información de los servicios • La información del servicio prestados se de clientes y la Internet. Público general
prestados en las hojas de cálculo. mostrará en el sistema inmediatamente puede visualizar la
programación de • Mayor productividad,
• Las hojas de cálculo son después de que el técnico envié los datos página web de la
visitas a domicilio. satisfacción del cliente y
propensas a la pérdida de al sistema empresa.
rentabilidad.
información.
• El sistema contará con un gestor de base
de datos para para evitar pérdidas de
Alternativas información.
• Uso de chatbots para WhatsApp. Métricas claves Canales
• Uso de llamadas telefónicas.
• Cantidad de clientes atendidos por día.
• Uso de hojas de cálculo • Redes sociales.
• Cantidad de electrodomésticos
• Copias de la información de las reparados por día. • Radio.
hojas de cálculo. • Cantidad de veces que un cliente solicita • Website.
un servicio a la empresa.
• Encuestas para los clientes.
Estructura de coste Fuentes de Ingreso
• Costos operativos (agua, luz, renta) • Pago único por configuración de la empresa en la plataforma
• Marketing y ventas • Pago mensual por soporte y mantenimiento del sistema
• Investigación y desarrollo del sistema
• Costos de hosting

87
ENCUESTA

Encuesta para clientes:

88
Encuesta para técnicos:

89
Encuesta para el encargado:

90

También podría gustarte