VILNIAUS GEDIMINO TECHNIKOS UNIVERSITETAS Álvaro

Transcription

VILNIAUS GEDIMINO TECHNIKOS UNIVERSITETAS Álvaro
VILNIAUS GEDIMINO TECHNIKOS UNIVERSITETAS
FUNDAMENTINIŲ MOKSLŲ FAKULTETAS
Álvaro Santisteban Diéguez
MODELING AND SIMULATION OF AN EMPLOYMENT
AGENCY USING BUSINESS MODELER
Final bachelor project
Supervisor: Mindaugas Rybokas
Vilnius, 2009
1
Table of contents
0. RESUMEN DEL PROYECTO EN CASTELLANO ...........................................................................6
0.1 INTRODUCCIÓN ....................................................................................................................................6
0.1.1 Caracteristicas de WebSphere Business Modeler ........................................... 6
0.1.2 Introducción al proyecto y al modelo .............................................................. 7
0.2 REPOSITORIOS, DATOS Y ROLES ...........................................................................................................8
0.3 EL MODELO ........................................................................................................................................11
0.3.1 Give ticket number (Dar número de ticket)................................................... 12
0.3.2 Give information (Dar información) ............................................................. 12
0.3.3 Check Documentation (Comprobar documentación) .................................... 12
0.3.4 Interview with the applicant (Entrevistar al solicitante)................................ 12
0.3.5 Find suitable job (Buscar un trabajo adecuado) ............................................ 13
0.3.6 Select a job (Escoger un trabajo)................................................................... 13
0.3.7 Offer a job (Ofrecer un empleo) .................................................................... 14
0.4 SIMULACIÓN ......................................................................................................................................14
0.5 COMENTARIOS ADICIONALES .............................................................................................................15
1. INTRODUCTION .................................................................................................................................16
1.1 AN INTRODUCTION TO THE DOCUMENT ..............................................................................................16
1.2 AN INTRODUCTION TO THE SYSTEM ...................................................................................................16
1.3 IBM’S WEBSPHERE BUSINESS MODELER ..........................................................................................16
1.3.1 Diagram layouts............................................................................................. 17
1.3.2 Human task modeling.................................................................................... 17
1.3.3 Business rules definition................................................................................ 17
1.3.4 Business item definition ................................................................................ 17
1.3.5 Resource modeling ........................................................................................ 18
1.3.6 Organization modeling .................................................................................. 18
1.3.7 Structure modeling ........................................................................................ 18
1.3.8 Simulation of business processes .................................................................. 18
2. REPOSITORIES, BUSINESS ITEMS AND ROLES ........................................................................20
2.1 REPOSITORIES ....................................................................................................................................20
2.2 BUSINESS ITEMS .................................................................................................................................20
2.2.1 Address .......................................................................................................... 21
2.2.2 Personal data.................................................................................................. 21
2.2.3 Studies ........................................................................................................... 21
2.2.4 Job.................................................................................................................. 22
2.2.5 Job requirement ............................................................................................. 22
2.2.6 Advise of a new client ................................................................................... 22
2.2.7 Ticket ............................................................................................................. 22
2.2.8 Unemployment benefit .................................................................................. 22
2.2.9 Burocracy papers ........................................................................................... 23
2.2.10 Form ............................................................................................................ 23
2.2.11 First-Time form ........................................................................................... 23
2.2.12 Past-Jobs form ............................................................................................. 23
2.2.13 Internal agency form.................................................................................... 23
2.2.14 Job-Offers form ........................................................................................... 24
2.3 ROLES ................................................................................................................................................24
2.3.1 Advisor .......................................................................................................... 24
2.3.2 Information agent .......................................................................................... 25
2
2.3.3 Job seeker ...................................................................................................... 25
3. THE MODEL ........................................................................................................................................26
3.1 GIVE TICKET NUMBER ........................................................................................................................28
3.1.1 Give ticket ..................................................................................................... 30
3.1.2 Push information agent.................................................................................. 30
3.1.3 Pop information agent ................................................................................... 30
3.1.4 Assign an information agent.......................................................................... 30
3.1.5 Push advisor................................................................................................... 30
3.1.6 Pop advisor .................................................................................................... 30
3.1.7 Assign an advisor .......................................................................................... 30
3.2 GIVE INFORMATION ...........................................................................................................................30
3.2.1 Check ticket ................................................................................................... 32
3.2.2 Ask if first time here...................................................................................... 32
3.2.3 Ask if first job................................................................................................ 32
3.2.4 Give explanation about documents ............................................................... 32
3.2.5 Give explanation about agency ..................................................................... 32
3.2.6 Respond to questions ..................................................................................... 32
3.3 CHECK DOCUMENTATION ...................................................................................................................32
3.3.1 Check ticket ................................................................................................... 34
3.3.2 Check First-Time form .................................................................................. 34
3.3.3 Check Internal form....................................................................................... 34
3.3.4 Check Past-Jobs form .................................................................................... 34
3.3.5 Check burocracy papers................................................................................. 34
3.4 INTERVIEW WITH APPLICANT .............................................................................................................34
3.4.1 Read First-Time form .................................................................................... 36
3.4.2 Creation of Internal form............................................................................... 36
3.4.3 Read Internal form......................................................................................... 36
3.4.4 Listen to explanations.................................................................................... 36
3.4.5 Open a trouble-rejection ticket ...................................................................... 36
3.4.6 Ask what happened to get fired ..................................................................... 36
3.4.7 Open a trouble-fired ticket............................................................................. 36
3.4.8 Update Internal form 2 .................................................................................. 36
3.4.9 Explain simple search.................................................................................... 36
3.4.10 Determinate area.......................................................................................... 36
3.4.11 Determinate position ................................................................................... 36
3.4.12 Determinate salary....................................................................................... 36
3.4.13 Update Internal form ................................................................................... 37
3.4.14 Explain detailed search................................................................................ 37
3.5 FIND SUITABLE JOB ............................................................................................................................37
3.5.1 Compare Internal form with jobs-DB............................................................ 39
3.5.2 Create Job-Offers form.................................................................................. 39
3.5.3 Contact companies......................................................................................... 39
3.5.4 Update Job-Offers form................................................................................. 39
3.5.5 Find suitable job ............................................................................................ 39
3.6 SELECT A JOB .....................................................................................................................................39
3.6.1 Propose a job ................................................................................................. 41
3.6.2 Contact company ........................................................................................... 41
3.6.3 Assign unemployment benefit....................................................................... 41
3.6.4 Advise applicant of his situation ................................................................... 41
3.6.5 Update internal form...................................................................................... 41
3.6.6 Notify ticket machine .................................................................................... 41
3
3.7 OFFER A JOB .......................................................................................................................................41
3.7.1 Compare Internal form with Jobs-DB ........................................................... 43
3.7.2 Create Job-Offers form.................................................................................. 43
4. SIMULATION.......................................................................................................................................44
4.1 FIRST SIMULATION: GIVE TICKET NUMBER ........................................................................................44
4.2 SECOND SIMULATION: CHECK DOCUMENTATION ...............................................................................45
4.3 THIRD SIMULATION: INTERVIEW WITH APPLICANT .............................................................................46
5. BIBLIOGRAPHY .................................................................................................................................49
5.1 PDF DOCUMENTS ...............................................................................................................................49
5.2 INTERNET WEBPAGES ........................................................................................................................49
4
List of figures
FIGURE 1: REPOSITORIES .............................................................................................................................20
FIGURE 2: BUSINESS ITEMS .........................................................................................................................21
FIGURE 3: ROLES.........................................................................................................................................24
FIGURE 4: INTERACTION WITH APPLICANT PROCESS ....................................................................................27
FIGURE 5: GIVE TICKET NUMBER PROCESS ..................................................................................................29
FIGURE 6: GIVE INFORMATION PROCESS .....................................................................................................31
FIGURE 7: CHECK DOCUMENTATION PROCESS .............................................................................................33
FIGURE 8: INTERVIEW WITH APPLICANT PROCESS I .....................................................................................35
FIGURE 9: INTERVIEW WITH APPLICANT PROCESS II ....................................................................................35
FIGURE 10: FIND SUITABLE JOB PROCESS ....................................................................................................38
FIGURE 11: SELECT A JOB PROCESS .............................................................................................................40
FIGURE 12: OFFER A JOB PROCESS ...............................................................................................................42
FIGURE 13: FIRST SIMULATION....................................................................................................................45
FIGURE 14: SECOND SIMULATION (I)...........................................................................................................46
FIGURE 15: SECOND SIMULATION (II) .........................................................................................................46
FIGURE 16: THIRD SIMULATION ..................................................................................................................48
List of tables
TABLE 1: FIRST SIMULATION .......................................................................................................................44
TABLE 2: SECOND SIMULATION ...................................................................................................................45
TABLE 3: THIRD SIMULATION ......................................................................................................................47
5
0. Resumen del proyecto en castellano
El presente punto tiene como objetivo resumir el contenido de la documentación
del proyecto "Modeling and Simulation of an employment agency using Business
Modeler" (Modelización y simulación de una agencia de empleo utilizando Business
Modeler) realizado en inglés en la universidad lituana "Vilniaus Gedimino Technikos
Universitetas" dentro de la facultad de Ciencias Fundamentales en la ciudad de Vilna,
bajo la supervisión del profesor Mindaugas Rybokas entre los meses de Octubre y
Marzo del curso 2008/09 bajo el programa Erasmus.
El proyecto fue finalmente defendido el 2 de Marzo de 2009 obteniendo una
calificación de Very good (9) o, su equivalente en ECTS, grado B. El comité de
evaluación estuvo compuesto por:
 Profesor J. Galkauskaite
 Profesor asociado dr. R. Kulvietiene
 Profesor asociado dr. M. Rybokas
 Profesor asociado dr. S. Valentinavicius
 Catedrático del comité de evaluación dr. G. Kulvietis
 Director de la Facultad de Ciencias Fundamental dr. A. Cenys
