el director del proyecto - iit.comillas.edu · humanos y gestiÓn de proyectos autor: ... siguiente...

162
Autorizada la entrega del proyecto del alumno: D. Víctor Saiz Romero EL DIRECTOR DEL PROYECTO D. Adolfo Rosa Fernández Fdo.: Fecha: …../…../……. Vº Bº del Coordinador de Proyectos D. Miguel Ángel Sanz Bobi Fdo.: Fecha: …../…../…….

Upload: trinhxuyen

Post on 01-Nov-2018

228 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Autorizada la entrega del proyecto del alumno:

D. Víctor Saiz Romero

EL DIRECTOR DEL PROYECTO

D. Adolfo Rosa Fernández

Fdo.: Fecha: …../…../…….

Vº Bº del Coordinador de Proyectos

D. Miguel Ángel Sanz Bobi

Fdo.: Fecha: …../…../…….

Page 2: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

PROYECTO FIN DE CARRERA

SOLUCIÓN INTEGRAL PARA LA ADMINISTRACIÓN DE RECURSOS

HUMANOS Y GESTIÓN DE PROYECTOS

AUTOR: VÍCTOR SAIZ ROMERO MADRID, junio de 2007

UNIVERSIDAD PONTIFICIA COMILLAS

ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA

Page 3: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ I

Agradecimientos:

Quisiera aprovechar la oportunidad que se me brinda para agradecer a

todas esas personas que me han apoyado tanto durante este tiempo. En primer

lugar, y como no podía ser de otra forma, agradecer a mis padres por todo su

apoyo, tanto en los momentos buenos como en los más difíciles, donde nunca me

han fallado, además de darme la oportunidad de estudiar en un lugar de tanto

prestigio como I.C.A.I.

En segundo lugar, quisiera agradecer a Adolfo, mi director de proyecto, por

ofrecerme este proyecto que me permite culminar la carrera e iniciar la transición al

mundo laboral, siguiente etapa de mi vida en la que podré afrontar nuevos retos.

Además, como olvidarse en un momento así, de aquellos compañeros de trabajo

como Álvaro, Dani y Berta, que me han ayudado a resolver las dificultades técnicas

de un proyecto de esta magnitud.

Por último, pero no por ello menos importante, a todos aquellos amigos que

siempre han confiado en mí, por su apoyo y amistad que siempre te fortalecen en

los momentos más difíciles, así como a todos los profesores, mi coordinador del

proyecto y tutores que me han encaminado hacia este momento durante toda mi

vida.

Gracias a todos.

Page 4: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ II

A mis padres, por todo.

Page 5: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ III

Resumen:

En el mundo laboral, y en especial consideración en el sector de

Consultoría, la gestión de Recursos Humanos es una de las tareas más importantes

para las empresas. Por ello, una buena gestión de los Recursos Humanos de los

que dispone una empresa es esencial para obtener los beneficios deseados.

En especial, en el sector de la Consultoría Informática, que es el marco

donde he desarrollado este proyecto, tiene una relevancia absoluta puesto que los

equipos de trabajo que cada consultora ofrece, deben estar siempre activos para

que se obtengan beneficios. Es un mercado en continuo movimiento y con rápidos

cambios en las tecnologías solicitadas por los clientes, por lo que se torna

imprescindible una eficiente tarea de captación de Recursos Humanos que

permitan satisfacer las necesidades detectadas en cada momento.

Adicionalmente, en la sociedad de la Tecnología de la Información en la que

nos encontramos, la información es la que tiene el poder, por lo que hay que

gestionarla de manera muy eficaz para poder así disponer de un elemento

diferenciador respecto de la competencia.

De este punto de vista, nació el proyecto que he desarrollado durante el

último año, que consiste en un sistema de gestión para los Departamentos de

Recursos Humanos y Comercial de VASS Consultoría de Sistemas, empresa en la

que entré a trabajar en julio del año pasado. Se ha pretendido desarrollar una

aplicación web, que permita gestionar la información del proceso de selección de

candidatos, así como de la asignación de dichos candidatos a los proyectos que

llegan de los clientes de la Consultora.

El crecimiento que ha experimentado la empresa en los últimos años

(naciendo en 1999 con unos 25 empleados y llegando a superar los 450 empleados

actualmente), ha hecho necesaria la centralización de la creciente cantidad de

Page 6: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ IV

información que se recoge en el proceso de selección de un candidato, así como de

facilitar y aumentar la eficacia de recoger y acceder a la información. Conseguir

esto supone que, ante una petición de un cliente se podría ofrecer, con un menor

tiempo de respuesta, un equipo de trabajo que satisfaga las necesidades del

cliente.

Actualmente, existen en el mercado herramientas de gestión de Recursos

Humanos como SAP, PeopleSoft o Meta4. Dichas herramientas, son muy amplias y

abarcan de una manera generalista, la administración de los Recursos Humanos de

cualquier empresa, para todas las tareas relacionadas con los empleados de una

empresa como gestión de nóminas, selección de personal, etc.

En cambio, para las necesidades que se detectaron, lo ideal era un

desarrollo a medida de una aplicación que gestionase únicamente el proceso de

selección de personal, así como de su asignación a los proyectos que se

desarrollan en la empresa. Por ello, se pensó en una aplicación Web basada en

J2EE que permitiese acceder de forma centralizada a la información requerida para

los departamentos de Recursos Humanos y Comercial.

La aplicación que se ha desarrollado a medida de las necesidades

detectadas consta de dos módulos integrados en la misma aplicación. En el primero

de ellos, destinado al Departamento de Recursos Humanos, permite dar de alta un

candidato captado por dicho departamento y gestionar su progreso dentro de las

distintas fases y entrevistas de las que se compone el proceso de selección de

personal. Esta información se guarda en base de datos y permite además adjuntar

el Currículo enviado por el candidato, así como de la propuesta presentada al

candidato si ha pasado satisfactoriamente las etapas del proceso. Al ser una

herramienta centralizada y con la información gestionada en base de datos, permite

un acceso mucho más eficaz a los candidatos según las necesidades de cada

momento, para reactivar procesos de selección de algún perfil que en un

determinado momento no eran necesarios, pero que en otro momento se convierten

en urgentes.

El segundo módulo de la aplicación, permite al departamento Comercial

gestionar las peticiones que los clientes realizan a la empresa. Con este módulo,

pueden dar de alta dichas peticiones y asignarle los candidatos que crean más

Page 7: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ V

convenientes a cada petición, según su importancia, número de recursos de un

perfil determinado y fechas de incorporación y duración del proyecto.

Otros objetivos secundarios, aunque importantes, que se han alcanzado en

el proyecto ha sido la generación de informes sobre el proceso de selección de

candidatos, así como de la generación de currículos en varios formatos de los

clientes de la Consultora, que permite automatizar el proceso necesario de

formalizar un currículo en el formato del cliente al que ha sido asignado el

candidato, para que el cliente lo acepte en el equipo de trabajo que desea formar

para el desarrollo de su proyecto.

Esta aplicación Web se ha implantado en la intranet de la empresa, lo que

permite un acceso centralizado a la información. Para su desarrollo, se ha confiado

en una tecnología madura como Java con acceso a Base de Datos mediante JDBC

siguiendo el patrón DAO y una serie de servlets que sirven las páginas JSP,

respetando el modelo vista controlador MVC, en un servidor de aplicaciones

Tomcat. Otras tecnologías utilizadas en el proyecto son: HTML, Javascript, PDF,

VBIS (Vignette Business Integration Studio), LDAP, iText y JChart.

Page 8: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ VI

Abstract:

In the working world, and specially considering the Consulting market, the

Human Resources management is one of the most important task to be deployed by

any company. Therefore, a good management of the Human Resources available in

a company is essential in order to obtain the expected profits.

In the IT Consulting sector, which is the frame where this project has been

deployed, the importance of what has been stated above has an absolute relevance

since the working equipments offered by a consulting must be running always to

obtain profits. According to the technologies requested by the customers, it is an

always moving and fast changing market so it becomes essential an efficient task of

Human Resources to satisfy the needs detected everytime.

In addition, in the IT society where we live is the information who owns the

power. Therefore, it is necessary to manage in a very effective way in order to

obtain a differentiated element from the competition.

Due to this point of view, the project I have been developing during the last

year was started, which is basically a management system for the Human

Resources and Comercial departments of 'VASS Consultoría de Sistemas',

company where I joined in July last year. This projects claims to be a web

application that allows to manage the information generated in the screening

process and the assignment of the applicant to the projects from the customer.

The growth that the company has experienced in the last years (starting in

1999 with about 25 employees and exceeding 450 in the meantime) has made

necessary the centralization of the increasing amount of information gathered in the

screening process of a candidate, apart from facilitate and arise the effectiveness of

the collection and access of the information. Achieving this means that, faced with a

Page 9: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ VII

petition from the customer a better time response and the appropriate working team

could be offered.

In the meantime, there are Human Resources management tools like SAP,

PeopleSoft or Meta4. The mentioned tools are very wide and they cover in a general

way the administration of Human Resources of any company, including the tasks

related to the employees of the company like the payslip management, screening

process, etc.

On the other hand, according to the necessities that were detected, the best

option was the development of a custom-made application to manage not only the

screening process, but also the assignment to the projects in which the company is

involved. Therefore, the idea of a J2EE-based Web application was the most

appropriate. It would allow the centralized access to the required information of the

Human Resources and Commercial departments.

The application that has been custom-made developed according to the

needs detected has two integrated modules in the same application. First of all,

assigned to the Human Resource Department, allowing to insert an applicant

information selected by this Department and managing his progress across the

different phases and interviews of the recruitment personal process. This

information is saved in a database, moreover allow to attach the Curriculum Vitae

send by the applicant, as well as the offer presented to the applicant if he has

passed successfully all the steps of the process. As a centralized tool with the

information managed by a database, it allows a more effective access to the

applicants according to the needs of every moment and to reactivate the recruitment

process of a particular profile that in a moment is not necessary but in other moment

it changes to an urgent one.

The second module of the application allows Commercial Department to

manage the requests that the clients demand to the enterprise. With this module,

users are able to insert these requests and assign the more convenient applicants to

each request of a client, according to their importance, number of resources of a

particular profile, starting dates and length of the project.

Another secondary objectives, although important too, that have already

been reached has been the generation of reports of the applicant recruitment

Page 10: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ VIII

process and the generation of the Curriculum Vitae in many formats, according to

the Consultant’s clients, that allow automatize the necessary process to formalize a

CV in the format demanded by the client in which the applicant has been assigned

to. So the client can accept him in the desired work team in order to complete the

project development.

This Web application had been implanted in the intranet of my enterprise, so

allows a centralized access to the information. For its development, I had trusted in

a mature technology mainly based on Java with database access through JDBC,

according to the DAO pattern, and a series of servlets that serve the JSP,

respecting the view controller model MVC and running in a Tomcat application

server. Other used technologies in this project are: HTML, Javascript, PDF, VBIS

(Vignette Business Integration Studio), LDAP and JChart.

Page 11: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ IX

Índice

1. Introducción............................................................. 13

1.1. Motivación....................................................................... 13

1.2. Planteamiento de la Casuística ........................................ 2

1.3. Estado del arte.................................................................. 8

1.3.1. Introducción a la gestión de Recursos Humanos .......................................... 9

1.3.2. Estado actual del arte de la tecnología........................................................ 12

1.3.3. Justificación.................................................................................................. 13

2. Propósito, Alcance y Objetivos.............................. 14

2.1. Propósito......................................................................... 14

2.2. Alcance ........................................................................... 14

2.3. Objetivos......................................................................... 18

2.3.1. Objetivos Principales.................................................................................... 18

2.3.2. Objetivos Secundarios ................................................................................. 19

3. Metodología ............................................................. 21

3.1. Programación Orientada a Objetos ................................ 21

3.2. J2EE ............................................................................... 24

3.3. MVC................................................................................ 25

3.4. Metodología seguida en el desarrollo ............................. 27

4. Análisis de Requisitos ............................................ 29

4.1. Identificación de Requisitos ............................................ 29

Page 12: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ X

4.1.1. Módulo de RR.HH................................................................... 29

4.1.2. Módulo Comercial................................................................... 41

4.1.3. Propios del sistema ................................................................ 44

4.2. Modelo de Casos de Uso ............................................... 44

4.2.2. Módulo de Recursos Humanos............................................... 45

4.2.3. Módulo Comercial................................................................... 47

5. Estudio de Arquitectura.......................................... 61

5.1. Introducción .................................................................... 61

5.2. Arquitectura técnica elegida ........................................... 62

5.3. Herramientas software necesarias ................................. 64

6. Diseño....................................................................... 67

6.1. Diagrama de Paquetes ................................................... 67

6.1.1. Paquete iu .............................................................................. 67

6.1.2. Paquete servicios ................................................................... 68

6.1.3. Paquete dao ........................................................................... 68

6.1.4. Paquete dominio..................................................................... 68

6.2. Diagrama de Clases ....................................................... 69

6.2.1. Paquete iu .............................................................................. 69

6.2.1.1. Paquete es.vass.rrhh.iu.cv ...................................................................... 69

6.2.1.2. Paquete es.vass.rrhh.iu.servlets.............................................................. 70

6.2.1.3. Paquete es.vass.rrhh.iu.servlets.areas.................................................... 70

6.2.1.4. Paquete es.vass.rrhh.iu.servlets.candidatos ........................................... 70

6.2.1.5. Paquete es.vass.rrhh.iu.servlets.cv......................................................... 71

6.2.1.6. Paquete es.vass.rrhh.iu.servlets.informes............................................... 72

6.2.1.7. Paquete es.vass.rrhh.iu.servlets.log........................................................ 73

6.2.1.8. Paquete es.vass.rrhh.iu.servlets.login..................................................... 73

Page 13: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ XI

6.2.1.9. Paquete es.vass.rrhh.iu.servlets.peticiones ............................................ 74

6.2.1.10. Paquete es.vass.rrhh.iu.servlets.subareas.............................................. 74

6.2.2. Paquete servicios ................................................................... 75

6.2.2.1. Paquete es.vass.rrhh.iu.servicios ............................................................ 75

6.2.3. Paquete dao ........................................................................... 77

6.2.3.1. Paquete es.vass.rrhh.dao........................................................................ 78

6.2.4. Paquete dominio..................................................................... 80

6.2.4.1. Paquete es.vass.rrhh.dominio.areas ....................................................... 80

6.2.4.2. Paquete es.vass.rrhh.dominio.candidato ................................................ 81

6.2.4.3. Paquete es.vass.rrhh.dominio.generics .................................................. 81

6.2.4.4. Paquete es.vass.rrhh.dominio.idiomas.................................................... 88

6.2.4.5. Paquete es.vass.rrhh.dominio.peticiones................................................ 88

6.2.4.6. Paquete es.vass.rrhh.dominio.usuarios .................................................. 90

6.3. Interfaz............................................................................ 90

6.4. Diagrama de Secuencia ............................................... 105

6.4.1. Alta Candidato ...................................................................... 105

6.4.2. Baja Candidato ..................................................................... 107

6.5. Base de Datos .............................................................. 110

6.6. Matriz de Trazabilidad de Requisitos............................ 116

7. Implantación y pruebas ........................................ 117

8. Planificación .......................................................... 124

9. Presupuesto........................................................... 127

10. Conclusiones................................................... 128

BIBLIOGRAFÍA ........................................................... 129

Page 14: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ XII

REFERENCIAS ........................................................... 131

ANEXO I: Manual de Usuario .................................... 134

Page 15: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ XIII

1. Introducción Este apartado describe la motivación, el planteamiento de las necesidades

detectadas que dieron origen a este proyecto así como los objetivos que se

pretenden alcanzar con la realización de este proyecto, tanto objetivos principales

como secundarios. Además, se incluirá un estudio del arte sobre otros productos

existentes en el mercado que abordan problemáticas similares.

1.1. Motivación En primer lugar, me gustaría explicar las razones que me llevaron a elegir un

proyecto ofertado por una empresa, en vez de uno de los múltiples ofertados por los

directores de proyecto internos de la Universidad.

Me gustaría destacar que me atrae mucho la realización de un proyecto real,

que va a ser utilizado por muchas personas dentro de un entorno laboral, hecho

que me ha motivado mucho desde el principio. Solo con escuchar a las integrantes

del Departamento de Recursos Humanos que mi aplicación les facilita

enormemente el trabajo que realizan a diario es muy gratificante.

En segundo lugar, con la realización de este proyecto buscaba, a parte de

finalizar la carrera de Ingeniero en Informática, un puente entre el mundo

universitario y el mundo laboral. Siempre he creído que el Proyecto Fin de Carrera

supone la culminación a todo el esfuerzo realizado en los cinco cursos que

componen la carrera, por lo que creo debe ser un trabajo con un plus de dificultad,

que ponga el broche a esta etapa tan importante en mi vida.

Además, durante estos años de carrera, he ido perfilando mis gustos dentro

de las especialidades ofertadas, inclinándome por Bases de Datos Multimedia e

Internet, por lo que cuando surgió la oportunidad de incorporarme a VASS

Consultoría de Sistemas en el área de e-Business quise aprovechar para poder

elegir un proyecto que se adaptase a mis preferencias dentro de las múltiples

ramas que ofrece la informática y, por supuesto, también a mis motivaciones

personales.

Page 16: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 2

Otro de los estímulos más importantes a la hora de elegir este proyecto es

que me permitía aplicar a un proyecto real, con una entidad muy superior a las

prácticas realizadas a lo largo de la carrera, los conocimientos adquiridos durante la

carrera en distintas asignaturas como Ingeniería del Software, Bases de Datos

Multimedia, Programación en Java, Redes o Encaminamiento en Internet.

Por todo ello, cuando mi director de proyecto me ofreció el desarrollo de este

proyecto, no dudé en aceptarlo como un reto personal que colmaba las

motivaciones descritas.

1.2. Planteamiento de la Casuística En este apartado se reflejan las necesidades observadas en VASS

Consultoría de Sistemas, en cuanto al proceso de selección de candidatos, así

como de asignación de los candidatos aptos tras este proceso a las peticiones de

los clientes de la empresa para la realización de proyectos de Ingeniería.

1.2.1. Recursos Humanos

VASS Consultoría de Sistemas es una empresa joven (nacida en septiembre

de 1.999) que ha ido creciendo año tras año hasta sobrepasar actualmente los 450

empleados como se puede ver en la siguiente imagen:

Figura 1.2.1.1: Evolución Plantilla VASS Consultoría de Sistemas

Page 17: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 3

Podemos observar el crecimiento exponencial del número de empleados en

la empresa desde su creación, con el consiguiente aumento en las necesidades de

gestión. Como es lógico pensar, no es lo mismo cubrir el proceso de selección de

una empresa pequeña que una empresa de casi 500 empleados y con visos de

seguir aumentando de manera sólida en el futuro.

Anteriormente al desarrollo e implantación de este proyecto, la información

del proceso de selección de candidatos era gestionada a través de una simple hoja

de cálculo por cada componente del departamento de Recursos Humanos. En

dicha hoja de cálculo se almacenaba toda la información correspondiente a cada

candidato.

El volumen de datos que se manejan de un candidato es grande, desde

información personal (nombre, apellidos, dirección, teléfono, email, etc.),

información sobre estudios (titulación, master, certificaciones, etc.), información

sobre experiencia laboral (empresas, proyectos, etc.), información sobre el propio

proceso de selección (entrevistas realizadas, estado del candidato dentro del

proceso, comentarios de cada entrevista) e información adicional (idiomas,

herramientas y tecnologías conocidas, etc.).

Todos estos datos se podían gestionar con una hoja de cálculo cuando el

número de candidatos era más o menos razonable, pero al dispararse el tamaño de

la empresa, el número de recursos necesarios para cubrir el aumento de proyectos

que desarrolla la empresa se ha elevado en la misma proporción. Por ello, se ha

detectado que era necesaria la incorporación de una herramienta que permita una

gestión eficiente del proceso y que manejase esta creciente cantidad de

información.

Uno de los problemas detectados era por la forma en la que se estaba

gestionando la información, al contar cada persona del departamento de Recursos

Humanos con una hoja de cálculo propia donde almacenaban los candidatos que

tenían recogidos para pasar el proceso de selección. Al no tener la información

centralizada, se podían producir “colisiones” de candidatos si dos empleados del

departamento intentaban captar al mismo candidato.

Page 18: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 4

Se intentaba evitar el problema dividiendo la captación de candidatos entre

las áreas tecnológicas de las que consta la empresa, que actualmente son las

siguientes: CRM, BI, e-Business, ERP, Microsoft e Innovación (Nuevas

Tecnologías). Podemos verlo en más detalle en la siguiente imagen:

Figura 1.2.1.2: Áreas Tecnológicas de VASS

No obstante, muchas veces se incorporaban candidatos al proceso de

selección con un perfil que no era tan específico como para adaptarse a una única

área. Sobre todo, esto podía ocurrir en aquellos candidatos con mucha experiencia,

que han tratado muchas áreas y ramas de la informática, o bien, aquellos

candidatos que no disponían de ninguna experiencia y que podían comenzar su

carrera profesional en varias áreas. Debido a esto, en ocasiones se captaba “por

duplicado” a un candidato, al no tener una base de datos centralizada que evitase

este problema.

Incluso la gestión de una única área es difícil, a partir de un número elevado

de candidatos, al tener que manejar tanta información en una hoja de cálculo. Es

ahí donde se ve realmente necesario una herramienta de gestión más eficaz puesto

que para realizar consultas sobre un perfil determinado, es muy costoso el

realizarlos con una hoja de cálculo. En cambio, si disponemos de una interfaz Web

amigable con un formulario de consulta donde filtrar los candidatos, ganaríamos

mucho tiempo a la hora de realizar esta operación cotidiana del departamento de

Recursos Humanos.

Page 19: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 5

La hoja de cálculo con la que trabajaban era una hoja Microsoft Excel con

varias columnas por cada candidato. Se guardaban los datos más importantes del

proceso de selección y un enlace al Currículo enviado por el propio candidato que

se guardaba en un servidor de la intranet de la empresa en una estructura de

directorios dividida por años, y dentro de cada año por áreas tecnológicas, las

cuales contenían los currículos de los candidatos cuyo perfil se ajustaba a dicha

área tecnológica.

En la hoja de cálculo se almacenaban los siguientes campos:

- AREA: Área tecnológica a la que iba destinado.

- FICHERO: Enlace al C.V. adjuntado por el candidato.

- APELLIDO1: Primer apellido del candidato.

- APELLIDO2: Segundo apellido del candidato.

- NOMBRE: Nombre del candidato.

- DNI: DNI o número de pasaporte del candidato.

- TELEFONO: Teléfono de contacto del candidato.

- MAIL: Correo electrónico de contacto del candidato.

- ESTUDIOS: Estudios realizados por el candidato (carrera o módulo de

F.P. cursado)

- FECHA RECEPCION CV: Fecha en la que se recibió el Currículo del

candidato.

- CANAL RECEPCION: Canal por el que se captó al candidato para

incorporarse al proceso de selección (página Web de VASS, páginas de

empleo como Infojobs, Foros de empleo en universidad, recomendación

de otro empleado, etc.).

- EMPRESA: Empresa de procedencia del candidato.

