Diseño y Desarrollo de un Prototipo de Software que Apoye...

118
Diseño y Desarrollo de un Prototipo de Software que Apoye, Gestione y Agilice los Procesos Referentes al Manejo de los Recursos Humanos en la Empresa Grupo TX S.A.S. Colombia Autores ERICK ALEXANDER CARVAJAL LÓPEZ JONATAN ALEXANDER MÉNDEZ Director ING. ALEJANDRO PAOLO DAZA CORREDOR Proyecto Curricular de Ingeniería de Sistemas UNIVERSIDAD DISTRITAL FRANCISCO JOSÉ DE CALDAS Proyecto de grado presentado en la Universidad Distrital Francisco José de Caldas, para optar al título de Ingeniero de Sistemas. BOGOTÁ D.C. MAYO 2016

Transcript of Diseño y Desarrollo de un Prototipo de Software que Apoye...

Diseño y Desarrollo de un Prototipo deSoftware que Apoye, Gestione y Agilicelos Procesos Referentes al Manejo de los

Recursos Humanos en la EmpresaGrupo TX S.A.S. Colombia

Autores

ERICK ALEXANDER CARVAJAL LÓPEZJONATAN ALEXANDER MÉNDEZ

Director

ING. ALEJANDRO PAOLO DAZA CORREDOR

Proyecto Curricular de Ingeniería de SistemasUNIVERSIDAD DISTRITAL FRANCISCO JOSÉ DE CALDAS

Proyecto de grado presentado en la Universidad DistritalFrancisco José de Caldas, para optar al título de Ingeniero deSistemas.

BOGOTÁ D.C.MAYO 2016

RESUMEN

En este proyecto de grado se describe todo lo relacionado con el análisis, diseño y desarrollode una herramienta web, que se propone como solución a una serie de problemas de gestióny administración de los recursos humanos en la empresa Grupo TX S.A.S. Colombia. Se

abarcan temas como la detección y levantamiento de requerimientos en la etapa inicial delproyecto, pasando por la comprensión y conocimiento del negocio en sí, a través de la elaboraciónde una arquitectura empresarial, haciendo uso de la especificación Archimate 2.0. Adicionalmente,se presenta el diseño correspondiente a la solución por medio de Lenguaje de Modelado Unificado(Diagramas de Casos de Uso y Diagramas de Clases), Modelo Relacional y todo lo necesario paracomprender la estructura del sistema. Por último, se describen los resultados obtenidos gracias aldesarrollo de la aplicación, junto con las conclusiones y recomendaciones correspondientes.

i

AGRADECIMIENTOS

Agradecemos a todas las personas que aportaron su granito de arena para que este proyectosea una realidad, así como a aquellas que tuvieron que ver de una u otra manera connuestra formación como profesionales. Por el fruto de nuestro trabajo, a las personas

que dedicaron su tiempo a enseñarnos y prestarnos su experiencia para dar un paso adelanteen nuestra carrera como ingenieros, además de todos aquellos que nos brindaron su apoyo yconfianza sin esperar nada a cambio.

A nuestras familias por su apoyo constante durante cada etapa de nuestra carrera, especial-mente a nuestros padres por haber sido la base fundamental de nuestra formación como personas.

A cada uno de los profesores con los que tuvimos la oportunidad de adquirir y compartirconocimiento, así como a cada miembro de la Universidad Distrital Francisco José de Caldas,que con su profesionalismo han ayudado durante tantos años a formar excelentes profesionales ypersonas, dejandor en alto el buen nombre de nuestra Universidad.

Un agradecimiento especial al profesor Alejandro Paolo Daza Corredor, por haber dirigidoeste proyecto. Gracias por haber sido la primera persona que nos brindó la ayuda necesaria paraque este proyecto sea una realidad, quién nos orientó durante cada una de las etapas del proyecto,y nos enseñó el camino correcto para poder culminar de la mejor manera nuestro trabajo degrado.

Al profesor Sandro Javier Bolaños Castro por las observaciones y correcciones realizadasdurante cada etapa del proyecto, dándonos un parte de tranquilidad sobre la calidad de esteentregable, y orientándonos hacia el camino correcto.

A los miembros de Grupo TX que nos apoyaron durante la etapa de levantamiento de infor-mación, especialmente a los ingenieros William Díaz Pabón y Nelson Gustavo Camacho porsu ayuda, consejos y dedicación.

iii

DEDICATORIAS

Dedico el fruto de este trabajo a mis padres quienes desde el principio de mi carrera me hanenseñado el camino correcto y me han dado el apoyo que necesitaba para lograr culminar estaetapa, a mis hermanos quienes me dan alegrías día a día, a mis tíos y tías quienes me recibieron ycuidaron en momentos de baja salud, a mis abuelos que siempre me dieron un consejo cuandolo necesitaba, a mis amigos con los que comparto siempre buenas experiencias, a los profesoresquienes me dieron el conocimiento para escalar, y a mi compañero de proyecto con quien obtuvimosgrandes enseñanzas en el equipo de trabajo..

Erick Alexander Carvajal López

Quiero dedicar este trabajo a mi hija María Camila, quién es y siempre será el motor de mivida y mi razón principal para salir adelante. A mi mamá María porque sin ella no sería lapersona que soy hoy en día, y gracias a ella he cumplido muchas de las metas que me he propuestosiempre. A a mi novia, compañera, amiga y prometida Paola, por su paciencia, apoyo y motivaciónconstante para la obtención de mis logros. Así mismo, dedico este trabajo a mis hermanos, enespecial a mi hermano Carlos porque siempre ha sido mi apoyo incondicional y la mejor figurapaterna en mi núcleo familiar. A Dios porque día a día le agradezco por la vida que tengo y lasoportunidades que se me presentan. Finalmente dedico este trabajo a todas las personas que deuna u otra forma hacen parte especial de mi vida, amigos, familiares, profesores e inclusive aaquellas que de buena o mala manera me han enseñado algo en esta vida haciéndome mejorpersona.

Jonatan Alexander Méndez

v

DECLARACIÓN DE LOS AUTORES

Declaramos que el presente proyecto de grado se llevó a cabo de acuerdo conlos requisitos establecidos por el reglamento estudiantil de la UniversidadFrancisco José de Caldas bajo la modalidad de Monografía, soportado por los

acuerdos vigentes para los programas de grado. Este proyecto ha sido realizado apartir del trabajo de los dos autores, a su vez fue complementado gracias a diversasfuentes de información que son citadas en el presente documento. Cabe resaltarque las opiniones expresadas en cualquier parte de este documento, representanúnicamente las opiniones de los autores.

vii

TABLA DE CONTENIDO

Página

Índice de Tablas xiii

Índice de Figuras xv

1 Introducción 1

2 Planteamiento del Problema 52.1 Descripción del Problema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

2.2 Formulación del Problema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

3 Justificación 9

4 Objetivos 114.1 Objetivo General . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

4.2 Objetivos Específicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

5 Delimitación 135.1 Alcances . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

5.2 Limitaciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

6 Marco Referencial 176.1 Estado del Arte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

6.1.1 Antecedentes Globales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

6.1.1.1 Ziur Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

6.1.1.2 Xeo Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

6.1.1.3 Flujo de Caja en Excel . . . . . . . . . . . . . . . . . . . . . . . . . . 19

6.2 Marco Teórico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

6.2.1 Recursos Humanos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

6.2.2 Arquitectura de Cliente-Servidor Mediante 3 Capas . . . . . . . . . . . . . . 19

6.2.3 Patrón de Diseño Modelo - Vista - Controlador (MVC) . . . . . . . . . . . . . 20

6.2.4 Lenguaje de Programación Java . . . . . . . . . . . . . . . . . . . . . . . . . . 20

ix

TABLA DE CONTENIDO

6.2.5 Java Persistence Api (JPA) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

6.2.6 Hibernate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

6.2.7 Java Message Service (JMS) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

6.2.8 Java Server Pages (JSP) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

6.2.9 PrimeFaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

6.2.10 Enterprise Java Bean EJB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

6.2.11 Hoja de Estilos en Cascada (CSS) . . . . . . . . . . . . . . . . . . . . . . . . . 22

6.2.12 Lenguaje Unificado de Modelado UML . . . . . . . . . . . . . . . . . . . . . . 22

6.2.13 Diagrama de Clases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

6.2.14 Diagrama de Casos de Uso . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

6.2.15 Sistemas Manejadores de Bases de Datos (SGBD) . . . . . . . . . . . . . . . 23

6.2.16 Modelo Relacional . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

6.2.17 Metodología SCRUM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

6.2.18 Metodología Kanban . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

6.2.19 Metodología ScrumBan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

7 Metodología de la Ingeniería del Proyecto 277.1 Definición de Roles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

7.2 Pila del Producto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

7.3 Historias de Usuario de Cada Sprint . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

7.3.1 Primer Sprint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

7.3.2 Segundo Sprint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

7.3.3 Tercer Sprint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

7.3.4 Cuarto Sprint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

7.3.5 Quinto Sprint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

7.3.6 Sexto Sprint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

7.4 Definición del Flujo de Trabajo Kanban . . . . . . . . . . . . . . . . . . . . . . . . . . 34

8 Recursos y Cronograma 378.1 Recursos Físicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

8.2 Recursos de Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

8.3 Recursos Humanos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

8.4 Otros Recursos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

8.5 Costo Total del Proyecto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

8.6 Cronograma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

9 Análisis de Requerimientos 419.1 Requerimientos Funcionales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

9.2 Requerimientos No Funcionales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

x

TABLA DE CONTENIDO

10 Modelamiento del Prototipo 4510.1 Especificación de Requerimientos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

10.1.1 Definición de Actores del Sistema . . . . . . . . . . . . . . . . . . . . . . . . . 45

10.1.2 Diagramas de Casos de Uso . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

10.1.2.1 Diagrama de Casos de Uso para Trámites de Funcionarios . . . . 46

10.1.2.2 Diagrama de Casos de Uso para Gestión de Personal . . . . . . . 49

10.1.2.3 Diagrama de Casos de Uso para Gestionar Reporte . . . . . . . . 53

10.2 Arquitectura General de la Aplicación . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

10.2.1 Capa de Presentación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56

10.2.2 Capa de Lógica del Negocio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56

10.2.3 Capa de Acceso a Datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

10.2.4 Capa de Persistencia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

10.3 Arquitectura Empresarial con Archimate . . . . . . . . . . . . . . . . . . . . . . . . . 58

10.3.1 Punto de Vista Introductorio . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

10.3.2 Capa de Negocio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59

10.3.2.1 Punto de Vista de Organización . . . . . . . . . . . . . . . . . . . . 59

10.3.2.2 Punto de Vista de Función de Negocio . . . . . . . . . . . . . . . . 60

10.3.2.3 Punto de Vista de Proceso de Negocio . . . . . . . . . . . . . . . . . 61

10.3.3 Capa de Aplicación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63

10.3.3.1 Punto de Vista de Uso de Aplicación . . . . . . . . . . . . . . . . . 63

10.3.4 Capa de Tecnología . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66

10.3.4.1 Punto de Vista de Infraestructura . . . . . . . . . . . . . . . . . . . 66

10.3.4.2 Punto de Vista de Estructura de la Información . . . . . . . . . . 67

10.4 Diseño de la Base de Datos del Sistema . . . . . . . . . . . . . . . . . . . . . . . . . . 68

10.5 Diagramas de Clases del Sistema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69

10.5.1 Diagrama de Clases del Modelo de Negocio . . . . . . . . . . . . . . . . . . . 69

10.5.2 Diagrama de Clases de la Capa de Acceso a Datos . . . . . . . . . . . . . . . 70

10.5.3 Diagrama de Clases de la Capa de Servicios de Negocio . . . . . . . . . . . . 72

10.5.4 Diagrama de Clases del Controlador por Medio de Backing Beans . . . . . 74

11 Funcionamiento Final del Aplicativo 7711.1 Funcionalidad Gestionar Empleado . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79

11.1.1 Sección Hoja de Vida . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81

11.1.2 Sección Documentos Personales . . . . . . . . . . . . . . . . . . . . . . . . . . 83

11.1.3 Sección Contratos Laborales . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84

11.1.4 Sección Incapacidades Laborales . . . . . . . . . . . . . . . . . . . . . . . . . 84

11.1.5 Sección Llamados de Atención . . . . . . . . . . . . . . . . . . . . . . . . . . . 86

11.1.6 Sección Pagos de Nómina . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86

11.2 Funcionalidad Crear Contrato Laboral . . . . . . . . . . . . . . . . . . . . . . . . . . 88

xi

TABLA DE CONTENIDO

11.2.1 Pasos a Seguir Crear Contrato Laboral . . . . . . . . . . . . . . . . . . . . . . 88

12 Trabajo Futuro 9312.1 Mejora en Reportes Personalizados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93

12.2 Mejora en Funcionalidades de Gestión de Nómina . . . . . . . . . . . . . . . . . . . 93

12.3 Mejora en Comunicación entre Empleador y Empleados . . . . . . . . . . . . . . . . 94

12.4 Firmas Digitales para Documentos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94

13 Conclusiones 95

A Listado de Anexos Adjuntos en el CD del Proyecto 97

Bibliografía 99

xii

ÍNDICE DE TABLAS

TABLA Página

7.1 Prototipo de Pila del Producto. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

7.2 Historias de Usuario Primer Sprint. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

7.3 Historias de Usuario Segundo Sprint. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

7.4 Historias de Usuario Tercer Sprint. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

7.5 Historias de Usuario Cuarto Sprint. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

7.6 Historias de Usuario Quinto Sprint. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

7.7 Historias de Usuario Sexto Sprint. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

8.1 Recursos Físicos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

8.2 Recursos de Software. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

8.3 Recursos Humanos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

8.4 Otros Recursos Utilizados. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

8.5 Costo Total del Proyecto. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

10.1 Descripción Caso de Uso Consultar Solicitudes Permiso Laboral. . . . . . . . . . . . . . 48

10.2 Descripción Caso de Uso Solicitar Permiso Laboral. . . . . . . . . . . . . . . . . . . . . . 48

10.3 Descripción Caso de Uso Solicitar Certificación Laboral. . . . . . . . . . . . . . . . . . . 49

10.4 Descripción Caso de Uso Gestionar Empleado. . . . . . . . . . . . . . . . . . . . . . . . . 51

10.5 Descripción Caso de Uso Crear Contrato Laboral. . . . . . . . . . . . . . . . . . . . . . . 52

10.6 Descripción Caso de Uso Corregir Pago Nómina. . . . . . . . . . . . . . . . . . . . . . . . 52

10.7 Descripción Caso de Uso Aprobar Solicitud Laboral. . . . . . . . . . . . . . . . . . . . . 53

10.8 Descripción Caso de Uso Consultar Reporte. . . . . . . . . . . . . . . . . . . . . . . . . . 54

10.9 Descripción Caso de Uso Generar Reporte. . . . . . . . . . . . . . . . . . . . . . . . . . . 55

xiii

ÍNDICE DE FIGURAS

FIGURA Página

6.1 Metodología Scrum. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

7.1 Flujo de Trabajo Kanban Definido para Cada Sprint. . . . . . . . . . . . . . . . . . . . . 36

8.1 Cronograma del Proyecto. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

10.1 Diagrama de Actores. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

10.2 Diagrama de Casos de Uso para Trámites de Funcionarios. . . . . . . . . . . . . . . . . 47

10.3 Diagrama de Casos de Uso para Gestión de Personal. . . . . . . . . . . . . . . . . . . . . 50

10.4 Diagrama de Casos de Uso para Gestionar Reporte. . . . . . . . . . . . . . . . . . . . . . 54

10.5 Diagrama General de la Arquitectura de la Aplicación. . . . . . . . . . . . . . . . . . . . 56

10.6 Diagrama Arquitectural de la Capa de Lógica de Negocio. . . . . . . . . . . . . . . . . . 57

10.7 Punto de Vista Introductorio. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

10.8 Punto de Vista de Organización. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59

10.9 Punto de Vista de Función de Negocio. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60

10.10Punto de Vista de Proceso de Negocio. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

10.11Punto de Vista de Uso de Aplicación para Creación de Contrato Laboral. . . . . . . . . 63

10.12Punto de Vista de Uso de Aplicación para Cancelación de Contrato Laboral. . . . . . . 64

10.13Punto de Vista de Uso de Aplicación para Gestión de Documentación Asociada al

Contrato Laboral. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64

10.14Punto de Vista de Uso de Aplicación para Tramitación Solicitud Laboral. . . . . . . . . 65

10.15Punto de Vista de Infraestructura. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66

10.16Punto de Vista de Estructura de la Información. . . . . . . . . . . . . . . . . . . . . . . . 67

10.17Modelo Relacional del Sistema. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68

10.18Diagrama de Clases del Modelo de Negocio. . . . . . . . . . . . . . . . . . . . . . . . . . . 69

10.19Diagrama de Clases de la Capa de Acceso a Datos. . . . . . . . . . . . . . . . . . . . . . 70

10.20Diagrama de Clases del Uso de Servicios de Negocio. . . . . . . . . . . . . . . . . . . . . 72

10.21Diagrama de Clases del Controlador por Medio de Backing Beans. . . . . . . . . . . . . 74

11.1 Menú Principal del Aplicativo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78

11.2 Diseño Interfaz Gráfica del Aplicativo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79

xv

ÍNDICE DE FIGURAS

11.3 Funcionalidad Gestionar Empleado. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80

11.4 Crear Nueva Persona para el Sistema. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81

11.5 Edición Hoja de vida . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82

11.6 Secciones Hoja de Vida. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82

11.7 Adjuntar Documentos a Hoja de Vida. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83

11.8 Ejemplo Cédula de Persona. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84

11.9 Incapacidades Laborales. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85

11.10Descargar Incapacidad Laboral. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85

11.11Sección Memorandos Empleado. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86

11.12Imprimir Llamado de Atención. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87

11.13Pagos de Nómina Empleado. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87

11.14Pagos de Nómina Descargar. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88

11.15Procesar Datos Crear Contrato Laboral. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89

11.16Creación Exitosa de Contrato Laboral. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90

11.17Guardar Contrato Laboral. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91

xvi

CA

TU

LO

1INTRODUCCIÓN

En Colombia, existe un gran número de empresas que dependiendo de su tamaño y su

participación en el mercado, pueden ser clasificadas desde micro-empresas hasta grandes

compañías. Es de notar que el objeto fundamental de cualquier entidad se enfoca en su

propio desarrollo y crecimiento, con el paso de los años, una micro-empresa pretende llegar a ser

una pequeña empresa, mientras que esta enfocará sus esfuerzos en llegar a ser mediana empresa

algún día, y esta a su vez pretende llegar a obtener un mayor porcentaje de participación hasta

