Documentos de Académico
Documentos de Profesional
Documentos de Cultura
ESPECIALIDAD:
DESARROLLO DE SOFTWARE
Proyecto de Innovación y/o Mejora en los Procesos de Producción o
Servicio en la Empresa
DESARROLLO E IMPLEMENTACIÓN
DE SISTEMA DE CONTROL DE
ASISTENCIA Y NOTIFICACIÓN
ASESOR:
Prof. HILARIO POMA, Rodolfo Víctor
AUTOR
ANTONIO VALVERDE, Cristian Timoteo
HUANCAYO-PERÚ
2019
“Las oportunidades grandes nacen de haber sabido aprovechar las pequeñas”
Bill Gates
ii
Este trabajo está dedicado a mi familia
por su incondicional apoyo, compresión y
amor durante todos estos años de mi vida.
ii
AGRADECIMIENTOS
3
PRESENTACION DEL PARTICIPANTE
ID : 986349
PROGRAMA : Dual
TELEFONO : 929815649
4
DENOMINACION DEL PROYECTO
EMPRESA : CETIC.SAC
5
INTRODUCCION
Señores miembros del jurado calificador, dejo a vuestra consideración el proyecto de innovación
titulado:
“DESARROLLO E IMPLEMENTACION DE SISTEMA DE CONTROL DE ASISTENCIA Y
NOTIFICACION”
El trabajo está dividido en capítulos para un mejor entendimiento, el capítulo tiene que ver con una
aproximación al proyecto, incluye la situación real encontrada, los antecedentes y los objetivos; en el
capítulo II se considera la descripción teórica del trabajo como son las herramientas utilizadas, el
lenguaje, frameworks, y librerías de códigos de barras, y codificación del sistema, mientras que en el
capítulo III, tenemos los requerimientos tanto como funcionales como no funcionales, modelo de
base de datos y los diagramas de flujo, finalmente en el capítulo IV, la descripción de costos, insumos
y tiempo del trabajo. Finalmente las conclusiones, sugerencias, la bibliografía recomendada y los
anexos.
Espero que el trabajo se considere como una alternativa para la mejora en la actitud y la seguridad de
los estudiantes de dicha institución también así dando confianza a más personas para inscribir a sus
hijos a estudiar en la IEP.
6
INDICE
Dedicatora................................................................................................................................... II
Agradecimientos ...................................................................................................................... III
Resumen .....................................................................................................................................IV
Epigrafe ....................................................................................................................................... V
Indice ..........................................................................................................................................VI
Capitulo I
1. Empresa y actividad .............................................................................................................. 6
2. Empresa y actividad .............................................................................................................. 7
Caputulo II
3
7
CAPITULO I
1. Aproximacion al proyecto de innovacion
1.1 Situacion real encontrada
La empresa “CETIC SAC” donde realice mis prácticas
profesionales, se encarga del análisis y construcción de software para los
diferentes clientes de Huancayo. Donde trabajan dos Ingenieros de
Sistemas y Técnicos en desarrollo de Software. Tiene 5 años en el
servicio de Desarrollo de Software para diferentes empresas.
8
1.2 Antecedentes
1.2.1 A Nivel Internacional
Autor: Alfredo Càdiz. Con el proyecto denominado “Toma de asistenacias
con QR: alternativas de implementación y decisión de diseño” . Realizado
en la empresa min.read, Bogota, Colombia 2017
9
1.3 OBJETIVOS
sistema
c. Crear los códigos de barra para los alumnos mediante una librería
barcode.
propuesta de innovación
1.4 Justificación
Los padres de familia podrán ver a qué hora llegaron sus hijos a la institución educativa,
1
0
CAPITULO II
2. Descripción Teórica Del Proyecto
2.1 Marco Teórico
a. Lenguaje JAVA
La tecnología Java se usa para desarrollar aplicaciones para un amplio alcance de
entornos, desde dispositivos del consumidor hasta sistemas empresariales
heterogéneos. Y para este proyecto necesitamos un amplio conocimiento de desarrollo
en JAVA tanto como sus librerías y sus funciones.
b. Servidor LINUX
Linux maneja grandes cantidades de procesos mucho mejor que Windows y no
requiere reiniciar ante los cambios de configuración o luego de actualizaciones del
sistema. Windows se degrada con el tiempo y de cuando en cuando requerirá
intervención del usuario para desfragmentar el disco duro, limpiar el registro o aplicar
cualquier otro artilugio que permita devolverle un poco de agilidad al sistema. Por esta
razón se decide implementar el servidor LINUX para alojar el sistema de desarrollo e
implementación del sistema de control de asistencia y notificación.
c. Base de datos SQL Server
El lenguaje de desarrollo utilizado (por línea de comandos o mediante la interfaz
gráfica de Management Studio) es Transact-SQL (TSQL), una implementación del
estándar ANSI del lenguaje SQL, utilizado para manipular y recuperar datos (DML),
crear tablas y definir relaciones entre ellas, será útil para los manejos de datos para así
poder realizar las consultar debidas y entregarlas al usuario como notificación.
1.1.1. JAVA
A. Definición del lenguaje de programación java
1. El quién y el qué: identifica los roles de cada uno de los miembros del
equipo y define su responsabilidad en el proyecto.
2. El dónde y el cuándo: que representan el Sprint.
3. El por qué y el cómo: representan las herramientas que utilizan los
miembros de Scrum.
1
2
1
3
El proceso parte de la lista de objetivos/requisitos priorizada del producto, que actúa
como plan del proyecto. En esta lista el cliente (Product Owner) prioriza los
iteraciones y entregas.
Las actividades que se llevan a cabo en Scrum son las siguientes (los tiempos
Planificación de la iteración
dos partes:
priorizada del producto o proyecto. El equipo pregunta al cliente las dudas que surgen y
selecciona los requisitos más prioritarios que prevé que podrá completar en la iteración,
esfuerzo se hace de manera conjunta y los miembros del equipo se autoasignan las
tareas, se autoorganizan para trabajar incluso en parejas (o grupos mayores) con el fin
Ejecución de la iteración
Cada día el equipo realiza una reunión de sincronización (15 minutos), normalmente
mostrar al final de la iteración. En la reunión cada miembro del equipo responde a tres
preguntas:
cumplir su objetivo?
¿Qué voy a hacer a partir de este momento para ayudar al equipo a cumplir su objetivo?
¿Qué impedimentos tengo o voy a tener que nos impidan conseguir nuestro objetivo?
iteración o su productividad.
Durante la iteración, el cliente junto con el equipo refinan la lista de requisitos (para
Inspección y adaptación
partes:
cuáles son los problemas que podrían impedirle progresar adecuadamente, mejorando
los obstáculos identificados que estén más allá del ámbito de acción del equipo.
un láser lee el código de barras y emite el número que muestra el código de barras, no
láser lee el código), un decodificador y un cable o antena wifi que actúa como
La función del escáner es leer el símbolo del código de barras y proporcionar una
de barras, analiza el contenido del código de barras leído y transmite dichos datos a la
los más modernos por orden de aparición USB, bluetooth, wifi, los más viejos puerto
serie, incluso directamente al puerto PS2 del teclado por medio de un adaptador,
1
7
D. Librería BARCODE
1. la librería barcode puedes descargarla de aqui
https://sourceforge.net/projects/barcode4j/files/
ImageSelection.
2.
3. import java.awt.Image;
4. import java.awt.datatransfer.DataFlavor;
5. import java.awt.datatransfer.Transferable;
6. import java.awt.datatransfer.UnsupportedFlavorException;
7. import java.io.IOException;
8.
9. /**
10. *
12. */
20
15.
18. }
21. }
22.
23.
26. }
UnsupportedFlavorException, IOException {
28. if (!DataFlavor.imageFlavor.equals(flavor)) {
30. }
32. }
33. }
botón
38. try {
21
39. barcode = BarcodeFactory.createCode39(txtcodigo.getText(),
true);
41. }
42. barcode.setDrawingText(false);
43.
44. barcode.setBarWidth(2);
45. barcode.setBarHeight(60);
46.
48. job.setPrintable(barcode);
49.
50. if (job.printDialog()){
51. try {
52. job.print();
54.
Logger.getLogger(codigobarras.class.getName()).log(Level.SEVERE,
null, ex);
55. }
56. }
57. con esto imprimirás tu código de barras para que lo puedas recortar y
codigo
59. try {
true);
62. }
63. barcode.setDrawingText(false);
64.
65. barcode.setBarWidth(2);
66. barcode.setBarHeight(60);
BufferedImage.TYPE_INT_ARGB);
69.
70. try {
73. }
75. lblcode.setIcon(icon);
76. 4.2 y vamos a el tercer boton asemos lo mismo y ponemos que nos
24
Capitulo III
25
3.1 Diagrama de Clases
El uso del lenguaje de programación JAVA nos ha permitido
estructurar nuestro sistema en bloques y tener una
organización basada en clases.
26
Fase de Diseño
Analizando el problema
27
Base de Datos EDITHOR: Es el servidor de Base de Datos donde
se almacena la información necesaria para llevar acabo las
funciones del Sistema de asistencia y notificación, las tablas
involucradas son las siguientes:
28
Fase de Elaboración
29
Diagrama de Casos de uso del Sistema De Notificacion
Tabla 2. Especificación del Caso de uso “Programar Tareas”, Fuente: Elaboración propia
Nombre Planificar las asistencias de los alumnos
Verifica y activa la tarea de realizar seguimiento de
Descripción correos electrónicos, y saber si el correo electrónico
fue rebotado
Alumno, Profesor
Actores
Pre-Condiciones
Post-Condiciones
Escenario Primario
Descripción del Flujo
Actor Sistema
El usuario realiza el proceso
de envío masivo de
comprobantes electrónicos
Excepciones
Resultado
Frecuencia
30
REQ. No Funcionales
Asociados
Casos de Usos relacionados Ejecutar el seguimiento de un correo electrónico
Actores
Pre-Condiciones
Escenario Primario
Descripción del Flujo
Actor Sistema
El Planificador de seguimiento
de correo electrónico, lanzo la
orden de ejecutar el seguimiento
Excepciones
Resultado
Frecuencia
REQ. No Funcionales
Asociados
Casos de Usos relacionados
31
Diagrama de Clases
Diagrama de Despliegue:
32
PC Usuario: Representa el usuario final
Herramientas utilizadas
Las herramientas utilizadas para el desarrollo de la aplicación fueron
Requerimiento de software
33
Apache Tomcat 7.0.72
Sistema operativo Linux como servidor
Requerimiento de Hardware
Fase de Construcción
javamail-1.4.5.jar
javamail-dsn-1.4.2.jar
jcharset-2.0.jar
jsoup-1.9.2.jar
jutf7-1.0.0.jar
log4j-1.2.16.jar
ojdbc6.jar
quartz.jar
quartz-2.2.3.jar
quartz-jobs-2.2.3.jar
slf4j-api-1.7.7.jar
slf4j-log4j12-1.7.7.jar
34
35
IV. Evaluación
. Evaluación Económica
Personal Requerido
36
Reducción del costo de envío de comprobantes en físico
Fórmulas de
cálculos
Don
de:
capaz de poder registrar las asistencias y salidas de los alumnos mediante un código de
barra el objetivo es que se quiere controlar las tardanzas y inasistencias de los alumnos.
Este objetivo se quería lograr en primera instancia para funcionar con inventarios que
deseaba beneficiar con este sistema manejaba el modelo (s,S) el objetivo se amplió,
logrando así tener al final de esta tesis un sistema capaz de ser utilizado por empresas
Dentro de un proyecto como lo fue éste, siempre se desea que haya una mejora continua
Otra recomendación sería incluir más modelos de inventarios, para que el sistema se
adapte a las necesidades de una mayor variedad de empresas. Una recomendación para
constantes.
REFERENCIAS BIBLIOGRAFICAS
ISO Tool Exellence. ISO Tool Exellence. ISO Tool Exellence. [En línea] [Citado el:
24 de 04 de 2018.] https://www.isotools.org.
ISO, Secretaria Central de. 2015. Sistemas de gestión ambiental - Requisitos con
orientación para uso. Ginebra, Suiza : s.n., 2015. ISO 14001:2015.
—. 2015. Sistemas de gestión de calidad Requisitos. Ginebra, Suiza : s.n., 2015. ISO
9001:2015.
Ledesma, Aniba. 2013. Prezi. Prezi. [En línea] 29 de noviembre de 2013. [Citado el:
25 de marzo de 2019.] https://prezi.com/h0j-_95vhkj2/que-es-wampserver/.
Meléndez Valladarez, Sintya Milena, Gaitán, María y Pérez Reyes, Neldin Noel.
2016. METODOLOGIA ÁGIL DE DESARROLLO DE SOFTWARE
PROGRAMACION. [En línea] 28 de Enero de 2016. [Citado el: 16 de Juilo de 2017.]
http://repositorio.unan.edu.ni/1365/1/62161.pdf.
Payara Server. 2017. Paya Server - Derived from Glassfish with 24/7 Production &
Developer Support. [En línea] 2017. [Citado el: 14 de Junio de 2017.]
http://www.payara.fish/home.
Pech-May, Fernando, y otros. Desarrollo de Aplicaciones web con JPA, EJB, JSF y
PrimeFaces. Tabasco : s.n.
Ramos Martín, Alicia y Ramos Martín, Jesús. 2007. Operaciones con Bases de
Datos Ofimáticas y Corporativas. [En línea] 2007. [Citado el: 13 de Junio de 2017.]
https://books.google.com.pe/books?id=hwNWRHc79PMC&printsec=frontcover&dq
=base+de+datos&hl=es-
419&sa=X&sqi=2&redir_esc=y#v=onepage&q=base%20de%20datos&f=false.
SIRIUS. 2018. SIRIUS. [En línea] 2018. [Citado el: 11 de Abril de 2018.]
www.sirius.com.pe.
Wikipedia. 2019. Wikipedia. Wikipedia. [En línea] 19 de febrero de 2019. [Citado el:
26 de marzo de 2019.] https://es.wikipedia.org/wiki/MySQL.
WIKIPEDIA. 2015. WIKIPEDIA. [En línea] 22 de 02 de 2015. [Citado el: 24 de
04
de
201
8.]
https://es.wikipedia.org/wiki/Programaci%C3%B3n_extrema#Caracter%C3
%ADstic as_fundamentales.
ANEXO