- SALARIO: Salario solicitado por el candidato para su incorporación.

- FECHA ENTREVISTA: Fecha en la que se realizan las entrevistas

personales con Recursos Humanos y con un consultor.

- ESTADO: Estado en el que se encuentra un candidato (Apto, no válido,

rechazado en entrevista personal, rechazado en entrevista técnica, etc.).

- OFERTA: Perfil de la propuesta realizada al candidato dentro del plan de

carrera establecido en la empresa.

- INCORPORACIÓN: Disponibilidad de incorporación del candidato.

Page 20: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 6

- COMENTARIOS: Comentarios adicionales sobre algún apartado anterior

o sobre alguna información adicional aportada o recogida durante el

proceso de selección sobre el candidato y que no se ajusta a ningún

apartado anterior.

En la siguiente imagen se puede apreciar la estructura de la que se disponía

hasta el desarrollo de este proyecto:

Figura 1.2.1.3: Estructura manejo información de candidatos en RR.HH.

Es mucha la información que se genera sobre cada candidato durante el

proceso de selección como para poder acceder fácilmente a un determinado perfil

de candidatos en una hoja de MS Excel. Imaginemos que queremos saber de entre

los candidatos que tenemos, aquellos en estado Apto con un perfil para e-Business,

disponibilidad de incorporación inmediata y un salario inferior a 25.000 € porque nos

ha surgido un proyecto de J2EE que necesita de un equipo con un perfil de

programador. Esto no sería fácil de realizar en un fichero de MS Excel con 2.000

registros. En cambio, con un sencillo formulario Web, podríamos tener un listado

con la información deseada en cuestión de segundos según las necesidades de

cada momento.

Page 21: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 7

Por otra parte, con una aplicación a medida se podría guardar más

información sobre cada candidato, ya que ahora no sería un inconveniente las

búsquedas y el mantenimiento de la información al estar almacenados en una base

de datos y poder accederse vía Web de una forma cómoda a la información

requerida en cada momento.

1.2.2. Área Comercial

En cuanto a los problemas observados en el área Comercial serían

parecidos a los vistos para el Departamento de Recursos Humanos. La forma de

trabajar era la misma: una hoja de cálculo donde se guardan los datos de cada

petición de un cliente. En este caso también se trabaja también por áreas en las

que se encuadran los clientes con los que trabaja la empresa: Banca,

Telecomunicaciones, AAPP, Industria y Tecnología.

Sobre cada petición realizada por un cliente, se necesita almacenar la

siguiente información:

- COMPAÑÍA: Empresa peticionaria.

- PETICIONARIO: Persona dentro de la compañía que realiza la petición.

- CONTACTO: Persona de contacto o puesto del peticionario.

- RECURSOS: Número de recursos solicitados.

- DURACIÓN: Duración estimada del proyecto.

- LUGAR: Lugar donde se desarrollará el proyecto.

- ÁREA: Área tecnológica en la que se enmarcará el proyecto.

- TARIFA: Perfil de los recursos solicitados.

- REQUISITOS: Requisitos técnicos específicos para el desarrollo del

proyecto.

- IMPORTANCIA: Nivel de importancia de la petición (Cliente estratégico,

Proyecto Vital, Operativo, etc.)

- INCORPORACIÓN: Fecha de incorporación de los recursos solicitados.

- COMENTARIOS: Comentarios sobre la petición o sobre alguno de los

apartados anteriores.

Page 22: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 8

Como podemos observar, también es elevada la cantidad de información

que hay que mantener para cada petición, por lo que los problemas son los mismos

que en el departamento de Recursos Humanos.

Una vez registrada una petición, no se podía asignar directamente a un

candidato a ella, ya que sólo se disponía de una aplicación Web de gestión de

empleados. En ella se gestiona la información de cada empleado de la empresa,

como las nóminas, vacaciones y proyectos a los que está asignado dicho

empleado. Por tanto, no se podía asignar a un candidato, hasta que no estaba

registrado en dicha aplicación aunque se supiese que el candidato estaba aceptado

y tenía fecha de incorporación prevista.

Esta aplicación de gestión de empleados también es una aplicación Web

que fue desarrollada a medida hace un par de años, y en la que cada empleado

puede hacer el time reporting de cada mes con las horas que ha dedicado a cada

proyecto al que está asignado, además de otras opciones como calendario de

vacaciones, etc.

Tiene además una parte de gestión, donde cada gerente de área

tecnológica puede consultar los empleados que están en cada proyecto y ver

disponibilidades y necesidades para los nuevos proyectos que van surgiendo.

Por tanto, no hay una aplicación que centralizase las necesidades de los

clientes de la empresa y los candidatos que están en proceso de selección, lo que

podría ahorrar tiempo tras la implantación de este proyecto, ya que es uno de sus

objetivos principales como se muestra en el apartado correspondiente de esta

memoria.

1.3. Estado del arte En este apartado se realiza una introducción a la gestión de Recursos

Humanos en las empresas y se describen otros productos existentes en el mercado

que abordan problemáticas similares, así como la justificación de por qué no

adoptar una de dichas soluciones existentes y por qué se optó por el desarrollo de

este proyecto.

Page 23: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 9

1.3.1. Introducción a la gestión de Recursos Humanos

La gestión de recursos humanos es una actividad que desarrollan todas las

empresas, pues normalmente el activo de mayor valor en una empresa es su

personal. Esto tiene, si cabe, mucha más importancia en una Consultora de

Informática, que se dedica a desarrollar proyectos para sus clientes,

proporcionándoles el mejor equipo de trabajo posible para su realización. Por tanto,

para una empresa como VASS Consultoría de Sistemas, su plantilla es su principal

activo y una buena gestión de estos recursos humanos puede convertirse en un

elemento de diferenciación frente a la competencia.

En concreto, para el proceso de selección de personal, se ha visto la

necesidad de disponer de una herramienta eficiente para su gestión debido a que

una hoja de cálculo es válida en una empresa pequeña, pero en cuanto la empresa

comienza a crecer se torna en una herramienta de gestión insuficiente.

En un interesante artículo escrito por Juan Enrique Melchor para

www.rrhhhmagazine.com [MELC07] se describe el proceso de selección de

candidatos en el mundo laboral y se plantea el mismo problema que nos ocupa y

que ha dado lugar al desarrollo de este proyecto.

“En las grandes y no tan grandes organizaciones, en la

mayoría de las ocasiones existe un proceso de reclutamiento y de

selección externa bien estructurado. Del establecimiento de

objetivos a medio y a largo plazo en la gestión de Recursos

Humanos, se puede inferir cuáles van a ser las necesidades de la

organización y, en consecuencia, qué colaboradores son necesarios

de manera cuantitativa y cualitativa. A través de este análisis se

procederá a elaborar el perfil de los candidatos para los

diferentes puestos de trabajo, y con esta información se diseñará

el plan de ejecución que determinarán los requisitos de la oferta

de trabajo, por un lado, y los medios donde se va a insertar dicha

oferta, por otro.

Hasta ahí, y de forma esquemática, el proceso puede ser

exitoso para determinar la contratación de los candidatos idóneos

Page 24: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 10

tras la inserción en diferentes medios de comunicación: prensa,

empleo público, Internet, archivo de currículos recibidos, etc.

En este momento se inicia el proceso de selección en cinco

fases:

- Recepción de solicitudes por parte de las personas

interesadas en estos puestos de trabajo. Aquí comienza el verdadero

proceso de selección, de hecho, lleva a los responsables a

desarrollar un protocolo de filtros que determinarán qué candidatos

son admitidos.

- Aceptados los primeros candidatos mediante datos objetivos

que aportan cada uno de ellos, empieza la segunda fase, que

consiste en recabar alguna información que acerque a éste al perfil

del puesto de trabajo que se requiere, algunas organizaciones piden

un trabajo teórico a desarrollar sobre un supuesto ficticio del

puesto.

- Analizados estos trabajos comienza la tercera fase, la

entrevista, que pasa por determinar aspectos más concisos sobre las

personas que han superado la fase anterior, de los candidatos

finalistas, es decir, dar respuesta a: ¿cómo es el candidato?, ¿qué

aspecto tiene?, ¿cómo se comunica?, ¿qué capacidad cree tener para

el puesto?, ¿qué puede aportar?, etc., y así un sinfín de

cuestiones que pueden dar luz inicial para conocer al futuro

colaborador que se necesita.

- La cuarta fase analizará toda la información con todos los

responsables implicados en el proceso de selección, gerencia,

Recursos Humanos, directores del departamento de los puestos de

trabajo requeridos, etc., y la toma de decisión del candidato

admitido.

- La quinta fase, que en realidad no se desarrollaría en

último lugar sino durante todo el proceso, consistiría en la

comunicación a los candidatos rechazados de su exclusión. A los que

no han sido admitidos en la primera fase, a los que en la segunda

fase no han encajado en el nivel de conocimientos presentados, a

las personas que no han superado la entrevista.

Page 25: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 11

Pero, ¿este proceso se realiza, o se gestiona de una forma

coherente y responsable hacia las personas que han sido candidatos

durante el proceso de selección?

La mala noticia para todos es que algunas organizaciones

creen que el proceso de selección sólo consiste en contestar de

manera afirmativa al candidato seleccionado. Pero, ¿qué ocurre con

las otras personas que han participado?, quienes, aunque de manera

efímera, en el plan de selección han mostrado cuáles son sus

competencias, su desarrollo de vida laboral, ofreciendo datos

personales de todo tipo, realizando trabajos solicitados,

realizando desplazamientos con sus medios. Personas que no sólo, y

es mucho, han aportado datos e información personal, sino que

también se han implicado emocionalmente en una organización que

podría resolver, en muchos casos, su situación de vida laboral, y

que se han ilusionado con el proyecto.

Tristemente estos candidatos tiene que conformarse con que si

no se les contesta en un plazo aleatorio de tiempo entienden que no

están seleccionados. Una buena ejecución del plan de selección

incluye otro plan de comunicación de resultados hacia los

candidatos en todas las fases del proceso.

Una respuesta de agradecimiento por carta, por e-mail, por

teléfono o por cualquier otro medio, no sólo aliviaría el

conocimiento de la exclusión del proceso al candidato, sino que

mantendría las puertas abiertas para futuros procesos con estas

mismas personas.

En definitiva GANAR-GANAR cuesta muy pocos recursos para que

la organización encumbre de forma brillante la finalización del

proceso de selección.”

Esto es uno de los objetivos que se pretenden con la herramienta que se ha

desarrollado. Se pretende gestionar de manera eficaz todo el proceso y saber en

qué fase del proceso se encuentra cada candidato, indicando en todo momento por

qué ha sido aceptado o rechazado en cada punto, los motivos, si es válido en un

futuro o no, etc. De esta forma se podría garantizar una base de datos muy amplia

Page 26: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 12

que permita a la empresa disponer de un extenso dossier de candidatos disponibles

para el constante cambio de necesidades en el mundo de la informática.

De esta forma, un candidato que no es válido en un momento determinado,

puede ser perfectamente válido en un futuro si el perfil de dicho candidato no se

corresponde con ninguna petición solicitada por algún cliente en ese momento pero

en un futuro llega una petición que se adapte a la perfección a dicho candidato.

Pasemos a ver alguno de los productos líderes en el sector de gestión de

recursos humanos, ver si se ajustan a nuestras necesidades y por último justificar el

por qué hemos decidido el desarrollo de una aplicación nueva, en vez de elegir uno

de dichos productos.

1.3.2. Estado actual del arte de la tecnología

En la actualidad, los productos para la gestión de recursos implantados en

las empresas son los paquetes de software llamados E.R.P. (Enterprise Resource

Planning). Estos paquetes sirven para la planificación de recursos de la empresa

desde módulos para la gestión de la producción, módulos financieros, de relación

con los clientes, de inteligencia de negocio o de Recursos Humanos.

Los principales E.R.P. existentes son los siguientes:

- R/3: de la compañía alemana SAP es uno de los máximos exponentes

del ERP mundial. El de mayor expansión e implantación. Cuenta con

multitud de módulos para casi todas las tareas de gestión de una

empresa. El módulo de gestión de Recursos Humanos es HR, que

cuenta con un sub-módulo de gestión del proceso de selección: RC

(Recruitment).

- PeopleSoft: desde 2005 pertenece a Oracle que adquirió la compañía

PeopleSoft. Permite integrar como gestor de base de datos Oracle. Su

módulo de recursos humanos es HCM (Human Capital Management).

- Microsoft Dyamics Nav 5.0: de Microsoft. Software propietario antes

conocido como Navision. Es uno de los varios ERP comprados por

Microsoft. No tan complejo y completo como los anteriores, pero con una

gran campaña de marketing detrás. No tiene un módulo específico de

gestión de recursos Humanos.

Page 27: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 13

- META4: ERP desarrollado en España. Dispone de los productos

PeopleNet, K-system, eMind y t-innova. En estos momentos se

comercializa en España, Portugal, Francia, Gran Bretaña, Italia, Estados

Unidos, Argentina, Chile y Brasil. El producto t-innova sería el que se

adaptaría a una empresa del tamaño de VASS Consultoría de Sistemas

y dispone de un apartado de Gestión del Capital Humano que cuenta

con un módulo de selección con base de datos de candidatos y gestión

del proceso de selección.

1.3.3. Justificación

En los productos estudiados, que son las principales opciones existentes en

el mercado, no se adaptan a nuestras necesidades concretas del proceso de

selección de candidatos y de gestión de peticiones de clientes. Como son

necesidades muy específicas, habría que adaptar en gran medida los módulos que

vienen por defecto en dichas herramientas, lo que supondría aumentar el elevado

coste que ya tienen de por sí estos productos (desde 30.000€).

Por tanto, se ha considerado que el desarrollo a medida, de una aplicación

Web que gestione las necesidades específicas detectadas es la mejor solución que

se puede adoptar para cubrir dichas necesidades.

Otro punto que ha hecho optar por un desarrollo a medida para cubrir estas

nuevas necesidades descubiertas es que la herramienta de gestión de empleados

existente en la empresa también fue desarrollada a medida. Si en su momento, se

hubiese optado por la implantación de algún módulo de los E.R.P. vistos

anteriormente, posiblemente se hubiesen adquirido los módulos necesarios para

estas nuevas necesidades en la gestión de recursos y de necesidades de clientes.

Con la solución adoptada, se da uniformidad y continuidad a una plataforma

que integrará desde la gestión de nóminas y vacaciones de los empleados hasta la

gestión del proceso de selección o de necesidades de los clientes de la empresa.

Page 28: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 14

2. Propósito, Alcance y Objetivos

2.1. Propósito El propósito de este proyecto consiste en el análisis, desarrollo e

implantación de una aplicación Web J2EE que constará de dos módulos: uno para

la gestión del proceso de selección de candidatos en VASS Consultoría de

Sistemas y otro para la gestión de las necesidades de los clientes de la misma

empresa.

2.2. Alcance El alcance del sistema, en cuanto a su ámbito de explotación, consiste en

una aplicación Web que permita al Departamento de Recursos Humanos y al Área

Comercial de VASS Consultoría de Sistemas, disponer de una herramienta que

centralice y gestione el proceso de selección de candidatos y las necesidades o

peticiones que los clientes realizan a la consultora.

2.2.1. Descripción

El sistema dispondrá de una página inicial con un formulario en la que el

usuario deberá introducir su nombre de usuario y su contraseña para iniciar sesión

en el sistema. La validación de los usuarios deberá ir contra el LDAP organizativo

de la empresa, con el que está funcionando la aplicación existente de gestión de

empleados.

Todas las acciones que realice el usuario en cada sesión quedarán

almacenadas en la base de datos del sistema y en los ficheros de histórico de la

aplicación.

Una vez iniciada la sesión, el usuario dispondrá de una serie de opciones

agrupadas por su naturaleza: candidatos, áreas tecnológicas, sub-áreas

tecnológicas, informes y peticiones. Las cuatro primeras corresponden a las

opciones destinadas al uso del Departamento de Recursos Humanos y la última

para el Área Comercial.

Page 29: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 15

Si el usuario elige el menú de candidatos, dispondrá de tres acciones

principales asociadas: alta de un nuevo candidato para el proceso de selección,

baja de un candidato existente en la aplicación y consultas sobre candidatos.

El proceso de alta será un formulario Web dividido en tres secciones

mediante pestañas: Datos personales, Estado de selección y Skills. En la primera

sección se recogen los datos personales típicos: nombre, dos apellidos, teléfono,

email, DNI., nacionalidad, área y sub-áreas tecnológicas a las que se adapta su

perfil, salario, etc. La segunda sección, se recogen los datos propios de la gestión

del proceso de selección: estado en el que se encuentra actualmente el candidato

dentro del flujo del proceso de selección, entrevistas realizadas con niveles de éxito

(apto, no apto o sin iniciar) y comentarios asociados, fichero con el C.V. adjunto, así

como la propuesta realizada al candidato si ha sido realizada, empresa de

procedencia, etc. En la última sección, estarán datos complementarios sobre la

formación del candidato: titulación, certificados adicionales, idiomas, experiencia

profesional, etc.

El proceso de consultas es de gran complejidad, ya que a través de él se

puede acceder a la información de los candidatos existentes en la base de datos,

así como a modificar sus datos o a generar su Currículo con un formato deseado

para el envío a un cliente de la empresa. Este proceso consta inicialmente de un

formulario Web en el que se puede filtrar por casi todos los atributos de un

candidato, además de por la fecha de alta o de última modificación del candidato en

el sistema y del área y sub-áreas tecnológicas a las que pertenece el candidato. Se

podrá además elegir, por qué atributo se quiere ordenar la consulta.

Una vez realizada la consulta, el sistema le mostrará al usuario un listado

con los candidatos que cumplan con los parámetros de la consulta realizada. En

este listado de resultados se muestra el nombre y apellidos del candidato, el área

tecnológica a la que pertenece, la fecha de alta en el sistema y su estado dentro del

proceso de selección además de un botón en el que pueden ver toda la información

del candidato existente en la base de datos en un formulario idéntico al de alta. En

él se podrán modificar todos los atributos del candidato y guardar dichos cambios

en la base de datos. Otra opción que puede realizar el usuario sobre un candidato

seleccionado tras una consulta, es generar en PDF su Currículo en el formato

Page 30: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 16

elegido de entre las plantillas disponibles en el sistema. Esta opción está definida

como un objetivo secundario del proyecto como se verá en el siguiente apartado de

esta memoria descriptiva.

El último punto en la gestión de candidatos es su proceso de baja. Consiste

en realizar primero una consulta sencilla sobre el candidato existente en la base de

datos que se desea eliminar, por ejemplo, debido a un error al darlo de alta. En esta

consulta sencilla se puede filtrar a los candidatos por nombre, primer apellido,

segundo apellido y DNI. Una vez realizada la consulta, el sistema le mostrará al

usuario un listado con los candidatos que cumplan con los parámetros de la

consulta realizada. En este listado de resultados se muestra el nombre y apellidos

del candidato, el área tecnológica a la que pertenece, la fecha de alta en el sistema

y su estado dentro del proceso de selección además de un botón en el que pueden

ver toda la información del candidato existente en la base de datos en un formulario

idéntico al de alta pero con la opción de confirmar baja en vez de la de dar de alta

en el sistema.

En cuanto a las opciones disponibles para la gestión de áreas y sub-áreas

tecnológicas son las mismas: alta en el sistema y consultas. Estas secciones tienen

opción propia, debido a que la empresa está en continuo crecimiento, por lo que se

ha estimado que debido a que el proceso de selección de candidatos está muy

vinculado a las áreas tecnológicas de la empresa a las que iría destinado el

candidato, era conveniente incorporar una gestión de áreas y sub-áreas que

permitiese modificarlas e incrementarlas según el crecimiento de la empresa.

Por ello, se permite dar de alta en el sistema nuevas áreas con un sencillo

formulario Web en el que se da un identificador y una descripción. Al dar de alta,

automáticamente pasará a incorporarse en el proceso de selección de candidatos,

dando la posibilidad de asociar candidatos a esta nueva área. Para las sub-áreas

tecnológicas es idéntico, añadiendo la asignación del área a la que pertenece.

Además se pueden hacer consultas con un formulario sencillo, tanto de

áreas como de sub-áreas tecnológicas. Una vez realizada la consulta con los

parámetros elegidos por el usuario, el sistema le presentará un listado de aquellas

áreas o sub-áreas que cumplan con los filtros elegidos y se dará la opción de

modificar los datos o de eliminarlos del sistema, según desee el usuario.

Page 31: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 17

Para la sección de informes sobre el proceso de selección, el usuario podrá

elegir entre unos informes predefinidos (candidatos totales por área y candidatos en

el último mes por área) o generar su propio informe. Si selecciona uno de los

informes predefinidos, el sistema presentará el informe deseado consultando la

base de datos, obteniendo un gráfico que representa la información deseada, así

como sus datos numéricos, todo ello en una misma página Web.

En la opción de informes personalizados, el usuario podrá definir un informe

sobre el número de candidatos que cumplan una serie de requisitos definidos con

un formulario y filtrarlos por algún atributo (área tecnológica, estado en el proceso

de selección, perfil, nivel de la propuesta realizada, etc.) en unas fechas

determinadas (último mes, últimos 3 meses, últimos 6 meses, últimos 12 meses y

totales). El resultado se presentará igual que en los informes predefinidos.

La última opción que le queda al usuario es la propia de los usuarios del

Área Comercial, la gestión de peticiones de clientes. En ella se realizan también 2

acciones principales: Alta de peticiones y consultas.

El alta es un sencillo formulario Web donde el usuario introduce los datos de

la petición que ha llegado a la consultora. Estos serán empresa que realiza la

petición, área tecnológica que recoge la petición, peticionario, número de recursos y

perfil solicitado, fecha de incorporación, duración, etc. Una vez rellenado el

formulario, el usuario podrá guardarlo y el sistema lo almacenará en base de datos,

de forma que pueda realizar una consulta sobre dicha petición.

Las consultas consisten en un sencillo formulario Web similar al de alta, y

que presentará una lista de resultados al usuario con las peticiones que

correspondan con los parámetros seleccionados en la consulta. En esta lista se

mostrará para cada petición la empresa que realiza la petición, área tecnológica

que recoge la petición, peticionario, número de recursos y perfil solicitado, fecha de

incorporación y la duración. Sobre cada petición de la lista de resultados, se podrá

consultar más información en un formulario idéntico al de alta, pero que cuenta con

2 opciones adicionales en 2 pestañas nuevas: asignar candidatos y ver candidatos

asignados.

Page 32: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 18

La opción de asignar candidatos es una consulta como la disponible en la

opción de consultas dentro de la sección de candidatos vista anteriormente, con la

peculiaridad, que la lista de resultados permitirá seleccionar aquellos que el usuario

desee asignar a la petición.

Sobre la opción de ver candidatos asignados, permite, como su propio

nombre indica, ver los candidatos que están asignados a dicha petición. Si hay

candidatos asignados, se mostrará un listado con dichos candidatos y se permitirá

al usuario rechazar alguno de los candidatos asignados, de forma se eliminaría su

asignación de dicha petición.

2.3. Objetivos En este apartado se describen los objetivos que pretende cubrir la

realización de este proyecto. Se hará una distinción entre aquellos que se han