convertirse en una empresa grande. Las compañías crecen, por ende, sus procedimientos también,

su personal, y los procesos internos de las mismas se harán cada vez más complejos y difíciles de

manejar, es decir que el manejo de la información de cualquier entidad crece exponencialmente

con el paso de los años.

Podemos inferir que debido al constante aumento de la información manejada dentro de una

compañía, se hace necesario implementar una estrategia que permita canalizar los datos que se

transmiten en el día a día, realizando una sistematización de dicha información; lo cual conlleva

a que los procedimientos se vuelvan eficaces y mucho más eficientes que si se manejan de manera

tradicional utilizando métodos manuales para gestionar la información.

Grupo TX es un conjunto de empresas líderes en tecnología con el mayor número de contratos

en Latinoamérica, caracterizado por proporcionar soluciones integrales a los gobiernos Federales,

Estatales, Institutos Autónomos y Empresas Privadas, en la prestación de servicios con éxito

garantizado y comprobado, que hacen de nuestro Grupo un sólido partner de negocios (Grupo

TX S.A.S, 2016). Este grupo de empresas cuenta con muchos años de experiencia en América del

Sur y Centro América, sin embargo, en Colombia llevan pocos años de haber incursionado en el

mercado; por tal razón algunos de sus procesos administrativos más importantes no cuentan con

un sistema de información apto para llevar a cabo la gestión y sistematización de los datos de la

1

CAPÍTULO 1. INTRODUCCIÓN

compañía.

Inicialmente, Corporación TX se radicó en la ciudad de Bogotá, contaba con una nómina

de empleados reducida y sus procesos administrativos eran pocos. A medida que transcurría el

tiempo, la compañía fue extendiendo su gama de clientes a lo largo y ancho del país, en diferentes

departamentos de Colombia; lo que generó la necesidad de expandir sus servicios en diferentes

municipios nacionales. Todo este tipo de situaciones conlleva a que la cantidad de empleados

aumentará significativamente junto con los procesos administrativos, sin embargo, al contar

con una sola oficina de recursos humanos radicada en la capital de la república, son muchos los

procedimientos de la compañía que tienen que pasar primero por el visto bueno de la central

para que se puedan efectuar. Esto hace que el tiempo de respuesta de recursos humanos hacia

sus empleados aumente considerablemente, y que la gestión del personal se realice de manera

poco eficiente, con margen de error y sin control alguno de la información de la compañía.

No existe actualmente en Grupo TX Colombia un sistema de información que permita llevar a

cabo la gestión del personal o recurso humano de manera eficiente, la mayoría de la información

referente a los empleados de la compañía y a los procesos administrativos se maneja de manera

tradicional, por medio de documentos físicos, encomiendas y envío de correspondencia, o a lo

sumo manejo de hojas de cálculo y envío de correos electrónicos. Esto dificulta enormemente el

crecimiento interno de la compañía, volviendo algo engorroso el hecho de gestionar el capital

humano, ya que se carece de una plataforma colectiva, que pueda ser utilizada por todos los

empleados de la empresa sin importar su ubicación geográfica, y por supuesto por la central de

recursos humanos.

El hecho de sistematizar esta información en Grupo TX nace de la necesidad de agilizar los

procesos de la compañía, pero también surge porque se requiere crear una plataforma que brinde

la posibilidad de comunicar a los empleados de todo el país con la central de recursos humanos

fácilmente, de tal manera que sin importar en donde se encuentren ubicados, se pueda acceder

por medio de internet a la información que se requiera, tanto para el empleado como para el jefe

de recursos humanos.

La solución de software que se propuso para resolver el problema planteado en este proyecto,

se fundamenta en un análisis riguroso de los requerimientos de la situación que vive actualmente

Grupo TX, se trata de un prototipo funcional a la medida de las necesidades de la compañía para

afrontar sus problemas de manejo de información de los empleados, ya que de cierta manera se

encuentran desactualizados en cuanto a los recursos que viene utilizando para realizar distintos

procesos del área administrativa. Por ende, se hizo un levantamiento de información en donde se

plasmó el problema en sí, para llevar a cabo su correspondiente análisis, diseño y desarrollo de la

solución propuesta en este documento.

Para desarrollar este proyecto, fue necesario partir de los inconvenientes que se han pre-

sentado durante los últimos años en la empresa, desde que comenzó a funcionar activamente

en Colombia; Por tanto, se llevó a cabo un análisis de requerimientos que permitió deducir lo

2

necesario para diseñar una solución web que ayude a gestionar la información del capital humano

de la compañía. De esta manera, se pretendió disminuir significativamente los obstáculos que

se plantearon inicialmente, mermando considerablemente el impacto que conlleva gestionar la

información de cualquier entidad con métodos tradicionales sin hacer uso de las tecnologías de la

información con las que contamos actualmente.

La idea fundamental de este documento es responder las interrogantes más significativas

referentes al problema en cuestión, como por ejemplo saber ¿Cuáles son las principales carac-

terísticas del problema? ¿Qué factores han generado dicha situación? Y sobre todo ¿Por qué la

solución propuesta ayudó a disminuir el impacto del problema en esta empresa? Del mismo modo,

se documentó información referente al estado del arte de la solución descrita, soportes teóricos

referentes a los temas tratados en el proyecto y metodologías ingenieriles utilizadas para dar

solución a esta situación.

3

CA

TU

LO

2PLANTEAMIENTO DEL PROBLEMA

2.1 Descripción del Problema

El manejo de los procesos administrativos relacionados con la gestión de personal y recursos

humanos en la empresa Grupo TX de Colombia es un aspecto muy importante que no ha podido ser

definido y soportado adecuadamente en la actualidad, teniendo en cuenta que los procedimientos

manuales son los únicos medios para llevar a cabo la gestión de la información de todos los

empleados de la empresa. Las causas de que exista esta situación se debe entre otras cosas al

poco tiempo que llevan operando en el país, mientras que la extensión de la compañía a lo largo

del territorio nacional ha ido creciendo rápidamente con el paso de los años.

Se puede definir el problema planteado en este proyecto en dos partes fundamentales; Primero

Grupo TX de Colombia es una empresa que cuenta con una única sede de recursos humanos

ubicada en la ciudad de Bogotá, y que además tiene a su disposición trabajadores en diferentes

municipios de Colombia, imposibilitando la realización de trámites necesarios tanto para los

empleados como para el empleador, debido a que no se cuenta actualmente con una plataforma

tecnológica que integre las diferentes sedes del país y sistematice la información relevante. Por

otro lado, el problema se enfoca en los medios que están siendo utilizados para llevar a cabo la

gestión humana en la empresa en la actualidad, ya que se trata de procedimientos manuales

tradicionales, que incluyen el manejo de documentos físicos para todo tipo de recurso que se desee

gestionar, lo cual imposibilita el uso eficiente de la información, y aumenta considerablemente el

tiempo que debe invertir la compañía en trámites que podrían ser efectuadas de manera sencilla

por medio de un sistema de información.

En cuanto al primero de los problemas descritos, es evidente que la ubicación geográfica

de los empleados de Grupo TX influye directamente en el costo de tiempo que debe asumir la

compañía para poder facilitar trámites necesarios dentro del ambiente laboral, por tanto, es

5

CAPÍTULO 2. PLANTEAMIENTO DEL PROBLEMA

de vital importancia diseñar y desarrollar una solución web que interconecte a las diferentes

sedes de la empresa con la central de recursos humanos, de tal forma que cada empleado sin

importar en donde se encuentre ni a qué hora lo requiera, pueda tener acceso a una plataforma

para llevar a cabo la solicitud y tramitación de documentos que sean primordiales para este.

Dentro del conjunto de solicitudes que pueden diligenciar los trabajadores por medio de lo que se

propuso en este trabajo, se pueden enumerar las que conciernen directamente con el empleado,

por ejemplo solicitudes de permisos laborales, certificaciones, contratos, desprendibles de nómina,

etc. Es necesario en la empresa agilizar todos estos procedimientos por medio de un mecanismo

que permita comunicar de manera eficiente al personal de la compañía con los directamente

responsables de brindar este tipo de recursos, haciendo uso de herramientas tecnológicas como

el internet para establecer una conexión inmediata entre los diferentes sectores de la entidad.

Del mismo modo, lo que se pretendió con este trabajo es satisfacer la necesidad de obtener y

sistematizar información personal de los funcionarios de la compañía ubicados en todo el país

para hacer un uso adecuado de la misma, ya que en la actualidad no es posible mantener un

orden referente a los datos de cada empleado, todo se encuentra desorganizado por culpa de la

documentación física que se viene utilizando en las diferentes oficinas de la empresa.

En segundo lugar, se encuentra el problema relacionado con el manejo actual de la infor-

mación de recursos humanos en Grupo TX, ya que la mayoría de procedimientos referentes al

personal de la empresa y a trámites de gestión administrativa se vienen efectuando por medio

de procedimientos manuales como el manejo de documentos físicos dentro de carpetas, archivos

y fotocopias. No existe un sistema que canalice dicha información y la gestione de manera ade-

cuada; el crecimiento constante del número de funcionarios activos en la empresa convierte en

algo engorroso el hecho de llevar a cabo búsquedas de documentos para obtener un dato que

se requiera en un momento determinado, los archivos físicos crecen con el paso del tiempo, el

desorden en las oficinas aumenta y por ende la eficiencia laboral disminuye significativamente.

Con la intención de encontrar una solución al problema planteado en este proyecto, se realizó

un levantamiento de información en la oficina central de Grupo TX S.A.S., con colaboración de las

personas encargadas de manejar el personal de la compañía, y aquellos funcionarios que efectúan

tareas referentes a la gestión de recursos humanos de la entidad, para determinar de qué manera

y a qué medida se debe desarrollar una herramienta tecnológica que sirva de apoyo para llevar

a cabo todos los trámites y procedimientos relevantes para ellos, y que además garantice una

estabilidad e integridad de la información manejada.

Con base en este estudio inicial se pudo establecer que para dar solución al problema

planteado, es necesario construir un prototipo funcional que apoye los puntos críticos de la

gestión de recursos humanos en Grupo TX S.A.S., que a su vez integre en una sola base de datos

la información relevante tanto para funcionarios como para la oficina central ubicada en Bogotá,

y que además ayude a encauzar la información desde los distintos sectores del país por medio de

internet; Se tuvo que desarrollar una herramienta web que garantice la consistencia de los datos

6

2.2. FORMULACIÓN DEL PROBLEMA

almacenados, que crezca de acuerdo a las necesidades de la empresa, sea extensible y se adapte a

nuevos requerimientos que surjan con el paso del tiempo.

2.2 Formulación del Problema

¿Qué modelo de operación reflejado en una plataforma web permitiría agilizar los procesos

administrativos referentes al manejo de los recursos humanos en la empresa Grupo TX de

Colombia?

7

CA

TU

LO

3JUSTIFICACIÓN

Actualmente se pueden encontrar en la web diversos programas de administración de

la información que se enfocan en controlar y gestionar recursos humanos, los cuales

ofrecen soluciones a diferentes necesidades de las empresas, por ejemplo el manejo de los

horarios de trabajo, programación de tareas y obtención de estadísticas generales. Entre tantas

opciones se encuentran por un lado herramientas de código abierto, cuya principal desventaja

es la falta de soporte de calidad para garantizar solidez en la solución que se le ofrece a las

empresas para satisfacer sus necesidades, por otro lado se encuentran las aplicaciones privativas,

las cuales tienen el inconveniente de que para adquirirlas es necesario invertir una gran cantidad

de recursos económicos. Uno de los fines de este proyecto ha sido brindar una solución web que se

ajuste a todos los requerimientos de la empresa en cuanto al manejo de personal, sin necesidad de

recurrir a software de terceros para la administración de los datos de recursos humanos, es decir,

centralizar la información de los empleados para ahorrar tiempo y costos, realizar un estudio de

las necesidades centrales de los administradores con el fin de brindar opciones de trabajo precisas

y evitar llenar la interfaz de usuario con opciones que no se usarán o no se soportan.

En cualquier empresa se requiere tener un orden y registro de los asuntos internos que

involucran a sus empleados, así mismo, los funcionarios deben tener una plataforma que les

permita acceder de manera eficiente a diferente información que sea relevante para los mismos.

Esto con el fin de mejorar los tiempos de ejecución en los distintos procesos que se llevan a cabo

por parte de la oficina de recursos humanos, controlar de manera adecuada la información de cada

uno de los trabajadores vinculados a la institución y agilizar los procedimientos que se vienen

efectuando por medio de documentos físicos, de tal manera que la gestión del talento humano de

la compañía sea efectuada de manera mucho más sencilla, aprovechando todos los beneficios que

conlleva el hecho de utilizar las tecnologías de información. La idea principal de este proyecto

9

CAPÍTULO 3. JUSTIFICACIÓN

es reemplazar las soluciones rudimentarias que se vienen utilizando hasta hoy en día en Grupo

TX Colombia, por ejemplo el uso de programas individuales como hojas de cálculo, hojas de

texto o el manejo de documentos físicos, por una única plataforma que apoye al área de recursos

humanos en la realización de sus tareas cotidianas referentes al manejo de personal. Depender

de estos recursos tan sencillos puede provocar un difícil acceso a la información por parte de otros

funcionarios, sin duda, estos procesos pueden ser mejorados y optimizados centralizando esta

información en una única plataforma que le permita el acceso a los usuarios de cada uno de los

funcionarios de la compañía.

Grupo TX en Colombia es una empresa que está distribuida geográficamente en varias sedes

a lo largo del territorio nacional, por ende requiere mantener un canal directo de comunicación

entre sus diferentes oficinas, la interacción de todos los funcionarios por medio de una misma

plataforma para llevar a cabo trámites y procedimientos relacionados con la gestión del talento

humano de la empresa. Esto se logra mediante la implementación de nuevas tecnologías web y

el uso de motores de bases de datos para el sostenimiento de la información, es por eso que por

medio de este proyecto se ha buscado solucionar los baches en la administración de los recursos,

modernizar el acceso y control de la información. Actualizar las tecnologías que controlan la

información repercute positivamente desde el punto de vista de ahorro de recursos y tiempo,

incluso permitiendo generación de estadísticas e informes a manera de reportes.

El hecho de manejar la información de los empleados y de todo lo que tiene que ver con los

recursos humanos de la empresa por medio de una herramienta web conectada a una base de

datos relacional que permita administrar cada uno de los trámites y procedimientos, trae consigo

un gran número de ventajas que soportan los fines primordiales planteados en este proyecto.

Primero se garantiza la consistencia de los datos que se manejan, la información no se pierde, por

el contrario, se administra; por otro lado existe la ventaja referente al fácil acceso a los datos que

requiera cualquier tipo de usuario del sistema, adicional a esto se tiene que dicha información

podrá ser accedida desde cualquier parte gracias a que se trata de una herramienta web que

puede ser utilizada desde cualquier explorador, lo único que se debe tener es acceso a internet.

Adicionalmente, se tiene que el hecho de sistematizar la información, garantiza que los datos

sean accedidos de manera segura gracias a la configuración del sistema que define el control

de acceso al mismo, así como la ventaja de no tener que archivar físicamente la documentación

de los empleados, evitando de esta manera pérdidas innecesarias de información, disminución

de espacio físico en las oficinas de recursos humanos, y mermando la probabilidad de que los

datos que se manejan no sean los correctos. Los tiempos de respuesta disminuyen, la eficiencia en

los procedimientos de la empresa aumentan, el costo se disminuye y la productividad aumenta

considerablemente.

10

CA

TU

LO

4OBJETIVOS

4.1 Objetivo General

Analizar, disenar y desarrollar un prototipo funcional de un sistema de información en plataforma

web, que administra y centraliza de manera eficiente la información de todos los empleados de la

empresa Grupo TX Colombia, para proporcionar un apoyo de gestión del personal, y que a su vez

agilice los trámites y procedimientos cotidianos que se encuentran relacionados con el área de

recursos humanos de la empresa.

4.2 Objetivos Específicos

• Diseñar y desarrollar un prototipo que le permita a los funcionarios de Grupo TX interactuar

de manera eficiente con la oficina central de recursos humanos para realizar trámites y

procedimientos importantes para los mismos.

• Gestionar de manera adecuada la información de los empleados que han tenido o tienen un

vínculo contractual con la empresa, de tal manera que se pueda utilizar dicha información

en un determinado momento.

• Proporcionar una plataforma web que apoye la gestión del personal de Grupo TX Colombia,

reemplazando el uso de métodos tradicionales para archivar la información por funcionali-

dades adaptadas a las necesidades propias del área de recursos humanos de la empresa.

• Brindar a los usuarios una interfaz de usuario amigable y de fácil entendimiento, que

garantice la comprensión de la funcionalidad general del sistema, y a su vez describa de

11

CAPÍTULO 4. OBJETIVOS

forma clara los pasos a seguir para llevar a cabo un trámite o procedimiento relacionado

con el área de recursos humanos.

• Utilizar tecnologías actuales para llevar a cabo el desarrollo del prototipo, definiendo de esta

manera una arquitectura general del sistema que soporte cada uno de los requerimientos

especificados durante la etapa de análisis del proyecto.

• Facilitar a los funcionarios encargados de efectuar la gerencia del talento humano de la

empresa la realización de trámites y procedimientos de su área, garantizando la disminución

del tiempo de respuesta de dichos procesos con relación a la actualidad.

12

CA

TU

LO

5DELIMITACIÓN

5.1 Alcances

El alcance definido para este proyecto fue:

• Realizar un análisis de las necesidades que existen actualmente en cuanto a la gestión

de los recursos humanos en la empresa, haciendo uso de técnicas ingenieriles para llevar

a cabo el correspondiente levantamiento de información, de tal manera que sea posible

determinar los puntos críticos y las mejores soluciones a dichos problemas. Para dicho

análisis se contó con la intervención de funcionarios del área administrativa, gerencial y de

recursos humanos de grupo TX, se seleccionaron al azar algunos funcionarios de diferentes

áreas, para poder determinar de qué manera se presenta el problema descrito en el presente

proyecto y cuál sería la solución óptima.

• Realizar encuestas a diferentes funcionarios de la compañía para comprender de manera

más específica cómo se debería diseñar y desarrollar esta herramienta web, con el fin

de garantizar la usabilidad de la misma, utilizando un entorno gráfico amigable para el

usuario y al mismo tiempo que se trate de una plataforma funcional y eficiente.

• Hallar una serie de mejoras necesarias para aumentar los niveles de eficiencia en los

procesos de gestión de personal en una empresa como Grupo TX, de tal manera que se

actualicen los medios que se utilizan hoy en día en esta entidad y reemplazarlos por un

sistema de información que permita agilizar considerablemente trámites y procedimientos