A lo largo de este resumen se referenciará a las imágenes ya utilizadas en el
documento original para evitar la repetición de las mismas. Así mismo, se mantendrá el
nombre original en inglés de los procesos del modelo para facilitar el seguimiento de los
mismos dentro de las imágenes, aunque se añadirá su traducción en castellano para
aportar una mayor información.
0.1 Introducción
El proyecto nace como propuesta del tutor de utilizar el programa de IBM
WebSphere's Business Modeler para la modelización y posterior simulación de algún
tipo de proceso, entonces aún sin determinar. A tal efecto, se estudió la documentación
aportada sobre la herramienta, se consultó su sitio web oficial y se realizaron diversas
pruebas con proyectos de ejemplo.
0.1.1 Caracteristicas de WebSphere Business Modeler
Las características principales de esta herramienta y que han sido utilizadas
durante el desarrollo del proyecto son las siguientes:
WebSphere Business Modeler permite crear una representación visual de un
proceso empresarial que contiene información de soporte. Por ejemplo, puede crear
modelos de elementos empresariales (datos y productos del trabajo) y recursos. Luego
puede asociar estos modelos al proceso empresarial. El diagrama de proceso puede tener
varias vías de acceso que se bifurcan según las decisiones tomadas durante la ejecución
del proceso y puede añadir subprocesos al diagrama. Además, tiene la opción de crear
un modelo de los procesos ya sea con un diseño de formato libre o con un diseño de
carril y cambiar entre estos dos tipos de diseños.
6
Los modelos empresariales pueden ser creados en diferentes modalidades
(básica, intermedia y avanzada), siendo la escogida para el proyecto primero la básica y
luego, una vez iniciada la parte de simulación, la avanzada.
WebSphere Business Modeler puede incluir tareas humanas en los modelos de
proceso para identificar visualmente y documentar las tareas que un sistema asigna a
una persona para su realización.
Los modelos de proceso pueden incluir cualquier documento empresarial,
producto del trabajo o mercancía que se utilice en una operación empresarial específica.
Puede modelar como elemento empresarial cualquier elemento que se cree, se monte, se
inspeccione, se pruebe, se modifique o en el que se trabaje. Los elementos empresariales
también pueden experimentar cambios a medida que pasan de un paso al siguiente
dentro de los modelos de proceso.
WebSphere Business Modeler proporciona una función de simulación que
permite simular y analizar los procesos bajo una amplia gama de condiciones. Mediante
la ejecución de simulaciones se puede determinar rápidamente si el rendimiento del
proceso empresarial se ve afectado por distintas condiciones reales o hipotéticas.Se
puede establecer las condiciones que controlan una simulación, incluyendo por ejemplo
la cadencia y la composición de las entradas del proceso y el número de personas y
recursos del sistema necesarios para manejar el proceso.
Durante una simulación, WebSphere Business Modeler genera un conjunto de
unidades de trabajo, que son de entrada al proceso simulado. Estas unidades de trabajo
pasan por una de las posibles vías de acceso (casos) del proceso, que crean una instancia
de proceso. Cuando una unidad de trabajo llega a una actividad, como una tarea, se crea
una instancia de la actividad y se asignan recursos a ésta según sea necesario. Se
recopilan los datos sobre las horas de inicio y finalización de las actividades de la
simulación y sobre los costes que suponen las actividades. También se recopilan datos
sobre el tiempo utilizado en espera de que estén disponibles los recursos y se pueden
utilizar estos datos para ayudar a identificar los cuellos de botella y sus causas.
Al simular el proceso de ejecución, WebSphere Business Modeler proporciona
una vista animada del proceso empresarial en acción. La simulación de procesos
permite la vista simultánea de todos los casos en un entorno de trabajo virtual.
Además, WebSphere Business Modeler incluye otra serie de caracteristicas que
no ha sido necesario adoptar en el modelo como podrían ser:
La incorporación de normas empresariales al flujo de proceso utilizando las
tareas de normas empresariales. Este tipo de tarea especializada le permite crear
modelos de decisiones complejas e identificar visualmente los lugares del modelo de
proceso donde se aplican los métodos y las políticas empresariales.
La creación de modelos de recursos de cada uno de los recursos de su empresa,
como empleados, sistemas, vehículos o electricidad. Puede representar en los modelos
de procesos cualquier persona, parte de un equipo o material utilizado para realizar una
tarea o proyecto.
O la creación de modelos de organizaciones, entre otras opciones.
0.1.2 Introducción al proyecto y al modelo
El motivo por el que se decide desarrollar este modelo es el de ayudar a
automatizar las tareas típicas de una agencia de empleo cubriendo para ello todas las
posibles acciones que pueden ser realizadas desde el momento en el que el usuario
7
(conocido dentro del momento como "the applicant"; solicitante) entra en la agencia de
empleo hasta el momento en que le es asignado un empleo o el subsidio de desempleo
(según caso) pasando por todas las acciones relativas a la entrevista con el solicitante y
su posterior búsqueda de empleo.
Algunas partes del proyecto, especialmente aquellas que involucran tareas
humanas no automatizables, pueden ser vistas como un manual o guía de acciones a
realizar por los empleados de la agencia en el sentido de detallar las acciones y orden
que se deben seguir para el correcto funcionamiento de la agencia.
Como fue comentado anteriormente, el proyecto cubre tanto la parte de diseño
del modelo como su simulación y aporta numerosa documentación en forma de
comentarios dentro del propio modelo para una posible posterior implementación,
recomendándose para ello, por las características inherentes al modelo, el uso de un
lenguaje de programación orientado a objetos.
Para explicar adecuadamente el comportamiento del sistema se ha considerado
conveniente introducir primero aquellos elementos del modelo que no dependen de
ningún otro elemento como son los datos (bussines items) que entran, se transforman y
salen dentro de las tareas, los repositorios (repositories) que los contienen y los roles
(roles) que desarrollan estas tareas.
Una vez que estos elementos son conocidos, se describirá el modelo en si mismo
a través de las tareas que componen cada uno de los procesos que engloba el modelo.
0.2 Repositorios, datos y roles
Un repositorio es el lugar donde se almacenan los datos y dentro del modelo se
interactúa con ellos cada vez que se necesita acceder a ellos o actualizarlos.
Los repositorios creados para el desarrollo del modelo fueron los siguientes:



Repositorio Forms (formularios): que contiene los formularios internos
de la agencia (Internal agency forms).
Repositorio Jobs (trabajos): que contiene los formularios de ofertas de
trabajo (Job-Offers forms)
Repositorio Tickets (tickets): que contiene los tickets.
Un dato es aquella información que es recibida, trabajada o transformada y
producida.
Los datos creados para el desarrollo del modelo fueron los siguientes:


Address (dirección): representa una dirección y contiene los atributos
típicos que permiten definirla; dos líneas texto para situarla, nombre de la
ciudad, de la provincia, del país y el código postal.
Personal data (datos personales): representa los datos personales del
solicitante y contiene los siguientes atributos; nombre, apellido, fecha de
nacimiento, lugar de nacimiento, número de identificación (dni o
pasaporte) y estado civil.
8









Studies (estudios): representa los estudios del solicitante y contiene los
siguientes atributos; estudios elementales, estudios medios, estudios
universitarios y masters.
Job (trabajo): representa un pasado trabajo que el solicitante ha
desempeñado y queda definido con los siguientes atributos; nombre de la
compañía donde trabajó, dirección de la compañía (este atributo es, a su
vez, un dato de tipo Address), area de trabajo, posición ocupada, periodo
de actividad, email de persona de contacto en caso de querer corroborar
los datos e información adicional.
Job requirement (requisito de trabajo): representa un requisito que la
empresa contratante puede querer pedir al solicitante en caso de trabajar
allí. El único atributo que contiene es el propio requisito, que tiene cuatro
posibles estados, dependiendo de lo que pida la compañía. Estos son:
o Ninguno, el solicitante puede comenzar de inmediato.
o Entrevista, el solicitante debe pasar satisfactoriamente una
entrevista.
o Tests, el solicitante debe pasar satisfactoriamente uno o más tests
con la puntuación establecida por la compañía.
o Entrevista y tests, el solicitante debe pasar satisfactoriamente una
entrevista y uno o más tests con la puntuación establecida por la
compañía.
Advise of a new client (aviso de llegada de nuevo cliente): representa
la llegada de un nuevo solicitante a la agencia. Es el detonante de todo el
modelo y su único atributo es un booleano que nos permite saber si el
solicitante desea hablar con un information agent (informador) o un
advisor (asesor).
Ticket (ticket): representa el ticket necesario para hablar con un
informador o un asesor y contiene los siguientes atributos; número de
ticket y un booleano que nos permite saber si el solicitante desea hablar
con un informador o un asesor.
Unemployment benefit (subsidio de desempleo): representa el subsidio
de desempleo que se otorga a aquellos solicitantes que no han encontrado
un trabajo adecuado y no han rechazado el número máximo de empleos
establecido por la agencia. Contiene los siguientes atributos; fecha de
inicio, fecha de fin y cantidad percibida.
Burocracy papers (formularios burocráticos): representa todos
aquellos formularios y trámites burocráticos que el solicitante debe
entregar en la agencia. Contiene los siguientes atributos; numero de la
seguridad social, certificado de registro y fotocopia del documento de
identificación (dni o pasaporte).
Form (formulario): representa un formulario abstracto que se
concretaría en los cuatro siguiente tipos explicados más adelante; FirstTime form, Past-Jobs form, Internal agency form y Job-Offers form.
First-Time form (formulario de Primera-Vez): representa el
formulario que el usuario debe rellenar si es la primera vez que acude a
la agencia en busca de empleo. Contiene los siguientes atributos; datos
del solicitante (este atributo es, a su vez, un dato de tipo Personal Data),
dirección del solicitante (este atributo es, a su vez, un dato de tipo
Address) y estudios del solicitante (este atributo es, a su vez, un dato de
tipo Studies).
9



Past-Jobs form (formulario de Trabajos-Anteriores): representa un
formulario en el que constan los trabajos que el solicitante ha
desempeñado con anterioridad. Contiene los siguientes atributos: datos
del solicitante (este atributo es, a su vez, un dato de tipo Personal Data),
dirección del solicitante (este atributo es, a su vez, un dato de tipo
Address) y trabajos anteriores del solicitantes (este atributo es, a su vez,
un dato repetitivo de tipo Job)
Internal agency form (formulario interno): representa el formulario
que contiene toda la información relativa a un solicitante y que ha sido
obtenida a través del formulario de Primera-Vez, Trabajos-Anteriores así
como entrevistas u otra información útil utilizada para buscarle un
empleo. Es el formulario más importante y contiene los siguientes
atributos; datos del solicitante (este atributo es, a su vez, un dato de tipo
Personal Data), código del solicitante, dirección del solicitante (este
atributo es, a su vez, un dato de tipo Address), estudios del solicitante
(este atributo es, a su vez, un dato de tipo Studies), trabajos anteriores del
solicitante (este atributo es, a su vez, un dato repetitivo de tipo Job), área
de trabajo deseada, posición deseada dentro de ese área, salario mínimo
deseado, número de trabajos rechazados, ticket de despido (para
controlar si el solicitante ha sido despedido debido a un comportamiento
inadecuado), ticket de rechazo (para controlar si el solicitante ha
rechazado varios trabajos sin ofrecer explicación alguna), subsidio de
desempleo del solicitante (este atributo es, a su vez, un dato de tipo
Unemployment benefit).
Job-Offers form (formulario de Ofertas-Trabajo): representa el
formulario que contiene la descripción de una oferta de trabajo que la
agencia, por medio de los asesores o job-seekers (buscadores de empleo),
ha considerado acorde con el perfil del solicitante. Contiene los
siguientes atributos; código del solicitante, código del trabajo, nombre de
la compañía, dirección de la compañía (este atributo es, a su vez, un dato
de tipo Address), área de trabajo, posición ocupada dentro de ese área,
salario, descripción detallada de las labores a realizar, extras (del tipo,
bono de comida, coche de empresa, etc.) y requisitos de la empresa (este
atributo es, a su vez, un dato de tipo Requirement).
Un rol nos permite conocer quién es la persona encargada de realizar una
determinada tarea.
Los roles creados para el desarrollo del modelo fueron los siguientes:
 Advisor (asesor): el asesor es la persona encargada de comprobar la
documentación del solicitante, su entrevista y la búsqueda de empleo en
caso de que éste no deseo un trabajo concreto.
El coste de un asesor es de 12 euros por hora.
 Information agent (informador): el informador es la persona encargada
de informar al solicitante sobre el funcionamiento de la agencia y los
documentos que deben ser rellenados para la búsqueda de empleo.
El coste de un informador es de 10 euros por hora.
 Job-seeker (buscador de empleo): el buscador de empleo es la persona