considerado principales y los que se han considerado secundarios para la

finalización del proyecto.

2.3.1. Objetivos Principales

El proyecto Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos tiene como objetivo el desarrollo e implantación

de una aplicación Web J2EE que permita una gestión de los datos del proceso de

selección de candidatos y de las peticiones de los clientes a VASS Consultoría de

Sistemas. Esta aplicación debe ser implantada en la Intranet de la empresa para

que sea accesible por los empleados del Departamento de Recursos Humanos y el

Departamento Comercial de la empresa.

Por tanto, los objetivos principales que se pretenden conseguir serán los

siguientes:

- Desarrollo de una aplicación Web que gestione el proceso de selección

de candidatos.

- Desarrollo de una aplicación Web que gestione las peticiones realizadas

a la consultora por parte de sus clientes.

Page 33: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 19

- Implantación en la intranet de la empresa de forma que puedan acceder

tanto los empleados del Departamento de Recursos Humanos como los

del Área Comercial.

- Mejora en la consulta de la información recogida en el proceso de

selección.

- Carga en la nueva plataforma de los datos recogidos hasta ahora en las

distintas hojas de cálculo de Recursos Humanos, de forma que puedan

trabajar únicamente con la nueva aplicación y no tener que mantener las

hojas de cálculo utilizadas antes del desarrollo de este proyecto. Esta

parte se realizará con VBIS (Vignette Business Integration Studio) que

es una herramienta que permite la migración de datos desde una fuente

origen a otra destino (pasarán datos de hoja de cálculo MS Excel a base

de datos MYSQL).

- Integración con la plataforma de gestión de empleados existente, de

forma que se puedan usar los mismos usuarios que en ella.

Todos los objetivos principales han quedado cubiertos por lo que se han

cubierto las necesidades identificadas en el estudio de la problemática que dio

origen a este proyecto.

2.3.2. Objetivos Secundarios

Los objetivos secundarios, son los que se definieron como mejoras a

incorporar en la aplicación en el momento de definir el proyecto. Además de los

problemas vistos en el apartado de Planteamiento del Problema, que se han

recogido como objetivos principales, se observaron otras necesidades no tan

prioritarias como las principales, pero que podían ayudar a mejorar la gestión en el

Departamento de Recursos Humanos.

Una vez terminado el proceso de selección de forma positiva, el candidato

era asignado a algún proyecto, por lo que debía cumplimentarse su Currículo en el

formato del cliente al que iba destinado. Una tarea que hasta ahora debía realizar el

propio candidato actualizando una plantilla proporcionada por el Departamento de

Recursos Humanos con el formato solicitado por el cliente. Esto demoraba un

proceso que se podría automatizar, generando automáticamente el C.V. del

Page 34: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 20

candidato en el formato deseado a partir de la información recogida en la

aplicación.

Otra necesidad que se sugirió como ampliación del proyecto era la

posibilidad de una generación de informes sobre el proceso de selección de

candidatos, donde de una manera sencilla se pudiesen consultar datos interesantes

para el departamento de Recursos Humanos como el número de candidatos

entrevistados en los últimos 3 con un perfil de analista o el número de candidatos

captados por cada área tecnológica.

Con esta información podrían ver puntos fuertes y débiles del proceso de

selección, estudiando los informes generados. Es un plus que podría proporcionar

este proyecto puesto que es una información muy útil para realizar mejoras en el

proceso de selección de candidatos ya que actualmente no disponen de ninguna

herramienta con la que obtener ese tipo de información.

En resumen, podríamos destacar esos dos objetivos como los objetivos

secundarios de este proyecto:

- Generación automática de Currículo en el formato del cliente peticionario

del proyecto al que el candidato ha sido asignado.

- Generación de informes sobre el proceso de selección de candidatos, a

partir de la información recogida en la aplicación.

Los objetivos secundarios también han sido cubiertos con la realización de

este proyecto, integrando en el módulo diseñado para el departamento de Recursos

Humanos las opciones de generación de informes (tanto unos informes pre-

definidos como un formulario donde pueden personalizar qué tipo de informe se

desea).

Asimismo se ha incluido una utilidad que permite seleccionar para cada

candidato qué tipo de plantilla de su Currículo desea y se genera automáticamente

a partir de la información recogida al dar de alta el candidato. Sobre esta utilidad

cabe decir que se han desarrollado 3 plantillas que generan un C.V en formato PDF

(Portable Document File) según la plantilla elegida: la propia de VASS (para clientes

que no solicitan un formato de C.V. propio), otra de IECISA y otra de ISBAN (que

son los principales clientes para los que trabaja la empresa).

Page 35: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 21

3. Metodología En este apartado se describe la metodología seguida para la realización del

proyecto. En primer lugar, se hará una introducción a la Programación Orientada a

Objetos (POO) en la que se ha basado el desarrollo del proyecto. En segundo

lugar, se realizará una introducción a la aplicación de este tipo de programación en

el desarrollo de aplicaciones Web en el lenguaje Java: J2EE. Por último, se

describirá el patrón de diseño elegido para la implementación de la aplicación Web:

el Modelo Vista Controlador (MVC).

3.1. Programación Orientada a Objetos

3.1.1. Introducción

Tradicionalmente la programación era estructurada. Esto quiere decir que se

tenía el concepto de programa como una entidad capaz de coger unos datos de

partida, procesarlos aplicándoles ciertos algoritmos y obtener unos resultados.

Esta visión estaba orientada a procedimientos o funciones, donde los datos

siguen un flujo de entrada al programa, paso por los distintos procedimientos que lo

componen hasta obtener unos resultados esperados que son la salida del

programa. En este tipo de programación están basados lenguajes de programación

como C o Pascal y la representación de dichos programas se realiza mediante

diagramas de flujo o flow charts.

Esta estructura de los programas permitían un desarrollo de los programas

que facilitaban su comprensión posterior ya que era una estructura secuencial sin

saltos incondicionales y que estaba basado en únicamente tres sentencias de

control: secuencia, instrucción condicional e iteración (bucle de instrucciones).

El gran inconveniente que presentaba este tipo de programación era su

concepción de un programa como un único bloque, que cuando era de un tamaño

considerable se tornaba en inmanejable. Para resolver este problema apareció la

Page 36: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 22

programación modular, donde se dividía el bloque del programa en módulos

independientes que interactúan entre ellos con unos interfaces bien conocidos.

La Programación Orientada a Objetos es un paradigma de este tipo de

programación, que se basa en una entidad denominada objeto que combina estado

(es decir, datos), identidad (es decir, atributos que lo definen) y comportamiento

(métodos o procedimientos). Con esta visión, un programa se representa como una

serie de estos objetos relacionándose entre sí para conseguir un objetivo común.

Los objetos son instancias de una clase que es una abstracción de la

realidad recogiendo los atributos y funcionalidad común a un grupo de objetos. De

esta forma, cuando se le da valor a los atributos, tenemos una instancia de una

clase, es decir, un objeto de dicha clase.

Este paradigma de programación permite definir los programas en módulos

más fáciles de desarrollar, mantener y reutilizar y trata los datos y funcionalidad en

una entidad de manera indivisible, al contrario que en la programación estructurada.

3.1.2. Conceptos básicos

- Objeto: Entidad provista de un conjunto de propiedades o atributos

(datos) y de comportamiento o funcionalidad (métodos). Corresponden a

los objetos reales del mundo que nos rodea, o a objetos internos del

sistema (del programa).

- Clase: Definiciones de las propiedades y comportamiento de un tipo de

objeto concreto.

- Instancia: Es la manifestación concreta de una clase (proceso

normalmente nombrado como instanciación). Esto es, un objeto con

valores concretos. También puede nombrarse como ocurrencia.

- Método: Algoritmo asociado a un objeto (o a una clase de objetos), cuya

ejecución se desencadena tras la recepción de un "mensaje". Desde el

punto de vista del comportamiento, es lo que el objeto puede hacer. Un

método puede producir un cambio en las propiedades del objeto, o la

generación de un "evento" con un nuevo mensaje para otro objeto del

sistema.

Page 37: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 23

- Evento: Es un suceso en el sistema (por ejemplo una interacción del

usuario con la máquina o un mensaje enviado por un objeto). El sistema

maneja el evento enviando el mensaje adecuado al objeto pertinente.

También se puede definir como evento, a la reacción que puede

desencadenar un objeto, es decir la acción que genera.

- Mensaje: Es una comunicación dirigida a un objeto, que le ordena que

ejecute uno de sus métodos con ciertos parámetros asociados al evento

que lo generó.

- Propiedad o atributo: Es un contenedor de un tipo de datos asociados a

un objeto (o a una clase de objetos), que hace los datos visibles desde

fuera del objeto, y cuyo valor puede ser alterado por la ejecución de

algún método.

- Estado interno: Es una propiedad invisible de los objetos, que puede ser

únicamente accedida y alterada por un método del objeto, y que se

utiliza para indicar distintas situaciones posibles para el objeto (o clase

de objetos).

- Componentes de un objeto: atributos, identidad, relaciones y métodos.

- Representación de un objeto: Un objeto se representa por medio de una

tabla o entidad que esté compuesta por sus atributos y funciones

correspondientes.

3.1.3. Paradigmas

- Abstracción: Consiste en extraer la información esencial de un problema

omitiendo los detalles menos significativos. Un objeto es una abstracción

de la realidad. La clave de la programación orientada a objetos está en

abstraer los métodos y datos comunes a un conjunto de objetos y

representarlos en una clase.

- Encapsulamiento: Es un agrupamiento bajo un mismo nombre de la

información y las operaciones que acceden a ella. Permite reunir a todos

los elementos que puedan considerarse pertenecientes a una misma

entidad, al mismo nivel de abstracción. Esto permite aumentar la

cohesión de los componentes del sistema.

- Ocultación de la información: Cada objeto está aislado del exterior, es un

módulo natural, y cada tipo de objeto expone una interfaz a otros objetos

que especifica cómo pueden interactuar con los objetos de la clase. El

Page 38: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 24

aislamiento protege a las propiedades de un objeto contra su

modificación por quien no tenga derecho a acceder a ellas, solamente

los propios métodos internos del objeto pueden acceder a su estado.

Esto asegura que otros objetos no pueden cambiar el estado interno de

un objeto de maneras inesperadas. Así se eliminan efectos secundarios

e interacciones inesperadas. Algunos lenguajes relajan esto, permitiendo

un acceso directo a los datos internos del objeto de una manera

controlada y limitando el grado de abstracción.

- Polimorfismo: Comportamientos diferentes, asociados a objetos

distintos, pueden compartir el mismo nombre. Al llamarlos por ese

nombre se utilizará el comportamiento correspondiente al objeto que se

esté usando.

- Herencia: Las clases no están aisladas, sino que se relacionan entre sí

formando una jerarquía de clasificación. Los objetos heredan las

propiedades y el comportamiento de todas las clases a las que

pertenecen. La herencia organiza y facilita el polimorfismo y el

encapsulamiento, permitiendo a los objetos ser definidos y creados

como tipos especializados de objetos preexistentes. Estos pueden

compartir y extender su comportamiento sin tener que volver a

implementarlo.

3.2. J2EE Java 2 Platform, Enterprise Edition es una plataforma de programación

perteneciente al lenguaje para desarrollar y ejecutar software de aplicaciones en

lenguaje de programación Java en una arquitectura distribuida, basándose

ampliamente en componentes modulares ejecutándose sobre un servidor de

aplicaciones.

El lenguaje Java es independiente de la máquina, lo que lo hace perfecto

para aplicaciones distribuidas que deban integrar diferentes arquitecturas. Esto es

posible, gracias a que no es un lenguaje compilado para una arquitectura concreta,

sino que se compila para una máquina virtual, que es la que interpreta para cada

arquitectura el desarrollo realizado.

Page 39: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 25

En concreto, la plataforma J2EE proporciona una serie de funcionalidades

específicas para el desarrollo de aplicaciones empresariales:

- JDBC: Acceso a Base de Datos.

- RMI: Acceso a métodos remotos.

- E-Mail: Funciones de correo electrónico.

- JMS: Servicios de mensajería.

- WS: Servicios Web.

- XML: Estándar para el intercambio de información estructurada entre

diferentes plataformas.

- Servlets: Objetos que corren dentro del contexto de un servidor de

aplicaciones.

- JSP: Tecnología que permite generar páginas Web con contenido

dinámico a partir de scripts.

- Beans: Componente software reutilizable.

Para el desarrollo del proyecto se han usado las tecnologías JDBC, JSP,

Servlets y Beans.

3.3. MVC El Modelo Vista Controlador (MVC) es un patrón de arquitectura software

que separa los datos de una aplicación, la interfaz de usuario y la lógica de control

en tres componentes distintos:

- Modelo: Esta es la representación específica de la información con la

cual el sistema opera. La lógica de datos asegura la integridad de estos

y normalmente comprende el acceso a esos datos por parte de la

aplicación Web, representando y encapsulando así la lógica de negocio.

Se puede implementar con JavaBeans, Plain Old Java Objects (POJO) o

Enterprise Java Beans (EJB).

- Vista: Este componente presenta el modelo en un formato adecuado

para interactuar, usualmente la interfaz de usuario que en el caso que

nos ocupa serán páginas Web (normalmente una JSP).

- Controlador: Este responde a eventos, usualmente acciones del usuario

e invoca cambios en el modelo y probablemente en la vista. Se

implementará como Servlets.

Page 40: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 26

En la siguiente imagen se muestra el proceso que rige este patrón de

diseño:

Figura 3.3.1: Modelo Vista Controlador

Para las aplicaciones Web, se ha desarrollad un Modelo 2 o MVC2 que evita

que el modelo sea que el notifique a la Vista de los cambios de estado que se han

producido. De este modo, la Vista sólo se relaciona con el modelo a través del

controlador. Lo podemos ver en la siguiente imagen:

Figura 3.3.2: MVC2

La principal ventaja que proporciona este patrón de diseño es una clara

separación en capas de los distintos componentes de la aplicación Web, lo que nos

Page 41: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 27

permite una reutilización mayor de los módulos, así como una mayor facilidad en el

mantenimiento y una mayor versatilidad al facilitar la escalabilidad.

3.4. Metodología seguida en el desarrollo Una vez visto una introducción general a los paradigmas usados para el

desarrollo del proyecto, se reflejará en este apartado la aplicación de dichos

paradigmas al desarrollo de este proyecto.

Para obtener la aplicación final se ha seguido la siguiente metodología, con

unos pasos bien diferenciados y que han permitido desarrollar este proyecto de una

forma estructurada para conseguir cumplir todos los objetivos. Esta metodología se

basa en el siguiente diagrama:

Figura 3.4.1: Diagrama Flujo de Desarrollo

El diagrama es bastante explicativo de la metodología seguida. Una vez

identificado un requisito, se desarrolla su caso de uso, que da lugar a un diagrama

de secuencia. Una vez obtenido este diagrama, se desarrolla el código que permite

ejecutar su flujo de operaciones de una forma correcta y se realizan las pruebas

unitarias correspondientes para comprobar que se ha cumplido el requisito

planteado inicialmente

Tras desarrollar varios requisitos que completen un módulo de la aplicación

se procede a la implantación, que seguirá la siguiente metodología:

Figura 3.4.2: Flujo implantación

Page 42: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 28

En ella podemos apreciar que se hace una implantación por cada versión de

la aplicación, no por cada requisito desarrollado, sino cuando se completen varios

que permitan al menos disponer de un módulo operativo. No tiene sentido implantar

una versión de la aplicación que no complete una operación, por ejemplo

desarrollar la interfaz de un módulo pero no darle la funcionalidad esperada.

Esto podría llevar al usuario a pensar que hay un error y que la aplicación no

funciona, cuando la realidad sería que todavía no se ha desarrollado la

funcionalidad de dicha parte.

Por ello, tras la implantación de una versión se procederá a realizar un caso

de pruebas del sistema generar que darán lugar en caso de que resulten positivas a

una validación de la versión de la aplicación que se acaba de implantar.

Page 43: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 29

4. Análisis de Requisitos Este apartado tiene por objetivo identificar y analizar toda la casuística y

necesidades para cubrir todos los objetivos, tanto principales como secundarios, de

este proyecto.

4.1. Identificación de Requisitos A continuación se detallan todos los requisitos identificados como

necesarios para cubrir la funcionalidad deseada del sistema.

4.1.1. Módulo de RR.HH.

RQ-RRHH-AC: Dar de alta un candidato en el sistema v0.1

Requisito: Dar de alta un candidato en el sistema Código: RQ-RRHH-AC Fecha: 21/07/2006 Versión: 0.1 Descripción: Esta funcionalidad permite dar de alta un candidato en el sistema.

Se deberá recoger y almacenar la siguiente información: - Nombre * - Primer Apellido * - Segundo Apellido - DNI * - E-Mail * - Teléfono 1 * - Teléfono 2 - CV Adjunto (en formato MS Word o PDF) * - Estado en el proceso de selección * - Entrevista Personal

Sin iniciar Apto No Apto

- Entrevista Técnica Sin iniciar Apto No apto

No debe dejar introducir un candidato existente en el sistema. Para ello, se comprobará antes de dar de alta el DNI del nuevo candidato. * Los atributos marcados con asterisco serán obligatorios.

Categoría: Requisito Funcional Requisitos relacionados:

Page 44: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 30

Cambios respecto a la Versión anterior:

N/A

Observaciones:

RQ-RRHH-AC: Dar de alta un candidato en el sistema v0.2

Requisito: Dar de alta un candidato en el sistema Código: RQ-RRHH-AC Fecha: 21/08/2006 Versión: 0.2 Descripción: Misma funcionalidad que en versión 0.1 Categoría: Requisito Funcional Requisitos relacionados:

Cambios respecto a la Versión anterior:

Incluir los siguientes nuevos atributos al dar de alta un candidato en el sistema:

- Área tecnológica * - Fecha recepción CV * - Canal recepción Candidato - Entrevista Telefónica

Sin iniciar Apto No Apto

- Comentarios entrevistas - Disponibilidad incorporación - Empresa procedencia - Oficina destino - Lugar residencia - Idiomas, con niveles:

Alto Medio Bajo

- Disponibilidad viajar - Salario actual - Perfil VASS - Propuesta realizada - Fecha propuesta - Fecha entrevista

* Los atributos marcados con asterisco son obligatorios. Observaciones:

RQ-RRHH-AC: Dar de alta un candidato en el sistema v0.3

Requisito: Dar de alta un candidato en el sistema Código: RQ-RRHH-AC Fecha: 14/09/2006 Versión: 0.3 Descripción: Misma funcionalidad que en versión 0.1 Categoría: Requisito Funcional Requisitos relacionados:

Page 45: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 31

Cambios respecto a la Versión anterior:

Incluir los siguientes nuevos atributos al dar de alta un candidato en el sistema:

- Fecha de nacimiento - Nacionalidad - Permiso de trabajo - Tipo de visado - Salario deseado - Fecha de alta - Fecha de última modificación - Motivos rechazo oferta - Motivos no válido - Empleado que lo recomienda - Titulación, divida en tres tipos:

Universitaria F.P. Otros

- Categoría profesional, con los siguientes valores: PAPI Programador PS Analista Consultor Técnico Consultor Funcional Administrador Jefe de Proyecto Otro

- Años de experiencia - Certificaciones - Sub-Áreas tecnológicas

Cambiar el atributo Años de Experiencia por Experiencia Desde, ya que se desea conocer el año en el que empezó a trabajar, no los años de experiencia en el momento de introducir el candidato. Distribuir los atributos en tres secciones: Datos personales, Estado de Selección y Skills.

Observaciones:

RQ-RRHH-AC: Dar de alta un candidato en el sistema v1.0

Requisito: Dar de alta un candidato en el sistema Código: RQ-RRHH-AC Fecha: 30/03/2007 Versión: 1.0 Descripción: Requisitos definitivos al dar de alta: Esta funcionalidad permite dar de alta

un candidato en el sistema. Se deberá recoger y almacenar la siguiente información: DATOS PERSONALES:

- Nombre * - Primer Apellido * - Segundo Apellido - DNI *

Page 46: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 32

- E-Mail * - Teléfono 1 * - Teléfono 2 - Fecha de Nacimiento - Oficina - Lugar de residencia - Nacionalidad - Permiso de trabajo - Tipo de visado - Disponibilidad para viajar - Áreas tecnológicas - Sub-Áreas tecnológicas - Salario actual - Salario solicitado - Beneficios sociales - Otras retribuciones

ESTADO SELECCIÓN: - Estado en el proceso de selección * - Motivos rechazo oferta - Motivos no válido - Entrevista Telefónica

Sin iniciar Apto No Apto

- Comentario Entrevista Telefónica - Entrevista Personal

Sin iniciar Apto No Apto

- Comentarios Entrevista Personal - Entrevista Técnica

Sin iniciar Apto No apto

- Comentarios Entrevista Técnica - Fecha entrevista - Disponibilidad Incorporación - CV Adjunto (en formato MS Word o PDF) - Fecha Realización Propuesta - Propuesta Adjunta (en formato MS Word o PDF) - Nivel de la Propuesta Realizada - Canal de Recepción Candidato - Empleado que lo recomienda - Empresa de Procedencia

SKILLS: - Titulación

Universitaria FP Otros

- Perfil - Experiencia Desde - Certificaciones - Otra formación - Experiencia Profesional

Page 47: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 33

- Idiomas, con niveles: Alto Medio Bajo

* Los atributos marcados con asterisco serán obligatorios.

Categoría: Requisito Funcional Requisitos relacionados:

Cambios respecto a la Versión anterior:

DNI, E-Mail y CV adjunto dejan de ser obligatorios. Incluir los siguientes nuevos atributos al dar de alta un candidato en el sistema:

- Usuario que dio de alta el candidato - Usuario que realizó la última modificación del candidato - Adjuntar fichero con la propuesta realizada - Beneficios sociales - Otras retribuciones - Otra formación - Experiencia profesional

Incluir validación al dar de alta por nombre y apellidos además de por DNI que estaba definido en la versión 0.1 de este requisito. Debido a que el DNI ha dejado de ser un atributo obligatorio se podrían producir duplicidad de candidatos al dar de alta si no se comprueba si el nombre y apellidos ya existen.

Observaciones:

RQ-RRHH-CC: Consultar candidatos en el sistema v0.1

Requisito: Consultar candidatos en el sistema Código: RQ-RRHH-CC Fecha: 21/07/2006 Versión: 0.1 Descripción: Esta funcionalidad permite consultar los candidatos dados de alta en el

sistema. Se podrá realizar búsquedas por cualquier atributo de un candidato, además de por el área tecnológica a la que pertenece.

Categoría: Requisito Funcional Requisitos relacionados:

Cambios respecto a la Versión anterior:

N/A

Observaciones:

RQ-RRHH-CC: Consultar candidatos en el sistema v0.2

Requisito: Consultar candidatos en el sistema Código: RQ-RRHH-CC Fecha: 30/03/2007 Versión: 0.2 Descripción: Misma funcionalidad que en v0.1

Page 48: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 34

Categoría: Requisito Funcional Requisitos relacionados:

Cambios respecto a la Versión anterior:

Incluir filtro por sub-áreas, a parte de por áreas tecnológicas. Incluir filtro por fechas de alta, última modificación y de entrevista anteriores y posteriores a unas fechas introducidas. Incluir filtro adicional por el atributo de candidato: Otra formación Incluir opción que permita ordenar la búsqueda por el atributo deseado.

Observaciones:

RQ-RRHH-BC: Dar de baja un candidato en el sistema v0.1

Requisito: Dar de baja un candidato en el sistema Código: RQ-RRHH-BC Fecha: 21/07/2006 Versión: 0.1 Descripción: Esta funcionalidad permite dar de baja un candidato dado de alta en el

sistema. Para eliminar un candidato, se hará buscándolo por DNI ya que es el único atributo único para un candidato.

Categoría: Requisito Funcional Requisitos relacionados:

RQ-RRHH-CC

Cambios respecto a la Versión anterior:

N/A

Observaciones:

RQ-RRHH-BC: Dar de baja un candidato en el sistema v1.0

Requisito: Dar de baja un candidato en el sistema Código: RQ-RRHH-BC Fecha: 30/03/2007 Versión: 1.0 Descripción: Misma funcionalidad que en v0.1. Categoría: Requisito Funcional Requisitos relacionados:

RQ-RRHH-CC

Cambios respecto a la Versión anterior:

Incluir filtros adicionales de búsqueda para dar de baja un candidato del sistema por nombre, primer apellido, segundo apellido y área tecnológica a parte de por DNI ya que este no es un campo obligatorio y puede no encontrarse el candidato a dar de baja en el sistema.

Observaciones: Se ha observado que al eliminar la restricción de obligatoriedad del DNI como atributo al dar de alta un candidato, el sistema puede evitar que se den de alta dos candidatos que coincidan en nombre y apellidos si no se dispone de su DNI.

Page 49: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 35

RQ-RRHH-MC: Modificar un candidato en el sistema v1.0

Requisito: Modificar un candidato en el sistema Código: RQ-RRHH-MC Fecha: 21/07/2006 Versión: 1.0 Descripción: Esta funcionalidad permite modificar un candidato existente en el sistema.

Para ello, se realizará una consulta sobre los candidatos existentes en el sistema y una vez obtenido una lista de resultados, se podrá seleccionar el deseado para modificar los valores de sus atributos que estén guardados en el sistema (los definidos al dar de alta el candidato en RQ-RRHH-AC).

Categoría: Requisito Funcional Requisitos relacionados:

RQ-RRHH-CC, RQ-RRHH-AC

Cambios respecto a la Versión anterior:

N/A

Observaciones: La funcionalidad de modificar un candidato en el sistema, se tiene que adaptar según los requisitos que se definan para el alta del sistema, de forma que al modificar se puedan actualizar los mismos atributos de un candidato que al darlo de alta en el sistema.

RQ-RRHH-CV: Generar el CV de un Candidato en PDF v1.0

Requisito: Generar el CV de un Candidato en PDF Código: RQ-RRHH-CV Fecha: 30/03/2007 Versión: 1.0 Descripción: Esta funcionalidad permite generar el Currículo de un Candidato en

formato PDF a partir de la información recogida en el sistema. El CV se generará según varias plantillas de los clientes más importantes de la empresa para automatizar el proceso de envío de currículos a los clientes de la empresa. Se permitirá por tanto, elegir entre varias plantillas el formato del CV deseado.

Categoría: Requisito Funcional Requisitos relacionados:

RQ-RRHH-CC

Cambios respecto a la Versión anterior:

N/A

Observaciones:

RQ-RRHH-AA: Dar de alta de un área tecnológica v1.0

Requisito: Dar de alta un área tecnológica Código: RQ-RRHH-AA Fecha: 21/08/2006 Versión: 1.0 Descripción: Esta funcionalidad permite dar de alta áreas tecnológicas en el sistema para

gestionar un posible crecimiento en el futuro de las áreas en las que trabaja

Page 50: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 36

la empresa. Se permitirá almacenar en el sistema la siguiente información:

- Nombre * - Descripción

* Los atributos marcados con asterisco son obligatorios. Se comprobará que no existe un área tecnológica con dicho nombre.

Categoría: Requisito Funcional Requisitos relacionados:

Cambios respecto a la Versión anterior:

N/A

Observaciones:

RQ-RRHH-BA: Dar de baja de un área tecnológica v1.0

Requisito: Dar de baja un área tecnológica Código: RQ-RRHH-BA Fecha: 21/08/2006 Versión: 1.0 Descripción: Esta funcionalidad permite dar de baja áreas tecnológicas existentes en el

sistema. Para ello, se realiza una consulta por el nombre del área que se desea eliminar ya que es el campo clave de las áreas tecnológicas.

Categoría: Requisito Funcional Requisitos relacionados:

RQ-RRHH-CA

Cambios respecto a la Versión anterior:

N/A

Observaciones:

RQ-RRHH-CA: Consultar áreas tecnológicas v1.0

Requisito: Consultar áreas tecnológicas Código: RQ-RRHH-CA Fecha: 21/08/2006 Versión: 1.0 Descripción: Esta funcionalidad permite realizar búsquedas por el nombre del área

tecnológica entre todas las existentes en el sistema. Categoría: Requisito Funcional Requisitos relacionados:

RQ-RRHH-CA

Cambios respecto a la Versión anterior:

N/A

Observaciones:

RQ-RRHH-MA: Modificar un área tecnológica v1.0

Page 51: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 37

Requisito: Modificar un área tecnológica Código: RQ-RRHH-MA Fecha: 21/08/2006 Versión: 1.0 Descripción: Esta funcionalidad permite modificar un área tecnológica existente en el

sistema. Para ello, se realiza una consulta por el nombre del área. De entre los resultados obtenidos, se modificará aquella que desee el usuario, permitiendo modificar tanto nombre como descripción.

Categoría: Requisito Funcional Requisitos relacionados:

RQ-RRHH-CA

Cambios respecto a la Versión anterior:

N/A

Observaciones:

RQ-RRHH-AS: Dar de alta de una sub-área tecnológica v1.0

Requisito: Dar de alta un sub-área tecnológica Código: RQ-RRHH-AS Fecha: 14/09/2006 Versión: 1.0 Descripción: Esta funcionalidad permite dar de alta sub-áreas tecnológicas en el sistema

para gestionar un posible crecimiento en el futuro de las sub-áreas en las que trabaja la empresa. Se permitirá almacenar en el sistema la siguiente información:

- Área tecnológica a la que pertenece * - Nombre del sub-área tecnológica *

* Los atributos marcados con asterisco son obligatorios. Se comprobará que no existe una sub-área tecnológica con dicho nombre en el área donde se desea dar de alta.

Categoría: Requisito Funcional Requisitos relacionados:

Cambios respecto a la Versión anterior:

N/A

Observaciones:

RQ-RRHH-BS: Dar de baja de una sub-área tecnológica v1.0

Requisito: Dar de baja una sub-área tecnológica Código: RQ-RRHH-BS Fecha: 14/09/2006 Versión: 1.0 Descripción: Esta funcionalidad permite dar de baja sub-áreas tecnológicas existentes en

el sistema. Para ello, se realiza una consulta por el nombre del sub-área que

Page 52: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 38

se desea eliminar y por el nombre del área tecnológica a la que pertenece. Categoría: Requisito Funcional Requisitos relacionados:

RQ-RRHH-CS

Cambios respecto a la Versión anterior:

N/A

Observaciones:

RQ-RRHH-CS: Consultar sub-áreas tecnológicas v1.0

Requisito: Consultar sub-áreas tecnológicas Código: RQ-RRHH-CS Fecha: 14/09/2006 Versión: 1.0 Descripción: Esta funcionalidad permite realizar búsquedas por el nombre del área

tecnológica a la que pertenece y por el nombre del sub-área que se desesa encontrar entre todas las existentes en el sistema. El nombre del área tecnológica a la que pertenece será obligatorio en la búsqueda para que no se puedan confundir sub-áreas con el mismo nombre pertenecientes a dos áreas tecnológicas distintas.

Categoría: Requisito Funcional Requisitos relacionados:

RQ-RRHH-CS

Cambios respecto a la Versión anterior:

N/A

Observaciones:

RQ-RRHH-MS: Modificar una sub-área tecnológica v1.0

Requisito: Modificar una sub-área tecnológica Código: RQ-RRHH-MS Fecha: 14/09/2006 Versión: 1.0 Descripción: Esta funcionalidad permite modificar un área tecnológica existente en el

sistema. Para ello, se realiza una consulta por el nombre del área. De entre los resultados obtenidos, se modificará aquella que desee el usuario, permitiendo modificar sólo su nombre, no el área a la que pertenece.

Categoría: Requisito Funcional Requisitos relacionados:

RQ-RRHH-CS

Cambios respecto a la Versión anterior:

N/A

Observaciones:

RQ-RRHH-IP: Generar informes predefinidos v1.0

Page 53: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 39

Requisito: Generar informes predefinidos Código: RQ-RRHH-IP Fecha: 30/03/2007 Versión: 1.0 Descripción: Esta funcionalidad permitirá generar informes dinámicos predefinidos en el

sistema de una forma sencilla. Para ello, se permitirá al usuario elegir entre los dos informes siguientes:

- Número de candidatos existentes por áreas tecnológicas - Número de candidatos dados de alta en el último mes por áreas

tecnológicas. Se mostrará un gráfico (sectorial en el primer caso y de barras en el segundo), así como los datos obtenidos.

Categoría: Requisito Funcional Requisitos relacionados:

Cambios respecto a la Versión anterior:

N/A

Observaciones:

RQ-RRHH-IA: Generar informes personalizados v1.0

Requisito: Generar informes personalizados Código: RQ-RRHH-IA Fecha: 30/03/2007 Versión: 1.0 Descripción: Esta funcionalidad permitirá generar informes dinámicos personalizados

por el usuario: “ad-hoc reporting”. Para ello, se permitirá al usuario de forma sencilla parametrizar los informes por los siguientes atributos:

- Estado - Entrevista Telefónica - Entrevista Personal - Entrevista Técnica - Comentarios Entrevista Telefónica - Comentarios Entrevista Personal - Comentarios Entrevista Técnica - Motivos Rechazo - Motivos No Válido - Empleado que lo recomienda - Empresa Procedencia - Experiencia Desde - Oficina Destino - Disponibilidad viajar

Una vez definidos todos los atributos que deben cumplir los candidatos sobre el número de candidatos de los que se desea obtener el informe, se le permitirá al usuario elegir por qué atributos agrupar a los candidatos en el informe de entre los siguientes:

Page 54: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 40

- Área - Estado - Perfil - Nivel de la propuesta - Canal de recepción - Experiencia

Además se permitirá al usuario, elegir un rango de fechas en la que los candidatos sobre los que desea obtener el informe fueron dados de alta en el sistema. Estos rangos serán los siguientes:

- Último mes - Últimos 3 meses - Últimos 6 meses - Último año - Totales (sobre todos los existentes en el sistema, sin importar

fecha de alta). Se mostrará un gráfico de barras, así como los datos obtenidos.

Categoría: Requisito Funcional Requisitos relacionados:

Cambios respecto a la Versión anterior:

N/A

Observaciones:

RQ-RRHH-CD: Carga de datos antiguos en el sistema v1.0

Requisito: Carga de datos antiguos en el sistema Código: RQ-RRHH-CD Fecha: 14/09/2006 Versión: 1.0 Descripción: Se necesita un volcado de los datos de las hojas de cálculo MS Excel con

los que trabajaban en el Departamento de Recursos Humanos en el sistema, de forma que el nuevo sistema permita disponer de los datos sobre candidatos recogidos antes de la puesta en explotación del mismo.

Categoría: Requisito No Funcional Requisitos relacionados:

Cambios respecto a la Versión anterior:

N/A

Observaciones: Esta carga de datos, no la realizará el usuario de recursos humanos manualmente, sino que se automatizará el volcado de datos al nuevo sistema.

Page 55: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 41

4.1.2. Módulo Comercial

RQ-COM-AP: Realizar Alta de una Petición en el sistema v1.0

Requisito: Realizar Alta de una Petición en el sistema Código: RQ-COM-AP Fecha: 14/09/2006 Versión: 1.0 Descripción: Esta funcionalidad permitirá dar de alta una petición en el sistema.

Se deberá recoger y almacenar la siguiente información:

- Compañía que origina la petición * - Peticionario * - Puesto del peticionario - Área tecnológica en la que se enmarca la petición * - Número de recursos solicitados * - Fecha de incorporación - Duración estimada (puede ser días, semanas, meses o años). - Perfil solicitado * - Lugar de trabajo - Requisitos técnicos - Importancia petición - Comentarios

* Los campos marcados con asterisco son obligatorios

Categoría: Requisito Funcional Requisitos relacionados:

Cambios respecto a la Versión anterior:

N/A

Observaciones:

RQ-COM-CP: Consultar una Petición en el sistema v1.0

Requisito: Consultar una Petición en el sistema Código: RQ-COM-CP Fecha: 14/09/2006 Versión: 1.0 Descripción: Esta funcionalidad permitirá realizar consultas sobre las peticiones

existentes en el sistema, dejando libertad al usuario de filtrar por los siguientes atributos:

- Compañía - Peticionario - Área Tecnológica - Fecha de incorporación - Lugar de trabajo - Perfil solicitado

Page 56: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 42

- Requisitos técnicos - Importancia de petición

Categoría: Requisito Funcional Requisitos relacionados:

Cambios respecto a la Versión anterior:

N/A

Observaciones:

RQ-COM-MP: Modificar una Petición existente en el sistema v1.0

Requisito: Modificar una Petición existente en el sistema Código: RQ-COM-MP Fecha: 14/09/2006 Versión: 1.0 Descripción: Esta funcionalidad permitirá realizar modificaciones de los datos

guardados de una petición existente en el sistema. Para ello, y tras realizar una consulta entre las peticiones existentes (RQ-COM-CP) se permitirá elegir una de ellas para modificar los datos según los valores almacenados al dar de alta (RQ-COM-AP).

Categoría: Requisito Funcional Requisitos relacionados:

RQ-COM-CP, RQ-COM-AP

Cambios respecto a la Versión anterior:

N/A

Observaciones:

RQ-COM-AC: Asignar Candidatos a una Petición existente en el sistema

v1.0

Requisito: Asignar Candidatos a una Petición existente en el sistema Código: RQ-COM-AC Fecha: 14/09/2006 Versión: 1.0 Descripción: Esta funcionalidad permitirá asignar candidatos a una petición existente en

el sistema. Para ello, y tras realizar una consulta entre las peticiones existentes (RQ-COM-CP) se permitirá elegir una de ellas para asignarle candidatos mediante una consulta entre los candidatos existentes en el sistema (RQ-RRHH-CC). La consulta de estos candidatos se podrá filtrar por los siguientes atributos:

- Área tecnológica - Perfil del candidato - Oficina - Requisitos técnicos

Categoría: Requisito Funcional Requisitos RQ-COM-CP, RQ-RRHH-CC

Page 57: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 43

relacionados: Cambios respecto a la Versión anterior:

N/A

Observaciones:

RQ-COM-VC: Ver Candidatos asignados a una Petición existente en el

sistema v1.0

Requisito: Ver Candidatos asignados a una Petición existente en el sistema Código: RQ-COM-VC Fecha: 14/09/2006 Versión: 1.0 Descripción: Esta funcionalidad permitirá consultar de una manera sencilla los

candidatos que están asignados a una petición existente en el sistema. Para ello, y tras realizar una consulta entre las peticiones existentes (RQ-COM-CP) se permitirá elegir una de ellas donde se podrá ver de manera clara los candidatos que se encuentran asignados a la petición.

Categoría: Requisito Funcional Requisitos relacionados:

RQ-COM-CP

Cambios respecto a la Versión anterior:

N/A

Observaciones:

RQ-COM-MC: Modificar Candidatos asignados a una Petición existente en

el sistema v1.0

Requisito: Modificar Candidatos asignados a una Petición existente en el sistema Código: RQ-COM-MC Fecha: 14/09/2006 Versión: 1.0 Descripción: Esta funcionalidad permitirá modificar de una manera sencilla los

candidatos que están asignados a una petición existente en el sistema. Para ello, y tras realizar una consulta entre las peticiones existentes (RQ-COM-CP) se permitirá elegir una de ellas donde se podrá ver de manera clara los candidatos que se encuentran asignados a la petición (RQ-COM-VC). De los candidatos asignados se podrán eliminar aquellos candidatos que el usuario estime ya no deben estar asignados a la petición. Para asignar nuevos candidatos, se permitirá realizarlo según el requisito RQ-COM-AC

Categoría: Requisito Funcional Requisitos relacionados:

RQ-COM-CP, RQ-COM-VC, RQ-COM-AC

Cambios respecto a la Versión anterior:

N/A

Observaciones:

Page 58: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 44

4.1.3. Propios del sistema

RQ-SIS-LG: Realizar Login de usuarios contra LDAP v1.0

Requisito: Realizar Login de usuarios contra el LDAP corporativo Código: RQ-SIS-LG Fecha: 21/07/2006 Versión: 1.0 Descripción: Esta funcionalidad permitirá a los usuarios, tanto del Departamento de

Recursos Humanos como del Área Comercial, poder iniciar sesión en el sistema con su usuario del LDAP corporativo que usan el resto de aplicaciones de la empresa.

Categoría: Requisito Funcional Requisitos relacionados:

Cambios respecto a la Versión anterior:

N/A

Observaciones:

RQ-SIS-RO: Registrar todas las operaciones realizadas por los usuarios

v1.0

Requisito: Registrar todas las operaciones realizadas por los usuarios Código: RQ-SIS-RO Fecha: 30/03/2007 Versión: 1.0 Descripción: Esta funcionalidad permitirá registrar todas las operaciones que los

usuarios realizan en el sistema, tanto del módulo de gestión de recursos humanos como del módulo de gestión del área comercial. Se registrará en un log cualquier operación realizada, además de en base de datos.

Categoría: Requisito Funcional Requisitos relacionados:

RQ-SIS-LG

Cambios respecto a la Versión anterior:

N/A

Observaciones:

4.2. Modelo de Casos de Uso En este apartado, se describirán los Casos de Uso que identifican los

requisitos funcionales del sistema, es decir, las acciones que un actor (ente externo

al sistema desarrollado que interactúa con él) puede realizar en el sistema.

Page 59: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 45

4.2.1. Diagrama de Casos de Uso

En este apartado veremos de forma gráfica los casos de uso que puede

realizar el usuario en el sistema.

4.2.2. Módulo de Recursos Humanos

En primer lugar, los casos de uso identificados para el módulo de Recursos

Humanos:

Page 60: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 46

Dar de Alta Candidato

Consultar Candidatos

Dar de Baja Candidato

Modificar Candidato

Generar CV en PDF

Dar de Alta Área

Dar de Baja Área Consultar Áreas

Modificar Área

Gestionar Candidatos

Gestionar Áreas

Dar de Alta Sub-Área

Dar de Baja Sub-Área Consultar Sub-Áreas

Modificar Sub-Áreas

Gestionar Sub-Áreas

Usuario RR.HH.

Generar Informes Predefinidos

Generar Informes

Generar Informes Personalizados

<<include>>

<<include>>

<<include>>

<<include>>

<<include>>

<<include>>

<<include>>

Figura 6: Diagrama Casos Uso Módulo RRHH

Page 61: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 47

4.2.3. Módulo Comercial

Ahora veremos el diagrama de casos de uso definidos para el módulo del

área Comercial:

Consultar Peticiones

Dar de Alta Petición

Modificar Peticiones

Asignar Candidatos a Petición

<<include>>

Consultar Candidatos

<<include>>

Modificar Candidatos Asignados a Petición

Usuario Comercial

Ver Candidatos Asignados a Petición

<<include>>

<<include>>

<<include>>

<<include>>

Figura 7: Diagrama Casos Uso Módulo Comercial

Page 62: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 48

4.2.4. Listado de Casos de Uso

Código Caso de Uso CU-RRHH-AC Dar de Alta Candidato CU-RRHH-CC Consultar Candidatos CU-RRHH-BC Dar de Baja Candidato CU-RRHH-MC Modificar Candidato CU-RRHH-CV Generar CV en PDF CU-RRHH-AA Dar de Alta Área CU-RRHH-BA Dar de Baja Área CU-RRHH-MA Modificar Área CU-RRHH-CA Consultar Áreas CU-RRHH-AS Dar de Alta Sub-Área CU-RRHH-BS Dar de Baja Sub-Área CU-RRHH-MS Modificar Sub-Área CU-RRHH-CS Consultar Sub-Áreas CU-RRHH-IA Generar Informes Personalizados CU-RRHH-IP Generar Informes Predefinidos CU-RRHH-CD Cargar datos antiguos en el sistema CU-COM-AP Dar de Alta Petición CU-COM-MP Modificar Petición CU-COM-CP Consultar Peticiones CU-COM-AC Asignar Candidatos a Petición CU-COM-MC Modificar Candidatos Asignados a Petición CU-COM-VC Ver Candidatos Asignados a Petición CU-SIS-LG Realizar Login de usuarios contra LDAP corporativo CU-SIS-RO Registrar todas las Operaciones que realicen los usuarios en el sistema

4.2.5. Descripción de Casos de Uso

CU-RRHH-AC: Dar de Alta un Candidato en el sistema

Caso de Uso: Dar de Alta un Candidato en el sistema Código: CU-RRHH-AC Versión: 1.0 Actores: Usuario del departamento de Recursos Humanos Descripción: Esta funcionalidad permite dar de alta un candidato en el sistema según los

atributos especificados para un candidato. Cambios respecto a la Versión anterior:

N/A

Precondiciones: El usuario debe tener iniciada sesión en el sistema Postcondiciones:

FLUJO PRINCIPAL

Page 63: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 49

1. El usuario de Recursos Humanos se sitúa en el menú de Candidatos.

2. El usuario selecciona la opción de Alta.

3. El usuario introduce la información del candidato que desea introducir, para cada una de las tres secciones del alta de un candidato: Datos personales, Estado de selección y Skills.

4. Una vez introducidos los datos, el usuario elegirá la opción: DAR DE ALTA

5. El sistema comprueba que el usuario ha introducido, al menos, los campos obligatorios.

6. El sistema valida los datos introducidos.

7. El sistema almacena la información introducida por el usuario y le muestra el siguiente mensaje al usuario: “[INFO] - CANDIDATO DADO DE ALTA CORRECTAMENTE EN LA BASE DE DATOS”.

8. El sistema almacenará el usuario que ha realizado alta de un candidato en el sistema.

FLUJOS ALTERNATIVOS

Alternativo 1: El sistema detecta que faltan campos obligatorios por cumplimentar

5.a.1 El sistema muestra un mensaje de alerta al usuario informándole de los campos obligatorios que faltan por introducir y en qué sección se encuentra dicho campo, por ejemplo: “Faltan Datos Personales. Campo Nombre”.

5.a.2 Se vuelve a 3.

Alternativo 2: El sistema detecta que uno de los campos tiene un valor incorrecto

6.a.1El sistema muestra un mensaje de alerta al usuario informándole de que uno de los campos introducidos tiene un valor incorrecto, por ejemplo: “Formato de Email incorrecto”.

6.a.2 Se vuelve a 3.

Alternativo 3: Error al dar de alta el candidato en el sistema