del área de recursos humanos.

• Controlar el acceso a las diferentes funcionalidades del prototipo, por medio de la gestión

de roles y permisos según las necesidades de cada actor del sistema. De esta manera cada

13

CAPÍTULO 5. DELIMITACIÓN

usuario tiene control sobre permisos de otros según la configuración jerárquica de los distin-

tos roles establecidos en el sistema de información; controlando el correcto funcionamiento

de los distintos procesos realizados en la plataforma y garantizando la consistencia de la

información.

• Contar con un módulo que permita efectuar el registro de los diferentes empleados de la

compañía, así como gestionar la correspondiente creación de los usuarios asignados a dichos

funcionarios para tener acceso al sistema.

• Desarrollar un módulo de configuraciones generales, pudiendo así realizar la creación y

autorización de usuarios existentes por parte de administradores del sistema que cuenten

con este permiso.

• Llevar a cabo la configuración general del sistema, es decir, controlar por medio de parámet-

ros las variables globales de la plataforma dependiendo de las necesidades de la empresa

en determinado instante de tiempo. Contar con una serie de funcionalidades orientadas

hacia la ampliación de los servicios que ofrece el prototipo propuesto.

• Permitir la creación, edición y eliminación de los conceptos que hacen parte de la nómina

de los empleados.

• Permitir la configuración de los textos que componen los diferentes tipos de contratos

laborales que se generan para cada empleado.

• Posibilitar la administración de los funcionarios de la empresa en Colombia, pudiendo así

registrar y gestionar la información básica de los mismos, así como documentación física

digitalizada por medio de la plataforma.

• Crear contratos laborales a los diferentes empleados de la empresa, así como la corrección

y anulación de los mismos.

• Registrar y administrar en el sistema de información los pagos realizados por nómina a los

diferentes empleados, de tal manera que se evidencie detalladamente dichos desembolsos

según los diferentes conceptos manejados en la compañía.

• Realizar solicitudes de documentos por parte de los diferentes funcionarios de la empresa

haciendo uso del internet desde cualquier ubicación geográfica. Dichos documentos pueden

ser descargados de manera automática por medio de la plataforma o deben ser previamente

aprobados y autorizados por un funcionario de recursos humanos, por tanto el sistema

soporta los trámites y las aprobaciones teniendo en cuenta los tiempos de las solicitudes y

procedimientos establecidos por Grupo TX.

• Gestionar las faltas disciplinarias de los empleados, por medio del registro de memorandos,

llamados de atención y sanciones.

14

5.2. LIMITACIONES

• Gestionar la información concerniente a la hoja de vida de los empleados por medio de un

formato definido por la propia empresa, de tal manera que se guarde la información de

los funcionarios con la que se postularon al cargo que ocupan en la actualidad. Así mismo,

dicha información puede ser actualizada por los usuarios.

• Hacer efectivas las culminaciones de los contratos laborales, bien sea por despido o por

renuncia del empleado. Registrar los eventos que conllevan a la anulación de un contrato

laboral, y el registro digitalizado de los documentos que soportan dichos procedimientos.

• Soportar la creación de contratos laborales bien sea por prestación de servicios, contrato a

término fijo o indefinido. Dichos contratos se realizan de acuerdo a las políticas establecidas

por la empresa y redactados bajo las condiciones definidas por el empleador.

• Registrar las ausencias de los empleados por bajas de enfermedad que se presenten en un

momento determinado.

• Realizar consultas sobre datos específicos que se requieran en un determinado momento.

Por tanto, es posible desarrollar en una misma funcionalidad diferentes reportes en los

distintos formatos solicitados por Grupo TX. Apoyando así con la toma de decisiones sobre

el área de recursos humanos.

5.2 Limitaciones

Las limitaciones que se tuvieron en cuenta en este proyecto fueron:

• Por políticas de la empresa no es posible acceder completamente a la información que se

maneja en el área de recursos humanos, los datos suministrados no son cien por ciento

fieles a la realidad. Por ende, los resultados dependen directamente de la calidad de los

datos suministrados durante la etapa de análisis del proyecto.

• A pesar de que la empresa cuenta con empleados a lo largo de todo el país, la recolección

de datos se efectuará únicamente con algunos funcionarios de la oficina principal ubicada

en la ciudad de Bogotá, esto teniendo en cuenta que es en dónde se encuentra ubicada la

oficina central de recursos humanos.

• Los roles y permisos se establecen únicamente para dos tipos de usuarios, que comprenden

al administrador del sistema o jefe de recursos humanos y al usuario público o funcionario

de la empresa.

• Como se trata de un proyecto académico, la información referente a los distintos empleados

y proveedores no es real, son datos ficticios utilizados para emular el funcionamiento de la

aplicación a nivel empresarial.

15

CAPÍTULO 5. DELIMITACIÓN

• El único usuario capaz de gestionar los demás usuarios del sistema es el usuario admin-

istrador.

• La configuración del sistema se enfoca en la edición de variables globales, textos de los

contratos laborales, parámetros generales del sistema, firmas de reportes y administración

de usuarios del sistema.

• Los logos, firmas y formatos definidos para la creación de los diferentes reportes emitidos

por el sistema se hacen a nivel académico, por tanto no tienen relación con la realidad de la

empresa en estudio.

• El sistema no calcula la nómina de los empleados, sino que sirve como un apoyo a los

funcionarios de recursos humanos para llevar a cabo el registro de la misma, para mantener

un control sobre dicha información.

• Los documentos que pueden ser solicitados por parte de los diferentes usuarios de la

empresa son únicamente desprendibles de nómina, contratos laborales, certificaciones

laborales, permisos laborales y certificados de vacaciones.

• Los reportes estadísticos que se desarrollaron están sujetos a las necesidades de Grupo TX,

pero por tratarse de un proyecto estrictamente académico, únicamente se tienen en cuenta

reportes estadísticos referentes al módulo de Gestión de Personal.

• Todas las herramientas informáticas utilizadas para llevar a cabo el diseño y desarrollo del

proyecto cuentan con el esquema de software libre.

• El lenguaje de programación que fue utilizado para realizar el desarrollo de la aplicación es

JAVA; en la parte de la presentación se utilizó Java Server Faces (JSF), y en la lógica del

negocio Enterprise Java Beans (EJB).

• En la parte de persistencia se utiliza el motor de base de datos PostgreSQL.

• Para la realización del proyecto planteado se destinó un total de seis meses, tiempo en el

cual se llevó a cabo el diseño y desarrollo del prototipo, junto con la socialización del mismo.

16

CA

TU

LO

6MARCO REFERENCIAL

6.1 Estado del Arte

6.1.1 Antecedentes Globales

En el mercado existen numerosas soluciones tecnológicas que se enfocan en satisfacer las necesi-

dades de las empresas que buscan mejorar la manera en que de su información es organizada,

bien sea el manejo de nómina u otros aspectos administrativos vitales para la misma. Estas

soluciones pueden ajustarse a algunas necesidades básicas pero no a todas en conjunto, en

ocasiones es necesario utilizar varias aplicaciones simultáneamente para obtener un resultado

esperado, esto hace que a largo plazo los costos de la compañía aumenten considerablemente si

se compara con una solución hecha a la medida de las necesidades de la empresa.

La mayoría de las soluciones en el mercado se presentan a manera de software de escrito-

rio para ser instalado en equipos para administradores y ofrecen paquetes de herramientas

preestablecidas dependiendo de los pagos realizados, estos programas conocidos como software

para control de nómina o de contabilidad. En Colombia existen empresas que proporcionan

