• No se han encontrado resultados

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

N/A
N/A
Protected

Academic year: 2020

Share "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"

Copied!
118
0
0

Texto completo

(1)

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 DISTRITALFRANCISCO JOSÉ DE CALDAS

Proyecto de grado presentado en la Universidad Distrital Francisco José de Caldas, para optar al título de Ingeniero de Sistemas.

(2)
(3)

RESUMEN

(4)
(5)

A

GRADECIMIENTOS

A

gradecemos a todas las personas que aportaron su granito de arena para que este proyecto sea una realidad, así como a aquellas que tuvieron que ver de una u otra manera con nuestra 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 adelante en nuestra carrera como ingenieros, además de todos aquellos que nos brindaron su apoyo y confianza 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 compartir conocimiento, 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 y personas, dejandor en alto el buen nombre de nuestra Universidad.

Un agradecimiento especial al profesorAlejandro Paolo Daza Corredor, por haber dirigido este proyecto. Gracias por haber sido la primera persona que nos brindó la ayuda necesaria para que 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 de grado.

Al profesorSandro Javier Bolaños Castropor las observaciones y correcciones realizadas durante cada etapa del proyecto, dándonos un parte de tranquilidad sobre la calidad de este entregable, y orientándonos hacia el camino correcto.

(6)
(7)

D

EDICATORIAS

Dedico el fruto de este trabajo a mis padres quienes desde el principio de mi carrera me han enseñado el camino correcto y me han dado el apoyo que necesitaba para lograr culminar esta etapa, a mis hermanos quienes me dan alegrías día a día, a mis tíos y tías quienes me recibieron y cuidaron en momentos de baja salud, a mis abuelos que siempre me dieron un consejo cuando lo necesitaba, a mis amigos con los que comparto siempre buenas experiencias, a los profesores quienes me dieron el conocimiento para escalar, y a mi compañero de proyecto con quien obtuvimos grandes 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 mi vida y mi razón principal para salir adelante. A mi mamá María porque sin ella no sería la persona que soy hoy en día, y gracias a ella he cumplido muchas de las metas que me he propuesto siempre. A a mi novia, compañera, amiga y prometida Paola, por su paciencia, apoyo y motivación constante para la obtención de mis logros. Así mismo, dedico este trabajo a mis hermanos, en especial a mi hermano Carlos porque siempre ha sido mi apoyo incondicional y la mejor figura paterna en mi núcleo familiar. A Dios porque día a día le agradezco por la vida que tengo y las oportunidades que se me presentan. Finalmente dedico este trabajo a todas las personas que de una u otra forma hacen parte especial de mi vida, amigos, familiares, profesores e inclusive a aquellas que de buena o mala manera me han enseñado algo en esta vida haciéndome mejor persona.

(8)
(9)

D

ECLARACIÓN DE LOS

A

UTORES

(10)
(11)
(12)

TABLA DE CONTENIDO

(13)

TABLA DE CONTENIDO

10 Modelamiento del Prototipo 45

10.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.5.4 Diagrama de Clases del Controlador por Medio de Backing Beans . . . 74

(14)

TABLA DE CONTENIDO

11.2.1 Pasos a Seguir Crear Contrato Laboral . . . 88

12 Trabajo Futuro 93 12.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

(15)

Í

NDICE DE

T

ABLAS

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

(16)
(17)

Í

NDICE DE

F

IGURAS

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

(18)

ÍNDICE DEFIGURAS

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

(19)

C

E

n 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.

(20)

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.

(21)

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.

(22)
(23)

C

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.

(24)

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.

(25)

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

(26)
(27)

C

A

ctualmente 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.

(28)

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.

(29)

C

Analizar, dise ´nar 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 necesifuncionali-dades propias del área de recursos humanos de la empresa.

(30)

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.

(31)

C

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.

(32)

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.

(33)

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.

(34)

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.

(35)

C

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.

(36)

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

(37)

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

(38)

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 instanciadeclara-ciones 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)

(39)

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).

(40)

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

(41)

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.

(42)

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.

FIGURA6.1. Metodología Scrum. Imagen tomada de [21].

6.2.18 Metodología Kanban

(43)

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.

(44)
(45)

C

M

ETODOLOGÍA DE LA

I

NGENIERÍA DEL

P

ROYECTO

T

eniendo 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.

(46)

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

(47)

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.

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

(48)

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 de

Historia 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

(49)

7.3. HISTORIAS DE USUARIO DE CADA SPRINT

Número de

Historia 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 de

(50)

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 de

Historia 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