7.a.1 El sistema detecta un error al guardar la información en el sistema y muestra un mensaje de error al usuario: “[ERROR] - Se ha producido un error al dar de alta el candidato”.

7.a.2 El sistema guardará la traza de error en el log y realizará un rollback de las operaciones realizadas en Base de Datos.

Alternativo 4: El usuario se ha equivocado al introducir los datos

Page 64: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 50

3.a.1 El usuario podrá elegir la opción de BORRAR CAMPOS para eliminar los datos introducidos en el formulario de alta.

3.a.2 El sistema eliminará los datos introducidos den el formulario de alta y vuelve a 3.

NOTAS

1. Los atributos de un candidato se dividen en las tres secciones mencionadas según se definió en el requisito RQ-RRHH-AC v1.0.

2. Los atributos obligatorios son los definidos como tal en el requisito REQ-RRHH-AC v1.0.

3. Los mensajes al usuario se mostrarán en una página dedicada a mensajes, tanto de error como de información al usuario.

4. El sistema dispondrá de un fichero de log en el que anotará todas las operaciones que realiza un usuario durante su sesión.

CU-RRHH-CC: Consultar Candidatos

Caso de Uso: Consultar Candidatos Código: CU-RRHH-CC Versión: 1.0 Actores: Usuario del departamento de Recursos Humanos o del área Comercial Descripción: Esta funcionalidad permite consultar candidatos de entre los existentes en

el sistema. Cambios respecto a la Versión anterior:

N/A

Precondiciones: El usuario debe tener iniciada sesión en el sistema Postcondiciones:

FLUJO PRINCIPAL

1. El usuario se sitúa en el menú de Candidatos.

2. El usuario selecciona la opción de Consulta.

3. El usuario introduce los filtros que quiere aplicar a la consulta de candidatos.

4. El sistema muestra los candidatos que cumplen los filtros por los que ha restringido el usuario su consulta de entre todos los existentes en el sistema.

5. El usuario selecciona un candidato entre los resultados de la consulta del que desea ver su información completa.

6. El sistema mostrará la información completa del candidato que ha seleccionado el usuario en un formulario idéntico al de alta, con la información del candidato dividida en tres secciones: Datos personales, Estado de selección y Skills.

FLUJOS ALTERNATIVOS

Alternativo 1: El sistema detecta que faltan campos obligatorios por cumplimentar

Page 65: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 51

4.a.1 El sistema no encuentra en el sistema ningún candidato que cumpla con los filtros especificados por el usuario.

4.a.2 El sistema muestra al usuario el siguiente mensaje: “NO HAY CANDIDATOS QUE CUMPLAN CON LOS CRITERIOS SELECCIONADOS”.

Alternativo 2: El usuario se ha equivocado al introducir los datos

3.a.1 El usuario podrá elegir la opción de BORRAR CAMPOS para eliminar los datos introducidos en el formulario de consultas.

3.a.2 El sistema eliminará los datos introducidos den el formulario de consultas y vuelve a 3.

NOTAS

1. Los atributos de un candidato se dividen en las tres secciones mencionadas según se definió en el requisito: RQ-RRHH-AC v1.0.

2. Los atributos por los que se puede filtrar la consulta de candidatos se definieron en el requisito: RQ-RRHH-CC v1.0.

3. En el listado de resultados se mostrará un registro por cada candidato encontrado donde se podrá visualizar el nombre y dos apellidos, el área tecnológica a la que pertenece el candidato, el estado en el que se encuentra dentro del proceso de selección y la fecha de alta en el sistema.

4. Los mensajes al usuario se mostrarán en una página dedicada a mensajes, tanto de error como de información al usuario.

5. El sistema dispondrá de un fichero de log en el que anotará todas las operaciones que realiza un usuario durante su sesión.

CU-RRHH-MC: Modificar Candidato

Caso de Uso: Modificar Candidato Código: CU-RRHH-MC Versión: 1.0 Actores: Usuario del departamento de Recursos Humanos Descripción: Esta funcionalidad permite actualizar la información almacenada de un

candidato en el sistema. Cambios respecto a la Versión anterior:

N/A

Precondiciones: El usuario debe tener iniciada sesión en el sistema El candidato que se pretende actualizar debe existir en el sistema

Postcondiciones:

FLUJO PRINCIPAL

Page 66: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 52

1. El usuario se sitúa en el menú de Candidatos.

2. El usuario selecciona la opción de Consulta.

3. El usuario introduce los filtros que quiere aplicar a la consulta de candidatos.

4. El sistema muestra los candidatos que cumplen los filtros por los que ha restringido el usuario su consulta de entre todos los existentes en el sistema.

5. El usuario selecciona un candidato entre los resultados de la consulta del que desea actualizar su información.

6. El sistema mostrará la información completa del candidato que ha seleccionado el usuario en un formulario idéntico al de alta, con la información del candidato dividida en tres secciones: Datos personales, Estado de selección y Skills.

7. El usuario modificará los atributos que desee actualizar y elegirá la opción de GUARDAR CAMBIOS.

8. El sistema comprobará que el usuario ha introducido, al menos, los atributos especificados como obligatorios.

9. El sistema valida la información.

10. El sistema actualiza la información del candidato y le muestra el siguiente mensaje al usuario: “[INFO] - CANDIDATO MODIFICADO CORRECTAMENTE EN LA BASE DE DATOS”.

11. El sistema almacenará el usuario que ha realizado una modificación de un candidato en el sistema.

FLUJOS ALTERNATIVOS

Alternativo 1: El sistema detecta que faltan campos obligatorios por cumplimentar

4.a.1 El sistema no encuentra en el sistema ningún candidato que cumpla con los filtros especificados por el usuario.

4.a.2 El sistema muestra al usuario el siguiente mensaje: “NO HAY CANDIDATOS QUE CUMPLAN CON LOS CRITERIOS SELECCIONADOS”.

Alternativo 2: El usuario se ha equivocado al elegir los filtros en la consulta

3.a.1 El usuario podrá elegir la opción de BORRAR CAMPOS para eliminar los datos introducidos en el formulario de consultas.

3.a.2 El sistema eliminará los datos introducidos den el formulario de consultas y vuelve a 3.

Alternativo 3: El sistema detecta que faltan campos obligatorios por cumplimentar

Page 67: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 53

8.a.1 El sistema muestra un mensaje de alerta al usuario informándole de los campos obligatorios que faltan por introducir y en qué sección se encuentra dicho campo, por ejemplo: “Faltan Datos Personales. Campo Nombre”.

8.a.2 Se vuelve a 6.

Alternativo 4: El sistema detecta que uno de los campos tiene un valor incorrecto

9.a.1El sistema muestra un mensaje de alerta al usuario informándole de que uno de los campos introducidos tiene un valor incorrecto, por ejemplo: “Formato de Email incorrecto”.

9.a.2 Se vuelve a 6.

Alternativo 5: Error al modificar el candidato en el sistema

10.a.1 El sistema detecta un error al modificar la información en el sistema y muestra un mensaje de error al usuario: “[ERROR] - Se ha producido un error al modificar el candidato”.

10.a.2 El sistema guardará la traza de error en el log y realizará un rollback de las operaciones realizadas en Base de Datos.

NOTAS

1. Los atributos de un candidato se dividen en las tres secciones mencionadas según se definió en el requisito: RQ-RRHH-AC v1.0.

2. Los atributos por los que se puede filtrar la consulta de candidatos se definieron en el requisito: RQ-RRHH-CC v1.0.

3. En el listado de resultados se mostrará un registro por cada candidato encontrado donde se podrá visualizar el nombre y dos apellidos, el área tecnológica a la que pertenece el candidato, el estado en el que se encuentra dentro del proceso de selección y la fecha de alta en el sistema.

4. Los mensajes al usuario se mostrarán en una página dedicada a mensajes, tanto de error como de información al usuario.

5. El sistema dispondrá de un fichero de log en el que anotará todas las operaciones que realiza un usuario durante su sesión.

CU-RRHH-BC: Dar de Baja Candidato

Caso de Uso: Dar de Baja Candidato Código: CU-RRHH-BC Versión: 1.0 Actores: Usuario del departamento de Recursos Humanos Descripción: Esta funcionalidad permite dar de baja un candidato existente en el sistema.Cambios respecto a la

N/A

Page 68: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 54

Versión anterior:

Precondiciones: El usuario debe tener iniciada sesión en el sistema El candidato que se pretende eliminar debe existir en el sistema

Postcondiciones:

FLUJO PRINCIPAL

1. El usuario se sitúa en el menú de Candidatos.

2. El usuario selecciona la opción de Baja.

3. El usuario introduce los filtros que quiere aplicar a la consulta para bajas de candidatos.

4. El sistema muestra los candidatos que cumplen los filtros por los que ha restringido el usuario su consulta de entre todos los existentes en el sistema.

5. El usuario selecciona el candidato entre los resultados de la consulta que desea dar de baja.

6. El sistema mostrará la información completa del candidato que ha seleccionado el usuario en un formulario idéntico al de alta, con la información del candidato dividida en tres secciones: Datos personales, Estado de selección y Skills.

7. El usuario confirmará que ese es el candidato que desea dar de baja con la opción CONFIRMAR BAJA.

8. El sistema preguntará una última confirmación al usuario, ya que todos los datos que existan del candidato seleccionado serán eliminados y no podrá volver atrás. Para ello mostrará el siguiente mensaje: ¿Desea eliminar el candidato de BB.DD?

9. El sistema eliminará el candidato de base de datos y sus ficheros adjuntos (CV y propuesta) del servidor si los hubiese. Tras esto, el sistema mostrará el siguiente mensaje al usuario: “[INFO] - CANDIDATO DADO DE BAJA CORRECTAMENTE DE LA BASE DE DATOS”.

10. El sistema almacenará el usuario que ha realizado la baja de un candidato en el sistema.

FLUJOS ALTERNATIVOS

Alternativo 1: El sistema detecta que faltan campos obligatorios por cumplimentar

4.a.1 El sistema no encuentra en el sistema ningún candidato que cumpla con los filtros especificados por el usuario.

4.a.2 El sistema muestra al usuario el siguiente mensaje: “NO HAY CANDIDATOS QUE CUMPLAN CON LOS CRITERIOS SELECCIONADOS”.

Alternativo 2: El usuario se ha equivocado al elegir los filtros en la consulta

Page 69: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 55

3.a.1 El usuario podrá elegir la opción de BORRAR CAMPOS para eliminar los datos introducidos en el formulario de consultas.

3.a.2 El sistema eliminará los datos introducidos den el formulario de consultas y vuelve a 3.

Alternativo 3: Error al eliminar el candidato del sistema

9.a.1 El sistema detecta un error al eliminar la información del candidato del sistema y muestra un mensaje de error al usuario: “[ERROR] - Se ha producido un error al eliminar el candidato”.

9.a.2 El sistema guardará la traza de error en el log y realizará un rollback de las operaciones realizadas en Base de Datos.

NOTAS

1. Los atributos de un candidato se dividen en las tres secciones mencionadas según se definió en el requisito: RQ-RRHH-AC v1.0.

2. Los atributos por los que se puede filtrar la consulta para bajas de candidatos se definieron en el requisito: RQ-RRHH-BC v1.0.

3. En el listado de resultados se mostrará un registro por cada candidato encontrado donde se podrá visualizar el nombre y dos apellidos, el área tecnológica a la que pertenece el candidato, el estado en el que se encuentra dentro del proceso de selección y la fecha de alta en el sistema.

4. Los mensajes al usuario se mostrarán en una página dedicada a mensajes, tanto de error como de información al usuario.

5. El sistema dispondrá de un fichero de log en el que anotará todas las operaciones que realiza un usuario durante su sesión.

El resto de casos de uso definidos como alta, baja, modificación o

consulta siguen todos el mismo esquema que los realizados anteriormente para un

candidato por lo que no se han desarrollado. A continuación se desarrollarán los

casos de uso que sean distintos o tengan alguna peculiaridad relevante.

CU-RRHH-CV: Generar CV en PDF

Caso de Uso: Generar CV en PDF Código: CU-RRHH-CV Versión: 1.0 Actores: Usuario del departamento de Recursos Humanos Descripción: Esta funcionalidad permite generar el Currículo de un Candidato en

formato PDF a partir de la información recogida en el sistema. El CV se generará según varias plantillas de los clientes más importantes de la empresa para automatizar el proceso de envío de currículos a los clientes de la empresa.

Page 70: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 56

Se permitirá por tanto, elegir entre varias plantillas el formato del CV deseado.

Cambios respecto a la Versión anterior:

N/A

Precondiciones: El usuario debe tener iniciada sesión en el sistema El candidato del que se pretende generar su currículo en formato PDF debe existir en el sistema

Postcondiciones:

FLUJO PRINCIPAL

1. El usuario se sitúa en el menú de Candidatos.

2. El usuario selecciona la opción de Consulta.

3. El usuario introduce los filtros que quiere aplicar a la consulta de candidatos parra encontrar el candidato deseado.

4. El sistema muestra los candidatos que cumplen los filtros por los que ha restringido el usuario su consulta de entre todos los existentes en el sistema.

5. El usuario selecciona el candidato sobre el que quería generar su CV en PDF de entre los resultados de la consulta.

6. El sistema mostrará la información completa del candidato que ha seleccionado el usuario en un formulario idéntico al de alta, con la información del candidato dividida en tres secciones: Datos personales, Estado de selección y Skills.

7. El usuario podrá seleccionar la plantilla que desee en la opción Tipo CV.

8. Una vez elegida la plantilla con la que desea generar el CV en PDF elegirá la opción GENERAR C.V.

9. El sistema generará un currículo en formato PDF con la plantilla elegida por el usuario y con la información que existía del candidato en la Base de Datos

10. El sistema mostrará al usuario el PDF en pantalla, que el usuario podrá guardar en su equipo para enviar posteriormente al cliente.

11. El sistema almacenará el usuario que ha realizado la generación de un CV en PDF en el sistema.

FLUJOS ALTERNATIVOS

Alternativo 1: El sistema detecta que faltan campos obligatorios por cumplimentar

4.a.1 El sistema no encuentra en el sistema ningún candidato que cumpla con los filtros especificados por el usuario.

4.a.2 El sistema muestra al usuario el siguiente mensaje: “NO HAY CANDIDATOS QUE CUMPLAN CON LOS CRITERIOS SELECCIONADOS”.

Alternativo 2: El usuario se ha equivocado al elegir los filtros en la consulta

Page 71: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 57

3.a.1 El usuario podrá elegir la opción de BORRAR CAMPOS para eliminar los datos introducidos en el formulario de consultas.

3.a.2 El sistema eliminará los datos introducidos den el formulario de consultas y vuelve a 3.

Alternativo 3: Error al generar el CV en PDF en el sistema

9.a.1 El sistema detecta un error al generar el CV en formato PDF con la información disponible del candidato en el sistema y muestra un mensaje de error al usuario: “[ERROR] - Se ha producido un error al generar el CV”.

9.a.2 El sistema guardará la traza de error en el log.

NOTAS

1. Los atributos de un candidato se dividen en las tres secciones mencionadas según se definió en el requisito: RQ-RRHH-AC v1.0.

2. Los atributos por los que se puede filtrar la consulta de candidatos se definieron en el requisito: RQ-RRHH-CC v1.0.

3. En el listado de resultados se mostrará un registro por cada candidato encontrado donde se podrá visualizar el nombre y dos apellidos, el área tecnológica a la que pertenece el candidato, el estado en el que se encuentra dentro del proceso de selección y la fecha de alta en el sistema.

4. Los mensajes al usuario se mostrarán en una página dedicada a mensajes, tanto de error como de información al usuario.

5. El sistema dispondrá de un fichero de log en el que anotará todas las operaciones que realiza un usuario durante su sesión.

CU-RRHH-IP: Generar Informes Predefinidos

Caso de Uso: Generar Informes Predefinidos Código: CU-RRHH-IP Versión: 1.0 Actores: Usuario del departamento de Recursos Humanos Descripción: Esta funcionalidad permitirá generar informes dinámicos predefinidos en el

sistema de una forma sencilla. Para ello, se permitirá al usuario elegir entre los dos informes siguientes:

- Número de candidatos existentes por áreas tecnológicas - Número de candidatos dados de alta en el último mes por áreas

tecnológicas. Se mostrará un gráfico (sectorial en el primer caso y de barras en el segundo), así como los datos obtenidos.

Cambios respecto a la Versión anterior:

N/A

Precondiciones: El usuario debe tener iniciada sesión en el sistema

Page 72: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 58

Postcondiciones:

FLUJO PRINCIPAL

1. El usuario se sitúa en el menú de Candidatos.

2. El usuario selecciona la opción de Informes.

3. El sistema muestra los informes predefinidos disponibles y la opción de Informe personalizado.

4. El usuario selecciona el informe predefinido que desee de entre los disponibles.

5. El sistema mostrará al usuario en pantalla un informe con un gráfico (de barras o de sectores según el informe escogido) y los datos numéricos obtenidos al generar el informe.

6. El sistema almacenará el usuario que ha realizado la generación de un informe en el sistema.

FLUJOS ALTERNATIVOS

Alternativo 1: Error al generar el Informe Predefinido en el sistema

5.a.1 El sistema detecta un error al generar el informe con la información disponible sobre candidatos en el sistema y muestra un mensaje de error al usuario: “[ERROR] - Se ha producido un error al generar el Informe”.

5.a.2 El sistema guardará la traza de error en el log.

NOTAS

1. Los mensajes al usuario se mostrarán en una página dedicada a mensajes, tanto de error como de información al usuario.

2. El sistema dispondrá de un fichero de log en el que anotará todas las operaciones que realiza un usuario durante su sesión.

CU-RRHH-IA: Generar Informes Personalizados

Caso de Uso: Generar Informes Personalizados Código: CU-RRHH-IA Versión: 1.0 Actores: Usuario del departamento de Recursos Humanos Descripción: Esta funcionalidad permitirá generar informes dinámicos personalizados

por el usuario: “ad-hoc reporting”. Para ello, se permitirá al usuario de forma sencilla parametrizar los informes por los siguientes atributos:

- Estado - Entrevista Telefónica - Entrevista Personal - Entrevista Técnica - Comentarios Entrevista Telefónica

Page 73: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 59

- Comentarios Entrevista Personal - Comentarios Entrevista Técnica - Motivos Rechazo - Motivos No Válido - Empleado que lo recomienda - Empresa Procedencia - Experiencia Desde - Oficina Destino - Disponibilidad viajar

Una vez definidos todos los atributos que deben cumplir los candidatos sobre el número de candidatos de los que se desea obtener el informe, se le permitirá al usuario elegir por qué atributos agrupar a los candidatos en el informe de entre los siguientes:

- Área - Estado - Perfil - Nivel de la propuesta - Canal de recepción - Experiencia

Además se permitirá al usuario, elegir un rango de fechas en la que los candidatos sobre los que desea obtener el informe fueron dados de alta en el sistema. Estos rangos serán los siguientes:

- Último mes - Últimos 3 meses - Últimos 6 meses - Último año - Totales (sobre todos los existentes en el sistema, sin importar

fecha de alta). Se mostrará un gráfico de barras, así como los datos obtenidos.

Cambios respecto a la Versión anterior:

N/A

Precondiciones: El usuario debe tener iniciada sesión en el sistema Postcondiciones:

FLUJO PRINCIPAL

Page 74: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 60

1. El usuario se sitúa en el menú de Candidatos.

2. El usuario selecciona la opción de Informes.

3. El sistema muestra los informes predefinidos disponibles y la opción de Informe personalizado

4. El usuario selecciona la opción de Informe personalizado.

5. El sistema mostrará al usuario un formulario con el que podrá elegir el tipo de informe deseado parametrizando los atributos que desee, agrupando los datos por el grupo del atributo que desee y filtrando los resultados en un rango de fechas deseado.

6. El usuario introducirá todos los datos con los que desea obtener un informe y elegirá la opción de Consultar.

7. El sistema mostrará al usuario en pantalla un informe con un gráfico de barras y los datos numéricos obtenidos al generar el informe según los datos introducidos.

8. El sistema almacenará el usuario que ha realizado la generación de un informe en el sistema.

FLUJOS ALTERNATIVOS

Alternativo 1: Error al generar el Informe Predefinido en el sistema

7.a.1 El sistema detecta un error al generar el informe con la información disponible sobre candidatos en el sistema y muestra un mensaje de error al usuario: “[ERROR] - Se ha producido un error al generar el Informe”.

7.a.2 El sistema guardará la traza de error en el log.

NOTAS

1. Los mensajes al usuario se mostrarán en una página dedicada a mensajes, tanto de error como de información al usuario.

2. El sistema dispondrá de un fichero de log en el que anotará todas las operaciones que realiza un usuario durante su sesión.

Page 75: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 61

5. Estudio de Arquitectura

5.1. Introducción El diseño de la arquitectura es una de las bases fundamentales del

desarrollo de cualquier proyecto. Elegir la arquitectura adecuada es imprescindible

para que todo funcione de manera correcta [COUL01].

El objetivo de esta fase es definir la solución de arquitectura técnica que

satisfaga tanto los requisitos como las restricciones de diseño. La arquitectura debe

indicar qué componentes básicos software, hardware y de comunicaciones deben

adquirirse o desarrollarse.

Componentes básicos software son los sistemas operativos a utilizar, el

gestor de base de datos más apropiado al problema a resolver, y los productos de

mercado o licencias necesarias como hojas de cálculo, generadores de informes,

generadores de SQL, navegadores de Internet, etc. Además las aplicaciones

pueden ser desarrolladas totalmente, desarrolladas solamente en parte, o adquirir

el software de mercado que cumpla con los requisitos exigidos.

Componentes básicos hardware son los modelos de servidores y estaciones

de trabajo terminales necesarios para explotar el sistema, debiéndose indicar las

características básicas de éstos, como necesidad de memoria RAM, espacio de

disco duro, número y velocidad de procesadores, elementos multimedia necesarios,

etc.

Componentes básicos de comunicación son los elementos necesarios para

realizar la conectividad entre los componentes hardware y software del sistema.

Así, si desde las estaciones de trabajo de los usuarios finales se va a acceder a las

bases de datos soportadas bajo un servidor, se debe incorporar el software

necesario en dichas estaciones para conectarlas con el servidor de datos a través

de las diferentes redes de comunicaciones existentes en la tecnología actual

[BARR01].

Page 76: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 62

Para la implantación de este proyecto, se han tenido en cuenta los

siguientes puntos:

- Rendimiento: La arquitectura elegida debe soportar un correcto

funcionamiento del servidor de aplicaciones elegido.

- Disponibilidad: Como el alcance de este proyecto se limita a la intranet

corporativa de la empresa en sus oficinas de Alcobendas (Madrid), sin

posibilidad de acceso desde el exterior, se usará en horario de oficina,

por lo que debe tener una completa operatividad dentro de dicho horario.

- Seguridad: Los datos que maneja esta aplicación son de carácter muy

confidencial por lo que las políticas de seguridad deben ser muy

estrictas, permitiendo el acceso sólo a los empleados destinados al uso

de esta aplicación. Es decir, del Departamento de Recursos Humanos y

del Área Comercial.

- Concurrencia: El sistema será accesible por varios empleados por lo que