encargada de buscar empleos específicos de forma más exhaustiva que la
10
0.3 El modelo
El modelo de la agencia de empleo está formado por ocho procesos y un total de
cuarenta y seis tareas, de las cuales seis son de tipo "humano". Cuenta con un punto de
inicio y cuatro puntos de fin.
El proceso principal, llamado Interaction with applicant (Interacción con el
solicitante) se muestra en la página 27.
El detonante del modelo es el aviso de llegada de un nuevo cliente, quien coge
un ticket de la máquina que existe a tal efecto ya sea para consultar sus dudas con el
informador (rama superior) o para hablar con el asesor y de esa forma buscar empleo
(rama inferior). Esta decisión queda determinada en el proceso Give ticket number (Dar
número de ticket).
Si el solicitante quiere hablar con el informador, entonces el proceso Give
information (Dar información) comienza para así resolver las dudas del solicitante. A
continuación y dependiendo de si lo necesita o no, le son entregados los formularios y/o
papeles burocráticos.
Si el solicitante quiere hablar con el asesor entonces se deben recorrer varios
pasos, de los cuales el primero es comprobar la documentación, lo que se hace en el
proceso Check documentation (Comprobar documentación). A continuación se realiza
una entrevista que se engloba en el proceso Interview with applicant (Entrevistar al
solicitante) donde, entre otras cosas, el solicitante expresa su deseo de una búsqueda
exhaustiva realizada por el buscador de empleo (rama superior) o de aceptar
prácticamente cualquier trabajo, en cuyo caso la búsqueda es mucho más sencilla y
realizada por el propio asesor en ese mismo momento (rama inferior).
Si, como decíamos, el solicitante quiere un trabajo específico, el buscador de
empleos realizará una búsqueda basada en el perfil del solicitante y contactará las
diferentes compañías que ofrecen empleo dentro del proceso Find suitable job (Buscar
un trabajo adecuado) para, una vez terminada la búsqueda, proceder a contactar de
nuevo con el solicitante por medio del asesor y ofrecerle las diferentes opciones
encontradas. Esto ocurre en el proceso Select a job (Escoger un trabajo).
Si el solicitante quiere un empleo cualquiera, entonces es el asesor quien se
encarga de realizar directamente esa búsqueda mirando en la base de datos de trabajos
para encontrar algún empleo que pueda resultarle interesante. Esto ocurre en el proceso
Offer a job (Ofrecer un empleo) que, como se verá más adelante, contiene a su vez el
proceso Select a job (Escoger un trabajo). Se decidió tenerlo dentro en lugar de fuera, al
contrario de lo que ocurre en Find suitable job (Buscar un trabajo adecuado) para
recalcar el hecho de que ambos procesos ocurren de forma seguida y no existe un cierto
intervalo de tiempo como si ocurre en la búsqueda exhaustiva.
A continuación se explicará en detalle cada uno de estos procesos en un
subapartado.
11
0.3.1 Give ticket number (Dar número de ticket)
Este proceso está encargado de controlar el orden dentro de las colas que
permiten a los informadores y asesores conocer si hay alguien esperando.
El modelo, mostrado en la página 29, se da inicio con el aviso de llegada de un
nuevo cliente. El solicitante coge un ticket para reunirse con un informador o un asesor.
Ambas ramas son iguales salvo por el hecho de que tratan colas diferentes por lo que
explicando una, la otra puede ser también entendida.
Lo primero que se hace es comprobar si existente algún informador libre, en
cuyo caso el número del ticket le es asignado. En caso contrario, el ticket es introducido
dentro de la cola hasta que existe un informador libre y no hay otros tickets por delante
en un clásico caso de estructura FIFO. Aunque se puede controlar de muchas maneras,
de cara a las simulaciones se asume que cada tres minutos hay un informador libre y
cada diez un asesor, dado que su trabajo requiere de más tiempo.
0.3.2 Give information (Dar información)
Este proceso está encargado de manejar las explicaciones que el informador
ofrece al solicitante sobre el funcionamiento de la agencia (documentación que debe ser
rellenada, la búsqueda de empleo, la distribución del salario o el subsidio de desempleo,
etc.).
El modelo, mostrado en la página 31, no precisa de excesivas explicaciones
debido a lo lineal que es: previa comprobación del ticket del solicitante, el informador
realiza unas cuantas preguntas (si es la primera vez del solicitante en la agencia, si va a
ser su primer empleo) para, a continuación, explicar qué documentos se deben
cumplimentar y cómo hacerlo. Por último, el informador responde a las preguntas que el
solicitante pueda tener.
0.3.3 Check Documentation (Comprobar documentación)
Este proceso está encargado de comprobar la documentación aportada por el
solicitante.
El modelo, mostrado en la página 33, comienza cuando el asesor, tras comprobar
el ticket del solicitante, estudia el formulario de Primera-Vez o el formulario interno,
dependiendo de si es la primera vez que el solicitante acude a la agencia o no. Si el
solicitante ha trabajado anteriormente, se comprueba además el formulario de TrabajosAnteriores. Por último, se comprueba que no existan errores en los formularios
burocráticos.
0.3.4 Interview with the applicant (Entrevistar al solicitante)
Este proceso está encargado de recoger el desarrollo de la entrevista entre el
solicitante y el asesor para construir el perfil del solicitante que permita buscarle un
empleo adecuado.
El modelo, mostrado en la página 35, comienza con la separación del flujo en
dos ramas, dependiendo de si es la primera vez del solicitante en la agencia de empleo,
12
en cuyo caso el formulario de Primera-Vez es leído y el formulario interno creado, o si
ya ha estado anteriormente, en cuyo caso, el formulario interno es cargado y leído para
comprobar si el solicitante ha rechazado trabajos que le hayan sido ofrecidos con
anterioridad, en cuyo caso el asesor escuchará as explicaciones del solicitante para así
decidir si son convincentes y se continua con la entrevista o por el contrario se debe
crear un ticket de rechazo de trabajo en el que conste los detalles de la situación para
que posteriormente lo analice un especialista.
El siguiente paso consiste en determinar si el solicitante ha trabajado
anteriormente y en ese caso, conocer el motivo del final del trabajo para determinar si,
en caso de despido, éste se debió a motivos razonables o no, y en caso necesario crear
un ticket de despido que será posteriormente analizado por un especialista.
El siguiente paso consiste en determinar si el solicitante quiere cualquier clase
de trabajo, en cuyo caso el asesor le explica en qué consiste la búsqueda simple de
empleo que va a realizar y el proceso termina, o por el contrario, quiere un trabajo más
especifico, más relacionado con sus estudios y ambiente profesional, en cuyo caso se
determina el área de trabajo y la posición y salario mínimo que querría tener.
Finalmente, el formulario interno de la agencia se actualiza y el asesor explica al
solicitante cómo va a ser llevada a cabo la búsqueda de empleo exhaustiva.
0.3.5 Find suitable job (Buscar un trabajo adecuado)
Este proceso está encargado de la búsqueda de un empleo acorde con la
documentación entregada y la entrevista realizada.
El modelo, mostrado en la página 38, comienza con la comparación entre la
información reunida en el formulario interno de la agencia sobre el solicitante y la base
de datos de trabajos. A continuación se crea el formulario de Ofertas-Trabajo y las
coincidencias entre el perfil y la base de datos, obtenidas basándose en un algoritmo,
son introducidas en él. No es necesario comprobar el formulario Primera-Vez porque
eso ya ha sido realizado anteriormente y toda la información importante se encuentra
ahora en el formulario interno de la agencia. Sucede lo mismo con la información del
formulario Trabajos-Anteriores.
Más adelante, el buscador de empleo contacta con las compañías seleccionadas.
Esta tarea puede llevarse a cabo en una cantidad de tiempo muy variable, dependiendo
del perfil del solicitante y otros factores pues además del formulario interno de la
agencia también se tiene en cuenta el curriculum y la situación actual de las empresas
con las que se contacta.
Cuando el buscador de empleo determina que ha contactado con suficientes
compañías y/o ha encontrado un número razonable de posibles trabajos, actualiza el
formulario de Ofertas-Trabajo y contacta con el asesor para transmitirle la información
y que éste pueda ofrecérsela al solicitante.
0.3.6 Select a job (Escoger un trabajo)
Este proceso está encargado de contactar con el solicitante para ofrecerle los
trabajos encontrados por el buscador de empleo.
13
El modelo, mostrado en la página 40, comienza con el asesor contactando con el
solicitante para proponerle el primero de los trabajos recogidos en el formulario de
Ofertas-Trabajo. Si no lo quiere, entonces se le ofrece el siguiente y así continuamente
hasta llegar al número máximo de trabajos rechazados, en cuyo caso el formulario
interno de la agencia es actualizado y el subsidio de desempleo otorgado, si el
solicitante cumple las condiciones necesarias para recibirlo. En caso contrario, se avisa
al solicitante de esta situación.
Si el solicitante acepta uno de los trabajos propuestos entonces el asesor puede
contactar con la compañía que ofrece el trabajo para fijar los detalles de la cita con el
solicitante.
Finalmente el formulario interno de la agencia es actualizado y el asesor notifica
al sistema de que ha terminado con un solicitante y está preparado para comenzar a
atender a otro cliente.
0.3.7 Offer a job (Ofrecer un empleo)
Este proceso está encargado de ofrecer los empleos que el asesor considera
interesantes para el solicitante basando su criterio en el formulario interno de la agencia
El modelo, mostrado en la página 42, comienza con la comparación entra la
información recogida en el formulario interno de la agencia y la base de datos de
trabajos. A continuación se crea el formulario de Ofertas-Trabajo y las coincidencias
son introducidas en él. Por último, el ya explicado proceso Escoger un trabajo da
comienzo.
0.4 Simulación
Las simulaciones realizadas, de las cuales las incluidas en el informe y en este
resumen son solo un ejemplo, fueron realizadas con el objetivo de comprobar la validez
del modelo. Estas simulaciones permiten observar el correcto funcionamiento del
modelo y cómo los datos van transfiriéndose y modificándose según pasan por cada una
de las tareas de un proceso. Por tanto, simulaciones más detalladas con valores
económicos en todos los datos y situaciones y otros parámetros más complejos
(calendario de actividad de los empleados, por ejemplo) debería ser realizada en
posibles futuros trabajos que se realicen sobre el modelo.
A continuación se explica una simulación correspondiente al proceso Interview
with applicant (Entrevistar al solicitante) cuya traza se puede encontrar en la página 47
y cuya imagen correspondiente al momento en el que el solicitante decide que quiere
trabajar en un área concreta en lugar de aceptar cualquier trabajo, se puede encontrar en
la página 48.
En esta traza podemos ver como el asesor primero lee el formulario de PrimeraVez y crea el formulario interno de la agencia, por lo cual deducimos que, en este caso,
el solicitante es la primera vez que acude a la agencia. De la observación de la traza
podemos colegir que el solicitante ha trabajado anteriormente pues responde a las
preguntas del asesor sobre sus pasados trabajos dando respuestas convincentes sobre sus
despidos o renuncias de los mismos. Tras esas comprobaciones por parte del asesor de
que todo está en orden, se le pregunta por el área de trabajo en la que querría que
14
estuviera su próximo empleo, siendo estos datos recogidos. No así la posición y el
salario mínimo, que parecen no importar a este solicitante concreto. Por último, y antes
de dar por terminada la entrevista, el formulario interno de la agencia es actualizado y el
asesor explica en qué consiste el proceso de búsqueda detallado.
A la hora de decidir el camino por el cual se moverá el flujo de datos, se
establecieron una serie de porcentajes para cada ramificación de tal forma que, por
ejemplo, a la hora de dictaminar si el solicitante desea trabajar en un área en concreto, el
80% de las veces se inclinará a responder que si, mientras que solo en un 20% decidirá
que no le importa, es decir, que está interesado en cualquier clase de trabajo.
0.5 Comentarios adicionales
En la página 49 se puede encontrar la bibliografía manejada de cara a la
realización del proyecto, que básicamente consistió en manuales y tutoriales de
WebSphere's Business Modeler.
De cara a la realización del modelo se preguntó a diversos conocidos lituanos
que en algún momento han acudido a una agencia de trabajo sobre los trámites a realizar
de cara a la búsqueda de empleo, aunque debido a algunas imprecisiones y la falta de
documentación en inglés se tomaron algunas decisiones de diseño libremente aunque de
forma consensuada con el tutor del proyecto.
15
1. Introduction
In this section we will introduce the document itself, the system plus the
motivation for creating it and finally some theoretical facts about IBM’s Websphere
Business Modeler.
1.1 An introduction to the document
In order to explain properly the behaviour of the system, the document firstly
introduces those elements of the model that do not depend on other elements. Therefore,
the document first pays attention on section 2 to the Business items, the Repositories
where those items are stored and the Roles that develop the tasks.
Once those elements are known, a description of the model itself can be given.
This description of the model can be found under section 3 and it is done by describing
the processes of the model and the tasks that compose each process.
1.2 An introduction to the system
The motivation behind this project is to develop a model that may help an
employment agency to automate their tasks by creating a flow of processes that cover
all the possible actions that can be done when a user (the applicant) arrives at an
employment agency.
Some parts of the project, especially those that involve human tasks, can be seen
as a guide line for employees of the employment agency to develop their jobs, in the
sense that details which actions and should be done and in which order.
The project covers both the design of the model and the simulation of it while
gives useful information for a possible implementation in an object oriented language,
in case someone would like to start another project based on this one.
1.3 IBM’s WebSphere Business Modeler
IBM’s WebSphere Business Modeler is a business process modeling tool that
enables the user to model, design, simulate, analyze, and generate reports for his
business processes; integrate his new and revised process; and define his organizations,
resources, and business items.
WebSphere Business Modeler lets you create a visual representation of a
business process that contains supporting information. For example, you can model
business items (data and work products) and resources. Then you can associate these
models with your business process. You can also add annotations, much like electronic
sticky notes, anywhere in a process diagram, structure diagram, or structure definition
diagram.
Your process diagram can have multiple branching paths based on decisions
made during the process execution, and you can add subprocesses to the diagram. To
simplify the modeling process, you can drag elements you need into a process diagram.
16
You can select these elements either from the palette or from any reusable processes,
tasks, repositories, services, and forms that you create in the Project Tree view.
Other features of WebSphere Business Modeler are:
1.3.1 Diagram layouts
You have the option to model your processes in either a free-form or swimlane
layout and to toggle between these two types of layouts. The free-form layout gives you
the maximum flexibility to arrange your process diagrams the way that you want. A
swimlane layout arranges diagram elements in rows according to the value an element
has for an attribute. For example, a swimlane layout for roles places diagram elements
according to the role associated with each element. There are swimlane layouts for
roles, classifiers, individual resource definitions, bulk resource definitions, organization
units, and locations.
1.3.2 Human task modeling
You can include human tasks in your process models to visually identify and
document tasks that a system assigns to a person to do. If a human task requires
electronic forms for its completion, you can create these forms based on the data
flowing into and out of the human task. You can also associate a form that you create or
import with a human task and even create a human task based on a form. For
application development purposes, you can provide specifications for human tasks that
you can hand off to IT along with any associated forms.
1.3.3 Business rules definition
As you model your business processes, you can incorporate business rules into
your process flow using business rules tasks. This specialized task type allows you to
model complex decisions and to visually identify places in your process model where
business policies and practices apply. For each business rules task, you can define a
group of related business rules to whatever level of detail is required for your
documentation or application development needs.
1.3.4 Business item definition
Your process models can include any business document, work product, or
commodity that is used for a particular business operation. You can model as a business
item anything that is created, assembled, inspected, tested, modified, or worked upon.
Business items can also undergo changes as they are passed from one step to the next in
your process models. For example, a customer order could be specified as open,
working, verified, and finally closed as it is passed from task to task in a particular
process model.
17
1.3.5 Resource modeling
You can model each of your company's resources, such as employees,
computers, vehicles, or electricity. You can represent in your process models any
person, piece of equipment, or material used to perform a task or a project. Depending
on the level of complexity that you require in your process models, you can also specify
roles, costs, and timetables for your resources.
1.3.6 Organization modeling
You can model any identifiable organization within your business, such as
companies, factories, divisions, departments, or teams. An organization is any entity in
which people cooperate to accomplish specified objectives. You can save your
organization definitions within a project in order to reuse and revise them as your
organizations evolve.
1.3.7 Structure modeling
You can model how business elements such as locations, resources, and business
item instances relate to one another outside the context of a particular business process.
To show how different types of business entities interact with one another in
relationships of varying complexity, you can create structure models. For example, a
Marketing department might occupy a certain position in a company's organizational
chart yet receive funding from one or more different departments in the company's
financial hierarchy. By modeling structures, you can define and illustrate these multiple
and varied relationships within your business.
1.3.8 Simulation of business processes
WebSphere Business Modeler provides a simulation function that lets you
simulate and analyze your business processes under a wide variety of conditions. By
running simulations, you can quickly determine how the performance of your business
process is affected by various real or hypothetical conditions.
You can set the conditions that control a simulation. For example, you can
include the rate and composition of process inputs and the number of personnel and
system resources available to handle the process. You can also vary process input
volume over time by adjusting resources and current allocations.
Various resources can be shared among tasks, just as in real life, so the
commencement of one task might have to wait for a particular resource to complete
work on another task. You can simulate scenarios in which a particular task, or a group
of tasks, must be performed several times in sequence or in parallel before the process
moves on to the next stage. These scenarios offer you the flexibility to simulate real-life
situations, and alternatives, without the need to remodel the business process.
During a simulation, WebSphere Business Modeler generates a set of tokens,
which are input to the simulated process. These tokens flow through one of the possible
paths (cases) of the process, creating a process instance. When a token arrives at an
18
activity, such as a task, the activity is instantiated and resources are assigned to it as
needed. Data is collected about the start and end times of the activities in the simulation
and about the costs that the activities incur. Data about time spent waiting for resources
to become available is also collected and can be used to help identify possible
bottlenecks and their causes.
When you simulate runtime processing, WebSphere Business Modeler provides
an animated view of the business process in action. Process simulation enables the
simultaneous viewing and examination of all cases in a virtual work environment.
Simulation output provides detailed information regarding resource utilization
levels and also cost and cycle time calculations. Results change according to the
simulation session length or the number of entries completed by the process.
19
2. Repositories, business items and roles
In this section we will see the elements that are received at the tasks and
processes, worked on and later produced (business items), where are they stored
(repositories) and who is the responsible for that task (role).
2.1 Repositories
A repository is a place to store business items. We will interact with them every
time we need to access to their business items or when we need to update them.
In order to store the business items used through the tasks, the following
repositories were created:
Figure 1: Repositories
As it can be seen, there are three different repositories: Forms, Jobs and Tickets:



In the repository Forms, the Internal agency forms are stored.
In the repository Jobs, the Job-Offers forms are stored.
In the repository Tickets, the tickets are stored.
2.2 Business items
A Business item gives us the information on what is received, worked on and
produced.
In order to have the data that is needed through the model the following business
items were created:
20
Figure 2: Business items
Most of them include the attributes that they should contain, while others are
supposed to be an abstraction and therefore they don’t include any.
In the following sections a small description of the business items will be given.
2.2.1 Address
Represents an address.
Contains the following attributes:
 Address line1
 Address line 2
 City
 Providence
 Country
 Postal Code
2.2.2 Personal data
Represents the personal data of the applicant.
Contains the following attributes:
 Name
 Surname
 Date of birth
 Place of birth
 ID number
 Civil status
2.2.3 Studies
Represents the studies of the applicant.
21
Contains the following attributes:
 Elementary studies
 Middle studies
 Higher education
 Master 1
 Master 2
 Master 3
2.2.4 Job
Represents a past job where the applicant had worked.
Contains the following attributes:
 Company name
 Company address (business item: Address)
 Area
 Position
 Period of activity
 Email of contact
 Additional information
2.2.5 Job requirement
Represents the requirement that the company might ask to the applicant in order to start
working.
Contains the following attribute:
 Requirement. This attribute has four different possible states, depending on the