(51)

7.3. HISTORIAS DE USUARIO DE CADA SPRINT

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

(52)

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

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.

(53)

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.

(54)

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

FIGURA7.1. Flujo de Trabajo Kanban Definido para Cada Sprint.[9].

(55)

C

F

ue 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 del

Recurso Descripción Cantidad Costo Total

Computador

Computadores necesarios para el proyecto. Uno para cada desarrollador, y uno para

(56)

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). para el desarrollo de la capa de presentación y lógica del negocio.

2 $ 0

PostgreSQL + PgAdmin III

Software que permitirá desarrollar la capa

de persistencia de la aplicación. 2 $ 0

WildFly 8.1. Servidor de aplicaciones necesario para

desplegar el proyecto. 3 $ 0

iReport Designer Aplicación necesaria para llevar a cabo el

dise ´no de los reportes del proyecto. 2 $ 0

Aplicación que sirve como editor general de textos para facilitar el trabajo de los

desarrolladores.

2 $ 0

LibreOffice 4.4.4. Suite de aplicaciones necesarias para

llevar a cabo la documentación del proyecto. 2 $ 0 Enterprise

Architect Edición de Prueba (30 días)

Software necesario para diseñar el modelo de la base de datos del sistema de

información

2 $ 0

TOTAL $ 0

TABLA 8.2. Recursos de Software. [9].

8.3

Recursos Humanos

(57)

8.4. OTROS RECURSOS

desarrollador. 48 768 $ 30.000 $ 23’040.000

Estudiante No.2

Diseñador y

dasarrollador. 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. momento de ir a la empresa (Grupo TX) a

realizar levantamientos de información,

durante el desarrollo del proyecto - $ 200.000

TOTAL $ 460.000

(58)

CAPÍTULO 8. RECURSOS Y CRONOGRAMA

8.6

Cronograma

(59)

C

L

o 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.

(60)

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.

(61)

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.

(62)

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.

(63)

C

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.

(64)

CAPÍTULO 10. MODELAMIENTO DEL PROTOTIPO

FIGURA10.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

(65)

10.1. ESPECIFICACIÓN DE REQUERIMIENTOS

(66)

CAPÍTULO 10. MODELAMIENTO DEL PROTOTIPO

Consulta el listado ordenado por fecha de solicitud descendente de solicitudes 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 usuario autenticado en el sistema. Se resaltarán aquellas que cuenten con una aprobación por parte de un usuario administrador. Se habilitará un botón para descargar dichas aprobaciones.

Flujos

Alternos 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- TF02

Nombre Caso

de Uso Solicitar Permiso Laboral Actores Empleado

Tipo Primario

Descripción Realiza la solicitud de un permiso laboral para el usuario en un periodo determinado.

Restricciones

Únicamente se podrá realizar una solicitud de tipo permiso laboral cada cierto periodo de tiempo, el cual es definido como días de gracia de vencimiento por parte del administrador de recursos humanos.

Pre-Condición Ingresar los datos necesarios para realizar la solicitud. El usuario debe contar con un contrato laboral vigente.

Post-Condición

Se recibe un mensaje informativo confirmando la operación. Se registra en base de datos dicha solicitud.

Flujos

Alternos En caso de algún error se notificará mediante un mensaje emergente.

Referencias

Documento similar

Se llega así a una doctrina de la autonomía en el ejercicio de los derechos que es, en mi opinión, cuanto menos paradójica: el paternalismo sería siempre una discriminación cuando

La vida real, no obstante, proporciona la certidumbre de que, en multitud de ocasiones, el interés de cada uno se satisface con el concurso propio y de otro u otros portadores

Volviendo a la jurisprudencia del Tribunal de Justicia, conviene recor- dar que, con el tiempo, este órgano se vio en la necesidad de determinar si los actos de los Estados

Para alcanzar un verdadero desarrollo sostenible dentro del contexto de Gestión de Recursos Naturales debe existir procesos participativos y movilizadores de las

Indicadores municipales de sostenibilidad: Tasa de afiliación a

Luis Miguel Utrera Navarrete ha presentado la relación de Bienes y Actividades siguientes para la legislatura de 2015-2019, según constan inscritos en el

grupos de interés ... La información sobre las actuaciones administrativas automatizadas y los algoritmos utilizados por las Ad- ministraciones públicas ... Fortalecer la calidad

En cuarto lugar, se establecen unos medios para la actuación de re- fuerzo de la Cohesión (conducción y coordinación de las políticas eco- nómicas nacionales, políticas y acciones