debe soportar una posible carga elevada de peticiones simultáneas

sobre los recursos solicitados.

- Recursos: Al ser un sistema diseñado para una empresa real, se han

tenido en cuenta los medios de los que dispone la empresa para la

implantación del sistema.

5.2. Arquitectura técnica elegida

Para cubrir la funcionalidad requerida, se ha decidido implantar dos

servidores dedicados a esta aplicación donde se instalarán el sistema desarrollado

bajo un servidor de aplicaciones y una base de datos que almacenará la

información de los datos introducidos en el sistema. De los dos servidores uno

estará destinado a desarrollo y pruebas de las distintas versiones y revisiones de la

aplicación sin contener datos reales. El otro servidor será el de explotación que

utilizarán los usuarios del sistema.

Los servidores correrán en la red interna de las oficinas centrales de la

empresa que se sitúan en Alcobendas (Madrid) y permitirán el acceso mediante

navegador Web a la aplicación desarrollada.

Page 77: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 63

Las características de los servidores, tanto hardware como software, son las

siguientes:

- Procesador: Intel Xeon

- Disco duro: 40 GB

- Memoria RAM: 1 GB

- Sistema Operativo: MS Windows 2003 Server *

- Servidor de aplicaciones: Tomcat 5.0.28

- Servidor web: Apache 2

- Sistema Gestor de Base de Datos: MySQL 5.0

- Máquina virtual java: 1.4.2_12

* El sistema operativo pensado inicialmente era Ubuntu Server, pero al no

disponer de entorno gráfico no funcionaba correctamente la parte de generación de

informes (realizados con JChart) al no encontrar librerías gráficas instaladas en el

sistema. No fue posible su instalación, decidiendo como solución el volcado de

base de datos y despliegue de la aplicación a un servidor con idéntica configuración

pero con Sistema Operativo MS Windows 2003 Server.

El servidor Web Apache tendrá configurada una directiva que solo permita el

acceso a la aplicación por protocolo seguro https mediante un certificado con

contraseña que solo tendrán los usuarios con permiso para acceder a la aplicación.

Figura 5.2.1: Flujo Información en el sistema.

Page 78: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 64

Como se puede apreciar en la imagen, la arquitectura es bastante sencilla, y

en un único servidor se integra la base de datos y el servidor de aplicaciones. Este

cuando recibe una petición con el contexto rrhh elegido para la implantación de la

aplicación, pasará el control de dicha petición del usuario a la aplicación.

Esta implementa en el descriptor web de la aplicación (fichero web.xml

incluido en la carpeta WEB-INF) dispone de un mapeo de todos los servlets

controladores de las acciones solicitadas por el usuario tales como alta, consultas,

modificaciones, bajas, generación de informes, etc. Por tanto, para cada acción se

ejecutará un servlet que actuará de controlador, invocando los servicios necesarios

para llevar a cabo la petición hecha por el usuario. Estos a su vez generarán o

realizarán las acciones solicitadas y, si es necesario, invocarán a la capa DAO que

accede a los datos almacenados en base de datos.

Una vez obtenida la información o ejecutada la acción pedida por el usuario,

se generará una respuesta y el servlet redirigirá la respuesta según corresponda a

la petición solicitada para que el usuario vea los resultados a la petición solicitada.

5.3. Herramientas software necesarias En este apartado se describen las herramientas que han sido necesarias

para el desarrollo e implantación de este proyecto:

- JDK: 1.4.2_12

- IDE: Eclipse 3.2 como entorno de desarrollo.

- JChart: 0.7.5 para la generación de informes.

- Commons File Upload: 1.1.1 para subir archivos al servidor.

- iText: 1.4.7 para generar currículos en PDF.

- Log4j: 1.2.14 para el histórico de acciones de los usuarios y excepciones

del sistema.

- JSTL: Para eliminar los scriptlets de las páginas JSP, de modo que no

hay código Java dentro de la capa de Vista del Modelo Vista Controlador

aplicado.

- Ldap.jar proporcionado por VASS Consultoría de Sistemas para poder

realizar el login en el LDAP corporativo de una forma transparente a mi

aplicación.

Page 79: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 65

- VBIS: 7.4.3 Build 817 para la carga de datos de los candidatos antiguos

desde hojas de cálculo MS Excel a Base de Datos MySQL.

Todos los elementos software utilizados tanto para el desarrollo, como para

la implantación del sistema son Software Libre salvo el Sistema Operativo y la

herramienta VBIS (Vignette Business Integration Studio), cuya licencia tiene un

coste muy elevado, pero que fue elegida para el paso de información ya que VASS

Consultoría de Sistemas dispone de licencia para el suite de productos Vignette ya

que partner de dicha empresa. Se eligió esta herramienta debido a que su uso es

extremadamente sencillo, permitiendo mediante adaptadores de distintos orígenes

de datos, seleccionar los datos que se desean migrar a otra fuente de datos, justo

lo necesario para el requisito definido en este proyecto como RQ-RRHH-CD.

Se puede ver un esquema del funcionamiento de la herramienta en la

siguiente figura, donde a partir de un adaptador de MS Excel se pueden cargar los

datos por columnas a una tabla de base de datos MySQL mediante un adaptador

de JDBC:

Page 80: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 66

Page 81: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 67

Figura 8: Funcionamiento VBIS

6. Diseño En este apartado se refleja el diseño de la aplicación según los requisitos

analizados anteriormente.

6.1. Diagrama de Paquetes El diseño de la aplicación se ha dividido en 4 paquetes que permiten seguir

el patrón de diseño MVC2 de una forma sencilla. Todos los paquetes desarrollados

se encuentran dentro de la estructura: es.vass.rrhh.<nombre_paquete>

El diagrama de paquetes sería el siguiente:

Figura 6.1.1: Diagrama de Paquetes

6.1.1. Paquete iu

En el paquete iu se encuentran las clases que implementan las interfaces de

usuario del sistema. Este paquete utiliza las clases de los paquetes dominio y

servicios sin usar las clases del paquete dao que serán las encargadas de acceder

a los datos, respetando así el patrón elegido para el diseño MVC2.

Este paquete está estructurado a su vez en dos subpaquetes:

- cv: Clases que contienen las plantillas de los currículos más interesantes

para VASS y que permiten generar en PDF dichos currículos con la

información de un candidato existente en el sistema.

Page 82: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 68

- servlets: Clases que contienen los servlets que generan el contenido

dinámico de las páginas JSP. A su vez, hay ocho subpaquetes dentro de

servlets, para facilitar la localización de cada servlet ya que hay en total

hay 38 servlets. Por ello se han subdividido por funcionalidades en los

siguientes paquetes: areas, candidatos, cv, informes, log, login,

peticiones y subareas, agrupando en cada subpaquete los servlets que

afectan a una misma funcionalidad.

.

6.1.2. Paquete servicios

En este paquete se encuentran las clases que contienen la lógica del

negocio. Recogen una petición del usuario y realizan las operaciones que

consideran necesarias para llevarla a cabo. Utilizan las clases del dominio y del

paquete dao.

6.1.3. Paquete dao

En este paquete se encuentran las clases que permiten acceder a los datos.

Se utiliza el patrón de diseño DAO para acceder a los datos, siendo las clases que

contiene este paquete las únicas que acceden a los datos almacenados.

6.1.4. Paquete dominio

En este paquete se encuentran las clases que representan las entidades

que se han identificado en el sistema y que permitirán tener una estructura para

luego almacenar esa información en base de datos por las clases del paquete dao.

Se ha dividido también en subpaquetes para simplificar la estructura. Estos

subpaquetes son: areas, candidato, idiomas, peticiones, usuarios y generics, este

último contiene una clase con constantes y otra con utilidades generales utilizadas

por las clases del resto de paquetes.

Page 83: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 69

6.2. Diagrama de Clases

6.2.1. Paquete iu

Como se ha comentado, dentro del paquete iu, hay dos subpaquetes: cv y

servlets. Este último a su vez contiene ocho subpaquetes: areas, candidatos, cv,

informes, log, login, peticiones y subareas.

6.2.1.1. Paquete es.vass.rrhh.iu.cv

Este paquete contiene las clases que permiten generar CV en formato PDF

de acuerdo a unas plantillas. Se han desarrollado tres plantillas: una con el formato

del currículo interno de VASS, otra con el formato de IECISA y otra con el formato

de ISBAN (principales clientes de la empresa). Las tres clases generan un CV a

partir de un objeto Candidato que tendrá la información necesaria para generar el

currículo y le darán el formato deseado.

Page 84: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 70

6.2.1.2. Paquete es.vass.rrhh.iu.servlets

Este paquete contiene los servlets que controlan las acciones del usuario y

realizan las llamadas a las clases y métodos pertinentes para ofrecer la respuesta

deseada al usuario. Como se ha comentado se divide en varios subpaquetes:

6.2.1.3. Paquete es.vass.rrhh.iu.servlets.areas

Paquete con los servlets que permiten realizar las acciones de dar de alta un

área tecnológica, dar de baja una existente, modificar la información de una

existente o consultar entre todas las áreas existentes en el sistema.

6.2.1.4. Paquete es.vass.rrhh.iu.servlets.candidatos

En este paquete se incluyen aquellos servlets que permiten dar de alta, baja,

modificar o consultar un candidato (aquellos cuyo nombre empieza por Realizar),

así como otros servlets que sirven para preparar información dinámica a las

páginas que se necesitan para realizar dichas acciones.

Page 85: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 71

6.2.1.5. Paquete es.vass.rrhh.iu.servlets.cv

En este paquete solo hay una clase, la necesaria para generar un currículo

de un candidato seleccionado por el usuario en el formato que ha solicitado.

Page 86: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 72

6.2.1.6. Paquete es.vass.rrhh.iu.servlets.informes

En este paquete se encuentran los servlets necesarios para la generación

de informes según la elección del usuario, tanto para generar los informes

predefinidos en el sistema como los informes personalizados según los filtros

elegidos por el usuario.

Page 87: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 73

6.2.1.7. Paquete es.vass.rrhh.iu.servlets.log

En este paquete contiene el servlet que no controlará ninguna acción del

usuario sino que está configurado en el descriptor web de la aplicación (fichero

web.xml en la carpeta WEB-INF de la aplicación) para que se ejecute al arrancar el

servidor de aplicaciones. Su misión es inicializar el fichero de históricos que utiliza

la aplicación mediante un fichero de properties de log4j.

6.2.1.8. Paquete es.vass.rrhh.iu.servlets.login

Este paquete contiene los servlets que recogen la acción del usuario al

iniciar sesión en la aplicación mediante un nombre de usuario y contraseña y

comprueban en el LDAP corporativo si es válido es login. Si es así incluyen un

objeto Usuario en la sesión y permiten el acceso a la aplicación al usuario. Si no

muestran un mensaje de error al usuario impidiendo el acceso a la aplicación.

También se incluye la clase que realiza la desconexión del usuario si lo solicita,

eliminando de la sesión el objeto Usuario incluido.

Page 88: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 74

6.2.1.9. Paquete es.vass.rrhh.iu.servlets.peticiones

En este paquete se encuentran los servlets que recogen las acciones de los

usuarios del área comercial para la gestión de peticiones (altas, modificaciones,

consultas, ver candidatos asignados, asignación de nuevos candidatos y

modificación de candidatos asignados).

6.2.1.10. Paquete es.vass.rrhh.iu.servlets.subareas

Este paquete contiene los servlets necesarios para la gestión de las sub-

áreas tecnológicas del sistema y permitirá al usuario dar de alta nuevas, dar de baja

y modificar existentes y consultar entre las existentes.

Page 89: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 75

6.2.2. Paquete servicios

Este paquete contiene las clases necesarias para realizar las operaciones

solicitadas por el usuario al sistema.

6.2.2.1. Paquete es.vass.rrhh.iu.servicios

Page 90: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 76

Clase que permite realizar la comprobación del usuario y clave introducido

por el usuario en el formulario de login inicial que le permitirá el acceso a la

aplicación. Se usará el método autenticacion(in login: String, in clave: String) que

devuelve un boolean que es true si el usuario y clave existen en el LDAP

corporativo y false si es incorrecto.

Clase que permite realizar algunas operaciones con eventos al crear

un fichero PDF. Por ejemplo, con el método onEndPage se puede añadir un pie de

página al fichero.

Page 91: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 77

Clases que contienen distintos métodos necesarios para la gestión de

candidatos como por ejemplo en RealizarAltaCandidatoServicio el método

existeCandidatoEnBBDD(in c: Candidato) que recibe un objeto Candidato y

devuelve un boolean con valor true si ya existe y false en caso contrario. Esto es útil

cuando un usuario desea introducir un nuevo candidato en el sistema, para

comprobar si ya existe uno. Además se incluirá ahí la lógica de negocio según se

quiera filtrar las condiciones de alta: en un primer momento sólo se comprobaba el

DNI al dar de alta un candidato, véase requisito RQ-RRHH-AC v0.1 y finalmente se

comprueba también por nombre y apellidos.

En estas clases se encuentran métodos necesarios para la gestión de áreas

y sub-áreas tecnológicas y para la gestión de peticiones.

6.2.3. Paquete dao

En este paquete se encuentran las clases que acceden al Sistema Gestor

de Base de Datos y que por tanto realmente acceden a la información del sistema.

De esta forma se encapsula el acceso a datos en un único paquete lo que permite

seguir el patrón de diseño DAO (Data Access Object).

Page 92: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 78

6.2.3.1. Paquete es.vass.rrhh.dao

En este paquete todas las clases heredan de GenericDAO que contiene un

método que conecta al pool de conexiones definido en el servidor de aplicaciones

tomcat que conecta con base de datos mediante un pool más efectivo que si se

abre una conexión normal por JDBC en cada clase que lo necesite. De esta forma,

el servidor de aplicaciones gestionará las conexiones con el SGBD (MySQL en

nuestro sistema) mediante un pool.

Ahora veamos las clases en más detalle:

Clase genérica que devuelve un objeto Connection del DataSource

configurado en el fichero context.xml de la carpeta META-INF y que gestiona el pool

de conexiones a la base de datos.

Page 93: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 79

Clase que tiene los métodos de acceso a base de datos para asociar

y eliminar un área tecnológica asignada a un candidato. También tiene métodos

para obtener los datos necesarios para la generación de informes, tanto

personalizados, como los predefinidos.

Clase que permite dar de alta, modificar, eliminar y realizar distintas

consultas sobre candidatos en el sistema. También tiene métodos que permiten

obtener el número de candidatos de acuerdo a los filtros elegidos por el usuario en

la generación de informes personalizados.

Clases que permiten asignar y eliminar tanto sub-áreas tecnológicas

como idiomas a un candidato en las tablas correspondientes de base de datos.

Page 94: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 80

Clases que permiten la gestión (altas, bajas, modificaciones y

consultas), tanto de áreas tecnológicas como de sub-áreas tecnológicas.

Clases que permiten tanto la asignación y eliminación de candidatos a una

Petición existente en el sistema, como la propia gestión (altas, consultas y

modificaciones) de las peticiones.

6.2.4. Paquete dominio

Este paquete se divide en seis subpaquetes que permiten agrupar según las

entidades más significativas del sistema en forma de Java Beans.

6.2.4.1. Paquete es.vass.rrhh.dominio.areas

Paquete con clases que representan las áreas y sub-áreas tecnológicas del

sistema.

Page 95: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 81

Vemos tanto las clases que representan las áreas y sub-áreas

propiamente dichas como las necesarias para las tablas intermedias que permitan

saber mediante un identificador del candidato a qué áreas/sub-áreas está asignado.

6.2.4.2. Paquete es.vass.rrhh.dominio.candidato

Paquete con la clase que representa un candidato en el sistema es un

JavaBean con todos los setters y getters de los atributos definidos para un

candidato en el requisito: RQ-RRHH-AC v1.0. Al ser tantos atributos y métodos, no

se ha creído conveniente incluir aquí por ser trivial y ocupar demasiada extensión.

6.2.4.3. Paquete es.vass.rrhh.dominio.generics

Contiene una clase de utilidades generales para el sistema y otra de

constantes.

Page 96: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 82

Esta clase contiene métodos usados por múltiples clases y que

permiten por ejemplo obtener valores de un fichero de properties como el path

donde se guardan los currículos en el servidor o redirigir a la página de mensajes

(tanto de error como de información al usuario).

La clase de constantes está compuesta de subclases para identificar

mejor las constantes en el sistema:

Page 97: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 83

Page 98: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 84

Page 99: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 85

Page 100: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 86

Page 101: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 87

Page 102: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 88

6.2.4.4. Paquete es.vass.rrhh.dominio.idiomas

Este paquete contiene una sola clase, IdiomasCandidato, que permite tener

una Bean con los atributos necesarios para almacenar la información

correspondiente a la asociación de un idioma hablado por el candidato con los

niveles definidos en el requisito: RQ-RRHH-AC v1.0 (alto/medio/bajo).

6.2.4.5. Paquete es.vass.rrhh.dominio.peticiones

Paquete con la Bean necesaria para la gestión de peticiones:

Page 103: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 89

Page 104: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 90

6.2.4.6. Paquete es.vass.rrhh.dominio.usuarios

Este paquete contiene la Bean del objeto Usuario que representa el usuario

que está accediendo al sistema.

6.3. Interfaz El diseño de la interfaz se ha escrito en código HTML, sin ayuda de ningún

editor visual. El contenido dinámico de las páginas se ha hecho en JSP v2.0 que

elimina el código Java de las páginas y se ha usado el taglib estándar de EL

(Expression Language) incluido en la versión 2.0 de JSP. Para el diseño se ha

utilizado hojas de estilo (CSS) y javascript para algún formulario dinámico.

Para acceder a la aplicación desplegada en el entorno de explotación se

accede mediante navegador (IE6 o superior) en la ruta:

https://aplicacionesvass.proyectos.vass.es/rrhh. En la que puede apreciarse que es

sobre protocolo seguro https. Para las capturas se ha usado una versión montada

en local sin dicho protocolo por lo que la ruta de acceso será:

http://localhost:8080/rrhh.

Los elementos utilizados en los formularios Web son los siguientes:

- Cajas de texto: Para introducir texto libre

Page 105: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 91

- Desplegables: Para elegir una única opción entre muchas posibles:

- Desplegables múltiples: Para elegir varias opciones entre varias

posibles:

- Check-list: Para elegir varias opciones entre varias posibles:

- Radio-Button: para elegir una única opción entre varias posibles:

- Botón: Para realizar una acción:

- Pestañas: Para cambiar entre secciones de un mismo formulario y

agrupar contenidos:

- Áreas de texto: Para introducir texto de longitud considerable:

- Botón Examinar: Para elegir un fichero del disco duro local del usuario y

adjuntarlo en el formulario para almacenarlo en el servidor:

- Calendario Pop-up: Para introducir las fechas. Se crean sobre Cajas de

texto, pero al pulsar sobre ellas aparece el selector de fechas encima

como un calendario:

Page 106: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 92

Toda la aplicación Web está dividida en tres secciones: cabecera, menú

lateral izquierdo y sección central. Las dos primeras secciones no varían, mientras

que la central es donde se cargarán los contenidos según el posicionamiento del

menú y las acciones del usuario.

Figura 6.3.1: Interfaz aplicación Web

Una vez iniciado sesión con un usuario correcto, se actualizará la

zona de contenidos presentando la pantalla del menú de Candidatos, el cual es el

menú de inicio de la aplicación una vez hecho el login. Se mostrará al usuario en

qué menú está, recordando siempre qué usuario ha iniciado sesión, y mostrando

las acciones que puede realizar.

Page 107: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 93

Figura 6.3.2: Menú inicial de Candidatos

Si el usuario elige la opción de alta, se presentará un formulario de alta de

candidatos, donde se han distribuido en tres pestañas los campos para recoger la

información de un candidato que entra en el proceso de selección. Esta división en

pestañas se debe a lo solicitado en el requisito RQ-RRHH-AC donde desglosaban

en tres secciones la información que se debía almacenar en el sistema sobre un

candidato. Veamos el formulario en el que se pueden apreciar la división de las

secciones por pestañas, de forma muy sencilla para el usuario pasar de una

sección a otra. Toda la información se introduce mediante controles sencillos e

intuitivos para el usuario como cajas de texto, check-list, desplegables, etc:

Page 108: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 94

Figura 6.3.3: División secciones alta candidato en pestañas

En la imagen se ve la información correspondiente a los Datos Personales

de un candidato. Veamos la correspondiente al Estado de Selección y a las Skills

de los candidatos:

Page 109: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 95

Figura 6.3.4: Candidato Estado Selección

Como vemos en la imagen, he destacado los elementos “especiales” del

formulario. En él se permiten adjuntar dos archivos al usuario: currículo y propuesta,

que se enviarán al servidor para almacenar en disco y así disponer de acceso

centralizado a estos ficheros por todos los usuarios del sistema. Además se ha

resaltado el desplegable con los estados existentes en el proceso que se puede

observar con más detalle en la Figura 6.3.5 y la Fecha de Entrevista, que aunque

parezca un cuadro de texto, el usuario no puede escribir en él, sino que cuando se

selecciona dicho campo aparece un calendario que permite seleccionar una fecha y

evitar así una entrada incorrecta de datos, lo que se puede ver en más detalle en la

Figura 6.3.6 y que ha sido aplicado a la introducción de todas las fechas en la

aplicación.

Page 110: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 96

Figura 6.3.5: Desplegable Estados Figura 6.3.6: Calendario Pop-Up

La última sección en que se divide la información sobre un candidato es

Skills, es decir, habilidades tales como idiomas, certificados, experiencia laboral,

titulación, perfil, etc. Veamos esta sección:

Figura 6.3.7: Sección Skills en Alta Candidato

Page 111: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 97

Este formulario mantiene su aspecto a la hora de modificar un candidato, en

el que aparecerán con información aquellos campos de los que se disponga

información en el sistema y el usuario podrá modificarlos como si de un alta se

tratase y guardar los cambios.

Ahora veremos otro tipo de formulario, el de Consultas de Candidato al que

se llega desde el menú Candidatos en la acción Consulta como se indicaba en la

figura 6.3.2. En este formulario, el usuario puede filtrar la búsqueda por los atributos

más significativos mediante un campo de texto y un desplegable donde elegirá el

atributo que debe contener la cadena de texto introducida. Además podrá elegir un

rango de fechas entre las que filtrar la búsqueda, el área y sub-áreas tecnológicas a

las que pertenece el candidato, el campo otra formación y con otro desplegable

podrá elegir el atributo por el que quiere ordenar los resultados de la consulta.

Figura 6.3.8: Consulta Candidatos

Page 112: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 98

Como vemos es un formulario bastante sencillo pero que permite realizar

consultas muy específicas sobre los candidatos existentes en la base de datos, lo

que facilita enormemente el trabajo al Departamento de Recursos Humanos.

Tras realizar la consulta obtendremos una lista de resultados con los

candidatos encontrados, de los que se muestra nombre y primer apellido, estado,

fecha de alta y área tecnológica a la que pertenece. Además sobre cada candidato

aparece un botón como este: que permite ver el resto de información del

candidato, modificar la información almacenada sobre el candidato, o generar su

CV con el formato deseado por el usuario.

Figura 6.3.9: Resultados Consulta Candidato