requisite of the company. They are the following:
1. None, starts immediately
2. Interview
3. Tests
4. Interview and tests
2.2.6 Advise of a new client
Represents the entrance of a new applicant at the agency and its will for talking with an
information agent or an advisor.
Contains the following attribute:
 Information agent (Boolean: true if wants to talk with an information agent,
false if wants to talk with an advisor)
2.2.7 Ticket
Represents the ticket number needed to talk with an information agent or an advisor.
Contains the following attributes:
 Ticket number
 Information agent (Boolean: true if wants to talk with an information agent,
false if wants to talk with an advisor)
2.2.8 Unemployment benefit
Represents the unemployment benefit given to those applicants that do not have a job
and has not rejected a maximum number of jobs.
Contains the following attributes:
22



Starting period
Ending period
Quantity received
2.2.9 Burocracy papers
Represents the burocracy papers that the applicant needs to deliver.
Contains the following attributes:
 Social security number
 Register certificate
 Photocopy of ID
2.2.10 Form
Represents an abstract form, therefore can be any of the following four forms:
1. First-Time form
2. Past-Jobs form
3. Internal agency form
4. Job-Offers form
2.2.11 First-Time form
Represents the form that has to be filled in if it is the first time that the applicant enters
the agency.
Contains the following attributes:
 Applicant data (business item: Personal data)
 Applicant address (business item: Address)
 Applicant studies (business item: Studies)
2.2.12 Past-Jobs form
Represents the form that includes the past jobs of the applicant.
Contains the following attributes:
 Applicant data (business item: Personal data)
 Applicant address (business item: Address)
 Applicant jobs (repetitive business item: Job)
2.2.13 Internal agency form
Represents the information gathered about the applicant through the First-Time and
Past-Jobs forms, interviews, etc. in order to find him a job.
Contains the following attributes:
 Applicant data (business item: Personal data)
 Applicant code
 Applicant address (business item: Address)
 Applicant studies (business item: Studies)
 Applicant past jobs (repetitive business item: Job)
 Area of work
 Position inside the area
 Minimum salary
 Number of rejected jobs
 Trouble-fired ticket (to control if that applicant has been fired because of bad
behaviour)
23


Trouble-rejected ticket (to control if the applicant has rejected many jobs
without explanation)
Applicant unemployment benefit (business item: Unemployment benefit)
2.2.14 Job-Offers form
Represents a form with the description of a job that might be interesting for the
applicant.
Contains the following attributes:
 Applicant code
 Job code
 Company name
 Company address (business item: Address)
 Area of work
 Position of the area
 Salary
 Detailed description
 Extras (such as company car)
 Requirement (business item: Requirement)