estos recursos, tales como Ziur Software (http://www.ziursoftware.com/, Ziur Software), Xeo

Software (http://www.xeo.com.co, Xeo Software), TNS Software (http://www.tns-software.com/,

TNS Software), Nubox (http://www.nubox.com.co/Nubox), entre otros, los cuales cuentan con

productos que aportan soluciones empresariales dependiendo de las necesidades de las entidades

interesadas.

Algunas empresas optan por usar programa básicos para administrar la información y no

sienten la necesidad de adquirir o invertir en herramientas mejores, esto debido a que dichas

aplicaciones logran satisfacer algunas de sus necesidades aunque de manera rudimentaria, sin

embargo no explotan completamente la información que manejan, alguna se pierde o se vuelve

17

CAPÍTULO 6. MARCO REFERENCIAL

difícil de administrar, es por eso que surge la necesidad de centralizar en una misma plataforma

todos estos datos, es así como queremos brindar un cambio para los procesos de la empresa Grupo

TX.

El software de escritorio que se ofrece en el mercado, tiene el problema de funcionar ex-

clusivamente en una sola estación de trabajo, en cambio el hecho de crear una aplicación que

se pueda acceder desde la web garantiza que cada empleado pueda hacer uso del aplicativo

desde cualquier ubicación geográfica. En Colombia las soluciones empresariales que se diseñan

a la medida de las necesidades de una entidad llegan a ser muy costosas y consumir mucho

tiempo de implementación, dependiendo de la empresa desarrolladora y de la inversión hecha

por la empresa, esto contribuye a generar un alto grado de desinterés para hacer dichos gastos y

continuar con los recursos que les han funcionado hasta el momento.

6.1.1.1 Ziur Software

Ziur busca ser lo que las compañías buscan ofreciendo múltiples herramientas de administración,

ofrece la posibilidad de acceder a esta mediante diferentes dispositivos ya que cuenta con un

panel web, lo que la hace multiplataforma y fácil de acceder. Uno de sus principales productos

es el análisis de la información mediante minería de datos, y la posibilidad de disponer de los

resultados de manera online pero con la seguridad necesaria para que esta no se filtre. Tiene

herramientas que le permiten hacer uso de documentos para presentar o guardar los datos que

solicita el usuario.

6.1.1.2 Xeo Software

Esta herramienta está diseñada para proveer gran cantidad de recursos administrativos para las

empresas que requieren hacer análisis de sus datos y tomar decisiones en base a estos, entre los

que se mencionan tenemos:

• Contabilidad PCGA

• Conciliación Bancaria

• Contabilidad NIIF

• Activos Fijos

• Control y Ejecución de Presupuestos

• Cuentas por Cobrar

• Cuentas por Pagar

• Información exógena DIAN

18

6.2. MARCO TEÓRICO

• Informe Gerencial

• Portal Web

• Centro Comercial

6.1.1.3 Flujo de Caja en Excel

Al ligarse a formas sencillas de administración cae en el problema básico, el que más conoce

y entiende el archivo en el que se trabajó la información es quien ha creado dicho documento,

es decir, si se cambia de encargado se presenta un problema de desorden de información o

desinformación. Microsoft Excel facilita el uso de hojas de cálculo y herramientas de análisis

para el seguimiento a presupuestos y distintos datos (Microsoft Office, 2015), para los cuales se

encuentra gran cantidad de información referente a plantillas y posibles soluciones a diferentes

casos de contabilidad.

6.2 Marco Teórico

6.2.1 Recursos Humanos

El área de recursos humanos se refiere a la administración, control o gestión del personal de

la empresa, además de los recursos y la relación de la empresa con cada trabajador. Es común

encontrar en esta área los formatos de contratación, de permisos, de pagos, etc., es por eso que los

funcionarios se refieren a esta sección de la empresa para realizar cualquier trámite que tenga

relación con su vínculo con la empresa. En algunos casos es común también el control de recursos

económicos que tienen que ver con los pagos de los empleados, por esto se pueden hacer control

de historial de pagos y manejo de cartera desde esta área.

6.2.2 Arquitectura de Cliente-Servidor Mediante 3 Capas

Este modelo surge al poner un paso intermedio en la arquitectura de dos capas, este contiene

la lógica de la aplicación, dejando así una capa para la presentación y otra para la persistencia,

este modelo proporciona ventajas de seguridad separadas y de distribución del impacto que se

presentaba en las arquitecturas anteriores a esta. Hacer esta separación trae como ventaja una

mayor facilidad de mantenimiento y la posibilidad de aplicar diferentes tecnologías que posibiliten

diferentes funciones adicionales, esto implica que no importa el modelo de programación que se

use, la flexibilidad de los paradigmas existentes permite gran variedad de formas de comunicación

con la capa de persistencia. La capa de presentación es la que mostrará la respuesta al usuario,

así mismo es la que le proporciona las funcionalidades para poder obtener los datos de la capa

de persistencia, por esto esta debe tener la comunicación con la capa que contiene la lógica de

negocio.

19

CAPÍTULO 6. MARCO REFERENCIAL

6.2.3 Patrón de Diseño Modelo - Vista - Controlador (MVC)

Este patrón busca separar el modelo u objetos de negocio, la vista o la interfaz gráfica y el

controlador (flujo de trabajo) de la aplicación. El modelo encapsula la aplicación o el dominio de

ella y contiene el núcleo de la funcionalidad, la vista ofrece el acceso al modelo pero no puede

cambiar su estado, es decir, recibe información relevante de este y el controlador es el que dirige

y reacciona a la petición del cliente. En su funcionamiento se puede denotar que lo hace con

base a petición/respuesta, en la que la petición se hace al controlador, este accede al modelo y el

resultado se refleja en la vista, lo cual es muy utilizado en desarrollos para páginas web para

evitar el uso de funciones indebidas en secciones del código que no corresponde como consultas a

la base de datos sin control alguno dejado como consecuencia un código difícil de mantener.

6.2.4 Lenguaje de Programación Java

Creado por Sun Microsystems en 1995 es un lenguaje de programación de alto nivel que permite

el desarrollo multiplataforma, esto le ha permitido expandirse y abarcar sistemas que van desde

aplicaciones hasta juegos y plataformas de dispositivos móviles, sus principales características

son:

• A diferencia de otros lenguajes Java trabaja nativamente con Objetos, en la que las declara-

ciones y la estructura de su sintaxis mediante instanciaciones es propia de POO.

• Java que proviene de C++ mantiene varias de sus características, y agrega otras que lo

hace más flexible, un ejemplo de esto es el tipo booleano que no aparece en C++.

• El objeto matriz en cada elemento de la misma hace referencia a otro objeto, y así mismo si

es una de tipo multidimensional esta apunta a otras de tipo matriz.

• Java requiere para su correcto funcionamiento que el sistema cuente con su propia máquina

virtual, esto ya que es en este núcleo donde se ejecutan e interpretan los códigos y funciones

de java.

6.2.5 Java Persistence Api (JPA)

Framework hecho para las ediciones estándar de java, que permite mantener las ventajas del

paradigma de orientación a objetos mientras se interactúa con la base de datos mediante el

mapeo objeto-relacional. El conjunto de datos relacionados entre sí en la base de datos pueden

formar una entidad que puede representarse mediante meta data en un fichero descriptivo XML,

a su vez estas entidades pueden tener relaciones entre sí a manera de herencia.

20

6.2. MARCO TEÓRICO

6.2.6 Hibernate

Uno de los frameworks más conocidos y sólidos de java, el cual agiliza la relación entre la

aplicación y la base de datos mediante el mapeo de objeto - relacional (ORM), dicho mapeo se

refiere al acceso a la base de datos de manera personalizada y dinámica permitiendo que la

creación, consulta y modificación de objetos se haga de forma automática cuando las consultas

no son especiales. Hibernate facilita el mapeo de los atributos de una base de datos relacional

tradicional y el modelo de objetos de la aplicación, en que básicamente un atributo de una clase

es una columna de una tabla, esto implica el uso de archivos declarativos XML o el uso de

anotaciones en los beans de página para especificar la relación entre la base de datos y el modelo

de la aplicación.

6.2.7 Java Message Service (JMS)

Este complemento para las tecnologías de java permite a los componentes de la aplicación

comunicarse mediante la creación, recepción y envío de mensajes. La comunicación se hace entre

objetos administrativos, estos son las interfaces implementadas para el uso de sus propiedades,

estos contienen las instrucciones para interpretar los mensajes y al mismo tiempo definen la

estructura que estos llevaran.

6.2.8 Java Server Pages (JSP)

Esta tecnología permite la edición dinámica de páginas web, donde el diseño final depende de la

información suministrada, es decir, puede variar por ejemplo dependiendo del usuario, donde la

información que este verá es la relevante para el mismo, con esto se puede decir que la página

no está previamente creada o no está en el servidor, esta se obtiene como una respuesta a una

petición.

6.2.9 PrimeFaces

Desarrollada y creada por la compañía Turca Prime Technology (http://www.prime.com.tr, Prime

Technology) son librerías de complementos visuales JSF de código abierto, entre sus principales

características están:

• Soporta Ajax nativamente (https://www.dmoz.org/, Ajax).

• Contiene herramientas para el desarrollo de aplicaciones móviles.

• Es compatible con librerías adicionales como JBoss RichFaces . (http://richfaces.jboss.org,

JBoss RichFaces).

• Es open source, estable entre versiones y de evolución constante.

21

CAPÍTULO 6. MARCO REFERENCIAL

6.2.10 Enterprise Java Bean EJB

Un EJB agrupa funcionalidades para una aplicación, a las cuales no podemos acceder directa-

mente sino que se requiere un intermediario, estos a su vez disponen de lo que sería una de

las ventajas de usar EJB que son los servicios, estos pueden ser llamados en casos de eventos

importantes e incluso en caso de errores como camino de contención.

6.2.11 Hoja de Estilos en Cascada (CSS)

Cascading Style Sheets o en español hoja de estilo en cascada es una tecnología que permite

obtener mejores resultados en la presentación de una página web, ya que proporciona mejores

estilos de letra, fondos, márgenes, tipos de letra, colores, etc. CSS se usa de manera que las

etiquetas HTML puedan hacer uso de los estilos definidos en el archivo CSS cómo sería su correcta

utilización, otra manera puede ser por ejemplo definir qué aspecto tienen todas las etiquetas web

<H1> de una página en lugar de decir una por una como debería quedar, esto se puede aplicar de

igual forma a diversos componentes de la página.

6.2.12 Lenguaje Unificado de Modelado UML

En el desarrollo de cualquier sistema se deben seguir unos planos iniciales preestablecidos para

que el resultado sea el esperado, se puede decir que UML son los diseños y explicaciones de un

software que será desarrollado a partir de dichos esquemas. El objetivo de este modelamiento es

lograr la independencia del lenguaje de programación y de los diseños originales, es decir, que no

debe importar en qué tecnología será implementado, el resultado debe ser el mismo, cabe decir

que su mayor uso se da en lenguajes que son orientados a objetos.

UML es además usado como un método formal de presentación de propuestas y diseños, y

cuenta con algunas ventajas como:

• Se crea un esquema riguroso que permite saber cuál es el diseño a seguir para evitar

caminos erróneos.

• Gracias a la creación del modelo se pueden hacer verificaciones de los procesos y sus

correctos resultados.

• Algunas herramientas de diseño avanzado permite la generación del código a partir del

modelo, lo cual puede ahorrar en gran medida el trabajo a realizar.

6.2.13 Diagrama de Clases

Este es uno de los diagramas más comunes a la hora de diseñar sistemas orientados a objetos,

como su nombre lo indica abarca las clases del modelo además de sus atributos, funciones y

relaciones entre sí. Este diagrama es estático ya que representa las características de las clases y

22

6.2. MARCO TEÓRICO

sus respectivas funciones pero no se indica cómo interactúa con otra clase, y a su vez se especifican

detalles como la cardinalidad, herencia, interfaces, entre otros.

6.2.14 Diagrama de Casos de Uso

Como su nombre lo indica este representa gráficamente los casos de uso de un sistema, es

decir, cuales son las respuestas del sistema ante determinados eventos que inicialmente serán

controlados por actores, así mismo, se puede especificar cuáles son las funciones y limitaciones

para determinado usuario, en este orden de ideas se puede inferir que este diseño solo muestra lo

que puede hacer el sistema pero no como lo hace.

6.2.15 Sistemas Manejadores de Bases de Datos (SGBD)

Database Management System (DBMS) o en español sistemas manejadores de bases de datos

(SGBD), sirven principalmente como interfaz con la que el usuario o una aplicación puede

interactuar con la base de datos, su propósito principal es proveer las herramientas necesarias

para la consulta de información de manera clara y eficiente. El uso de estos sistemas es hoy en

día muy importante para compañías que proveen servicios en internet, esto ya que la mayoría de

los motores proveen ventajas significativas como son:

• Mantener un enlace seguro a la base de datos que permita el acceso rápido y seguro con

respuestas en función de la cantidad de datos.

• Control y distribución de datos de acuerdo a la cantidad de peticiones de usuario.

• Mantener un historial de cambios y procesos realizados sobre la base de datos.

• La posibilidad de hacer respaldos de información y recuperación de la misma.

Con el creciente mercado de posibilidades tecnológicas estos sistemas han tenido expandir sus

horizontes y se han adaptado para atacar un problema de almacenamiento de datos dependiendo

del enfoque de la aplicación que lo requiere.

6.2.16 Modelo Relacional

Este constituye el siguiente paso a un modelo Entidad - Relación en el que el diagrama pasa

a ser explicito gracias a que mediante álgebra relacional pasan a crearse las tablas que se

implementaran en la base de datos, posteriormente se puede aplicar normalización de tablas lo

cual tiene como objetivo crear un modelo óptimo.

Aunque las entidades son las tablas del modelo, algunas relaciones pueden ser también tablas,

estas por lo general suelen ser de muchos a muchos en el diagrama de Entidad-Relación y los

atributos de dichas tablas pasan a ser las columnas de la misma. Las cardinalidades se controlan

mediante el uso de llaves, en el que el lado n de la relación pasa como llave foránea al lado 1.

23

CAPÍTULO 6. MARCO REFERENCIAL

6.2.17 Metodología SCRUM

Es una metodología ágil de desarrollo de software (http://www.lostiemposcambian.com/blog/

metodologia-de-trabajo/scrum-desarrollo-agil/, SCRUM Metodología de Desarrollo de Software

Ágil) que tiene como principal objetivo hacer el máximo posible de retorno de inversión para

la empresa, en donde lo importante es la creación prioritaria de funcionalidades que se deben

poner a funcionar, la necesidad más fuerte de esta metodología es lograr la retroalimentación del

trabajo, esto lo hace gracias a las reuniones periódicas que buscan analizar y atacar los problemas

de mayor peso.

FIGURA 6.1. Metodología Scrum. Imagen tomada de [21].

6.2.18 Metodología Kanban

Este modelo de trabajo se enfoca en la entrega oportuna del trabajo, y así mismo evitar la

sobrecarga de los miembros del equipo mediante la asignación de tareas en una cola, eso evita que

un solo desarrollador no realice varía tareas al mismo tiempo. El método Kanban se representa

normalmente con cartas de trabajo donde estas son las tareas asignadas a los miembros del

equipo, esto es una ventaja ya que gráficamente se puede ver que roles tiene cada uno y la tarea

que se encuentra realizando.

24

6.2. MARCO TEÓRICO

6.2.19 Metodología ScrumBan

Esta metodología combina los métodos de gestión de procesos más conocidos de la actualidad,

Scrum y Kanban. Los métodos aunque similares en algunos aspectos tienen diferencias que

aportan diferentes ventajas a la hora de desarrollar un proyecto, Scrumban se encarga de hacer

uso de las fortalezas de cada enfoque, la forma más conocida es la pre visualización de las tareas

a realizar mediante Scrum y la gestión de errores mediante Kanban.

Entre sus ventajas se pueden apreciar:

• Se puede ver en todo momento en qué estado se encuentra el desarrollo del proyecto

• Mediante los casos de pruebas y evaluaciones se pueden tener soluciones a tiempo de

errores de desarrollo.

• Las tareas a realizar serán resultado de un mejor análisis por parte del equipo.

• Gracias a las reuniones periódicas se crea una mayor interacción entre los miembros del

equipo.

• Existen excelentes herramientas que permiten la gestión de este tipo de metodologías.

25

CA

TU

LO

7METODOLOGÍA DE LA INGENIERÍA DEL PROYECTO

Teniendo en cuenta que el equipo de trabajo que se conformó para llevar a cabo la con-

strucción del prototipo planteado está compuesto por pocos integrantes, que los tiempos

estimados para la finalización y sustentación del proyecto fueron relativamente cortos,

y que a esto se sumó la necesidad de dividir la aplicación en diferentes módulos, fue necesario

definir una metodología ágil que permitiera cumplir los objetivos planteados en el tiempo que se

destinó, que a su vez ayude a la constante mejora del producto con el paso del tiempo, garantice

la calidad del entregable y asegure la interacción constante de todos los miembros del equipo de

trabajo.

Por un lado se estudió la posibilidad de elegir la metodología Scrum para afrontar el desarrollo

del prototipo planteado. Esta metodología ágil tiene ventajas que se adaptan a las necesidades de

este proyecto; primero que todo la velocidad de desarrollo aumenta considerablemente gracias a la

facilidad de planear las tareas que se van a realizar por medio de los denominados “Sprints”,

se atacan todos los requerimientos del proyecto en diferentes etapas gracias a que se trata de

un modelo iterativo, brindando así la posibilidad de retroalimentar el desarrollo que se hace en

cada iteración y a su vez garantizando la entrega secuencial del producto al final de cada etapa.

Además, Scrum es una metodología que ofrece flexibilidad de trabajo a todos los miembros del

equipo, funciona perfectamente en grupos de trabajo pequeños y permite definir roles dentro del

equipo para garantizar las funciones principales de cada uno.

Por otro lado, existe una metodología ágil de la cual se obtuvieron grandes ventajas que se

aplicaron en el proyecto en curso, se trata de Kanban. Esta metodología de desarrollo se destaca

por la flexibilidad que ofrece para priorizar las diferentes actividades en determinado momento,

así como por el control y visualización de las tareas que se están realizando gracias a que se

define un flujo de trabajo concreto para el desarrollo de cada una, la facilidad para aplicarla en

27

CAPÍTULO 7. METODOLOGÍA DE LA INGENIERÍA DEL PROYECTO

equipos de trabajo que no cuenten con experiencia en metodologías ágiles, se acopla a grupos

de trabajo conformados por pocos integrantes, asegura la comunicación e interacción entre los

diferentes miembros del equipo y además garantiza la calidad del producto gracias al flujo de

trabajo que se define para cada actividad.

No obstante, debido a que ambas metodologías de trabajo ofrecen ventajas que indiscutible-

mente benefician el desarrollo del proyecto en diferentes aspectos, se ha optado por escoger una

metodología ágil que fusione las características de estas dos, ofreciendo así la posibilidad de

contar con la planeación y velocidad de Scrum, junto a la flexibilidad y facilidad para trabajar

de Kanban. Dicha metodología se denomina ScrumBan, y se fundamenta básicamente en la

aplicación de las prácticas del método Kanban sobre Scrum.

Este modelo ofrece al equipo de desarrollo la facilidad para retroalimentar los requisitos

establecidos por el cliente durante el ciclo de vida de la construcción del software, por ende la

gran ventaja que trae consigo es que se podrán encontrar y solucionar falencias durante la etapa

de desarrollo cada vez que se finalice una iteración. Por otro lado, gracias a que se trata de una

metodología que se fundamenta en la generación de iteraciones de trabajo, la interacción con el

cliente (Grupo TX) no tuvo que realizarse de manera constante, sino cada vez que finalizó un

Sprint, ahorrando así en tiempos y recursos. Además de esto, este modelo tiene la ventaja de

optimizar la relación costo / beneficio en cuanto a los recursos que se le invierten en el proyecto,

puesto que se puede ir controlando y gerenciando el proyecto por etapas, garantizando así que se

haga lo que se propone por iteración de manera eficaz y con buena calidad.

Debido a que el desarrollo del proyecto se realizó con base a una metodología cuya esencia es

Scrum, fue necesario definir los roles de los integrantes del equipo de trabajo, la pila del producto

a construir y los Sprints que se plantean inicialmente para abarcar las diferentes fases del trabajo

de desarrollo. Por otro lado, como se van a adoptar prácticas de Kanban sobre la metodología

Scrum, se requiere definir el flujo de trabajo que se le implantarán a las actividades a realizar

durante cada uno de los Sprints.

7.1 Definición de Roles

Los roles definidos para realizar este proyecto quedaron de la siguiente manera:

• Scrum Master: Jonatan Alexander Méndez

• Dueño del Producto: Erick Alexander Carvajal

• Grupo de Desarrollo: Jonatan Alexander Méndez y Erick Alexander Carvajal

Los Sprints irán avanzando con el paso del tiempo gracias al apoyo de los roles definidos

anteriormente, cada uno de estos integrantes cumplirá con las funciones correspondientes, que

pueden ser detalladas más a fondo en el marco teórico del presente documento.

28

7.2. PILA DEL PRODUCTO

7.2 Pila del Producto

Para llevar a cabo una selección y priorización general de las diferentes etapas del proyecto,

se creó un prototipo de pila del producto en donde se detallan a grandes rasgos los diferentes

procesos que deben ser ejecutados para alcanzar los objetivos planteados en este documento. Es

de notar que las actividades con mayor importancia se encuentran en la base de la pila, por tanto

deben ser desarrolladas antes que las situadas en la parte superior de la pila del producto, que

cuentan con menor prioridad.

Etapa del Proyecto

Módulo de Reportes Estadísticos

Módulo de Trámites y Procedimientos

Módulo de Gestión de Personal

Módulo de Configuración y Mantenimiento

Módulo de Control de Acceso y Registro

Carga Inicial de Datos

Creación de Base de Datos

Creación de Prototipos de Vistas

Prototipo Arquitectural Base

Diseño de la Arquitectura del Producto

TABLA 7.1. Prototipo de Pila del Producto. [9].

El cuadro anterior describe un prototipo inicial de pila del producto que se realizó, sin embargo

debido a la constante interacción con el cliente al final de cada uno de los Sprints, dicha pila

estuvo sujeta a cambios. Esto se debe a la retroalimentación y priorización de actividades con el

transcurso del tiempo.

7.3 Historias de Usuario de Cada Sprint

Fue necesario definir de manera detallada cuáles actividades de la Pila del Producto iban a ser

atacadas durante cada Sprint de trabajo, con el fin de realizar una estimación aproximada de

tiempos de desarrollo y entregas parciales del aplicativo (Ver Anexo 3). Se definieron las historias

de usuario de cada uno de los Sprints durante la etapa de desarrollo de la siguiente manera:

29

CAPÍTULO 7. METODOLOGÍA DE LA INGENIERÍA DEL PROYECTO

7.3.1 Primer Sprint

Durante esta etapa abarcaron los tres primeros puntos de la pila del producto (Ver Cuadro 1)

que se enfocan en el diseño arquitectural de la aplicación, crear un primer prototipo base y

crear los respectivos prototipos de vistas de usuario (Ver Anexo 3, primer Sprint). Con esto se

creó el esqueleto general de la aplicación web, se obtuvo una estructura base de la plataforma

que permitiera el desarrollo de los demás componentes del sistema. Adicionalmente durante

este periodo de tiempo se hizo el primer levantamiento de información por medio de reuniones

informales, encuestas y entrevistas con el cliente (Ver Anexo 1). Este sprint se ejecutó en un

tiempo de tres semanas. Las historias de usuario que se resolvieron durante este sprint fueron:

Número deHistoria Nombre de Historia

1 Establecer Repositorio y Entorno de Desarrollo

2 Realizar Métodos de Levantamiento de Información

3 Definición de Requerimientos

4 Especificación de Requisitos

5 Definición Bosquejo Interfáz de Usuarios

6 Creación Prototipo Arquitectural Base

TABLA 7.2. Historias de Usuario Primer Sprint. [9].

7.3.2 Segundo Sprint

Durante esta iteración del proyecto se cubrieron los puntos relacionados con la creación de la

base de datos del sistema y la carga inicial de datos (Ver Anexo 3, Segundo Sprint). Estas dos

etapas están relacionadas entre sí, ya que se sitúan específicamente en la capa de persistencia

de la aplicación, por esta razón se realizaron de manera conjunta. Se llevó a cabo el diseño

y desarrollo de la base de datos que soporta el sistema de información, junto con la primera

inserción de registros referente a la configuración inicial de la plataforma, creación de diagramas

de arquitectura, entidades y DAO’s a utilizar. El tiempo utilizado para este sprint fue de tres

semanas.

30

7.3. HISTORIAS DE USUARIO DE CADA SPRINT

Número deHistoria Nombre de Historia

7 Crear Diagramas Arquitecturales de Aplicación

8 Desarrollo de Plantillas de Aplicación - Creación Login Estético

9 Definir Reglas de Integridad de la base de datos

10 Crear DAO’s De las entidades

11 Crear Entidades del Proyecto

12 Crear Script Carga Inicial de Datos

13 Crear Script de Estructura

14 Crear diccionario de datos

15 Modelar Base de Datos del Sistema

TABLA 7.3. Historias de Usuario Segundo Sprint. [9].

7.3.3 Tercer Sprint

Durante el tercer sprint se realizó el diseño y desarrollo del primer módulo del aplicativo, referente

al control de acceso y registro (Ver Anexo 3, Tercer Sprint). Al finalizar de este sprint se entregaron

al cliente las primeras funcionalidades del sistema, con lo cual se obtuvo opiniones para realizar

mejoras al sistema durante las siguientes etapas del proyecto. Estas funcionalidades están

orientadas a sistematizar el control de acceso al aplicativo por parte de los diferentes usuarios

definidos para el sistema, creación y registro de usuarios y asociación de roles y permisos a los

mismos. El tiempo que se usó para resolver las historias de usuario de este sprint fue de tres

semanas. Las historias que se atacaron durante este periodo fueron:

Número deHistoria Nombre de Historia

16 Crear Login de Usuario

17 Funcionalidad Gestionar Usuario

18 Funcionalidad Gestionar Rol

19 Funcionalidad Recuperar Contraseña

TABLA 7.4. Historias de Usuario Tercer Sprint. [9].

31

CAPÍTULO 7. METODOLOGÍA DE LA INGENIERÍA DEL PROYECTO

7.3.4 Cuarto Sprint

Durante este sprint se atacó el módulo que concierne la configuración general del sistema. El

objetivo primordial de este sprint fue crear las diferentes funcionalidades que permitan a los

usuarios realizar la gestión y configuración de la plataforma de acuerdo a las necesidades del

cliente (Ver Anexo 3, Cuarto Sprint). El tiempo para su realización fue de tres semanas, y las

historias de usuario que se resolvieron son:

Número deHistoria Nombre de Historia

20 Funcionalidad Editar Usuario Propio

21 Funcionalidad Gestionar Parámetros Del Sistema

22 Funcionalidad Gestión de Contrato Laboral

23 Funcionalidad Gestión de Nómina

TABLA 7.5. Historias de Usuario Cuarto Sprint. [9].

7.3.5 Quinto Sprint

Se llevó a cabo el diseño y desarrollo del módulo de gestión de personal y de trámites de funcionar-

ios (Ver Anexo 3, Quinto Sprint). Con esto se puede decir que se entregaron las funcionalidades

primordiales del aplicativo, aquellas que puedan ser útiles en producción para el cliente, ya que

este módulo servirá para gestionar la información del personal de Grupo TX, afrontando así uno

de los puntos críticos del problema. Se destinó un total de cuatro semanas para completar este

sprint, y las historias de usuario que se resolvieron fueron las siguientes:

32

7.3. HISTORIAS DE USUARIO DE CADA SPRINT

Número deHistoria Nombre de Historia

24 Funcionalidad Gestionar Empleado

25 Funcionalidad Crear Contrato Laboral

26 Funcionalidad Anular Contrato Laboral

27 Funcionalidad Registrar Pago Nómina

28 Funcionalidad Corregir Pago Nómina

29 Funcionalidad Aprobar Solicitud Laboral

30 (Funcionarios) Funcionalidad Solicitudes Permisos Laborales

31 (Funcionarios) Funcionalidad Solicitudes Vacaciones

32 (Funcionarios) Funcionalidad Solicitudes Certificación Laboral

33 (Funcionarios) Funcionalidad Consultar Contratos Laborales

34 (Funcionarios) Funcionalidad Consultar Llamados de Atención

35 (Funcionarios) Funcionalidad Actualizar Hoja de Vida

36 (Funcionarios) Funcionalidad Consultar Pagos Nómina

37 Funcionalidad Ayuda del Sistema

38 Funcionalidad Notificaciones de Usuario

39 Funcionalidad Crear Memorando

TABLA 7.6. Historias de Usuario Quinto Sprint. [9].

7.3.6 Sexto Sprint

Durante este sprint se culminó el desarrollo del producto, teniendo en cuenta que se diseñó y

desarrolló el módulo de reportes estadísticos, junto con los procesos automatizados del sistema

para mantener la consistencia de la información (Ver Anexo 3, Sexto Sprint). Con esto se pudo

contar con funcionalidades que generen reportes y consultas sobre la información administrada

por el sistema de información, con miras a un apoyo a los funcionarios administrativos del sistema

para la toma de decisiones. Para este sprint se invirtió un total de tres semanas. Las historias de

usuario de este sprint son:

33

CAPÍTULO 7. METODOLOGÍA DE LA INGENIERÍA DEL PROYECTO

Número deHistoria Nombre de Historia

40 Funcionalidad Generar Reporte

41 Funcionalidad Consultar Reporte

42 Listener de Aplicación

TABLA 7.7. Historias de Usuario Sexto Sprint. [9].

7.4 Definición del Flujo de Trabajo Kanban

Teniendo en cuenta que la idea es optimizar el tiempo de desarrollo que se invierte en la

construcción del software, se utilizaron prácticas de la metodología Kanban sobre Scrum para

alcanzar los objetivos planteados en este proyecto, es decir el uso de metodología ScrumBan.

De esta manera fue posible ir visualizando en tiempo real todos los procesos y estados de las

actividades o historias de usuario que se plantean para cada iteración, además el trabajo que se

define para cada sprint es la cantidad exacta de lo que se va a producir. Kanban es un sistema

de gestión donde se produce exactamente aquella cantidad de trabajo que el sistema es capaz

de asumir. Así mismo, otra de las ventajas por la que se han adoptado prácticas del sistema

Kanban, es porque esta metodología permite definir un flujo de trabajo personalizado que se

adapte a las necesidades del proyecto para llevar a cabo las diferentes historias de usuario;

además esta metodología se acondiciona a cambios repentinos que puedan surgir en cualquier

momento, brindando la flexibilidad para priorizar tareas ante otras de menor importancia.

Se ha definido un flujo de trabajo para cada uno de los Sprints, de tal manera que se utilizó

una Pizarra Kanban por cada una de las iteraciones. El flujo de trabajo contempla seis estados

diferentes a los que se sometieron cada una de las historias de usuario que se desarrollaron (Ver

Anexo 2, TargetProcess):

• OPEN: Estado inicial de las actividades a realizar. Representa el BackLog de las historias

de usuario que se crean para cada iteración o sprint. Estas actividades únicamente podrán

ser cambiadas a estado TO DO.

• TO DO: En este estado se situarán aquellas historias de usuario que tienen mayor prioridad

para comenzar su desarrollo, por ende se puede definir como un BackLog prioritario de

las historias de usuario. En este estado se llevaran las actividades que previamente se

encontraban en estado OPEN, o aquellas que se encontraban en progreso o en pruebas y

por alguna razón tuvieron que ser devueltas, bien sea por priorización de otra actividad

o porque se encontró alguna falla en la etapa de pruebas. Si en dado caso la prioridad de

34

7.4. DEFINICIÓN DEL FLUJO DE TRABAJO KANBAN

una actividad situada en este estado baja, puede ser devuelta al estado OPEN sin ningún

problema, dándole prelación a otra de mayor importancia.

• IN PROGRESS: En este estado estarán situadas aquellas actividades que se encuentran

en etapa de desarrollo. Por tanto, las historias de usuario que se encuentran en progreso

únicamente pudieron haber sido traídas del estado TO DO o BackLog prioritario por la

persona encargada de realizar el correspondiente desarrollo.

• IN TESTING: Estado en donde se mostrarán las historias de usuario que ya han sido

desarrolladas y están listas para ser probadas. El desarrollador será el encargado de pasar

dichas actividades a este estado, con el fin de que la persona encargada de pruebas realice

las correspondientes observaciones y decida qué se debe hacer con dicho desarrollo, si darlo

como terminado y sacarlo a versión, o devolverlo al BackLog para que se le realicen los

ajustes correspondientes.

• BY VERSION: En este estado se situarán aquellas actividades que durante la fase de

pruebas dieron resultados satisfactorios, es decir que ya se encuentran listas para ser dadas

como terminadas en dicho sprint. El rol encargado de pasar las historias de usuario a BY

VERSION, es la persona encargada de realizar las pruebas correspondientes.

• DONE: Cuando las actividades han llegado a esta etapa del flujo de trabajo, quiere decir

que ya han sido aprobadas y terminadas en el sprint correspondiente. Por ende se sitúan en

DONE aquellas historias de usuario que representen requisitos que ya están desarrollados,

probados y finalizadas para el sprint correspondiente.

35

CAPÍTULO 7. METODOLOGÍA DE LA INGENIERÍA DEL PROYECTO

FIGURA 7.1. Flujo de Trabajo Kanban Definido para Cada Sprint.[9].

El equipo de trabajo que afrontó el desarrollo de este proyecto se limitó a dos personas, las

cuales se repartieron los roles según las historias de usuario definidas. Gracias a la flexibilidad

que ofrece Scrumban, fue posible intercambiar los papeles durante los diferentes estados definidos

en el flujo de trabajo, ofreciendo la posibilidad de ser desarrollador y encargado de pruebas al

mismo tiempo. Por tanto, si una historia de usuario está asignada a una persona para ser

desarrollada, el otro participante será el encargado de verificar y probar el desarrollo que se llevó

a cabo y viceversa. De esta manera se garantiza el aprendizaje conjunto en diferentes áreas y

etapas del proyecto, y a su vez la calidad del producto a entregar.

36

CA

TU

LO

8RECURSOS Y CRONOGRAMA

Fue necesario realizar una estimación del presupuesto que se destinó para llevar a cabo

este proyecto, teniendo en cuenta los tiempos pactados y los recursos que fueron utilizados

según lo planteado en el presente documento.

8.1 Recursos Físicos

En esta sección se describen todos aquellos recursos tangibles necesarios para desarrollar el

proyecto.

Nombre delRecurso

Descripción Cantidad Costo Total

Computador

Computadores necesarios para el proyecto.Uno para cada desarrollador, y uno paradesplegar la aplicación al momento de

llevar a cabo pruebas.

3 $ 4’800.000

Materialbibliográfico y

fotocopias

Incluye todos aquellos recursos obtenidosde bibliotecas para realizar consultas, asícomo aquellos materiales útiles para la

consolidación de los documentosentregables físicos.

- $ 120.000

TOTAL $ 4’920.000

TABLA 8.1. Recursos Físicos. [9].

37

CAPÍTULO 8. RECURSOS Y CRONOGRAMA

8.2 Recursos de Software

Estos recursos incluyen las licencias y aplicaciones que se requirieron para llevar a cabo el

desarrollo del prototipo (Ver Anexo 2).

Nombre delRecurso

Descripción Cantidad Costo Total

NetBeans IDE8.0.2 + JDK 7u80

Entorno de desarrollo integrado, utilizadopara el desarrollo de la capa de

presentación y lógica del negocio.2 $ 0

PostgreSQL +PgAdmin III

Software que permitirá desarrollar la capade persistencia de la aplicación. 2 $ 0

WildFly 8.1.Servidor de aplicaciones necesario para

desplegar el proyecto. 3 $ 0

iReport DesignerAplicación necesaria para llevar a cabo el

diseno de los reportes del proyecto. 2 $ 0

TortoiseSVNAplicación necesaria para gestionar elcontrol de versiones sobre el proyecto

desarrollado2 $ 0

Notepad++ 6.7.9.2.Aplicación que sirve como editor general de

textos para facilitar el trabajo de losdesarrolladores.

2 $ 0

LibreOffice 4.4.4.Suite de aplicaciones necesarias para

llevar a cabo la documentación del proyecto. 2 $ 0Enterprise

Architect Ediciónde Prueba (30 días)

Software necesario para diseñar el modelode la base de datos del sistema de

información2 $ 0

TOTAL $ 0

TABLA 8.2. Recursos de Software. [9].

8.3 Recursos Humanos

Este proyecto fue desarrollado por un total de dos personas, quienes invirtieron una cantidad de

tiempo determinada durante cada semana de trabajo, según los roles definidos en el presente

proyecto.

38

8.4. OTROS RECURSOS

Nombre delRecurso Rol Horas

Semanales Total Horas Costo PorHora Costo Total

EstudianteNo.1

Diseñador ydesarrollador.

48 768 $ 30.000 $ 23’040.000

EstudianteNo.2

Diseñador ydasarrollador.

48 768 $ 30.000 $ 23’040.000

TOTAL $ 46’080.000

TABLA 8.3. Recursos Humanos. [9].

8.4 Otros Recursos

En esta sección se describen aquellos recursos que se relacionan directamente que los proced-

imientos logísticos del proyecto.

Nombre delRecurso

Descripción Cantidad Costo Total

Transportes ysalidas de campo

Gastos varios que se generaron almomento de ir a la empresa (Grupo TX) arealizar levantamientos de información,

reuniones de equipo de trabajo.

- $ 260.000

Gastos varios eimprevistos

Gastos no planeados que surgierondurante el desarrollo del proyecto

- $ 200.000

TOTAL $ 460.000

TABLA 8.4. Otros Recursos Utilizados. [9].

8.5 Costo Total del Proyecto

TIPO DE RECURSO COSTO TOTAL (COP)

Recursos Físicos $ 4’920.000

Recursos de Software $ 0

Recursos Humanos $ 46’080.000

Otros Recursos $ 460.000

COSTO TOTAL PROYECTO $ 51’460.000

TABLA 8.5. Costo Total del Proyecto. [9].

39

CAPÍTULO 8. RECURSOS Y CRONOGRAMA

8.6 Cronograma

FIGURA 8.1. Cronograma del Proyecto.[9].

40

CA

TU

LO

9ANÁLISIS DE REQUERIMIENTOS

Lo primero que se realizó en este proyecto es el levantamiento de la información nece-

saria para comenzar con el modelamiento del sistema. Gracias a eso se detectaron los

requerimientos generales del sistema (Funcionales y No Funcionales), para poder realizar

un listado y priorización de las tareas que se ejecutaron durante cada uno de los Sprints. Esta

información se obtuvo gracias a la realización de charlas, encuestas (Ver Anexo 1) y reuniones con

personas que trabajan en la empresa y que tengan que ver con el manejo de los recursos humanos

de la misma; roles como el Administrador de Recursos Humanos y el Gerente de Tecnología

fueron muy importantes para culminar este punto del proyecto.

9.1 Requerimientos Funcionales

1. El sistema debe permitir el proceso de autenticación de usuarios y el despliegue de fun-

cionalidades de acuerdo a los roles del mismo, así mismo debe permitir que el usuario cierre

sesión mediante un botón.

2. El sistema debe permitir recuperar una contraseña olvidada por un usuario.

3. El sistema debe permitir consultar el histórico de pagos de nómina realizados al mismo, así

como imprimir desprendibles de nómina.

4. Por medio de la plataforma se podrá consultar los contratos laborales que el funcionario

tiene con la empresa, así como imprimir una copia de contratos laborales por parte de los

empleados.

41

CAPÍTULO 9. ANÁLISIS DE REQUERIMIENTOS

5. El sistema debe permitir la consulta del histórico de solicitudes de permisos laborales,

así como realizar nuevas solicitudes de permisos laborales. En caso de que las solicitudes

laborales se encuentren aprobadas, podrán ser impresas por el funcionario.

6. El sistema debe permitir la consulta del histórico de solicitudes de vacaciones, así como la

realización de nuevas solicitudes. En caso de que las solicitudes laborales se encuentren

aprobadas, podrán ser impresas por el usuario.

7. El sistema debe permitir que los funcionarios públicos consulten un histórico de solicitudes

de certificaciones laborales, así como la realización de nuevas solicitudes. En caso de que

dichas solicitudes se encuentren aprobadas, se deben poder descargar.

8. El sistema debe permitir la consulta del histórico de llamados de atención escritos, así como

la impresión de dicho soporte o documento.

9. El sistema debe permitir la actualización de la hoja de vida del usuario, y realizar la

impresión de la misma.

10. El sistema debe permitir la gestión de los empleados de la empresa, es decir que se

podrá llevar a cabo el registro de nuevos empleados, la consulta y edición de funcionarios

registrados en el sistema. Además se podrán cargar y consultar en el sistema documentos

personales digitalizados del empleado. Por otro lado se podrá consultar la hoja de vida del

empleado, contratos laborales, incapacidades laborales, pagos por nómina por parte del

Administración de Recursos Humanos.

11. Por medio del sistema se podrá crear un contrato laboral a un empleado; dicho contrato

puede ser a término indefinido, término fijo o por prestación de servicios a N cantidad

de meses. Se deben poder agregar cláusulas específicas para tipo de contrato, así como

imprimir dicho contrato laboral. Un funcionario NO podrá tener más de un contrato laboral

activo con la empresa.

12. El sistema deberá permitir anular contratos laborales, así como la impresión del mismo.

13. El sistema permitirá registrar las incapacidades laborales de los empleados, de tal manera

que se guarde el causal de dicha incapacidad, el periodo de incapacidad y el soporte médico

de dicha incapacidad.

14. Por medio del sistema se podrán realizar las correspondientes aprobaciones de documentos

solicitados por los empleados (Permisos laborales, Vacaciones y Certificaciones Laborales).

Se deben listar las solicitudes filtradas por fecha de registro y estado de la misma; el admin-

istrador aprobará o rechazará dicha solicitud junto con una correspondiente observación

del procedimiento. En caso de aprobarla, se podrá imprimir la misma.

42

9.1. REQUERIMIENTOS FUNCIONALES

15. Será posible registrar en el sistema de información el pago correspondiente al salario del

empleado por concepto de nómina, de tal manera que se evidencie detalladamente dichos

desembolsos según los diferentes conceptos manejados en la compañía

16. Será posible consultar y corregir un pago de nómina hacia un empleado, Además se podrá

imprimir el correspondiente desprendible.

17. Será posible generar reportes estadísticos acerca de la información gestionada por el

sistema de información. Los reportes a desarrollar serán: Reporte de Contratos Laborales

del Sistema y Reporte de Aprobaciones de Solicitudes.

18. Será posible la consulta y creación de nuevos usuarios en el sistema, y la asociación del

mismo a un empleado de la empresa, así como la designación de los roles correspondientes

para el nuevo usuario. Se debe notificar al funcionario por medio de correo electrónico, el

usuario y la contraseña, junto con su información personal.

19. Será posible editar los diferentes roles definidos en el sistema, agregando y desvinculando

permisos a funcionalidades del mismo.

20. El sistema permitirá la configuración de contratos laborales, de tal manera que se puedan

editar los textos que componen los tipos de contratos laborales que se generan para cada

empleado.

21. Por medio del aplicativo se podrá llevar a cabo la creación, edición y eliminación de los

conceptos que hacen parte del detalle de la nómina de los empleados.

22. Será posible llevar a cabo la configuración general del sistema, es decir, controlar por

medio de parámetros las variables globales de la plataforma. Dentro de los parámetros a

configurar se encuentran.

23. El sistema actualizará de manera automática el estado de los funcionarios que se encuen-

tren de vacaciones a dicho estado. De tal manera que se podrá validar al iniciar el aplicativo

el estado de todos los funcionarios que hacen parte del mismo.

24. El sistema actualizará de manera automática el estado de las solicitudes laborales re-

alizadas. De tal manera que se podrá validar al iniciar el aplicativo el estado de dichas

solicitudes.

25. El sistema actualizará de manera automática el estado de los contratos laborales registrados

en el sistema. De tal manera que se podrá validar al iniciar el aplicativo el estado de dichos

contratos por medio de su fecha de culminación.

26. El sistema permitirá la visualización de notificaciones para los usuarios que correspondan

a: Usuarios que se les ha finalizado el contrato, usuarios en vacaciones, solicitudes activas

sin responder.

43

CAPÍTULO 9. ANÁLISIS DE REQUERIMIENTOS

9.2 Requerimientos No Funcionales

1. El sistema se podrá ejecutar en cualquier navegador web, garantizando así la portabilidad

de la aplicación.

2. El sistema debe ser eficiente, ya que es fundamental superar los tiempos de procesamiento

de información que se presentan actualmente en el área de recursos humanos.

3. El sistema contendrá formatos y plantillas de los reportes que se manejen, pero estos a su

vez deben ser creadas o diseñadas por los funcionarios del área de recursos humanos.

4. Los tiempos en las respuestas a las solicitudes pueden depender del funcionario a cargo,

dependiendo de la importancia de la solicitud.

5. El sistema debe mostrar en pantalla si el proceso solicitado se realizó con éxito, si hubo un

error interno o si hace falta de información.

6. El sistema deberá registrar los movimientos hechos por parte de los funcionarios, con el fin

de tener un historial o hacer uso de estadísticas.

7. El sistema debe ajustar su interfaz de acuerdo a los roles del usuario para mostrar las

funcionalidades correspondientes.

8. Se diseñará una interfaz de usuario amigable y fácil de entender para los usuarios del

sistema.

9. El sistema debe garantizar que la información administrada sea íntegra y consistente,

satisfaciendo completamente las necesidades del cliente.

44

CA

TU

LO

10MODELAMIENTO DEL PROTOTIPO

10.1 Especificación de Requerimientos

A continuación se describe la especificación de los requerimientos más importantes detectados

durante la etapa de levantamiento de información. Para acceder a la especificación de todos los

requerimientos funcionales es necesario remitirse al Anexo 13 entregado junto a este proyecto:

10.1.1 Definición de Actores del Sistema

• Administrador del Sistema: Es uno de los actores principales del sistema, encargado

de liderar el área de recursos humanos, quien administra y gestiona todos los procesos

referentes al manejo de personal en la empresa. Ejecuta tareas de configuración del sistema,

gestión de la información de los empleados y generación de reportes.

• Empleado: Hace referencia a todos los funcionarios de la empresa como tal. Cualquier

empleado con un vínculo vigente con la compañía tiene acceso al sistema por medio de un

usuario público, de esta manera podrá llevar a cabo un control de su información laboral y

hacer contacto con el área administrativa de recursos humanos de la empresa para realizar

trámites y procedimientos.

• Listener de Aplicación: Es un actor secundario que se encarga de ejecutar los procesos

de actualización de estado de los datos del sistema al iniciar la aplicación, con el fin

de mantener la integridad de los datos cuando vayan a ser manejados por los usuarios

principales.

45

CAPÍTULO 10. MODELAMIENTO DEL PROTOTIPO

FIGURA 10.1. Diagrama de Actores.[9].

10.1.2 Diagramas de Casos de Uso

10.1.2.1 Diagrama de Casos de Uso para Trámites de Funcionarios

El conjunto de casos de uso relacionados con la realización de trámites por parte de los fun-

cionarios gestionan los procedimientos concernientes a los empleados de la empresa. Por ende,

administran la consulta y creación de solicitudes laborales, descarga de solicitudes aprobadas, así

como la consulta de información relevante para el empleado tal como lo son los desprendibles de

nómina, contratos laborales, llamados de atención y su hoja de vida. El empleado podrá descargar

dichos recursos.

46

10.1. ESPECIFICACIÓN DE REQUERIMIENTOS

FIGURA 10.2. Diagrama de Casos de Uso para Trámites de Funcionarios.[9].

47

CAPÍTULO 10. MODELAMIENTO DEL PROTOTIPO

Código RF- TF01Nombre Casode Uso Consultar Solicitudes Permiso Laboral

Actores Empleado

Tipo Primario

DescripciónConsulta el listado ordenado por fecha de solicitud descendente desolicitudes referentes a permisos laborales realizadas por el usuario; Asímismo, se podrán descargar solicitudes que hayan sido aprobadas.

Restricciones El usuario ve la lista que solo le concierne a él.

Pre-Condición Ninguna.

Post-Condición

Se visualizará un listado de solicitudes relacionadas con el usuarioautenticado en el sistema. Se resaltarán aquellas que cuenten con unaaprobación por parte de un usuario administrador. Se habilitará unbotón para descargar dichas aprobaciones.

FlujosAlternos

En caso de algún error se notificará mediante un mensaje emergente.

TABLA 10.1. Descripción Caso de Uso Consultar Solicitudes Permiso Laboral. [9].

Código RF- TF02Nombre Casode Uso Solicitar Permiso Laboral

Actores Empleado

Tipo Primario

Descripción Realiza la solicitud de un permiso laboral para el usuario en un periododeterminado.

RestriccionesÚnicamente se podrá realizar una solicitud de tipo permiso laboral cadacierto periodo de tiempo, el cual es definido como días de gracia devencimiento por parte del administrador de recursos humanos.

Pre-CondiciónIngresar los datos necesarios para realizar la solicitud. El usuario debecontar con un contrato laboral vigente.

Post-Condición

Se recibe un mensaje informativo confirmando la operación. Se registraen base de datos dicha solicitud.

FlujosAlternos

En caso de algún error se notificará mediante un mensaje emergente.

TABLA 10.2. Descripción Caso de Uso Solicitar Permiso Laboral. [9].

48

10.1. ESPECIFICACIÓN DE REQUERIMIENTOS

Código RF- TF06Nombre Casode Uso Solicitar Certificación Laboral

Actores Empleado

Tipo Primario

Descripción Realiza la solicitud de una certificación laboral para el usuario, dirigidahacia alguna persona, bien sea natural o jurídica

RestriccionesÚnicamente se podrá realizar una solicitud de tipo certificación laboralcada cierto periodo de tiempo, el cual es definido como días de gracia devencimiento por parte del administrador de recursos humanos.

Pre-CondiciónIngresar los datos necesarios para realizar la solicitud. El usuario debecontar con un contrato laboral vigente.

Post-Condición

Ingresar los datos necesarios para realizar la solicitud. El usuario debecontar con un contrato laboral vigente.

FlujosAlternos

En caso de algún error se notificará mediante un mensaje emergente.

TABLA 10.3. Descripción Caso de Uso Solicitar Certificación Laboral. [9].

10.1.2.2 Diagrama de Casos de Uso para Gestión de Personal

A continuación se describen los casos de uso relacionados con la gestión del recurso humano en

la empresa, es decir que se podrá llevar a cabo la gestión de toda la información que relaciona

directamente entre al empleado con el empleador. Por tanto, será posible registrar, editar y dar

de baja a empleados, así como la vinculación de información básica y especial de los mismos. Será

posible gestionar los contratos laborales con la empresa y se podrá registrar el pago de nómina

que se realiza periódicamente. Además se encuentran los casos de uso que tienen que ver con

la aprobación de solicitudes laborales realizadas por los empleados, la creación de llamados de

atención y el registro de incapacidades laborales.

49

CAPÍTULO 10. MODELAMIENTO DEL PROTOTIPO

FIGURA 10.3. Diagrama de Casos de Uso para Gestión de Personal.[9].

50

10.1. ESPECIFICACIÓN DE REQUERIMIENTOS

Código RF- GP01Nombre Casode Uso

Gestionar Empleado

Actores Administrador

Tipo Primario

Descripción

El usuario podrá consultar, registrar y editar la información de losempleados. Será posible consultar y registrar documentos digitalizadosde los empleados, así como la hoja de vida del mismo. De igual manerase podrá realizar la consulta de los contratos laborales, incapacidadeslaborales, memorandos y pagos por nómina asociados al funcionario dela empresa.

Restricciones

Los documentos digitalizados que podrán ser cargados y consultados selimitan a cédula de ciudadanía, libreta militar, RUT, carné EPS ylicencia de conducción. En cuanto a la actualización de la hoja de vida,se podrá actualizar información referente al perfil profesional junto consu respectiva foto de perfil, estudios secundarios, universitarios y deposgrado, idiomas manejados, programas manejados, referenciaspersonales y laborales, así como formación adicional.

Pre-Condición Los empleados deben estar registrados en el sistema.

Post-Condición

La información del empleado será actualizada en la base de datos, sehabilitarán los botones correspondientes para imprimir los recursos odocumentos relacionados con los empleados.

FlujosAlternos

En caso de algún error se notificará mediante un mensaje emergente.

TABLA 10.4. Descripción Caso de Uso Gestionar Empleado. [9].

51

CAPÍTULO 10. MODELAMIENTO DEL PROTOTIPO

Código RF- GP02Nombre Casode Uso Crear Contrato Laboral

Actores Administrador

Tipo Primario

DescripciónEl usuario creará contratos laborales de los empleados; dicho contratopuede ser a término indefinido, término fijo o por prestación de serviciosa N cantidad de meses.

RestriccionesPara la creación de un nuevo contrato laboral, la persona no debe contarcon otro contrato laboral vigente.

Pre-Condición El empleado deberá estar registrado en la base de datos del sistema.Post-Condición

El contrato laboral quedará registrado en la base de datos. Se habilitarála posibilidad de descargar dicho contrato laboral.

FlujosAlternos

En caso de algún error se notificará mediante un mensaje emergente.

TABLA 10.5. Descripción Caso de Uso Crear Contrato Laboral. [9].

Código RF- GP05Nombre Casode Uso

Corregir Pago Nómina

Actores Administrador

Tipo Primario

DescripciónEl usuario podrá corregir el desembolso realizado a un empleado porconcepto de nómina. Será posible consultar y corregir detalladamentelos valores correspondientes al pago.

RestriccionesEl sistema deberá recalcular el total del desembolso de nómina segúnlos nuevos valores ingresados.

Pre-CondiciónEl empleado deberá estar registrado en la base de datos del sistema ycontar con un contrato laboral vigente. Deberán existir pagos realizadospor concepto de nómina hacia el empleado.

Post-Condición

La información se registrará en la base de datos y el usuario podráimprimir el desprendible de nómina correspondiente al pago corregido

FlujosAlternos

En caso de algún error se notificará mediante un mensaje emergente.

TABLA 10.6. Descripción Caso de Uso Corregir Pago Nómina. [9].

52

10.1. ESPECIFICACIÓN DE REQUERIMIENTOS

Código RF- GP06Nombre Casode Uso

Aprobar Solicitud Laboral

Actores Administrador

Tipo Primario

DescripciónEl usuario consultará, y gestionará la aprobación o rechazo de lassolicitudes laborales realizadas por los empleados. Se listan lassolicitudes ordenadas por fecha de solicitud de manera ascendente.

Restricciones Las solicitudes laborales a aprobar deben encontrarse en estadoACTIVO.

Pre-CondiciónLos empleados deben estar registrados en el sistema con un contratolaboral vigente. Deberán tener solicitudes de recursos laboralesregistradas en el sistema.

Post-Condición

En caso de aprobación de las solicitudes laborales, se habilitará laopción de imprimir el documento aprobado. Toda la información delprocedimiento será actualizada en el sistema. Se notificará al usuarioque realizó la solicitud sobre el resultado del procesamiento de la mismapor parte del usuario administrador.

FlujosAlternos

En caso de algún error se notificará mediante un mensaje emergente.

TABLA 10.7. Descripción Caso de Uso Aprobar Solicitud Laboral. [9].

10.1.2.3 Diagrama de Casos de Uso para Gestionar Reporte

El conjunto de casos de uso relacionados con la gestión de reportes permiten que el administrador

del sistema pueda llevar a cabo la generación de reportes estadísticos basados en la información

que gestiona el sistema de información, así como la consulta e impresión de estos para ser

visualizados en con un lector de PDF (Ver Anexo 12).

53

CAPÍTULO 10. MODELAMIENTO DEL PROTOTIPO

FIGURA 10.4. Diagrama de Casos de Uso para Gestionar Reporte.[9].

Código RF- GR01Nombre Casode Uso

Consultar Reporte

Actores Administrador

Tipo Primario

Descripción

El usuario podrá consultar una lista de reportes generados por mediodel caso de uso RF - GR02 ordenados por fecha de creación. Se podráseleccionar un reporte de la lista y se habilitará la opción para descargarel reporte seleccionado.

Restricciones Únicamente se podrán descargar reportes cuyo proceso haya finalizadode manera exitosa.

Pre-CondiciónDebe haber reportes creados y registrados en el sistema. Debe existir elarchivo fuente del reporte en servidor de aplicaciones.

Post-Condición

El usuario podrá seleccionar uno de los reportes consultados y sehabilitará la opción para descargarlo.

FlujosAlternos

En caso de algún error se notificará mediante un mensaje emergente.

TABLA 10.8. Descripción Caso de Uso Consultar Reporte. [9].

54

10.2. ARQUITECTURA GENERAL DE LA APLICACIÓN

Código RF- GR02Nombre Casode Uso

Generar Reporte

Actores Administrador

Tipo Primario

Descripción

El usuario podrá realizar la generación de un reporte. El sistemaejecutará el proceso en segundo plano, realizando las consultasnecesarias para el reporte y guardará en el disco duro el reportesolicitado.

Restricciones

A modo académico se desarrollarán únicamente dos reportes por estafuncionalidad: Reporte de Contratos Laborales y Reporte de Aprobaciónde Solicitudes Laborales. Dichos reportes deben estar previamenteconfigurados para poder ser utilizados.

Pre-CondiciónEl sistema debe contar con información concerniente a la consulta delreporte a generar.

Post-Condición

Se registrará en base de datos la información de reporte que se solicitó,se ejecutará el proceso en segundo plano. Y se guardará en base de datosel estado y observaciones concernientes a la ejecución de dicho procesoen segundo plano. El resultado del reporte generado será guardado enuna carpeta específica para reportes en el servidor de aplicaciones.

FlujosAlternos

En caso de algún error se notificará mediante un mensaje emergente.Así mismo dicha información referente al error será registrada en labase de datos para llevar a cabo el seguimiento de la inconsistencia.

TABLA 10.9. Descripción Caso de Uso Generar Reporte. [9].

10.2 Arquitectura General de la Aplicación

El diseño arquitectural de la aplicación se enfoca en un estándar con cuatro capas bien definidas:

Presentación, Lógica de Negocio, Capa de Acceso a Datos y Persistencia. Se ha escogido una

arquitectura multicapa para el sistema por la necesidad de dividir y desacoplar las partes más

importantes de la aplicación, eliminar dependencias fuertes entre componentes, garantizar el

mantenimiento y la extensibilidad del prototipo propuesto.

55

CAPÍTULO 10. MODELAMIENTO DEL PROTOTIPO

FIGURA 10.5. Diagrama General de la Arquitectura de la Aplicación.[9].

10.2.1 Capa de Presentación

Esta capa se encuentra en el nivel más alto de la aplicación en comparación con los demás

componentes del sistema. Se divide básicamente en dos partes principales, como lo son el diseño

de las páginas que constituyen la interfaz gráfica de usuario y los Beans Manejados que controlan

los eventos e interacción entre el cliente y la capa de negocio del sistema. El diseño de la interfaz

gráfica se realizó de tal manera que se le brinde al usuario un fácil entendimiento de la navegación

por el aplicativo, de manera intuitiva y con un aspecto atractivo. La tecnología que se empleará

para llevar a cabo la presentación de la aplicación será Java Server Faces (JSF), utilizando la

especificación que ofrece PrimeFaces; esto teniendo en cuenta la gran cantidad de componentes

gráficos que ofrece, la utilidad de los mismos y que se trata de un framework de código abierto.

10.2.2 Capa de Lógica del Negocio

Es la capa en donde se llevará a cabo la lógica de los procesos del negocio del sistema, se realizan

las funciones principales de la aplicación y el procesamiento de la información que maneja el

sistema. Para esta capa de negocio se utilizará el estándar EJB 3.1 haciendo uso de Enterprise

Java Beans. Los procesos principales del aplicativo se efectuarán haciendo uso de Beans de Sesión

que representan una acción del negocio. Para la ejecución de procesos grandes y robustos se hará

uso de Beans Dirigidos por Mensajes haciendo uso de JMS. Adicionalmente se utilizan Beans de

56

10.2. ARQUITECTURA GENERAL DE LA APLICACIÓN

Tipo Entidad para representar objetos concretos de la base de datos a nivel de objetos dentro del

aplicativo. Esta capa del sistema interactúa directamente con la capa de presentación a través de

los Beans Manejados, quienes son los encargados de realizar las peticiones correspondientes a los

servicios definidos en el modelo del negocio. A su vez, se comunica con la capa de persistencia a

través de la capa de acceso a datos, por medio de una fábrica abstracta de los objetos de acceso a

datos (DAO) para solicitar recursos de información a la base de datos del sistema. Se hará uso

de manejo de transacciones por medio de Java Transaction API (JTA), con el fin de garantizar

la consistencia de la información al momento de realizar cualquier procedimiento del sistema

concerniente a la lógica del negocio.

FIGURA 10.6. Diagrama Arquitectural de la Capa de Lógica de Negocio.[9].

10.2.3 Capa de Acceso a Datos

Es una capa intermedia entre la capa de lógica del negocio y la capa de persistencia. Su función

principal es llevar a cabo la interacción entre la información almacenada en la base de datos

y la capa de negocio. Se compone básicamente por el mapeo objeto - relacional que se hace de

la base de datos a través de JPA, haciendo uso del Framework Hibernate y de los Objetos de

Acceso a Datos (DAO’s) que permiten el acceso a la información de la base de datos. Los DAO’s

son utilizados por parte de la capa de negocio para acceder a información almacenada en la

base de datos, sin embargo para garantizar un bajo acoplamiento entre capas se realiza a través

de una fábrica abstracta que permite el acceso a estos recursos sin necesidad de generar una

dependencia fuerte entre la capa de negocio y la capa de acceso a datos.

57

CAPÍTULO 10. MODELAMIENTO DEL PROTOTIPO

10.2.4 Capa de Persistencia

Esta capa comprende los recursos de persistencia de datos, se maneja por medio del motor de

base de datos. La abstracción del sistema se fundamenta en un diseño relacional de las entidades

que hacen parte del sistema, el motor de base de datos a utilizar es PostgreSQL.

10.3 Arquitectura Empresarial con Archimate

Para llevar a cabo el modelo de arquitectura empresarial se utilizó el lenguaje de modelamiento

de arquitectura empresarial Archimate (Ver Anexo 6), enfatizando en tres capas definidas en la

especificación: Capa de Negocio, capa de aplicación y capa de tecnología.

10.3.1 Punto de Vista Introductorio

FIGURA 10.7. Punto de Vista Introductorio.[9].

58

10.3. ARQUITECTURA EMPRESARIAL CON ARCHIMATE

A grandes rasgos, este punto de vista ayuda a visualizar de manera general la arquitectura

empresarial, es una introducción a lo que se analizará en las tres capas definidas anteriormente.

A nivel de negocio, en el modelo existen dos actores principales que son el Empleado de Grupo TX

y el Administrador de recursos Humanos, este último es el actor principal asociado a un Macro

‚Äì Proceso de Contratación de Personal, el cual se compone por tres subprocesos generales que

son el Reclutamiento, Contratación y Gestión de Personal. Estos procesos son soportados por dos

componentes generales de aplicación como lo son el gestor de Contratos Laborales y el Gestor de

Empleados; a su vez, dichos componentes de aplicación se encuentran desplegados en un servidor

de aplicaciones conectado por medio de una red a un servidor de bases de datos.

10.3.2 Capa de Negocio

Por medio de esta capa se definen y se ilustran los productos y servicios que se le ofrece a los

clientes, de tal manera que se detallen los procesos que son ejecutados por los diferentes actores

del negocio.

10.3.2.1 Punto de Vista de Organización

FIGURA 10.8. Punto de Vista de Organización.[9].

Desde el punto de vista de Organización se pretende identificar los principales actores, roles

y colaboraciones de la organización. Los dos actores principales son el Gerente de Recursos

Humanos cuyo rol dentro de la organización es el de Administrador del Personal de la empresa y

el Empleado a quién se le ha asignado el rol de Personal Gestionado. Según el levantamiento de

59

CAPÍTULO 10. MODELAMIENTO DEL PROTOTIPO

información que fue realizado, se pudo definir que el Gerente de Recursos Humanos se encuentra

ubicado físicamente en la ciudad de Bogotá, ya que allí es en donde se encuentra la oficina Central

de Grupo TX, por otro lado los empleados se encuentran distribuidos en diferentes sedes ubicadas

en diferentes municipios y ciudades de Colombia. Los dos roles principales de la organización,

tienen en común dos colaboraciones como lo son el Tramite de Contratación de personal nuevo en

la empresa y el Trámite de Solicitudes Laborales (Para personal que ya se encuentra contratado).

10.3.2.2 Punto de Vista de Función de Negocio

FIGURA 10.9. Punto de Vista de Función de Negocio.[9].

Este punto de vista pretende mostrar las principales funciones de negocio de la organización,

denotando las relaciones más importantes entre estas. Se detectaron seis funciones de negocio

principales que se encuentran asociadas al rol de Administrador de Personal, la primera función

de negocio es la de Reclutar Personal, la cual dispara la función de negocio de Contratar Personal;

una vez contratado el personal es posible hacer uso de otras funciones de negocio como lo son

la gestión de personal, registrar pagos de nómina, tramitar solicitudes laborales y gestionar

documentos asociados al contrato laboral. Podemos ver que el Administrador de Personal (Gerente

de Recursos Humanos) es el rol principal en este punto de vista, sin embargo cada una de estas

60

10.3. ARQUITECTURA EMPRESARIAL CON ARCHIMATE

funciones de negocio se relaciona con el rol de Personal Gestionado (Empleado Grupo TX) una

vez que este se encuentra contratado por la organización.

10.3.2.3 Punto de Vista de Proceso de Negocio

FIGURA 10.10. Punto de Vista de Proceso de Negocio.[9].

Gracias a este punto de vista es posible mostrar la estructura a alto nivel de los procesos más

importantes de la organización. En el modelo se muestran los cuatro procesos más importantes

de la organización, dichos procesos son asignados al Administrador de Personal:

• Creación de Contrato Laboral: Este proceso es ejecutado cuando ocurre un evento rela-

cionado con la contratación de un nuevo empleado. Está compuesto por cuatro subprocesos:

La verificación de la necesidad de llevar a cabo la contratación del nuevo empleado, la

validación del estado actual de la persona que se va a contratar, la validación del contrato

61

CAPÍTULO 10. MODELAMIENTO DEL PROTOTIPO

laboral que se va a crear y la generación de las correspondientes copias del contrato laboral

para ser firmada y entregada a las partes correspondientes (Empleado y Empleador). So-

porta el servicio de negocio Generar un vínculo contractual entre el empleado y el empleador,

el cual se encuentra directamente relacionado con uno de los objetos de negocio principales

de la organización como lo es el Contrato Laboral, cuya representación física es la copia del

contrato.

• Cancelación de Contrato Laboral: Cuando ocurre un evento que tiene que ver con

la pérdida de la calidad de empleado es ejecutado este proceso. Se compone por tres

subprocesos: La verificación de la necesidad de llevar a cabo la cancelación del contrato, la

validación de los causales que conllevan a realizar la anulación de dicho contrato laboral y

la desvinculación contractual de la persona como empleado de la organización. Soporta el

servicio de negocio Cancelar un vínculo contractual entre el empleado y el empleador; este

servicio se encuentra directamente relacionado con uno de los objetos de negocio principales

de la organización como lo es el Contrato Laboral, cuya representación física es la copia del

contrato.

• Gestión de Documentación Asociada al Contrato Laboral: Este proceso se ejecuta

una vez que se presenta un evento relacionado con la solicitud o necesidad de adquirir un

documento laboral asociado a la vinculación contractual de un empleado. Está compuesto

por tres subprocesos: El primero es la verificación de la necesidad para saber qué tipo de

documento es requerido, luego viene el subproceso de búsqueda del documento y finalmente

la gestión de dicho recurso por parte del administrador de personal. Soporta el servicio de

Gestionar la documentación de empleados en la empresa. Dicho servicio de negocio está

relacionado con el objeto de negocio Empleado quien se encuentra asociado con el Contrato

Laboral.

• Tramitación Solicitud Laboral: Cuando ocurre un evento relacionado con una solicitud

laboral realizada por un empleado es ejecutado este proceso. Se compone por tres subpro-

cesos: La verificación de la solicitud laboral para saber qué tipo de solicitud se requiere

y las características de la misma, luego viene la gestión de dicha solicitud para saber si

se aprueba o no y bajo qué condiciones, y finalmente se tiene el subproceso de notificación

del empleado para que este se entere de lo que sucedió con su solicitud, de tratarse de un

documento este debe ser entregado a dicho empleado. Soporta el proceso de negocio para

tramitar las solicitudes laborales. Este servicio de negocio está relacionado con el objeto de

negocio Empleado quien se encuentra asociado con el Contrato Laboral, otro de los objetos

de negocio principales de la organización.

62

10.3. ARQUITECTURA EMPRESARIAL CON ARCHIMATE

10.3.3 Capa de Aplicación

En esta capa se definirán los diferentes servicios que darán soporte a los distintos procesos de la

capa de negocio.

10.3.3.1 Punto de Vista de Uso de Aplicación

Por medio de este punto de vista podemos definir cómo los procesos de negocio de la organización

son apoyados por el uso de aplicaciones.

• Proceso de Creación de Contrato Laboral:

FIGURA 10.11. Punto de Vista de Uso de Aplicación para Creación de ContratoLaboral.[9].

El proceso de creación de contratos laborales es soportado por tres servicios de aplicación:

Por un lado se encuentran los servicios de Gestión de Empleados y Gestión de Contratos

Laborales, que son soportados por un componente de aplicación denominado Gestor de

Contratación de empleados, el cual se encarga de realizar todos los procedimientos rela-

cionados con la contratación de personal. Por otro lado está el servicio de Gestión de

Reportes y Formatos, el cual está soportado por un componente encargado específicamente

del procesamiento de reportes y formatos laborales para la realización de los formatos de la

organización, por ejemplo la copia del contrato laboral.

63

CAPÍTULO 10. MODELAMIENTO DEL PROTOTIPO

• Proceso de Cancelación de Contrato Laboral:

FIGURA 10.12. Punto de Vista de Uso de Aplicación para Cancelación de ContratoLaboral.[9].

• Proceso de Gestión de Documentación Asociada al Contrato Laboral:

FIGURA 10.13. Punto de Vista de Uso de Aplicación para Gestión de DocumentaciónAsociada al Contrato Laboral.[9].

64

10.3. ARQUITECTURA EMPRESARIAL CON ARCHIMATE

Existen dos componentes de aplicación que dan soporte a la realización del proceso de

negocio de Gestión de Documentación Asociada al Contrato: El Gestor de Documentación

Asociada al Contrato que se encarga de la administración de los diferentes documentos que

se relacionan de alguna forma con la vinculación contractual de un empleado, por ejemplo

la hoja de vida, las solicitudes laborales o los memorandos; aparte de este componente

de aplicación se encuentra el Gestor de Reportes y Formatos como el encargado de la

generación de dichos documentos para ser entregados a las partes interesadas.

Los servicios de aplicación que son soportados por estos dos componentes de aplicación son:

– Servicio de Gestión de Empleados

– Servicio de Gestión de Hoja de Vida

– Servicio de Gestión de Incapacidad Laboral

– Servicio de Gestión de Memorando

– Servicio de Gestión de Solicitud Laboral

– Servicio de Gestión de Reportes y Formatos

• Proceso Tramitación Solicitud Laboral:

FIGURA 10.14. Punto de Vista de Uso de Aplicación para Tramitación SolicitudLaboral.[9].

65

CAPÍTULO 10. MODELAMIENTO DEL PROTOTIPO

El proceso de Tramitación de Solicitud Laboral es apoyado por los servicios de aplicación

de Gestión de Solicitud Laboral y Gestión de Reportes y Formatos; ambos conforman el

componente de aplicación denominado Gestor de Trámites y Solicitudes Laborales.

10.3.4 Capa de Tecnología

Muestra la infraestructura necesaria para que se puedan efectuar de manera correcta los difer-

entes servicios de aplicación.

10.3.4.1 Punto de Vista de Infraestructura

FIGURA 10.15. Punto de Vista de Infraestructura.[9].

A nivel de Infraestructura, se tiene una aplicación desplegada en un servidor de aplicaciones

(MainFrame), el cual interactúa a través de una LAN con el Servidor de Bases de Datos. A su vez,

los clientes pueden acceder a estos recursos a través de internet, en donde claramente debe haber

un firewall que filtre el acceso a dichos recursos. Los dos tipos de clientes que se contemplan son

el Administrador de Recursos Humanos y el Empleado de Grupo TX.

66

10.3. ARQUITECTURA EMPRESARIAL CON ARCHIMATE

10.3.4.2 Punto de Vista de Estructura de la Información

FIGURA 10.16. Punto de Vista de Estructura de la Información.[9].

Este punto de vista muestra la estructura de la información usada en los diferentes procesos o

aplicaciones de negocio. En el modelo observamos que el objeto de negocio principal es el Contrato

Laboral, cuya representación a nivel de datos es la entidad Contrato Laboral. Este objeto de

negocio se compone principalmente por los objetos de negocio Empleado y Cargo, es decir que

para que exista un contrato laboral es necesario que se le relacione un cargo al empleado asociado

a dicho contrato. Los contratos laborales pueden ser de tres tipos: Por Prestación de servicios, a

término indefinido y a término definido. La representación física del contrato es la copia que se le

es entregada al empleado y al empleador.

Existe una serie de documentos que se encuentran asociados al contrato laboral, formando de esta

manera nuevos objetos de negocio: Memorando, Incapacidad Laboral, Desprendible de Nómina

y Solicitud Laboral, este último tiene una especialización de objetos de negocio, ya que pueden

haber solicitudes de Vacaciones, permisos laborales y certificaciones laborales.

67

CAPÍTULO 10. MODELAMIENTO DEL PROTOTIPO

10.4 Diseño de la Base de Datos del Sistema

A continuación se describe el modelo de base de datos que fue diseñado para soportar el sistema,

para ver el modelo a gran escala se debe consultar el Anexo 5 - Modelo Relacional, adjunto en el

CD del proyecto.

FIGURA 10.17. Modelo Relacional del Sistema.[9].

68

10.5. DIAGRAMAS DE CLASES DEL SISTEMA

10.5 Diagramas de Clases del Sistema

A continuación se muestran los diagramas de clases que fueron diseñados, para ver dichos

modelos a gran escala se debe consultar el Anexo 7 - Diagramas de Clases, adjunto en el CD del

proyecto.

10.5.1 Diagrama de Clases del Modelo de Negocio

FIGURA 10.18. Diagrama de Clases del Modelo de Negocio.[9].

69

CAPÍTULO 10. MODELAMIENTO DEL PROTOTIPO

El modelo de negocio del prototipo propuesto se compone de un total de veinte entidades

principales, cuyas relaciones se describen en el diagrama anterior; todos los procesos de negocio

del sistema giran en torno a este modelo propuesto.

10.5.2 Diagrama de Clases de la Capa de Acceso a Datos

FIGURA 10.19. Diagrama de Clases de la Capa de Acceso a Datos.[9].

70

10.5. DIAGRAMAS DE CLASES DEL SISTEMA

El anterior diagrama de clases describe cómo se accede a la información persistida en base de

datos haciendo uso del patrón de mapeo objeto - relacional por medio de las entidades. Partiendo

de este punto se puede decir que cada entidad es la representación a nivel de objetos de una

tabla del modelo de base de datos. En la arquitectura de la aplicación, se hace uso del patrón

de diseño DAO (Data Access Object), de tal manera que cada una de las entidades cuenta con

su propia clase de acceso a datos, en el diagrama esta parte se puede observar con la entidad

Usuario por ejemplo, la cual es utilizada por UsuarioDAO para acceder a la información de los

usuarios registrados en la base de datos a través de lenguaje JPQL.

El sistema cuenta con un total de 37 entidades, lo cual implica que haya la misma cantidad

de DAO’s, generando así un problema de creación de objetos del mismo tipo. Este problema se

solucionó por medio del patrón de diseño Factory Method; de esta manera se ha diseñado una

fábrica de DAO’s, en donde los productos concretos son cada uno de los Objetos de Acceso a Datos,

existe un producto abstracto DataAccessObject del cual hereda cada uno de ellos, el creador

abstracto es representado por la clase DAOFactoryMethod, y existe una única clase creadora de

DAO’s llamada DAOFactory.

Cada uno de estas clases de acceso a datos puede ser utilizado por uno o más servicios de

negocio, sin embargo esto generaría una serie de dependencias fuertes entre la capa de negocio y

la capa de acceso a datos. Para solucionar este problema, se ha hecho uso del patrón de diseño

Fachada o Facade, con el fin de desacoplar estas dos capas y evitar dependencias fuertes; esto se

puede observar en el diagrama con la clase FacadeDAO.

71

CAPÍTULO 10. MODELAMIENTO DEL PROTOTIPO

10.5.3 Diagrama de Clases de la Capa de Servicios de Negocio

FIGURA 10.20. Diagrama de Clases del Uso de Servicios de Negocio.[9].

72

10.5. DIAGRAMAS DE CLASES DEL SISTEMA

Todos los servicios de negocio de la aplicación heredan de una clase abstracta Service. En

esta clase, se inyectan dos dependencias muy importantes para la arquitectura de la aplicación;

por un lado se encuentra la fachada de acceso a los DAO’s (FacadeDAO) y por otro la fachada

que permite utilizar cada uno de los servicios de negocio (FacadeService). Así mismo, en la clase

Service se instancia el objeto EntityManager y su objeto fábrica (EntityManagerFactory), con el

fin de que se puedan reutilizar en cada uno de los servicios de negocio.

Como se dijo anteriormente, todos los servicios heredan de Service, y a su vez cada uno de

estos servicios cuenta con una interfaz por medio de la cual pueden ser accedidos los procesos

de negocio desde otra capa. Para evitar dependencias fuertes y garantizar un bajo acoplamiento

se ha creado una fachada FacadeService, de esta manera se podrá hacer uso de cada uno de los

servicios desde los Backing Beans o Managed Beans, o desde otro servicio si es el caso.

Cabe resaltar que cada uno de los servicios es un Enterprise Java Bean de Sesión, ya que

se ha hecho uso del estándar EJB 3.1. Así mismo, la Fachada de Servicios es también un Bean

de Sesión, por ende cuenta con una interfaz (FacadeService) y una clase de implementación

(FacadeServiceImpl).

73

CAPÍTULO 10. MODELAMIENTO DEL PROTOTIPO

10.5.4 Diagrama de Clases del Controlador por Medio de Backing Beans

FIGURA 10.21. Diagrama de Clases del Controlador por Medio de Backing Beans.[9].

74

10.5. DIAGRAMAS DE CLASES DEL SISTEMA

Las clases encargadas de interactuar con la presentación de la aplicación y a su vez de

hacer uso de los procesos de negocio del sistema son los Backing Beans o Managed Beans. Todos

los Backing Beans heredan de una clase abstracta llamada BeanManejado que implementa la

interfaz Serializable; en ella se inyecta la dependencia de la fachada de servicios (FacadeService)

para que cada uno de los BackingBeans pueda tener acceso a los servicios que requiera del sistema,

esto se hace a través de inyección de dependencias por medio de la anotación @EJB. Además, en

esta clase abstracta se encuentran todos los métodos comunes que pueden ser utilizados en cada

una de sus subclases (Backing Beans).

75

CA

TU

LO

11FUNCIONAMIENTO FINAL DEL APLICATIVO

Las funcionalidades del sistema se diseñaron de tal manera que se mantenga el mismo

formato siempre que el usuario se encuentre navegando en la plataforma, garantizando

así la simetría y homogeneidad del entorno gráfico. Esto permite un fácil entendimiento

de las diferentes funciones del aplicativo, se vuele un sistema intuitivo a la hora de ser utilizado,

asegurando disminución en tiempos de capacitación para los futuros usuarios del sistema. Esto

se logró gracias a que en la capa de presentación se utilizó lenguaje XHTML acompañado de

hojas de estilo en cascada (CSS), haciendo uso de unas plantillas predefinidas que pueden variar

fácilmente a futuro en caso de querer hacer ajustes de entorno gráfico por parte del cliente.

El aplicativo cuenta con una barra de menú en la parte superior que se mantiene durante

cualquier evento de navegación, en él se listan los menús que corresponden a cada uno de

los módulos y los submenús que agrupan a las diferentes funcionalidades desarrolladas en el

prototipo, las cuales se mostrarán o no dependiendo de los permisos con los que cuente el usuario

autenticado.

77

CAPÍTULO 11. FUNCIONAMIENTO FINAL DEL APLICATIVO

FIGURA 11.1. Menú Principal del Aplicativo.[9].

En la parte inferior se encuentra un menú de tipo Dock que agrupa las funcionalidades de uso

común o públicas a las que tiene acceso cualquier tipo de usuario, como lo son las notificaciones,

la edición de usuario propio y la guía de usuario (Ver Anexo 10).

Una vez que se accede a alguna funcionalidad se abrirá una vista que consta de un cuadro

central con título que encierra los formularios y la descripción de la misma. La navegación al

inicio de la aplicación es sencilla gracias al botón de Inicio que se mantiene estático durante

cualquier evento, lo mismo sucede con el cierre de sesión.

78

11.1. FUNCIONALIDAD GESTIONAR EMPLEADO

FIGURA 11.2. Diseño Interfaz Gráfica del Aplicativo.[9].

Para dar un ejemplo práctico del uso general de la aplicación se detallará el funcionamiento

de dos de las funcionalidades más importantes del sistema, como lo son la Gestión de Empleado y

la Creación de Contratos Laborales. Sin embargo, si se desea obtener una información mucho

más detallada del funcionamiento de cada una de las funcionalidades con las que cuenta el

prototipo desarrollado, se podrá dirigir a los Anexos 8 y 9 adjuntos en el CD entregado junto a

este documento.

11.1 Funcionalidad Gestionar Empleado

Esta funcionalidad permite la creación y edición de personas registradas en el sistema, así mismo

la consulta de documentos asociados al empleado, memorandos, solicitudes e incluso la misma

hoja de vida del funcionario, entre otros.

Para poder hacer uso de la funcionalidad se debe tener rol de administrador. Una vez se

ingresa, se verá la lista de personas registradas en el sistema, de ella se puede seleccionar una

en específico.

Cuando se opta por editar una persona del sistema, se habilitan los campos que contienen

la información de la misma. Una vez se complete la información necesaria y correcta se podrá

actualizar el registro del empleado mediante el botón guardar.

79

CAPÍTULO 11. FUNCIONAMIENTO FINAL DEL APLICATIVO

FIGURA 11.3. Funcionalidad Gestionar Empleado.[9].

Si se necesita registrar un nuevo empleado, se puede hacer clic en el botón agregar, esto

mostrará un cuadro con los campos necesarios para el ingreso del nuevo sujeto. De esta forma los

datos en el sistema podrán ser editados por un usuario administrador, así como los documentos

que están disponibles para el empleado, dichos documentos se encuentran organizados por tipo

en las respectivas pestañas o secciones.

80

11.1. FUNCIONALIDAD GESTIONAR EMPLEADO

FIGURA 11.4. Crear Nueva Persona para el Sistema.[9].

11.1.1 Sección Hoja de Vida

La sección de Hoja de Vida permite ver la información general de la persona en cuanto a los datos

que competen a su currículum.

La Hoja de vida en la plataforma estará compuesta de dos partes, la primera contiene

información general como la descripción de la persona desde el punto de vista profesional a

manera de párrafo junto con su foto de perfil; dicha foto se puede subir a la plataforma de manera

sencilla con el botón que se encuentra bajo el espacio para la imagen (+ subir). La segunda parte

comprende los detalles de la hoja de vida, donde se pueden agregar datos como los estudios

realizados, experiencia laboral, idiomas y programas manejados, entre otros.

81

CAPÍTULO 11. FUNCIONAMIENTO FINAL DEL APLICATIVO

FIGURA 11.5. Edición Hoja de vida .[9].

FIGURA 11.6. Secciones Hoja de Vida.[9].

82

11.1. FUNCIONALIDAD GESTIONAR EMPLEADO

11.1.2 Sección Documentos Personales

Esta sección permite la adición de documentos escaneados asociados al perfil del empleado, dichos

documentos se pueden clasificar por tipo antes de ser agregados.

FIGURA 11.7. Adjuntar Documentos a Hoja de Vida.[9].

Como se trata de documentos escaneados, se evitará que se puedan subir archivos de clase

diferente a una imagen, en caso de éxito se notificará mediante un mensaje en pantalla.

83

CAPÍTULO 11. FUNCIONAMIENTO FINAL DEL APLICATIVO

FIGURA 11.8. Ejemplo Cédula de Persona.[9].

11.1.3 Sección Contratos Laborales

Esta sección listarán los contratos laborales asociados al empleado junto con la información

relevante de dichos contratos. Si se el usuario selecciona uno de dichos contratos, se permitirá la

impresión del mismo en formato pdf (Ver Anexo 12).

11.1.4 Sección Incapacidades Laborales

Esta sección listarán las incapacidades laborales que se le han dado al empleado a lo largo de su

vida laboral en la empresa.

Si el usuario selecciona una de las incapacidades laborales se permitirá imprimir el documento

que soporta dicha incapacidad.

84

11.1. FUNCIONALIDAD GESTIONAR EMPLEADO

FIGURA 11.9. Incapacidades Laborales.[9].

FIGURA 11.10. Descargar Incapacidad Laboral.[9].

85

CAPÍTULO 11. FUNCIONAMIENTO FINAL DEL APLICATIVO

11.1.5 Sección Llamados de Atención

Esta sección listarán los memorandos asociados al empleado a lo largo de su vida laboral en la

empresa.

FIGURA 11.11. Sección Memorandos Empleado.[9].

Si el usuario selecciona un elemento de la lista, se habilita el botón de descargar, mediante el

cual puede guardar una copia en el computador en formato pdf (Ver Anexo 12).

11.1.6 Sección Pagos de Nómina

En esta sección se listaran todos los pagos asociados al empleado, junto con las cantidades y cargo

por el que se le hizo el pago.

86

11.1. FUNCIONALIDAD GESTIONAR EMPLEADO

FIGURA 11.12. Imprimir Llamado de Atención.[9].

FIGURA 11.13. Pagos de Nómina Empleado.[9].

87

CAPÍTULO 11. FUNCIONAMIENTO FINAL DEL APLICATIVO

Si el usuario selecciona un pago de nómina se puede imprimir el documento que soporta dicha

transacción en formato pdf (Ver Anexo 12).

FIGURA 11.14. Pagos de Nómina Descargar.[9].

11.2 Funcionalidad Crear Contrato Laboral

Por medio de esta funcionalidad se puede llevar a cabo la vinculación laboral entre un empleado

con la empresa. Se creará un contrato laboral del tipo deseado, bien sea por prestación de servicios,

a término definido o indefinido. Ruta: Gestión de Personal / Contratos Laborales / Crear Contrato

Laboral.

11.2.1 Pasos a Seguir Crear Contrato Laboral

Los siguientes pasos deben ser tenidos en cuenta para poder crear un nuevo contrato laboral en

el sistema:

1. Ingresar la cédula de una persona registrada en el sistema.

2. Oprimir el botón buscar, en caso de que no se encuentre registrada en el sistema se mostrará

un mensaje de error, de lo contrario se cargará la información de la persona buscada y se

informará al usuario.

88

11.2. FUNCIONALIDAD CREAR CONTRATO LABORAL

FIGURA 11.15. Procesar Datos Crear Contrato Laboral.[9].

3. Una vez se tienen los datos del usuario cargados correctamente se puede ingresar los datos

correspondientes para crear el contrato laboral como son:

• Fecha Contratación: Corresponde a la fecha en la que el usuario inicia su contrato con

la empresa.

• Fecha finalización: Este campo se llena en el caso en el que el usuario tenga un

contrato a tiempo definido o por prestación de servicios.

• Salario Básico: El contrato requerirá un salario inicial con el que el empleado inicia

sus labores.

• Bonificación: Corresponde a las bonificaciones laborales aplicadas para este contrato,

este campo puede estar vacío.

• Periodo Pago: Se puede seleccionar el periodo entre pagos, de acuerdo a lo pactado con

el empleado.

• Tipo Contrato Laboral: Permitirá seleccionar el tipo de contrato laboral dependiendo

de lo acordado con el empleado.

• Duración de meses: Se podrá ingresar la cantidad de meses que dura el contrato solo

si este es a término indefinido o prestación de servicios.

• Estado: Permite activar o desactivar el contrato según se requiera.

89

CAPÍTULO 11. FUNCIONAMIENTO FINAL DEL APLICATIVO

• Cargo: Permitirá seleccionar el cargo para el que se contrata a el empleado.

• Observación: Permite ingresar anotaciones o descripciones del contrato.

FIGURA 11.16. Creación Exitosa de Contrato Laboral.[9].

4. Una vez se active el botón procesar se valorarán las casillas, en caso de tener algún error se

mostrará un error en pantalla indicando el campo que se debe corregir.

90

11.2. FUNCIONALIDAD CREAR CONTRATO LABORAL

FIGURA 11.17. Guardar Contrato Laboral.[9].

5. En caso de tener todos los datos correctos se notifica que el contrato asociado al usuario

correspondiente puede ser guardado sin problemas.

6. Para guardar el contrato se le da clic al botón guardar, el cual crea y guarda el contrato.

Dicho contrato laboral se puede descargar en formato pdf (Ver Anexo 12).

91

CA

TU

LO

12TRABAJO FUTURO

Luego de la realización del proyecto, se han definido una serie de posibles mejoras del

sistema con miras futuras, gracias a las observaciones realizadas por algunos de los

usuarios finales que probaron la plataforma (Ver Anexo 10) y puntos de vista propios,

teniendo en cuenta que se diseñó un prototipo extensible se detectaron los siguientes puntos a

tener en cuenta como trabajo futuro:

12.1 Mejora en Reportes Personalizados

Actualmente las funcionalidades que tienen que ver con la gestión de reportes soportan única-

mente el uso de reportes previamente desarrollados, es decir que se necesita de la intervención

de un equipo de desarrollo para realizar el ajuste o creación de un nuevo reporte, esto genera un

gasto de tiempo considerable para completar una nueva implementación. Sin embargo, gracias

al modelo de datos que se diseñó se puede a futuro realizar la implementación de una nueva

funcionalidad que gestione completamente el diseño de un nuevo reporte que se desee crear, o la

edición de alguno existente. Para ello se requiere que el usuario de dicha funcionalidad tenga

conocimientos básicos en SQL, ya que sería necesario registrar las consultas que serían utilizadas

por el reporte a generar. Esto puede representar mejoras en tiempos de acceso a la información y

control de datos, minimizando el contacto con el equipo de desarrollo.

12.2 Mejora en Funcionalidades de Gestión de Nómina

Unas de las funcionalidades más importantes del prototipo tienen que ver con el registro y

corrección de pagos de nómina, ya que gracias a estas se puede llevar a cabo el registro de

todos los desembolsos o pagos realizados a los funcionarios durante cada periodo de pago. No

93

CAPÍTULO 12. TRABAJO FUTURO

obstante, el sistema de información no fue diseñado para realizar cálculos, o al menos no en su

etapa primaria como prototipo; por ello es conveniente aprovechar el diseño actual del sistema y

extenderlo para que se soporte la realización de los cálculos necesarios para llevar un control

completo de la nómina de la empresa.

12.3 Mejora en Comunicación entre Empleador y Empleados

Implementación de funcionalidades que permitan una comunicación más profunda entre los

diferentes actores del sistema, bien sea por medio de una PQRS o por medio de envío simple

de información haciendo uso de las notificaciones con las que cuenta actualmente el prototipo;

de esta manera se podrán enviar invitaciones a eventos, felicitaciones o contenido habitual del

ambiente laboral.

La gran ventaja de esta mejora se basa en la premisa de que las personas que administren la

plataforma puedan escuchar las quejas y reclamos de sus empleados, con el fin de responder para

mantener un ambiente motivacional con sus empleados.

12.4 Firmas Digitales para Documentos

Se puede buscar a futuro que los reportes y documentos sean firmados directamente desde la

aplicación web por medio del uso de firmas digitales, mediante una funcionalidad que permita

adicionar dichas firmas a los reportes. Con ello dichas firmas podrán ser seleccionadas y asociadas

a un documento digital, permitiendo que cualquier formato manejado en el sistema pueda ser

personalizado y no requiera necesariamente que se deban imprimir para su posterior firma

por parte de una persona, ahorrando de esta manera recursos físicos y beneficiando el medio

ambiente.

94

CA

TU

LO

13CONCLUSIONES

Se realizó satisfactoriamente el levantamiento de información y de requerimientos necesario para

efectuar el diseño del prototipo de sistema de información planteado; con ello, se logró tener las

bases ingenieriles que fueron utilizadas para culminar el desarrollo del mismo. De esta manera,

como producto final se obtuvo un aplicativo web práctico y eficiente para el cliente, compuesto

por las funcionalidades indispensables para satisfacer todas las necesidades planteadas en el

alcance de este proyecto, referentes a la gestión y manejo de los recursos humanos de la empresa

en estudio.

Se diseñó y desarrolló un prototipo web que les permite a los diferentes funcionarios de la

empresa hacer uso del mismo para realizar la solicitud de documentos y trámites al administrador

de recursos humanos. Por esta razón se pudo comprobar la eficiencia de hacer un aplicativo web en

vez de una aplicación de escritorio, teniendo en cuenta que se puede interactuar constantemente

entre diferentes tipos de usuarios por medio de Internet, solucionando así uno de los puntos

críticos planteados en este proyecto, la disminución en los tiempos de respuesta a las diferentes

peticiones realizadas por los empleados.

Teniendo en cuenta que se realizó el diseño y desarrollo de una base de datos relacional para

gestionar la información concerniente a los funcionarios de la empresa, se concluye que esto

beneficia de gran manera al cliente, teniendo en cuenta que se puede contar permanentemente

con datos de las personas que tuvieron o tienen algún tipo de relación contractual con la empresa.

Esto implica que dicha información puede ser utilizada por la gerencia de recursos humanos

para llevar a cabo toma de decisiones administrativas, así como para contar con un repositorio de

información que pueda ser utilizado a futuro.

Partiendo del hecho de que la información del personal humano de Grupo TX ha sido ad-

ministrada por medio de métodos rudimentarios como hojas de cálculo y documentos físicos, se

95

CAPÍTULO 13. CONCLUSIONES

concluye que al contar con un único sistema de información para gestionar dicha información, se

puede llegar a realizar un gran número de tareas cotidianas relacionadas con la administración

del personal de la empresa en una misma plataforma, aumentando así la eficiencia y garanti-

zando eficacia al momento de llevar a cabo dichos procedimientos. Por tanto, se desarrollaron

una serie de funcionalidades cuyo objetivo primordial es reemplazar los métodos utilizados con

anterioridad, con mucha más facilidad y obteniendo mejores resultados a nivel administrativo.

El prototipo desarrollado cuenta con una interfaz de usuario intuitiva y de fácil entendimiento

para los diferentes tipos de usuario, esto se logró gracias a que se mantuvo un mismo esquema o

plantilla para todas las funcionalidades del aplicativo. Además de esto, el sistema cuenta con una

funcionalidad destinada específicamente a guiar al usuario por medio de un manual que oriente

y brinde la posibilidad de entender el funcionamiento general de la plataforma de manera gráfica

y dinámica. Por esta razón, se puede decir que se cumplió uno de los objetivos más importantes

del proyecto, el cual se fundamenta en la creación de una interfaz gráfica que sea amigable y de

fácil entendimiento para el usuario final.

Para llevar a cabo el desarrollo del prototipo, se utilizaron diversas herramientas y tecnologías

de uso muy recurrente en la actualidad. Todo el software que se empleó estuvo siempre bajo el

esquema de software libre, así mismo se usaron frameworks que son muy comunes en el ambiente

laboral que se vive actualmente. Esto generó una serie de experiencias muy enriquecedoras

para las personas que participaron en este proyecto, el nivel de aprendizaje fue muy alto y el

conocimiento relacionado con el uso de nuevas tecnologías fue la mejor recompensa para los

integrantes del grupo.

Si bien la delimitación del proyecto llegó únicamente hasta la etapa de desarrollo, sin alcanzar

a implementar el aplicativo, se puede concluir con base a las observaciones de los profesionales

que tuvieron algún tipo de contacto con el prototipo, que este es un software práctico y a la

medida de la empresa en estudio; y que el impacto que podría generar pensando en una hipotética

implementación sería bastante positivo tanto para la parte administrativa de la empresa, como

para cualquier funcionario de la compañía.

96

AP

ÉN

DI

CE

ALISTADO DE ANEXOS ADJUNTOS EN EL CD DEL PROYECTO

Los anexos del proyecto se encuentran en formato digital, ubicados en la carpeta "Anexos"

del CD que fue entregado, cada uno de ellos está ubicado en una sub carpeta de la misma,

como se muestra a continuación:

• ANEXO 1: Métodos de Levantamiento de Información

Ruta: /Anexos/MendezJonatanAlexanderCarvajalLopezErickAnexo-1.pdf

• ANEXO 2: Herramientas Utilizadas para el Desarrollo del Prototipo

Ruta: /Anexos/MendezJonatanAlexanderCarvajalLopezErickAnexo-2.pdf

• ANEXO 3: Historias de Usuario Resueltas Durante el Desarrollo

Ruta: /Anexos/MendezJonatanAlexanderCarvajalLopezErickAnexo-3.pdf

• ANEXO 4: Diccionario de Datos

Ruta: /Anexos/MendezJonatanAlexanderCarvajalLopezErickAnexo-4.pdf

• ANEXO 5: Modelo Relacional

Ruta: /Anexos/MendezJonatanAlexanderCarvajalLopezErickAnexo-5.jpg

• ANEXO 6: Diagramas Arquitecturales de la Aplicación

Ruta: /Anexos/MendezJonatanAlexanderCarvajalLopezErickAnexo-6.zip

• ANEXO 7: Diagramas de Clases

Ruta: /Anexos/MendezJonatanAlexanderCarvajalLopezErickAnexo-7.zip

• ANEXO 8: Manual de Despliegue Técnico

Ruta: /Anexos/MendezJonatanAlexanderCarvajalLopezErickAnexo-8.pdf

97

APÉNDICE A. LISTADO DE ANEXOS ADJUNTOS EN EL CD DEL PROYECTO

• ANEXO 9: Manual de Usuario del Sistema

Ruta: /Anexos/MendezJonatanAlexanderCarvajalLopezErickAnexo-9.pdf

• ANEXO 10: Encuesta de Valoración Final del Aplicativo

Ruta: /Anexos/MendezJonatanAlexanderCarvajalLopezErickAnexo-10.pdf

• ANEXO 11: Archivos de Configuración Servidor de Aplicaciones WildFly 8.1

Ruta: /Anexos/MendezJonatanAlexanderCarvajalLopezErickAnexo-11.zip

• ANEXO 12: Reportes Básicos del Sistema

Ruta: /Anexos/MendezJonatanAlexanderCarvajalLopezErickAnexo-12.pdf

• ANEXO 13: Especificación de Requerimientos

Ruta: /Anexos/MendezJonatanAlexanderCarvajalLopezErickAnexo-13.pdf

• ANEXO 14: Archivo de Despliegue de Aplicación

Ruta: /Anexos/MendezJonatanAlexanderCarvajalLopezErickAnexo-14.zip

• ANEXO 15: Código Fuente de Aplicación

Ruta: /Anexos/MendezJonatanAlexanderCarvajalLopezErickAnexo-15.zip

• ANEXO 16: Script SQL de Aplicación

Ruta: /Anexos/MendezJonatanAlexanderCarvajalLopezErickAnexo-16.zip

98

BIBLIOGRAFÍA

[1] Scrum metodología de desarrollo de software Ágil, http://www.lostiemposcambian.com/

blog/metodologia-de-trabajo/ scrum-desarrollo-agil/ , 03 de Febrero de 2016.

[2] Concepto o definición de herencia en java, http://aprenderaprogramar.com, 16 de Octubre

de 2015.

[3] Qué es y para qué sirve el lenguaje css (cascading style sheets - hojas de estilo),

http://aprenderaprogramar.com/, 18 de Septiembre de 2015.

[4] Excel, donde y cuando lo necesitas, https://products.office.com/ES-CO/, 22 de Agosto

de 2015.

[5] Modelo de cascada y espiral, http://modelo-cascada.blogspot.com, 22 de Agosto de

2015.

[6] Modelo relacional, http://ict.udlap.mx/people/carlos/ is341/bases03.html, 22 de

Agosto de 2015.

[7] S. ABRAHAM, Fundamentos de Bases de Datos. Ed. 4ta., McGraw Hill, 2002.

[8] F. ALEX, Proyecto eclipselink, http://www.jroller.com/afuentes/

entry/proyecto-eclipselink, 16 de Octubre de 2015.

[9] AUTORES, Fuente propia proyecto de grado en curso.

Proyecto de Grado Para Optar por el Título de Ingeniero de Sistemas, 2015.

Universidad Distrital Francisco José de Caldas.

[10] S. CHERRY, Sistema manejador de base de datos (smbd),

http://sistemamanejadordebasededatossmbd.blogspot.com/

2011/02/diferentes-tipos-de-sistemas-de.html, 18 de Septiembre de 2015.

[11] A. FÁCIL, Gestión de recursos humanos, http://www.aulafacil.com/cursos/l22411/

empresa/recursos-humanos/ gestion-de-recursos-humanos/introduccion, 29 de

Agosto de 2015.

[12] J. R. Y. I. J. G. BOOCH, El Lenguaje Unificado de Modelado, Addison Wesley, 1999.

99

BIBLIOGRAFÍA

[13] J. R. I. JACOBSON, G. BOOCH, El Proceso Unificado de Desarrollo, Addison Wesley, 2000.

[14] ICONFINDER, . iconos para uso gratuito, libre o comercialmente,

https://www.iconfinder.com/iconsets/onebit, 13 de Febrero de 2016.

[15] I. LIBRARY, Características y tipos de bases de datos,

http://www.ibm.com/developerworks/ssa/data/library/index.html, 13 de

Septiembre de 2015.

[16] V. NE ENRIQUE, ¿qué es java hibernate?, http://www.adictosaltrabajo.com/

tutoriales/introduccion-primefaces/, 16 de Octubre de 2015.

[17] V. NE LERMA ENRIQUE, Introducción a primefaces, http://www.adictosaltrabajo.com/

tutoriales/introduccion-primefaces/, 11 de Octubre de 2015.

[18] R. PEDRO, Fundamentos de bases de datos: Modelo entidad-

relación, http://www.genbetadev.com/bases-de-datos/

fundamento-de-las-bases-de-datos- modelo-entidad-relacion, 15 de Septiembre

de 2015.

[19] T. POINT, Hibernate - query language, http://www.tutorialspoint.com/hibernate/

hibernate-query-language.htm, 13 de Febrero de 2016.

[20] K. SCHWABER, La guía de scrum, https://www.scrum.org/Portals/0/Documents/

Scrum-20Guides/2013/Scrum, 13 de Febrero de 2016.

[21] R. I. SOLUTIONS, www.reserv.com.ar/metodologia.php, 22 de Agosto de 2015.

[22] G. TX, Bienvenidos a grupo tx, http://www.corptx.com/, 26 de Agosto de 2015.

100