Como vemos en la Figura 6.3.9 el usuario puede realizar tres acciones:

volver al formulario de consultas, ir a la página de inicio o consultar más información

del candidato, donde además podrá modificarlo o generar su CV en PDF.

Estas opciones reemplazarán los botones de DAR DE ALTA y BORRAR

CAMPOS disponibles en el formulario de alta:

Page 113: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 99

Figura 6.3.10: Opciones en +INFO candidato

Si el usuario desea generar el C.V. en PDF del candidato seleccionado,

elegirá el tipo de plantilla que desea del desplegable y pinchará en el botón

GENERAR C.V. que mostrará el CV dentro de la sección de contenidos de la

aplicación como podemos ver en la siguiente imagen:

Figura 6.3.11: CV en PDF Formato VASS

En cuanto al resto de la interfaz de la aplicación sigue el mismo estilo, con

una serie de acciones disponibles para cada menú idénticas a las del menú

candidatos (figura 6.3.2) salvo para el menú de Informes. Como el resto de

formularios tienen una interfaz idéntica a la de candidatos, que es el más complejo

y con más tipos de controles (campos de texto, áreas de texto, chek-list,

desplegables, calendarios pop-up, etc.) se considera suficiente con las capturas

ofrecidas. Solo hay que destacar, que en el menú de peticiones en el alta solo hay

una pestaña donde se introduce la información requerida según el requisito: RQ-

COM-AP y que tras realizar una consulta y pulsar en el botón de +INFO idéntico al

de las consultas de candidatos, se mostrará ese mismo formulario pero con dos

pestañas adicionales: ver candidatos asignados, que mostrará un listado de los

candidatos que hay asignados a la petición y asignar candidatos, donde se podrá

Page 114: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 100

realizar una consulta sobre candidatos existentes y asignar mediante un chek-list

aquellos que el usuario considere apropiados para dicha petición.

En cuanto a las opciones del menú Informes, como hemos comentado son

distintas a las del resto de menús. En este caso se permitirá al usuario elegir si

quiere generar un informe personalizado o elegir entre los dos informes

predefinidos en el sistema: de candidatos totales o de candidatos dados de alta en

el último mes, ambos agrupados por área tecnológica:

Figura 6.3.12: Opciones Menú Informes

Si selecciona la opción de candidatos totales por área se mostrará una

página con el informe generado dentro de la sección de contenidos con un gráfico

por sectores y debajo los datos específicos:

Page 115: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 101

Figura 6.3.13: Informe Candidatos Totales por Área

Cabe destacar que el gráfico es una imagen donde el usuario puede hacer

clic en cada área y ver sus datos en un pop-up:

Figura 6.3.14: Informes Pop-Up

Sobre la opción de informes personalizados, el usuario podrá generar un

informe con aquellos datos que le interesen para analizar el proceso de selección

de candidatos. Para ello, se ha diseñado un formulario similar a los de consulta de

candidatos con la peculiaridad de que dispone de un wizard donde ir añadiendo los

Page 116: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 102

atributos por los que filtrar el informe. Es una forma muy sencilla de realizar esta

funcionalidad, donde el usuario elige un atributo, le da un valor y lo añade a la

consulta con el botón y así cuantos atributos quiera incluir. Una vez hecho esto,

elige por qué atributo los quiere agrupar y también en qué rango de fechas quiere el

informe. En la imagen se puede apreciar que es bastante sencillo:

Figura 6.3.15: Informes personalizados

El resultado se mostrará con un gráfico de barras, además de los datos

obtenidos:

Page 117: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 103

Figura 6.3.16: Resultado Informe Personalizado

Otra peculiaridad de la interfaz del sistema reside en la forma de realizar las

modificaciones y bajas de áreas y sub-áreas, donde se realizan en el propio listado

de resultados tras una consulta, ya que al ser sólo dos campos, se puede proceder

de esta manera y no necesitan una página propia para este propósito:

Page 118: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 104

Figura 2.3.17: Modificaciones y Bajas Áreas

En la imagen podemos ver como cada área, se puede modificar o eliminar

de forma sencilla.

Por último, mostraremos la página de mensajes al usuario, donde se

muestran tanto mensajes de información como de error. Veremos en la imagen un

mensaje de información al usuario:

Figura 2.3.18: Página de mensajes al usuario. Mensaje Información

En cuanto a un mensaje de error, se vería en la misma página pero

indicando al usuario que se ha producido un error. No se mostrará ninguna traza, ya

que para ello se dispone de un log en la aplicación, por lo que si el usuario reporta

alguna incidencia se puede ver ahí, pero sin que le aparezca al usuario un mensaje

que no entienda o que le parezca grave.

Page 119: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 105

Figura 2.3.19. Página de mensajes al usuario. Mensaje de Error

6.4. Diagrama de Secuencia Una vez realizado el diseño de los casos de uso, se realiza el diagrama de

secuencia, donde se ve el flujo y funcionamiento de la aplicación para cada acción

que quiere realizar un usuario.

6.4.1. Alta Candidato

En primer lugar el candidato se posiciona en el menú de Candidatos dentro

del menú lateral izquierdo. Luego selecciona la opción de Alta, que provoca una

acción recogida por el servlet AltaCandidatoServlet:

Page 120: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 106

Figura 6.4.1.1: Alta Candidato

Esa acción desencadena el siguiente diagrama de secuencia:

Figura 6.4.1.2: Diagrama de Secuencia AltaCandidatoServlet

Una vez devuelto el control, el flujo de la aplicación devuelve el control al

usuario en la página altaCandidato.jsp donde se ha creado el formulario de alta de

Candidatos. En él tras, cumplimentar correctamente el formulario, si el usuario hace

clic en el botón: desencadenará el siguiente diagrama:

Page 121: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 107

Figura 6.4.1.3: Diagrama de Secuencia RealizarAltaCandidatoServlet

Como podemos observar, tras realizar un alta, el usuario recuperará el

control en una página de mensajes, donde verá un mensaje de información si el

proceso de alta ha concluido correctamente o de error si no ha sido así.

6.4.2. Baja Candidato

Para dar de baja un candidato, el usuario debe comenzar también en el

menú de Candidatos como es lógico. Una vez ahí, deberá seleccionar la opción

Baja:

Page 122: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 108

Figura 6.4.2.1: Baja Candidato

Esto desencadena el siguiente diagrama de secuencia:

Figura 6.4.2.2: Diagrama de Secuencia BajaCandidatoServlet

Una vez seleccionada esta opción, el usuario dispondrá de un formulario de

búsqueda muy sencillo en el que podrá buscar el candidato que desea dar de baja:

Page 123: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 109

Figura 6.4.2.3: Buscar Candidato para Dar de Baja

Esto provocará una consulta en Base de Datos que mostrará los resultados

que concuerden con los parámetros introducidos en el formulario. Se puede ver en

el siguiente diagrama:

Figura 6.4.2.4: Diagrama Secuencia RealizarConsultaBaja

Una vez seleccionado uno de los candidatos de la lista de resultados

obtenidos en la consulta, el usuario deberá elegir la opción

para realizar la baja del candidato, que

desencadenaría otro diagrama de secuencia con la misma estructura: ACCIÓN

USUARIO SERVLET SERVICIO DAO con retorno de resultados al servlet

que elegirá la página a la que devuelve el control del usuario (página de resultados,

de mensajes, etc.).

Por ello, no se van a incluir aquí el resto de diagramas de secuencia, pues

haría demasiado extensa esta memoria descriptiva.

Page 124: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 110

6.5. Base de Datos La base de datos diseñada para albergar la información del sistema se

compone de nueve tablas:

Tabla acciones_usuarios

Esta tabla sirve para almacenar las acciones que realizan los usuarios en el

sistema. Tiene una PK auto incremental para cada registro que se inserta. Por cada

acción se almacena el usuario, la fecha, el tipo de operación (INSERT, DELETE,

SELECT o UPDATE), una cadena de texto sobre qué se realiza la acción

(CANDIDATO, AREA, SUBAREA, PETICION, INFORME) y el identificador del

objeto sobre el que se realiza la petición. Por tanto, los campos que componen la

tabla son los siguientes: CAMPO TIPO DESCRIPCIÓN CLAVE

pk Entero Identificador auto-incremental PK

accion_sobre Alfanumérico Se guarda sobre qué objeto se realiza la

acción: candidato, área, petición,…

id Entero Identificador del objeto sobre el que se

realiza la operación

tipo_operacion Alfanumérico Tipo de operación que se realiza sobre el

objeto: insert, update, delete,…

Usuario Alfanumérico Usuario que realiza la operación

Fecha Date Fecha en la que se realiza la operación

Tabla areas_tecnologicas: areas_tecnologicas

iddescripcion

varchar(10)varchar(100)

<pk>

Esta tabla sirve para almacenar la información sobre las áreas tecnológicas.

Como vemos, consta de tan sólo dos campos, ya que no se necesitan más para su

gestión: un id que es el identificador del área y a la vez PK de la tabla y su

descripción. CAMPO TIPO DESCRIPCIÓN CLAVE

id Alfanumérico Identificador del área tecnológica PK

Page 125: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 111

descripcion Alfanumérico Descripción del área tecnológica

Tabla candidato_areas: candidato_areas

id_candidatoarea

int(10)varchar(10)

<pk><pk>

Esta tabla sirve para almacenar la relación existente de un candidato con las

áreas tecnológicas a la que pertenecen. Como vemos, consta de tan sólo dos

campos, ya que no se necesitan más para su gestión: un id_candidato que es el

identificador del candidato y otro campo area que es el identificador del área

tecnológica. La dupla de ambos valores compone la PK de la tabla. CAMPO TIPO DESCRIPCIÓN CLAVE

id_candidato Entero Identificador del candidato PK

area Alfanumérico Identificador del área tecnológica PK

Tabla candidato_idiomas: candidato_idiomas

idiomaid_candidatonivel_idioma

varchar(30)int(10)varchar(30)

<pk><pk>

Esta tabla sirve para almacenar la relación existente de un candidato con los

idiomas que habla. Como vemos, consta de tan sólo tres campos, ya que no se

necesitan más para su gestión: idioma que es el idioma hablado, un id_candidato

que es el identificador del candidato y otro campo nivel_idioma que es el nivel del

idioma hablado por el candidato (alto/medio/bajo). La dupla de los dos primeros

campos compone la PK de la tabla. CAMPO TIPO DESCRIPCIÓN CLAVE

idioma Alfanumérico Idioma hablado por el candidato PK

id_candidato Entero Identificador del candidato PK

nivel_idioma Alfanumérico Nivel del idioma hablado por el candidato:

alto, medio o bajo

Tabla candidato_sub_areas: candidato_sub_areas

id_candidatoareasub_area

int(10)varchar(10)varchar(40)

<pk><pk><pk>

Page 126: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 112

Esta tabla sirve para almacenar la relación existente de un candidato con las

sub-áreas tecnológicas a las que pertenece. Consta de tres campos: un

id_candidato que es el identificador del candidato, otro campo area que es el

identificador del área tecnológica y un campo sub_area que es el sub-área

tecnológica a la que pertenece el candidato. La PK de la tabla se compone de los

tres campos de la tabla. CAMPO TIPO DESCRIPCIÓN CLAVE

area Alfanumérico Identificador del área tecnológica PK

id_candidato Entero Identificador del candidato PK

sub_area Alfanumérico Sub-área tecnológica PK

Tabla candidatos: candidatos

idnombreapellido1apellido2dnimailtelefono1telefono2estadoentrevista_telefonicaentrevista_personalentrevista_tecnicafecha_entrevistacoments_telfcoments_persocoments_tecnmotivos_rechazomotivos_novalidodispon_incorporacionficheronacionalidadpermiso_trabajotipo_visadosalario_actualsalario_solicitadocanal_recep_CVempleado_recomiendaempresa_procedenciaoficina_destinolugar_residenciafecha_altafecha_last_modfecha_propuestanivel_propuestatitulacionperfi lexperiencia_desdecertificacionesdispon_viajarfecha_nacimientobeneficios_socialesotra_retribucionpropuestaotra_formacionexperiencia_profesional

int(10)varchar(25)varchar(20)varchar(20)varchar(10)varchar(50)varchar(15)varchar(15)varchar(40)varchar(30)varchar(30)varchar(30)datevarchar(2000)varchar(2000)varchar(2000)varchar(1000)varchar(1000)varchar(50)varchar(100)varchar(30)varchar(10)varchar(30)int(10)int(10)varchar(30)varchar(40)varchar(30)varchar(30)varchar(30)datedatedatevarchar(30)varchar(50)varchar(30)int(10)varchar(1000)varchar(10)datevarchar(50)varchar(50)varchar(100)varchar(2000)varchar(8000)

<pk>

Page 127: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 113

Esta tabla contiene los campos necesarios para almacenar la información

requerida para cada candidato según el requisito RQ-RRHH-AC. La PK es el campo

id que es auto-incremental. Cabe recordar que no podría ser el DNI al no ser

obligatorio según ese mismo requisito en su versión definitiva 1.0.

De esta forma cuenta con los siguientes campos: CAMPO TIPO DESCRIPCIÓN CLAVE

id Entero Identificador del candidato PK

nombre Alfanumérico Nombre del candidato

apellido1 Alfanumérico Primer Apellido del candidato

apellido2 Alfanumérico Segundo Apellido del candidato

dni Alfanumérico DNI del candidato

mail Alfanumérico Correo electrónico de contacto del

candidato

telefono1 Alfanumérico Teléfono de contacto del candidato

telefono2 Alfanumérico Segundo teléfono de contacto del

candidato

estado Alfanumérico Estado dentro del proceso de selección

del candidato

entrevista_telefonica Alfanumérico Estado de la entrevista telefónica

realizada por el candidato (Sin iniciar,

apto, no apto)

entrevista_personal Alfanumérico Estado de la entrevista personal

realizada por el candidato (sin iniciar,

apto, no apto)

entrevista_tecnica Alfanumérico Estado de la entrevista técnica

realizada por el candidato (sin iniciar,

apto, no apto)

fecha_entrevista Date Fecha en la que se realizan las

entrevistas personal y técnica

coments_telf Alfanumérico Comentarios sobre la entrevista

telefónica realizada por el candidato

coments_perso Alfanumérico Comentarios sobre la entrevista

personal realizada por el candidato

coments_tecn Alfanumérico Comentarios sobre la entrevista

técnica realizada por el candidato

motivos_rechazo Alfanumérico Motivos por los que el candidato ha

rechazado la propuesta realizada

motivos_novalido Alfanumérico Motivos por los que el candidato ha

resultado no válido tras pasar por el

proceso de selección

dispon_incorporacion Alfanumérico Disponibilidad de incorporación a la

empresa del candidato

fichero Alfanumérico Nombre del fichero del currículo

adjunto del candidato

nacionalidad Alfanumérico Nacionalidad del candidato

Page 128: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 114

permiso_trabajo Alfanumérico El candidato dispone de permiso de

trabajo: SI o NO

tipo_visado Alfanumérico El tipo de visado que tiene el

candidato: estudiante, trabajo, …

salario_actual Entero Salario actual del candidato

salario_solicitado Entero Salario solicitado por el candidato

canal_recep_CV Alfanumérico Canal de recepción del candidato: web

empleo, universidad, …

empleado_recomienda Alfanumérico Empleado que ha recomendado al

candidato

empresa_procedencia Alfanumérico Empresa de la que procede el

candidato

oficina_destino Alfanumérico Oficina a la que va destinado el

candidato

lugar_residencia Alfanumérico Lugar de residencia del candidato

fecha_alta Date Fecha de alta del candidato en el

sistema

fecha_last_mod Date Fecha de última modificación del

candidato en el sistema

fecha_propuesta Date Fecha en la que se realizó la propuesta

al candidato

nivel_propuesta Alfanumérico Nivel de la propuesta realizada al

candidato

perfil Alfanumérico Perfil del candidato

titulacion Alfanumérico Titulación del candidato

experiencia_desde Entero Año desde el que trabaja el candidato

en el sector

certificaciones Alfanumérico Certificaciones que posee el candidato

dispon_viajar Alfanumérico Disponibilidad a viajar del candidato: SI

o NO

fecha_nacimiento Date Fecha de nacimiento del candidato

beneficios_sociales Alfanumérico Beneficios sociales adicionales al

salario del candidato

otra_retribucion Alfanumérico Otro tipo de retribución adicional al

salario del candidato

propuesta Alfanumérico Nombre del fichero de la propuesta

adjuntada al candidato

otra_formacion Alfanumérico Otro tipo de formación del candidato:

Curso de struts, de gestores de

contenido,…

experiencia_profesional Alfanumérico Experiencia profesional del candidato.

Campo de texto libre para introducir

sus datos más relevantes.

Tabla peticion_candidatos: peticion_candidatos

id_peticionid_candidato

int(11)int(11)

<pk><pk>

Page 129: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 115

Esta tabla sirve para almacenar la relación de los candidatos

asignados a una petición. Se compone de sólo dos campos: el identificador del

candidato y de la petición. La dupla de valores compone la PK de la tabla: CAMPO TIPO DESCRIPCIÓN CLAVE

id_candidato Entero Identificador del candidato PK

id_peticion Entero Identificador de la petición PK

Tabla peticiones: peticiones

idcompaniapeticionariopuestonum_recursosduracionunidad_duracionlugarareaperfil_solicitadofecha_incorporacionrequisitos_tecnicosnivel_importancia_peticioncomentarios

int(10)varchar(25)varchar(100)varchar(50)int(10)int(10)varchar(20)varchar(100)varchar(30)varchar(30)datevarchar(2000)varchar(100)varchar(2000)

<pk>

Esta tabla permite almacenar la información requerida para una

petición según el requisito: RQ-COM-AP. La clave primaria de esta tabla es el

campo id, que es auto incremental. CAMPO TIPO DESCRIPCIÓN CLAVE

id Entero Identificador de la petición PK

compania Alfanumérico Compañía o empresa peticionaria

peticionario Alfanumérico Persona peticionaria

puesto Alfanumérico Puesto o cargo de la persona

peticionaria

num_recursos Entero Número de recursos solicitados

duracion Entero Duración del proyecto

unidad_duracion Alfanumérico Unidad de duración del proyecto: días,

semanas, meses o años

lugar Alfanumérico Lugar donde se desarrollará el proyecto

area Alfanumérico Identificador del área tecnológica

encargada del proyecto

perfil_solicitado Alfanumérico Perfil de los recursos solicitados para la

petición

fecha_incorporacion Date Fecha de incorporación de los recursos

al proyecto

requisitos_tecnicos Alfanumérico Requisitos técnicos especiales

solicitados para la petición

nivel_importancia_peticion Alfanumérico Nivel de importancia de la petición:

cliente estratégico, operativo, vital,…

comentarios Alfanumérico Comentarios sobre la petición

Page 130: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 116

6.6. Matriz de Trazabilidad de Requisitos En este apartado se puede apreciar la metodología seguida para la

realización de este proyecto, donde a partir de una necesidad, se identifica un

requisito, sobre el que se elabora un caso de uso que da lugar a un diagrama de

secuencia. Una vez diseñados los diagramas de secuencia se desarrolla el código

necesario para cubrir el requisito solicitado por el cliente. Para tener un control de

este proceso, se ha elaborado una matriz de trazabilidad que lo resume:

REQUISITO CASO DE USO DIAGRAMA SECUENCIA RQ-RRHH-AC CU-RRHH-AC DS-RRHH-AC RQ-RRHH-CC CU-RRHH-CC DS-RRHH-CC RQ-RRHH-MC CU-RRHH-MC DS-RRHH-MC RQ-RRHH-BC CU-RRHH-BC DS-RRHH-BC RQ-RRHH-CV CU-RRHH-CV DS-RRHH-CV RQ-RRHH-AA CU-RRHH-AA DS-RRHH-AA RQ-RRHH-BA CU-RRHH-BA DS-RRHH-BA RQ-RRHH-CA CU-RRHH-CA DS-RRHH-CA RQ-RRHH-MA CU-RRHH-MA DS-RRHH-MA RQ-RRHH-AS CU-RRHH-AS DS-RRHH-AS RQ-RRHH-BS CU-RRHH-BS DS-RRHH-BS RQ-RRHH-CS CU-RRHH-CS DS-RRHH-CS RQ-RRHH-MS CU-RRHH-MS DS-RRHH-MS RQ-RRHH-IA CU-RRHH-IA DS-RRHH-IA RQ-RRHH-IP CU-RRHH-IP DS-RRHH-IP RQ-RRHH-CD CU-RRHH-CD DS-RRHH-CD RQ-COM-AP CU-COM-AP DS-COM-AP RQ-COM-CP CU-COM-CP DS-COM-CP RQ-COM-MP CU-COM-MP DS-COM-MP RQ-COM-AC CU-COM-AC DS-COM-AC RQ-COM-VC CU-COM-VC DS-COM-VC RQ-COM-MC CU-COM-MC DS-COM-MC RQ-SIS-LG CU-SIS-LG DS-SIS-LG RQ-SIS-RO CU-SIS-RO DS-SIS-RO

Page 131: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 117

7. Implantación y pruebas En este capítulo se explica la metodología seguida a la hora de la

implantación y pruebas seguidas en el desarrollo del proyecto.

Como se ha explicado anteriormente, el proyecto se ha desarrollado en un

entorno local y la implantación se ha llevado a cabo en dos fases: una primera

implantación en el servidor de desarrollo y tras las pruebas y validación, una

segunda implantación en el servidor de explotación.

En el entorno local se ha desarrollado en el entorno de desarrollo IDE

Eclipse 3.2.2 un proyecto con el nombre rrhh, que será el contexto utilizado en el

servidor de aplicaciones para nuestra aplicación, que cuenta con una estructura

como la siguiente:

Page 132: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 118

Figura 7.1: Estructura Proyecto

Page 133: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 119

Vemos en la estructura como se han respetado los paquetes que se habían

diseñado en el diagrama de paquetes, las librerías que se han utilizado par el

proyecto y la estructura Web de la aplicación. Esta estructura Web contiene

carpetas que organizan los elementos de la siguiente forma:

- curricula: Carpeta destino de los currículos adjuntados en el servidor.

- html: Carpeta que contiene las páginas con contenido estático

(index.html y cabecera.html).

- img: Carpeta que contiene las imágenes de la aplicación Web.

- jscripts: Carpeta que contiene los ficheros con las funciones javascript

utilizadas en el sistema.

- jsp: Carpeta que contiene las páginas JSP con contenido dinámico. A su

vez contiene subcarpetas para organizar mejor las páginas que

pertenecen a los distintos módulos del sistema (candidatos, áreas,

peticiones, etc.).

- properties: Carpeta que contiene los ficheros properties que almacenan

valores como los perfiles de candidatos, las titulaciones, etc.

- propuestas: Carpeta destino de las propuestas adjuntadas en el servidor.

- style: Carpeta que contiene las hojas de estilo CSS que se han utilizado

para el diseño de la aplicación Web.

Al ser una aplicación Web, lo que hay que generar no es un fichero

ejecutable como en las aplicaciones típicas de un sistema operativo o un fichero .jar

con las clases como otras aplicaciones Java, sino que se necesita un fichero .war

que será el que se desplegará en el servidor de aplicaciones Tomcat. Para generar