2.3 Roles
A role gives us the information about who performs the task.
In order to determinate who is going to develop each task, the following roles
were created:
Figure 3: Roles
As it can be seen, three roles were created: Advisor, Information agent and Job
seeker.
In the following sub-sections a small description of each role will be given.
2.3.1 Advisor
The advisor is the person in charge of checking the documentation, interview the
applicant and search for a job in case the applicant does not want a specific job.
The cost of an advisor is 12 euros per hour.
24
2.3.2 Information agent
The information agent is the person in charge of providing the applicant all the
information related to the functioning of the agency and the forms that needs to be filled
in.
The cost of an information agent is 10 euros per hour.
2.3.3 Job seeker
The job seeker is the person that finds jobs for applicants that look for specific
jobs. It requires a more exhaustive search that the one that can be develop by the
advisor.
The cost of a job seeker is 20 euros per hour.
25
3. The model
The model of the employment agency consists of eight processes and a total of
forty-six tasks (forty regular and six human tasks). It has one starting point and four
ending points.
The main process, which is called Interaction with applicant, is shown on the
following page.
The trigger of the whole model is the Advise of a new client, whom gets a ticket
number for consulting his doubts with an information agent (upper branch) or to talk
with an advisor to find a job (lower branch). This is determinate in the Give ticket
number process.
If the applicant wants to talk with an information agent then he enters the Give
information process where his doubts are answered. Afterwards, depending if he needs
some forms and/or burocracy papers, they are given.
If the applicant wants to talk with an advisor then the first step is to check the
documentation, which is done in the Check documentation process. The following step
is to interview the applicant in the Interview with applicant process where he expresses
his will for a specific job, which leads to an exhaustive search done by the job seeker
(upper branch), or any kind of job, which leads to an easier search that can be done by
the advisor (lower branch).
If the applicant wants a specific job, the job seeker will look for jobs and contact
companies in the Find suitable job process and then the advisor will contact again the
applicant to give him the different options found in the Select a job process.
If the applicant wants any kind of job, the advisor will directly look at the data
base of jobs and find something that interests the applicant. This happens in the Offer a
job process. This process contains, as it will be shown later on, the Select a job process
to determinate the right job for the applicant. It was decided to have it inside of Offer a
job instead of outside (as it happens with Find suitable job) to make clear that both
processes take place one right after the other, while in the other case, some time might
went through due to the exhaustive search.
Now that a little description of the whole model has been given, we will see
these processes in detail in the following sub-sections.
26
Figure 4: Interaction with applicant process
27
3.1 Give ticket number
This process deals with controlling the order of the queues and letting the
information agent and/or the advisor know if there is someone waiting.
The model, which is shown on the following page, starts with the Advise of a
new client.
The applicant gets a ticket for meeting an information agent or an advisor. Both
branches are similar except that they would work with different queues, so by
explaining one of them, the other can be also understood.
The first thing that is done is to check if there is any free information agent, if it
is then the ticket number is assigned to him, if not, we have to push the ticket into the
queue of information agent and wait until its turn arrives so it can be popped from the
queue and assigned to an information agent. This can be controlled in many ways, but
we will assume that every three minutes there is an information agent that gets free (ten
minutes for the advisor since their work takes more time).
28
Figure 5: Give ticket number process
29
Now a small description of each task involved in this process will be given:
3.1.1 Give ticket
The machine gives a ticket with two possible options: Talk with an information
agent or with an advisor.
3.1.2 Push information agent
Inserts applicant’s ticket number at the end of information agents' queue.
3.1.3 Pop information agent
Retrieves the first ticket number of information agents' queue every three
minutes.
3.1.4 Assign an information agent
The ticket number got by the applicant is assign to a free information agent. All
information agents are number so in case there is more than one free information agent
at the same moment, the ticket number is assign to the information agent with the
lowest number.
3.1.5 Push advisor
Inserts applicant’s ticket number at the end of advisor's queue.
3.1.6 Pop advisor
Retrieves the first ticket number of advisor's queue every ten minutes.
3.1.7 Assign an advisor
The ticket number got by the applicant is assign to a free advisor. All advisors
are number so in case there is more than one free advisor at the same moment, the ticket
number is assign to the advisor with the lowest number.
3.2 Give information
This process deals with the explanations that the information agent gives to the
applicant of how the agency works (papers to fill in, search of a job, distribution of the
money, etc.).
The model, which is shown on the following page, doesn’t need many
explanations since it is very linear: the ticket is checked, then the information agent asks
a few questions, gives an explanation of the documents that have to be fill in and how
the agency works and ends responding the possible questions that the applicant might
have.
30
Figure 6: Give information process
31
Now a small description of each task involved in this process will be given:
3.2.1 Check ticket
Information agent checks the ticket.
3.2.2 Ask if first time here
Information agent asks if it is the first time that the applicant comes to the
employment agency.
3.2.3 Ask if first job
Information agent asks if applier is searching for a job for the first time or had
previous jobs.
3.2.4 Give explanation about documents
Information agent explains how to fill in the First-Time form, Past-Jobs form
and burocracy papers.
3.2.5 Give explanation about agency
Information agent explains how does the agency works (the search of a job and
the assignment of the unemployment benefit).
3.2.6 Respond to questions
Information agent responds to the questions of the applicant related to the
functioning of the agency.
3.3 Check documentation
This process deals with the checking of documentation filled in by the applicant.
The model, which is shown on the following page, begins with the advisor
checking the ticket to continue by checking, depending if it is the first time that the
applicant comes to the employment agency or not, the First-Time form or the Internal
agency form. If the applicant had previous works then the Past-Jobs form is also
checked. The process ends by checking the burocracy papers.
32
Figure 7: Check documentation process
33
Now a small description of each task involved in this process will be given:
3.3.1 Check ticket
Advisor checks the ticket and gets the forms
3.3.2 Check First-Time form
Advisor gets the First-Time form from applicant and uses a machine to check if
it is well filled.
3.3.3 Check Internal form
Advisor gets the Internal agency form from the Forms repository and checks if
all the details are correct.
3.3.4 Check Past-Jobs form
Advisor gets the Past-Jobs form from applicant and uses a machine to check if it
is well filled.
3.3.5 Check burocracy papers
Advisor gets the burocracy papers from applicant and uses a machine to check if
they are well filled.
3.4 Interview with applicant
This process deals with the interview between the applicant and the advisor to
construct a personal profile of the applicant that will be use to find him a job.
The model, which is shown on the following page in two parts, begins with two
possible branches, depending if the applicant comes to the employment agency for the
first time, in which case the First-Time form is read and the Internal agency form
created, or not, in which case the Internal agency form is loaded and read to see if he
has rejected previously offered jobs in which case the advisor listens to the
explanations. If the advisor decides that they are convincing then the process continues,
if not he opens a trouble-rejection ticket which will be later on analyzed by a specific
person.
The next step is to determinate if the applicant had any experience on past jobs,
in which case he is asked about the result of those jobs to analyze if he quit or got fired
for reasonable motivations or not. If the advisor thinks the arguments of the applicant
are not rational then opens a trouble-fired ticket.
The next step is to determinate if the applicant wants any kind of job, in which
case advisor explains to the applicant how the simple search will be performed and the
process end, or wants a specific one, more related to his studies or professional
background, in which case the area of work is determinate, and if the applicant wants,
also the position and the salary. In the end, the Internal agency form is updated and the
advisor explains to the applicant how the detailed search will be performed.
34
Figure 8: Interview with applicant process I
Figure 9: Interview with applicant process II
35
Now a small description of each task involved in this process will be given:
3.4.1 Read First-Time form
Advisor reads the First-Time form.
3.4.2 Creation of Internal form
Advisor creates the Internal form based on the information got by the First-Time
form.
3.4.3 Read Internal form
Advisor reads the Internal agency form.
3.4.4 Listen to explanations
Advisor listens to the explanations about the rejection of jobs to determinate if
they make sense or not.
3.4.5 Open a trouble-rejection ticket
Advisor opens a trouble-rejection ticket. Later on, a specialized analyzer will
decide if the reasons exposed by the applicant for rejecting jobs were reasonable or not.
3.4.6 Ask what happened to get fired
Advisor listens to the explanations about the quitting/getting fired of previous
jobs to determinate if they make sense or not.
3.4.7 Open a trouble-fired ticket
Advisor opens a trouble-fired ticket. Later on, a specialized analyzer will decide
if the reasons exposed by the applicant for quitting the jobs are reasonable or not.
3.4.8 Update Internal form 2
The Internal form in updated with the information got during the interview.
3.4.9 Explain simple search
Advisor explains to the applicant that the following search will be done with
very generic parameters.
3.4.10 Determinate area
Advisor gets the information of the area where the applicant would like to work.
3.4.11 Determinate position
Advisor gets the information of the position inside a specific area where the
applicant would like to work.
3.4.12 Determinate salary
Advisor gets the information of the minimum salary that the applicant would like
to have.
36
3.4.13 Update Internal form
The Internal form in updated with the information got during the interview.
3.4.14 Explain detailed search
Advisor explains how the search will be developed by the job seeker and how
the applicant will receive a notification from the agency as soon as they find jobs to
offer.
3.5 Find suitable job
This process deals with finding a job that is suitable for the applicant according
to the documentation and the interview.
The model, which is shown on the following page, begins with a comparison
between the information gathered in the Internal agency form and the database of jobs.
Then the Job-Offers form is created and the matches are entered on it.
Later on, the job seeker contacts different companies in a task that needs a
variable amount of time, depending on the profile of the applicant and many other
factors.
When the job seeker thinks that has contacted enough companies and/or has
found enough interesting possible jobs, updates the Job-Offers form and contacts an
advisor to give him the information so he can offer it to the applicant.
37
Figure 10: Find suitable job process
38
Now a small description of each task involved in this process will be given:
3.5.1 Compare Internal form with jobs-DB
Job seeker compares the information from the Internal agency form with the
Data Base of Jobs of the agency and obtain matches based on an algorithm. Is not
necessary to check if it is the first time (and use the First-Time form, in that case)
because that has been previously done and all the important information is now in the
Internal form. The same happens with the Past-Jobs form.
3.5.2 Create Job-Offers form
Job seeker creates the Job-Offers form based on the matches obtained
previously.
3.5.3 Contact companies
Job seeker contacts different companies based not only on the Internal agency
form but also based on the curriculum of the applicant.
3.5.4 Update Job-Offers form
Job seeker updates the Job-Offers form based on contacts done with different
companies.
3.5.5 Find suitable job
Job seeker contacts an advisor so he can offer the applicant the found jobs.
3.6 Select a job
This process deals with contacting the applicant to offer him the jobs found by
the job seeker.
The model, which is shown on the following page, begins with the advisor
contacting the applicant and proposing him one of the jobs from the Job-Offers form. If
he doesn’t want it, then the next one is offered until the applicant reaches the maximum
number of possible rejected jobs, in which case the Internal agency form is updated and
the unemployment benefit given, if applies. If not, the applicant is advised of his
situation.
If the applicant accepts one of the proposed jobs, the company that offers the job
is contacted to make an appointment.
In the end, the Internal agency form is updated and the advisor presses a button
to notify the ticket machine that has finished with an applicant and is ready to start
working with another client.
39
Figure 11: Select a job process
40
Now a small description of each task involved in this process will be given:
3.6.1 Propose a job
Advisor offers one of the jobs from the Job-Offers form.
3.6.2 Contact company
Advisor contacts the company to arrange the start of the work, date of the
interview or whatever the details of the job offer are.
3.6.3 Assign unemployment benefit
Advisor assign the unemployment benefits and updates Internal agency form.
3.6.4 Advise applicant of his situation
Advisor explains the situation to the applicant and why he won't receive the
unemployment benefit.
3.6.5 Update internal form
The Internal agency form in updated with the information about the job
selected/rejected and the unemployment benefit is marked as given (if applies).
3.6.6 Notify ticket machine
Advisor notifies the ticket machine that has finished with the applicant and is
ready to work with a new applicant.
3.7 Offer a job
This process deals with the offering of jobs that the advisor can suggest to the
applicant based on his Internal agency form.
The model, which is shown on the following page, begins with a comparison
between the information gathered in the Internal agency form and the database of jobs.
Then the Job-Offers form is created and the matches are entered on it. Then, the already
explained Select a job process begins.
41
Figure 12: Offer a job process
42
Now a small description of each task involved in this process will be given:
3.7.1 Compare Internal form with Jobs-DB
Advisor compares the information from the Internal agency form with the
database of jobs of the agency and obtains matches based on an algorithm. In opposition
to the task of the same name from the Find a suitable job process, this comparison will
be very simple and probably the advisor will be able to offer any kind of job, since the
applicant did not selected any area of work.
3.7.2 Create Job-Offers form
Advisor creates the Job-Offers form based on the matches obtained previously.
43
4. Simulation
In this section we will explain very briefly the simulations that have been done
to the model in order to prove its validity. Therefore, more detailed simulations with
economic values and other complex parameters should be performed in future works.
In the following sub-sections we will give an example of three different
simulations performed in three different processes. They will show us one of the
possible paths that the simulation can follow.
4.1 First simulation: Give ticket number
In this simulation we can see how the system gives a ticket for meeting an
advisor and since there are free advisors, it assigns the given ticket number to one of the
free advisors.
Give ticket number
(Thursday the 5th of February 2009 15:01:02:1)
Assign an advisor --> Give ticket number
Assign an advisor --> Stop
Assign an information agent --> Give ticket number
Assign an information agent --> Stop
Free advisors? --> Assign an advisor
Free advisors? --> Push advisor
Free information agent? --> Push information agent
Free information agent? --> Assign an information agent
Give ticket --> Need information?
Give ticket number --> Give ticket
Need information? --> Free information agent?
Need information? --> Free advisors?
Pop advisor --> Assign an advisor
Pop information agent --> Assign an information agent
Push advisor --> Pop advisor
Push information agent --> Pop information agent
Transfered work units
null
null
null
null
1
null
null
null
1
1
null
1
null
null
null
null
Table 1: First simulation
In the following figure, which is shown in the next page, we can see the moment
where the work unit is reaching the branch “Free advisors?”
44
Figure 13: First simulation
4.2 Second simulation: Check documentation
In this simulation we can see how the system first checks the ticket, then the
Internal form, later the Past-Jobs form and in the end the burocracy papers.
Check documentation
(Thursday the 5th of February 2009 15:58:56:1)
Check Burocracy papers --> Check documentation
Check Burocracy papers --> Stop
Check First-Time form --> Merge
Check Internal form --> Merge
Check Past-Jobs form --> Merge:2
Check documentation --> Check ticket
Check ticket --> First time?
First time? --> Check First-Time form
First time? --> Check Internal form
Merge --> Past jobs?
Merge:2 --> Check Burocracy papers
Past jobs? --> Check Past-Jobs form
Past jobs? --> Merge:2
Transfered work units
1
1
null
1
1
1
1
null
1
1
1
1
null
Table 2: Second simulation
In the following figures we can see the moment where, after accessing the
Forms repository, the work unit is inside the Check Internal form process.
45
Figure 14: Second simulation (I)
Figure 15: Second simulation (II)
4.3 Third simulation: Interview with applicant
In this simulation we can see how after reading the First-Time form and create
the Internal form, the applicant is asked about his past jobs and why he got fired or stop
working there. Since his response sounds rational he is asked about the job that he
wants and the area where it belongs, but not the position or salary.
In the end, the Internal form is updated and the detailed search explained.
46
Interview with applicant
(Thursday the 5th of February 2009 16:25:19:1)
Ask what happened to get fired --> Does it sound rational?
Creation of Internal form --> Merge
Determinate area --> Does he want a specific position?
Determinate position --> Merge:3
Determinate salary --> Merge:4
Does he want a specific position? --> Determinate position
Does he want a specific position? --> Merge:3
Does he want to work in a specific area? --> Determinate
area
Does he want to work in a specific area? --> Update Internal
form 2
Does it make sense? --> Open a trouble-rejection ticket
Does it make sense? --> Merge
Does it sound rational? --> Open a trouble-fired ticket
Does it sound rational? --> Merge:2
Does it want a minimum salary? --> Determinate salary
Does it want a minimum salary? --> Merge:4
Explain detailed search --> Stop
Explain detailed search --> Interview with applicant
Explain simple search --> Stop
Explain simple search --> Interview with applicant
First time? --> Read First-Time form
First time? --> Read Internal form
Merge --> Past jobs?
Merge:2 --> Does he want to work in a specific area?
Merge:3 --> Does it want a minimum salary?
Merge:4 --> Update Internal form
Interview with applicant --> First time?
Listen to explanations --> Does it makes sense?
Open a trouble-fired ticket --> Merge:2
Open a trouble-rejection ticket --> Merge
Past jobs? --> Ask what happened to get fired
Past jobs? --> Merge:2
Past rejections of jobs? --> Listen to explanations
Past rejections of jobs? --> Merge
Read First-Time form --> Creation of Internal form
Read Internal form --> Past rejections of jobs?
Update Internal form --> Explain detailed search
Update Internal form 2 --> Explain simple search
Transfered work units
1
1
1
null
null
null
1
1
null
null
null
null
1
null
1
1
1
null
null
1
null
1
1
1
1
1
null
null
null
1
null
null
null
1
null
1
null
Table 3: Third simulation
In the following figure we can see the moment where the system simulates that
the applicant wants to work in a specific area.
47
Figure 16: Third simulation
48
5. Bibliography
The following documents and WebPages have been used on the development of
the project and the creation of this document.
5.1 PDF documents

IBM’s WebSphere Business Modeler Advanced 6.1.1: Getting started

RedBooks’ Best Practices for Using WebSphere Business Modeler and
Monitor

IBM’s WebSphere Business Modeler: Process simulation and analysis
(Student notebook and student exercises)
5.2 Internet WebPages

IBM’s WebSphere Business Modeler Advanced 6.1.1 help webpage:
http://publib.boulder.ibm.com/infocenter/dmndhelp/v6r1mx/topic/com.ibm.btools.help.mod
eler611.doc/doc/welcome/dochome.html

Wikipedia’s definition of WebSphere:
http://en.wikipedia.org/wiki/IBM_WebSphere
49