este fichero de una manera fácil y ahorrar tiempo de exportar la estructura Web,

con las librerías necesarias y las clases compiladas de nuestro sistema, se ha

creado una tarea ANT en el Eclipse que automatiza ese proceso. Esto se hace con

un fichero XML donde se define qué tareas se quieren automatizar y qué hace cada

una. Se ha definido la siguiente tarea:

Page 134: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 120

Figura 7.2: Tarea ANT para el despliegue de la aplicación

Como se ve en la imagen tiene varias tareas:

- clean: Tarea que elimina el fichero .war y la carpeta generada en el

servidor de aplicaciones.

- comp: Tarea que compila las clases y genera un .jar con ellas.

- dist: Tarea que genera el fichero de despliegue de aplicación y lo copia

al directorio de despliegue del servidor de aplicaciones, que

automáticamente lo desplegará cuando lo detecte.

- prepare: Tarea que crea los directorios donde se compilan las clases del

sistema y donde se insertan las librerías necesarias para la aplicación.

Por tanto, una vez hecho todos los cambios que cierran una versión de los

requisitos se empaqueta en el fichero .war con esta aplicación y se realizarán las

pruebas finales de la versión de la aplicación. Cuando su resultado es satisfactorio

se inicia la implantación en el servidor de desarrollo del .war que sigue el siguiente

esquema:

Figura 7.3: Flujo implantación y pruebas

Para ello, se realiza antes una copia de seguridad de la base de datos con el

comando mysqldump: mysqldump rrhh > backup-yyyy-mm-dd.sql

Page 135: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 121

Una vez hecha la copia de seguridad de la base de datos se hace un backup

de la aplicación copiando tanto el .war que estaba desplegado como la carpeta que

genera el servidor de aplicaciones con el mismo sistema de identificación que la

base de datos: backup-rrhh-yyyy-mm-dd.war y backup-rrhh-yyyy-mm-dd para el

directorio.

Tanto los backups de la aplicación como de la base de datos se guardan en

el propio servidor de desarrollo en la carpeta /home/rrhh/backups/ cuando estaba

en el entorno Linux. Actualmente en C:\rrhh\backups\

Tras las copias de seguridad se procede al despliegue de la aplicación en el

servidor de aplicaciones mediante la consola de administración del tomcat:

http://aplicacionesvass.proyectos.vass.es:8080/manager/html

Page 136: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 122

Figura 7.4: Consola administración Tomcat

En esta consola de administración se pueden ver las aplicaciones que están

corriendo en ese momento. Como vemos, la aplicación rrhh está arrancada, por lo

que el primer paso es parar la aplicación. El siguiente paso será replegar la

aplicación, lo que elimina del contexto del servidor la aplicación. Hecho esto, se

podrá desplegar el nuevo fichero .war que contiene la aplicación con el botón de

examinar, que permite seleccionar su ubicación dentro de nuestro disco duro local y

subirlo al servidor con el botón desplegar.

Page 137: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 123

Hecho esto debería aparecer en la lista de aplicaciones como desplegado,

por lo que se procedería a probar la funcionalidad del sistema con los nuevos

cambios introducidos. Tras comprobar el correcto funcionamiento, se procedería a

la implantación en el entorno de explotación.

Este entorno al ser el que se usa por los usuarios del sistema, es el más

restrictivo en cuanto a políticas de seguridad. Antes de cualquier paso a este

entorno de una versión o revisión de la aplicación se hace una copia de seguridad

del servidor en cinta. Una vez hecho esto, el protocolo es el mismo: copia de base

de datos, del .war y de la carpeta de la aplicación.

Si lo que se desea es hacer un cambio en la base de datos, se procederá

con el mismo sistema de backup de base de datos (mysqldump) en el caso del

entorno de desarrollo y acompañado de un backup del servidor en el caso del

entorno de producción. Para modificar la base de datos, se generarán sentencias

sql de tipo ALTER si el objeto ya existe, nunca se eliminará una tabla existente y se

procederá a crearla de nuevo (DROP + CREATE). Por tanto, se procederá a

generar un fichero con el siguiente identificador: alter-<nombre_tabla>-yyyy-mm-

dd.sql por cada tabla que se desea modificar. En el caso de que sea para crear una

tabla inexistente, el fichero comenzará por create en vez de alter. En ambos casos,

se guardarán dichos ficheros en los mismos directorios de backup mencionados

para la aplicación Web.

Una vez hecho esto, se comprobará el correcto funcionamiento de la

aplicación y de la base de datos, probando en especial los cambios que se han

introducido.

Page 138: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 124

8. Planificación La planificación de este proyecto, se ha dividido en tareas que se

corresponden con los módulos que se han desarrollado. También se ha incluido la

documentación dentro de la planificación, abarcando todo el desarrollo del proyecto

en la redacción de este documento.

Se puede ver en la siguiente imagen, donde se puede apreciar que la

duración del proyecto va del 18 de julio de 2006 a 26 de julio de 2007, estimando

unas 189 jornadas de trabajo.

Page 139: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 125

Figura 8.1: Planificación de tareas

Page 140: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 126

Una vez vista la planificación, se puede ver un diagrama de Gantt que la

resuma:

Figura 8.2: Diagrama de Gantt

Page 141: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 127

9. Presupuesto El presupuesto se ha elaborado de acuerdo a la planificación seguida,

donde se han reflejado las jornadas trabajadas.

El proyecto realizado ha sido desarrollado por mí, cubriendo diferentes

perfiles tales como analista, programador o técnico de sistemas, por lo que para la

realización de este presupuesto se ha optado por una única tarifa de 30 € / hora y

una jornada de 5 horas por día.

En cuanto a la dirección de proyecto ha sido realizada por Adolfo Rosa,

estimando unas 20 jornadas de la misma duración con una tarifa de 50 € / hora.

Por tanto, el presupuesto en cuanto a Recursos Humanos utilizados es el

siguiente:

JORNADAS TRABAJADAS HORAS/JORNADA TARIFA TOTAL 189 jornadas desarrollo 5 horas 30 € / hora 28.350,00 €

20 jornadas dirección 5 horas 50 € / hora 5.000,00 €TOTAL 33.350,00 €

En cuanto a los Recursos Materiales utilizados son los siguientes:

RECURSO MATERIAL PRECIO CANTIDAD TOTAL Portátil IBM R60e para desarrollo 1.200,00 € 1 1.200,00 €Servidor IBM Desarrollo 2.000,00 € 1 2.000,00 €Servidor IBM Producción 2.000,00 € 1 2.000,00 €MS Windows Server 2003 1.209,00 € 2 2.418,00 €TOTAL 7.618,00 €

El resto de productos y herramientas utilizados es software libre por lo que

no supone coste, desde el SGBD (MySQL), hasta los servidores de aplicaciones y

web utilizados (Tomcat y Apache) o el entorno de desarrollo (Eclipse).

Por tanto el presupuesto asciende a un total de 40.968,00 €

RECURSOS HUMANOS 33.350,00 € RECURSOS MATERIALES 7.618,00 € TOTAL PRESUPUESTO 40.968,00 €

Page 142: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 128

10. Conclusiones El desarrollo de este proyecto me ha servido para afianzar todos los

conocimientos adquiridos durante la carrera y trasladarlos a un entorno real dentro

del mundo laboral. También me ha servido para investigar sobre tecnologías no

conocidas por mi parte y para ampliar el conocimiento que tenía de otras muchas.

Además ha permitido mejorar la gestión en VASS Consultoría de Sistemas,

en dos departamentos importantes como son el de Recursos Humanos y el

Comercial, cumpliendo todos los objetivos marcados.

Ha supuesto un gran esfuerzo por mi parte al tener que compaginar durante

este año el trabajo, los estudios y el desarrollo de este proyecto pero se agradece

que te feliciten por todo este trabajo, por lo que esa gratitud como recompensa

supera las dificultades encontradas para su desarrollo.

Por otra parte, me permite finalizar la carrera de una manera bastante digna

en mi opinión, al haber desarrollado una aplicación que va a ser usada por una

empresa en continuo crecimiento.

Por último, me ha aportado una profundización en el lenguaje Java, sobre

todo en el desarrollo de aplicaciones Web, que me servirán en el futuro laboral de

manera que el tiempo empleado en el desarrollo de este proyecto se considera

como inversión de futuro.

Page 143: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 129

BIBLIOGRAFÍA

[BARR01]

Barranco de Areba, Jesús, “Metodología del

análisis estructurado de sistemas”, Publicaciones de la

Universidad Pontificia Comillas, Madrid 2001.

[ESQU06]

Esquivel, Juan Carlos, “Apuntes de Ingeniería del

Software II”, Universidad Pontificia Comillas, Madrid

2006.

[ORDA02]

Ordax, José María, “Apuntes Lenguaje de

programación Java”, Universidad Pontificia Comillas,

Madrid 2002.

[RIVE02] Rivero Cornelio, Enrique; Martínez Fuentes, Luis;

Reina Juliá, Luis; Benavides Abajo, Juan y Olaizola

Bartolomé, Juan Mª, “Introducción al SQL para Usuarios

y Programadores” Paraninfo Segunda Edición, 2002.

[COUL01] Coulouris, George; Dollimore, Jean y Kindverg,

Tim, “Sistemas Distribuidos: Conceptos y Diseño”,

Addison-Wesley, Tercera Edición, 2001.

[ECKE02] Eckel, Bruce, “Piensa en Java”, Prentice Hall

Segunda Edición, 2002.

[SING02] Singh, Inderjeet; Stearns, Beth; Johnson, Mark,

“Designing Enterprise Applications with the J2EEtm

Platform”, Addison-Wesley Second Edition, 2002.

[ODON02] O’Donahue, John, “Java Database Programming

Bible”, John Wiley & Sons, 2002.

[PEKO03] Pekowsky, Larne, “Java Server Pages", Addison

Page 144: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 130

Wesley, 2003.

[GEAR01] Geary, David M., "Advanced Java Server Pages",

Prentice Hall, 2001.

[MELC07] Melchor, Juan Enrique, “¿Existe una verdadera

gestión en el proceso de selección con los candidatos

rechazados?”, www.rrhhmagazine.com 2007

Páginas Web consultadas:

- http://java.sun.com/j2se/1.4.2/docs/api/ (API de Java)

- http://es.wikipedia.org/wiki/Portada (Wikipedia)

- http://www.wikilearning.com/ (Tutorial de EL)

- http://www.javaworld.com/javaworld/jw-05-2003/jw-0523-

calltag.html?page=2 (Llamadas a métodos de JavaBean desde JSP2.0)

- http://www.javaworld.com/javaworld/jw-04-2006/jw-0410-html.html

(HTML to PDF)

- http://www.lowagie.com/iText/ (Generación de PDF)

- http://jakarta.apache.org/commons/fileupload/ (Subida de archivos a un

servidor)

- http://java.sun.com/docs/books/tutorial/jdbc/overview/index.html (Tutorial

de JDBC)

- http://www.rrhhmagazine.com/inicio.asp?url=/secciones/seleccion.asp

(Selección de personal)

Page 145: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 131

REFERENCIAS

- VASS: Valor Añadido en Soluciones y Servicios. Empresa de

Consultoría de Sistemas.

- RRHH: Recursos Humanos.

- CV: Curriculum Vitae ó currículo.

- J2EE: Java Platform Enterprise Edition. Versión del lenguaje de

programación Java que incluye características como JSP, WebServices,

RMI, JavaMail, XML y JavaBeans entre otras, ideal para el desarrollo de

aplicaciones Web.

- JSP: Java Server Pages. Tecnología para crear aplicaciones Web con

contenidos dinámicos en sus páginas mediante la inserción de scripts

con código Java para dicho propósito. En su especificación 2.0 se ha

intentado eliminar la inserción de código Java para no interferir en el

modelo MVC que intenta separar la lógica de negocio de la capa de

presentación. Para ello se han creado el Expresion Language (EL) que

mediante taglibs intenta evitarlo.

- EL: Expresion Language. Tecnología desarrollada que permite

operaciones dinámicas con un lenguaje parecido al HTML tradicional,

que facilita el mantenimiento de las aplicaciones Web y que evita la

inclusión de código Java en las páginas de presentación. Se utiliza

definiendo un prefijo al comienzo de la página JSP: <%@ taglib

prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> para que se puedan

usar etiquetas con dicho prefijo y el servidor las interprete como EL. Un

ejemplo de uso sería el siguiente: <c:forEach var="candidato"

items="${candidatos}"> … operaciones con la variable candidato …

</c:forEach>

Page 146: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 132

- VBIS: Vignette V7 Business Integration Studio. Herramienta de

integración de contenidos de distintas fuentes de datos que permite

mediante adaptadores realizar traspasos de información entre ellas. Se

distribuye con el suite de productos de Vignette que incluye gestor de

contenidos (VCM) y de presentación (VAP).

- VCM: Vignette Content Management. Gestor de contenidos de Vignette.

- VAP: Vignette Application Portal. Gestor de presentación de portales

Web.

- ERP: Enterprise Resource Planning. Sistema de Planificación de

Recursos Empresariales. Son sistemas integrales de gestión de una

empresa compuestos por módulos integrados en una aplicación.

- CRM: Customer Relationship Management. Sistemas Informáticos de

apoyo a la gestión de las relaciones con clientes, a las ventas y al

marketing.

- JDBC: Java DataBase Connectivity. Es un framework que permite

mediante código Java realizar operaciones sobre bases de datos

independientemente de cual sea el Gestor de Base de Datos.

- SGBD: Sistema Gestor de Base de Datos.

- DAO: Data Access Object. Patrón de diseño que encapsula en una capa

el acceso a base de datos de una aplicación.

- MVC: Modelo Vista Controlador. Patrón de diseño que separa los datos,

la interfaz de usuario y la lógica de control en capas diferentes.

- PDF: Portable Document Format. Formato de almacenamiento de

documentos desarrollado por la empresa Adobe® bastante extendido

como formato de visualización y de impresión de documentos.

Page 147: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 133

- LDAP: Lightweight Directory Access Protocol. Protocolo a nivel de

aplicación que permite acceso a un servicio de directorio ordenado y

distribuido para buscar diversa información en un entorno de red.

Page 148: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 134

ANEXO I: Manual de Usuario En este Manual de Usuario pretende facilitar el uso de la aplicación Web

desarrollada para la gestión de Recursos Humanos y Proyectos de VASS

Consultoría de Sistemas.

1.- Acceso a la aplicación: Para acceder a la aplicación se abre un navegador de Internet (Explorer 6 o

superior) y se introduce la dirección: https://aplicacionesvass.proyectos.vass.es/rrhh

Tras introducir la clave de acceso al servidor, aparece una pantalla como la

siguiente:

Figura A.1.1: Pantalla inicial

En ella se puede apreciar una parte a la izquierda de la pantalla con el menú

de opciones de la aplicación y en la parte central un formulario para iniciar sesión

en la aplicación.

2.- Iniciar sesión: Para iniciar sesión, introducimos nuestro usuario de la aplicación de gestión

de empleados y la clave de acceso (1) y pulsamos el botón (2) como

podemos ver en la siguiente imagen:

Page 149: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 135

Figura A.1.2: Inicio sesión

Tras iniciar sesión, nos encontraremos en la página inicial de la aplicación:

el menú de candidatos, que tiene varias opciones: Alta, Baja y Consultas, como se

aprecia en la siguiente imagen.

Figura A.1.3: Menú Inicial

Además disponemos de más información como el usuario con el que hemos

iniciado la sesión y el menú en el que nos encontramos.

3.- Alta Candidato: Para dar de alta un candidato en el sistema debemos pulsar en el menú de

Candidatos: del menú de la lateral izquierda. Una vez

Page 150: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 136

hecho esto, pulsaremos en la opción Alta: Esta acción cargará un

formulario que permitirá dar de alta al candidato en el sistema. Dicho formulario

agrupa la información que se recoge de un candidato en tres pestañas distintas:

Datos Personales, Estado Selección y Skills como se puede apreciar en las

siguientes imagenes:

Page 151: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 137

Figura A.1.4: Alta Candidato – Datos Personales

Veamos ahora la pestaña de Estado de Selección:

Page 152: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 138

Figura A.1.5: Alta Candidato – Estado Selección

Por último la pestaña de skills:

Page 153: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 139

Figura A.1.6: Alta Candidato – Skills

Para dar de alta el candidato deberán cumplimentarse correctamente, al

menos los campos obligatorios (están marcados con un asterisco). En caso

contrario se mostrará un mensaje como este:

Figura A.1.7: Alta Candidato – Faltan Campos

Si se han cumplimentado todos los obligatorios, pero algún campo no ha

sido cumplimentado con un valor correcto, el sistema avisará con un mensaje como

este:

Page 154: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 140

Figura A.1.8: Alta Candidato – Formato incorrecto

Para dar de alta el candidato, se debe pulsar el botón:

. Si se desea borrar todos los campos del formulario, se

pulsará el botón:

Después de pulsar el botón de DAR DE ALTA, el sistema informará al

usuario si se han guardado correctamente los datos o no. Un mensaje satisfactorio

sería como el siguiente:

Figura A.1.9: Alta candidato – Alta correcta

Si por el contrario, el usuario ya existe en la base de datos, se mostrará el

siguiente mensaje:

Figura A.1.10: Alta candidato – Candidato existente

Si se produce otro tipo de error en el proceso de alta de candidatos, el

sistema informará al usuario con un mensaje como este:

Page 155: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 141

Figura A.1.11: Alta Candidato – Error

4.- Baja Candidato: Para dar de baja un candidato en el sistema debemos pulsar en el menú de

Candidatos: del menú de la lateral izquierda. Una vez

hecho esto, pulsaremos en la opción Baja: Esta acción cargará un

formulario que permitirá buscar el candidato que deseamos dar de baja entre los

existentes en el sistema. El formulario permite hacer una búsqueda por nombre,

primer apellido, segundo apellido, DNI y Área Tecnológica:

Figura A.1.12: Baja Candidato – Formulario Consulta

Una vez rellenado este formulario con los datos del candidato que

deseamos eliminar, se pulsa el botón . Si nos hemos

equivocado y deseamos vaciar los campos del formulario pulsamos el botón:

Page 156: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 142

Una vez presionado el botón , el sistema buscará los

candidatos que coincidan con la información introducida en el formulario y

presentará un listado como el siguiente con los resultados de dicha búsqueda:

Figura A.1.13: Baja Candidato – Resultados Consulta

Si no hemos encontrado el candidato que buscamos podemos pulsar el

botón para retornar al formulario de consultas y refinar nuestra

búsqueda, o pulsar el botón inicio que nos llevará al menú de Candidatos.

Si lo que queremos es eliminar un candidato de los que hay en la lista de

resultados pulsaremos el botón: de dicho candidato, lo que nos lleva a una

página como la del formulario de alta, pero con los datos del candidato, aunque con

la opción de confirmar la baja:

Figura A.1.14: Baja Candidato – Confirmación de Baja

Al pulsar en , se preguntará una vez más al

usuario si realmente desea dar de baja el candidato ya que toda la información se

eliminará y no se podrá recuperar si no es dándolo de alta otra vez. El mensaje será

como este:

Page 157: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 143

Figura A.1.15: Baja Candidato – Mensaje Confirmación

Si se ha eliminado correctamente se mostrará un mensaje como el

siguiente:

Figura A.1.16: Baja Candidato – Mensaje Baja Correcta

Si se produce algún error al dar de baja un candidato, se mostrará un

mensaje de error como el siguiente:

Figura A.1.17: Baja Candidato – Mensaje Error

5.- Consultas Candidato: Para realizar consultas sobre los candidatos existentes en el sistema debemos

pulsar en el menú de Candidatos: del menú de la lateral

izquierda. Una vez hecho esto, pulsaremos en la opción Consultas:

Page 158: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 144

Esta acción cargará un formulario que permitirá buscar el candidato que deseamos

de entre los existentes.

Figura A.1.18: Consultas Candidato – Formulario

En este formulario se permite buscar candidatos por algún atributo que se

elige mediante un desplegable como el siguiente:

Figura A.1.19: Consultas Candidato – Desplegable Atributos

Además se podrá filtrar por un rango de fechas, sobre el tipo de fecha

elegida en un desplegable como este:

Page 159: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 145

Figura A.1.20: Consultas Candidato – Desplegable fechas

Además puede filtrar por áreas (se puede marcar sólo una) y sub-áreas (se

pueden marcar varias). Para marcar varias sub-áreas, se pulsará la tecla ctrl. y

manteniéndola pulsada, se hará clic en todas las sub-áreas que se quieran marcar.

También se puede ordenar los resultados de la búsqueda con un

desplegable que es parecido al de elegir atributos, pero añadiéndole el de las

fechas. Una vez completado el formulario, se pulsará el botón

Se mostrará un listado con los resultados como el siguiente:

Figura A.1.21: Consultas Candidato – Resultados Consulta

Para ver la información de un candidato en más detalle se pulsará sobre el

botón , que presentará un formulario como el de alta o confirmación de baja,

pero que tendrá las opciones de modificar los datos del candidato o generar su

currículo en PDF.

6.- Modificar Candidato: Como se acaba de comentar en el apartado de Consultas, para modificar un

candidato se sigue el procedimiento de consulta hasta encontrar el candidato que

Page 160: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 146

deseamos modificar. Una vez en él podremos modificar los campos como si de un

alta se tratase.

Las opciones que tendremos serán:

Figura A.1.22: Modificar Candidato – Opciones

El botón que permitirá guardar las modificaciones es el botón

. Si se pulsa sobre él, aparecerá un mensaje

preguntando al usuario si realmente desea guardar los cambios:

Figura A.1.23: Modificar Candidato – Mensaje confirmación

Si se confirma y no se produce ningún error el sistema informará al usuario

con un mensaje como este:

Figura A.1.24: Modificar Candidato – Mensaje Modificación

Si se produce algún error, el sistema informaría al usuario con un mensaje

como este:

Page 161: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 147

Figura A.1.25: Modificar Candidato – Mensaje Error

7.- Generar CV de Candidato en PDF: En el apartado de Consultas se comentó que tras realizar una consulta y

seleccionar un usuario, se habilitaba la opción de generar su currículo en formato

PDF de acuerdo a una plantilla. La plantilla la elegirá mediante un desplegable con

las plantillas disponibles:

Para generarlo pulsará sobre el botón: que

generará el currículo del candidato de acuerdo a la plantilla elegida con la

información que hay almacenada sobre el candidato en la base de datos.

Este currículo se mostrará dentro de la aplicación, permitiendo guardarlo,

imprimirlo o enviar por correo electrónico de esta forma:

Figura A.1.26: Generar CV en PDF

Page 162: EL DIRECTOR DEL PROYECTO - iit.comillas.edu · HUMANOS Y GESTIÓN DE PROYECTOS AUTOR: ... siguiente etapa de mi vida en la que podré afrontar nuevos retos. ... deben estar siempre

Solución Integral para la Administración de Recursos Humanos y Gestión de Proyectos Víctor Saiz Romero

__________________________________________________________________________________ 148

8.- Resto de apartados: El resto de apartados contienen secciones similares a las descritas para la

gestión de candidatos y con un interfaz idéntico por lo que no se profundizará en

más detalle para poder hacer uso del resto de las secciones.