SlideShare una empresa de Scribd logo
1 de 123
Modelado de Sistemas
Interactivos con FlowiXML
Dr. Juan Manuel González Calleros
Facultad de Ciencias de la Computación
Benemérita Universidad Autónoma de Puebla
Ciudad Universitaria
Av. San Claudio y 14 sur, Edificio 136ª
Puebla, México.
Email: juan.gonzalez@cs.buap.mx
Twitter: @Juan__Gonzalez
1-2
Puebla en México
1-3
Puebla en México
1-4
Puebla en México
1-5
Puebla en México
1-6
Puebla en México
1-7
BCHI
• The Belgian Laboratory of Computer-Human Interaction
(BCHI) is conducting research, development, and
consulting services in the domain of user interface
engineering.
Juan Manuel Gonzalez Calleros
is a Ph. D. Researcher at BCHI
•3DUIs, Model-Based modeling,
HCI, workflow
1-8
BCHI in Europe
Louvain la Neuve, Belgium
1-9
@Juan__Gonzalez
Los procesos
• Un proceso es un conjunto de actividades o eventos
(coordinados u organizados) que se realizan o
suceden (alternativa o simultáneamente)bajo ciertas
circunstancias con un fin determinado.
• La definición de un proceso indica el ordenamiento
de tareas en tiempo, espacio, y recursos.
– Relación directa con las tareas de alto nivel
– Nos permite determinar lo que se requiere y no entrar en
los detalles (modelo de tareas)
• Para modelar problema más extensos y complejos
1-10
@Juan__Gonzalez
¿Por qué modelar procesos?
• Dan soporte a los procesos de negocios cuando
son automatizados usando Workflow
– Requisito necesario para permanecer competitivo
• Workflow se refiere a los procesos de negocio que
pueden ser automatizados
– En particular nos interesan aquellos que usan
sistemas basados en computadoras
• El modelado de procesos usando Workflows
permite ladefinici{on de tareas de alto nivel, las
cuales pueden ser detalladas con modelos de
tareas
1-11
@Juan__Gonzalez
¿Por qué modelar procesos?
• A pesar de que los sistemas de información se
consideran vitales en una organización no
necesariamente cumplen con tales expectativas
en la practica.
– Las tareas son definidas asumiendo que serán
ejecutadas por personas
– La estructura organizacional define grupos de
usuarios
– Después se determina si se requieren sistemas para
apoyarlos en sus actividades
 Los sistemas no logran sus objetivos
1-12
@Juan__Gonzalez
¿Por qué modelar procesos?
• Es importante construir Sistemas con éxito
es, al menos por dos razones:
– 1) para lograr exitio un SI debe ser
comprensible para las organizaciones y solo
puede ser posible si tiene en cuenta prácticas
actuales de trabajo,
– 2) un SI determina, en cierto grado , qué trabajo
se puede hacer y cómo puede llevarse a cabo,
• debe ser diseñado de acuerdo a los objetivos y metas
de las organizaciones
1-13
@Juan__Gonzalez
Modelando Procesos
• Workflow define las actividades relacionadas con la
ejecución coordinada de múltiples tareas realizadas
por los diferentes recursos para lograr un objetivo
comercial común.
– Una de las tareas define el trabajo que hacer por una
persona, por un sistema de software o por ambos.
– Para controlar y coordinar la ejecución de tareas
tenemos que conocer quienes las deben ejecutar bajo
que condiciones y donde, así como las relaciones
entre las propias tareas.
1-14
@Juan__Gonzalez
Modelando Procesos – Lo que
buscamos modelar
1-15
@Juan__Gonzalez
Modelando Procesos – Lo que
buscamos modelar
1-16
@Juan__Gonzalez
Modelando Procesos – Lo que buscamos
modelar
1-17
@Juan__Gonzalez
Beneficios del modelado de procesos
–Adherencia a los procesos de modelos
(compatible)
–Explicita representación de control del flujo
del trabajo
• Cambios al modelado de procesos no
requiere esfuerzo de codificación
–Explicita representación del envolvimiento de
los recursos
• Trabajo es directamente ruteado hacia el
recurso correcto
• Aspectos como carga de trabajo, historial,
entre otros, pueden ser tomados en cuenta
en la asignación de trabajo
1-18
@Juan__Gonzalez
Ciclo de vida del modelado de procesos
Diagnostico
(Re)Diseñ
o de
procesos y
análisis
Configuración
del sistema
Mejora de
procesos y
monitoreo
1-19
EL CONCEPTO DE TAREA
Donde todo inicia
1-20
@Juan__Gonzalez
1. El concepto de tarea
– Esta es una tarea
• Incribirse a un peridico a traves de un formulario
• Pedir un libro
• Validar un plano con un urbanista cara a cara
– Esta no es una tarea
• Garantizar la distribución de periodicos
– Tarea Interactiva = tarea de usuario
• Exemples:
  Guardar una solicitu de compra
  Imprimir el correo de forma masiva
1-21
@Juan__Gonzalez
El concepto de tarea
• Ciclo simplificado de tareas
Task
created
Task
offered
Task
allocated
Task
delegated
Task
started
Task
suspended
Task
cancelled
Task
failed
Task
completed
Task
finished
define
offer
start
start
start
allocate
delegate
return
cancel fail
suspend
resume
run, redo
undo, repeat
finish
review
Task
created
Task
offered
Task
allocated
Task
delegated
Task
started
Task
suspended
Task
cancelled
Task
failed
Task
completed
Task
finished
define
offer
start
start
start
allocate
delegate
return
cancel fail
suspend
resume
run, redo
undo, repeat
finish
review
1-22
@Juan__Gonzalez
Ciclo de vida estándar de una tarea
• Creación
– Resulta de identificar el objetivo operacional que la define
• Afectación a un actor
– El actor se convierte en responsable de la tarea
• Lanzamiento
– Una vez que las condiciones se dan se lanza la tarea
• Toma de responsabilidad
– Inicio de la realización efectiva de la tarea
• Terminación
– Momento donde el objetivo de la tarea se ha cumplido
• Destrucción
– Supresión de referencias en situaciones de cooperación
1-23
@Juan__Gonzalez
1. Concepto de tarea
• Definición
– Tratamiento de una unidad de ejecución espacio-
temporal en una unidad organizacional usando el
mismo conjunto de recursos
• ¿Cómo identificar tareas?
– Criterios de identificación
1-24
@Juan__Gonzalez
1. Concepto de tarea
• Criterios de identificación
• Cambio de unidad espacial (inter
organización/manual/auto/mecánica)
– reubicación
estación de trabajo
otro lugar (oficina general / sucursal)
• Cambio de recurso
Persona: + experto en finanzas
Hardware: Pocket PC +, - terminal
Información: Cliente -> Producto
• Cambio de unidad temporal
– Existencia de una interrupción
existencia de un punto de espera
Tipo de decisión: Si la opción es correcta
– Tipo de acumulador: para cada permanencia en la unidad de
implementación
– Cambio en la frecuencia de ejecución
1-25
@Juan__Gonzalez
1. Concepto de tarea
– Ejemplo : « Tratamiento de ordenes del
cliente »
• 1. Preparación de la orden
– Tarea manual
– Abrir sobres, verificar la orden de compra que este
debidamente firmada y contenga la información necesaria
para identificar al cliente
• 2. Registro de la Orden
– Tarea interactiva
– El operador de registros debe, via una terminal de
trabajo, codificar los dato de la orden.
-Punto de
espera
-Punto de
decisión
-Cambio de
recurso
1-26
@Juan__Gonzalez
1. Concepto de tarea
• Ejemplo: « Tratamiento de ordenes del
cliente »
2. Registro de la Orden
• 3. Preparación de una solicitud
– Tarea automática
– Actualiza el inventario de productos asocia a la
orden. Algunas cosas de la solicitud dan origen a
solicitud de compras, el resto es guardado y será
enviado en uno o más envíos.
• 4. Preparación de la entrega
– Tarea automática
– Cuando n solicitudes han sido generadas, se procede
con la preparación de los envíos de manera que se
optimizan los recursos
-Punto de
decisión
-Cambio de
recurso
Punto de espera
1-27
@Juan__Gonzalez
1. Concepto de tarea
• Ejemplo: « Tratamiento de ordenes del
cliente »
• 4. Preparación del envío
• 5. Tratamiento del pedido
– Tarea manual
– Cruzar la bodega recolectando los productos
• 6. Elaboración del paquete
– Tarea interactiva
– Al final de la recolección de cosas se colocan en una
maquina que empaqueta, ahí mismo se envia a
imprimir el recibo, factura y los documentos de envío
-Cambio
de recurso
-Cambio
de lugar
-Cambio de
recurso
1-28
@Juan__Gonzalez
1. Concepto de tarea
• Ejemplo: « Tratamiento de ordenes del cliente »
– 6. Elaboración del paquete
• 7. Envío de mercancía
– Tarea manual
– El paquete y los docs de acompañamiento (o prueba de no
entrega) son enviados al cliente.
• 8. Selección de ordenes retrasadas
– Automática
– Cuando llega mercancía, entregas retrasadas de estos
productos son seleccionadas
-Cambio
de
recurso
-Diferencia de
periodicidad
1-29
@Juan__Gonzalez
1. Concepto de tarea
• Ejemplo: « Tratamiento de ordenes del cliente »
– 8. Selección de ordenes retrasadas
• 9. Notificación de no reservas
– Tarea automática
– Cada vez que el producto se ha terminado una
notificación se hace al cliente
-Diferencia de
periodicidad
1-30
@Juan__Gonzalez
Tabla de Identificación de Tareas
– Presentación estándar de las tareas
– N° = número de la tarea en la aplicación
– Nom de la tarea = nombre de la tarea, verbo objeto
afectado por la acción
– Pred = no predecesor de la tarea
– Definición = descripción detallada de la tarea
– Justificación = lista de criterios de identificación de la
tarea
– Naturaleza = manual, interactiva, automática o
abstracta
N° Nom de la tarea Pred Definición Justificación Naturaleza
1 Hacer un
expediente
_ Ccrear un expediente
Len la sucural
Manual
1-31
@Juan__Gonzalez
1. Concepto de tarea
• Criterios de identificacion («Trucos»)
– Para descubrir una tarea
• Cambio de lugar
– recorrido, cambio de lugar en la sucursal, cambio de oficina, ir a
otro puesto de trabajo
• Cambio de recurso
– de tipo de persona : una a otra persona
– de tipo material :
» Todo cambio de materia prima (man/int/auto/méca)
» terminal, impresora, red Internet
– de tipe informacional : otro tipo de expediente
• Punto de espara de tipo decisión
– Decisión humana
– Línea correcta, ccompra registrada, si…, acceptada, podría ser en
caso de …, aprueba
1-32
@Juan__Gonzalez
1-33
@Juan__Gonzalez
1. Concepto de tarea
• Criterios de identificacion («Trucos»)
– Para descubrir una tarea
• Punto de espera tipo acumulación
– Ara da producto, una vez que llega todo, esperamos un
paquete para enviar, enviar despues de que llegan 10
paquetes
• Diferencia de periodicidad
– A cada re aprovisionamiento – cada que un producto esta
disponible
– A terminar la semana – al menos 20 minutos de espera
1-34
Herramienta de identificación
de tareas
Elicitación de requerimientos
1-35
@Juan__Gonzalez
35 HCIS’2008 – Milan, September 8-9th, 2008, during IFIP World Congress 2008
Tool support
• Herramienta para la identificación de
tareas
1-36
@Juan__Gonzalez
Nivel : clasificación manual
• Definición :
– El usuario del programa hace el trabajo de
elicitación
– Sin la ayuda de un proceso automatizado
• Método :
– Selección de una zona de texto de un
escenario
– Seleccionar el modelo apropiado y el tipo de
objetos
1-37
@Juan__Gonzalez
Nivel : clasificación manual
1
2
3
1-38
@Juan__Gonzalez
Nivel : clasificación manual
• Ventajas :
– Resultados asegurados
– Más fácil de implementar que una herramienta
automatizada
– No hay necesidad de datos de clasificación
• Inconvenientes :
– Fastidiosa para el usuario
– Costoso en tiempo
1-39
@Juan__Gonzalez
1. Identificación de tareas
1-40
@Juan__Gonzalez
1. Concepto de tarea
• Ejercicio – Identifica y lista las tareas
Cuando un cliente llega a la agencia inmobiliaria, ingresa su solicitud a la secretaria de
solicitudes. Indica el tipo de bien que desea renta o comprar, sus restricciones de presupuesto
así como las principales características de los bienes que le podrían interesar.
El empleado registra su solicitud, es decir, asocia el perfil del cliente con las variable estándar
de comprar de bienes, en caso de ser nuevo cliente se da de alta su perfil en el sistema.
La conclusión del registro de una solicitud lanza de manera automática, para cada variante del
perfil del cliente, la impresión de bienes que pudieran ser de su interés y que aún estén
disponibles (esta lista describe la ubicación del bien, el precio solicitado y la información de la
superficie)
El cliente examina las listas y elimina lo que no le interesa. Si quedan cosas de su interés
entonces se le dirige al servicio de visitas.
Para cada bien que le interesa al cliente, se le proporcionan más amplios detalles, mientras otro
empleado busca fotografías del bien. Gracias a los detalles extras y las fotos, el cliente puede
tener una opinión más amplia del bien. El empleado registra si el cliente esta o no de acuerdo y
procede a la visita física del inmueble.
1-41
@Juan__Gonzalez
1. Concepto de tarea
• Ejercicio – Identifica y lista las tareas
Cuando un cliente llega a la agencia inmobiliaria, ingresa su solicitud a la secretaria de
solicitudes. Indica el tipo de bien que desea renta o comprar, sus restricciones de presupuesto
así como las principales características de los bienes que le podrían interesar.
El empleado registra su solicitud, es decir, asocia el perfil del cliente con las variable estándar
de comprar de bienes, en caso de ser nuevo cliente se da de alta su perfil en el sistema.
La conclusión del registro de una solicitud lanza de manera automática, para cada variante
del perfil del cliente, la impresión de bienes que pudieran ser de su interés y que aún estén
disponibles (esta lista describe la ubicación del bien, el precio solicitado y la información de la
superficie)
El cliente examina las listas y elimina lo que no le interesa. Si quedan cosas de su interés
entonces se le dirige al servicio de visitas.
Para cada bien que le interesa al cliente, se le proporcionan más amplios detalles, mientras
otro empleado busca fotografías del bien. Gracias a los detalles extras y las fotos, el cliente
puede tener una opinión más amplia del bien. El empleado registra si el cliente esta o no de
acuerdo y procede a la visita física del inmueble.
1-42
PROCESOS
1-43
@Juan__Gonzalez
Diseño de Sistemas de Workflow
1-44
@Juan__Gonzalez
Organizando workflows
• Cada caso involucra un proceso
– Un proceso consiste de
• Una serie de tareas que requieren ser ejecutadas
• Un conjunto de condiciones que determinan el orden de las
tareas
• Es igual a un procedimiento
– Una tarea es la unidad logica de trabajo que es ejecutada
individualmente por un recurso
• Ejecución <> responsabilidad
– Orden de tareas = diagrama de procesos
= n predecesores, 1 sucesor = 1 predecesor, n sucesores
1-45
@Juan__Gonzalez
Organizando workflows
• Una tarea en una proceso representa tareas de
alto nivel las cuales pueden ser detalladas
usando modelos de tareas
– Un modelo de tareas es asociado
• Un proceso es ejecutado por cada caso
– La ejecución de una tarea por un recurso es
llamado actividad
• Varios casos podrían usar el mismo proceso
pero cada caso seguirá su propia ruta
– Depende de los atributos del caso
1-46
@Juan__Gonzalez
Definición de proceso
• La definición de un proceso especifica que pasos son
requeridos y en que orden deben ser ejecutados.
– (enrutamiento, definición, procedimiento, workflow
script)
– (orden de compra, declaración de impuestos, proceso
de reclamación de seguro)
• La definición de un procesos consiste de:
– Tareas (paso, actividad, elemento del proceso)
– Una tarea es de alto nivel y puede descomponerse en
subtareas.
– Condiciones (estado, fase, requirimiento)
– Una condición es usada para determinar las tareas
que esán disponibles.
1-47
@Juan__Gonzalez
Caso
• Un caso es la ‘cosa' que requiere ser procesada
siguiendo la definición del proceso.
– (instancia de un proceso, job, projecto)
– (reclamo de seguro, orden de compra, queja,
aplicación de prestamo)
• El estado de un caso esta determinado por:
– Variables del caso (parámetros del caso)
– Los atributos lógicos del caso que son usados
para direccionar el caso.
– Condiciones
– Los requerimientos que son satisfechos.
• Datos de la aplicación están fuera del modelado de
procesos.
1-48
@Juan__Gonzalez
Modelando Procesos
place transition arc
•La notación esta inspirada en las redes de Petri
•Definido por Carl Adam Petri en los años sesenta
•Teoría formal para el modelado de concurrencia
(varias actividades, varias personas, juntos o
separados)
•Grafo bipartito formado por los
lugares/places (representados por círculos) y
transiciones (representadas por las barras o cajas)
1-49
@Juan__Gonzalez
Modelando Procesos
tarea condición
caso
Detalle de tarea
1-50
@Juan__Gonzalez
Red de Petri de un proceso de reclamación
de intervención de aseguradora de autos
Obtener cotización
Reparar auto
Comprar auto nuevo
Manejar cuenta
preliminares
de reclamación de seguros
Presentar reclamación
Final de seguro
Nota: Tareas de alto nivel
1-51
@Juan__Gonzalez
Habilitando las transiciones
• Las transiciones cambian los estados de la
red al ser ejecutadas.
• Solo las transiciones habilitadas pueden ser
ejecutadas.
• Informalmente, una transición esta
habilitada si todos los estados reueridos
para su ejecución contienen al menos un
token.
1-52
@Juan__Gonzalez
Ejecución de una transición: Ejemplo
Antes
1-53
@Juan__Gonzalez
Ejecución de una transición: Ejemplo
Antes
1-54
@Juan__Gonzalez
Ejecución de una transición: Ejemplo
Antes Después
1-55
@Juan__Gonzalez
Ejecución de una transición: Ejemplos
1-56
@Juan__Gonzalez
Ejemplo concreto
Deposito de dulces
rellenar
Entregar dulce
Listo para deposito de moneda
Insertar moneda
Retener moneda
Rechazar moneda
Listo a entregar
Aceptar moneda
Solicitar relleno
1-57
@Juan__Gonzalez
Ejemplo concreto
Deposito de dulces
rellenar
Entregar dulce
Listo para deposito de moneda
Insertar moneda
Retener moneda
Rechazar moneda
Listo a entregar
Aceptar moneda
Solicitar relleno
Única transición
disponible
1-58
@Juan__Gonzalez
Ejemplo concreto
Deposito de dulces
rellenar
Entregar dulce
Listo para deposito de moneda
Insertar moneda
Retener moneda
Rechazar moneda
Listo a entregar
Aceptar moneda
Solicitar relleno
Transiciones
disponibles
1-59
@Juan__Gonzalez
Ejemplo concreto
Deposito de dulces
rellenar
Entregar dulce
Listo para deposito de moneda
Insertar moneda
Retener moneda
Rechazar moneda
Listo a entregar
Aceptar moneda
Solicitar relleno
Rechazar la
moneda me
regresa al
estado inicial
1-60
@Juan__Gonzalez
Ejemplo concreto
Deposito de dulces
rellenar
Entregar dulce
Listo para deposito de moneda
Insertar moneda
Retener moneda
Rechazar moneda
Listo a entregar
Aceptar moneda
Solicitar relleno
Aceptar la
moneda
1-61
@Juan__Gonzalez
Ejemplo concreto
Deposito de dulces
rellenar
Entregar dulce
Listo para deposito de moneda
Insertar moneda
Retener moneda
Rechazar moneda
Listo a entregar
Aceptar moneda
Solicitar relleno
Listo para
entregar
dulce
1-62
@Juan__Gonzalez
Ejemplo concreto
Deposito de dulces
rellenar
Entregar dulce
Listo para deposito de moneda
Insertar moneda
Retener moneda
Rechazar moneda
Listo a entregar
Aceptar moneda
Solicitar relleno
Listo para
recibir
moneda
Listo para
rellenar
maquina
1-63
@Juan__Gonzalez
Ejemplo concreto
Deposito de dulces
rellenar
Entregar dulce
Listo para deposito de moneda
Insertar moneda
Retener moneda
Rechazar moneda
Listo a entregar
Aceptar moneda
Solicitar relleno
Listo para
recibir
moneda
No
necesariamente
se abastase
inmediatamente
1-64
@Juan__Gonzalez
Otro ejemplo de red de Petri: Elevador 1
número de tokens representa el número de movimientos verticales que puede hacer
evador hacia arriba o abajo en cualquier estado del sistema
nimation by Wil van der Aalst, Vincent Almering and Herman Wijbenga
1-65
@Juan__Gonzalez
El token representa el elevador y sus posibles estados estan representados por lo
pisosP1 a P4 y las transiciones A1 a A6 el ascenso o descenso del elevador
Animation by Wil van der Aalst, Vincent Almering and Herman Wijbenga
Otro ejemplo de red de Petri:
Elevador 2
1-66
@Juan__Gonzalez
El token representa la persona que usa al elevador y sus tareas denotadas de
A1 a A4
Animation by Wil van der Aalst, Vincent Almering and Herman Wijbenga
Otro ejemplo de red de Petri: Elevador 3
1-67
@Juan__Gonzalez
Ejercicio de modelado
• ¿Qué aprendimos de los ejemplos anteriores?
– La perspectiva y el objeto en estudio hace que el modelado de
procesos sea diferente
• Ejercicio
– Modelar la red de Petri necesaria para controlar los semáforos de
un cruce simple, es decir, si el semáforo1 tiene luz roja ponerle luz
roja al semáforo 2.
• Modela primero un semáforo
• Después busca el estado común que relaciona los dos semáforos
1-68
@Juan__Gonzalez
Animation by Wil van der Aalst, Vincent Almering and Herman Wijbenga
Solución al problema de tráfico de
semáforo
© 2011 BUAP 69
Catalogo de Patrones
Patrones de Control Primario
• Sequence
 
© 2011 BUAP 70
Catalogo de Patrones
Patrones de Control Primario
• And-Split – ejecuta actividades en paralelo
• Ejemplos
• Después de la terminación de la tarea de captura de la matrícula, ejecutar
crear el perfil de los estudiantes y enviar confirmación de inscripción al
mismo tiempo.
• Cuando una alarma de intrusión se recibe, active la tarea alertar guardia e
informar inmediatamente a la policía.
Una vez el cliente haya pagado por los bienes, empaquetarlos y emitir un
recibo.
© 2011 BUAP 71
Catalogo de Patrones
Patrones de Control Primario
• And-Join – sincronizar dos hilos paralelos de ejecución
• Ejemplos
• La tarea de despacho de bienes se ejecuta inmediatamente después de
que tanto la verificar factura y producir recibo son completadas.
• La declaración de efectivo en el cajón sólo puede ocurrir cuando la
tienda ha sido cerrada y el resumen de tarjeta de crédito ha sido impreso.
© 2011 BUAP 72
Catalogo de Patrones
Patrones de Control Primario
• XOR-Split – seleccionar una ejecución de muchas alternativas
• Ejemplos
• Dependiendo del volumen de tierra para ser trasladados, se envía la
petición de la retroexcavadora, el bobcat o la excavadora-D9
para completar el trabajo.
Después de la tarea revisión de elección se haya completado, o
bien declaran los resultados o la tarea de recuento de votos se realiza.
© 2011 BUAP 73
Catalogo de Patrones
Patrones de Control Primario
• XOR-Join – une dos alternativas de ejecución
• Ejemplos
• A la conclusión de la excavación de la excavadora bobcat o la d9, la tarea
de estimación de cantidad de tierra excavada es realizada para solicitar
pago.
• Después de hacer el pago u otorgar creditos, se inicia la tarea de hacer
recibo del producto.
© 2011 BUAP 74
Catalogo de Patrones
• Or-Split – seleccione muchos caminos de ejecución de entre muchas
opciones
• Ejemplos
• Dependiendo de la naturaleza de la llamada de emergencia, una o más
tareas de envío es efectuada: enviar policía, enviar carro de bomberos y
enviar ambulancia.
© 2011 BUAP 75
Catalogo de Patrones
Patrones de Conexión y Sincronización Avanzados
• Or-Join – La unión de dos o más líneas de ejecución (que divergieron
previamente en un punto especifico) y se unen en una única línea de
consecución.
• La Unión sincronizada estructurada ocurre en un contexto estructurado, es
decir debe existir un or-split antes en el modelo de procesos.
© 2011 BUAP 76
Catalogo de Patrones
Patrones de Conexión y Sincronización Avanzados
• Or-Join
• Ejemplos
• Dependiendo la naturaleza de la llamada una o más tareas de envío es
efectuada: enviar policía, enviar carro de bomberos y enviar ambulancia.
Cuando todos los vehículos de emergencia lleguen al lugar del accidente,
la tarea transferir-paciente comienza.
© 2011 BUAP 77
YAWL
Herramienta para modelado de procesos
© 2011 BUAP 78
YAWL notación
Composite task Multiple Instance task
© 2011 BUAP 79
Ejemplo general de Yawl
© 2011 BUAP 80
Ejemplo general de Yawl
© 2011 BUAP 81
Ejemplo general de Yawl
© 2011 BUAP 82
Ejemplo General YAWL
© 2011 BUAP 83
Actividad
• Una agencia de viajes ejecuta varias tareas. Primero el cliente es
registrado. Después, el empleado busca oportunidades que son
comunicadas al cliente. Después el cliente es contactado para
determinar si sigue interesado o no en el viaje ysi quiere otras
opciones. Hay 3 posibilidades: 1) el cliente no esta interesado, 2)
quiere ver mas alternativas, 3) el cliente selecciona una
oportunidad.
• Si el cliente selecciona un viaje, el viaje es reservado. En paralelo,
uno o dos tipos de seguros (seguro de cancelación, perdida de
equipaje) se preparan si es del deseo del cliente, puede ser que
ninguno. Dos semanas antes del inicio del viaje los documentos
son enviados al cliente. Un viaje puede ser cancelado en cualquier
momento después de hacer la reservación y antes de que inicie el
viaje. Notar que los que no tengan seguro no seran reembolsados.
© 2011 BUAP 84
Ejercicio
Asignación y aceptación del trabajo
En el trabajo siempre estas bajo las ordenes de otras personas
Jefe
Cliente
siempre tiene la razón
Guían nuestro trabajo
Las ordenes del jefe a su personal
Directas. Cuando el producto realizado es directamente
dirigido al cliente, procesos primarios
Indirectas. Cuando el trabajo involucra mantenimiento o
mejora de los procesos de producción, procesos secundarios y
terciarios
Asignación y aceptación del trabajo
Los organigramas en una empresa sirven para definir el
orden en que una tarea es asignada de una persona a otra.
Los actores que intervienen en este proceso son:
La persona que asigna la tarea es conocido como director;
mientras que la persona a la que se le asigna una tarea es un
contratista.
Puede ser una persona o una empresa
Asignación y aceptación del trabajo
Para tener éxito es importante:
Tener bien claro quién es nuestro cliente
Un empleado trabaja mejor si sabe quien es su cliente
Ayuda a la certidumbre sobre el potencial de lo que hace
Para toda relación entre director y contratista existe una
relación de trabajo o un contrato, a veces no escrito, donde
se establecen las condiciones del producto (caso) a
desarrollarse:
Tiempo de elaboración
Costo
Asignación directa
La capacidad de especificar directamente en tiempo de diseño la
identidad de el recurso que va a ejecutar una tarea.
Asignación basada en el rol
La capacidad de especificar en tiempo de diseño que una tarea sólo
puede ser ejecutada con los recursos que desempeñan una función
(rol) determinada.
Asignación diferida
La posibilidad de aplazar la especificación de la identidad del
recurso que ejecuta una tarea hasta el tiempo de ejecución.
Asignación Aleatoria
La habilidad de ofrecer or asignar trabajos to suitable recursos on a random basis.
 Ejemplo:
The Judge case trabajo is asignard to a Magistrate on a random basis.
Asignación Round Robin
 La habilidad de asignar un trabajo a recursos disponible usando ciclos
 Ejemplo:
Trabajos de revisión de artículos son asignados a los Referee usando un ciclo.
Cola más corta
La habilidad de asignar un trabajo al recurso que tiene el menor número de
trabajo asignado a él.
Tiene como objetivo acelerar el rendimiento
Delegación
Escalada
 La habilidad de un sistema de workflow para ofrecer o asignar un trabajo a un recurso o
grupo de recursos diferente a aquel al que se había escogido previamente vía asignación
u oferta. Con el objetivo de lograr la ejecución del trabajo, generalmente por que se ha
llegado a una fecha límite.
Desasignación
 La habilidad of a recurso (o grupo de recursos) a renunciar al trabajo que es asignado a
él y hacerlo disponible para la asignación a otro recurso o grupo de recursos.
Reasignación con estado
La habilidad de un recurso a asignar un trabajo a otro recurso sin perdida
del valor de los datos y el estado de avance de la tareas.
Reasignación sin estado
 La habilidad de un recurso de reasignar un trabajo que estaba ejecutando a otro recurso
sin mantener el estado de la tarea.
Suspensión / Resumen
 La habilidad para un recurso para suspender y resumir la ejecución de un trabajo.
Saltar
La habilidad para un recurso de saltar un trabajo asignado y marcarlo como realizado.
Allocation Patterns
1-102
Desarrollo de sistemas de
Información
1-103
@Juan__Gonzalez
Proceso
1-104
@Juan__Gonzalez
Marco de Referencia
1-105
@Juan__Gonzalez
Paso 1
1-106
@Juan__Gonzalez
Paso 2
1-107
@Juan__Gonzalez
Paso 3
© 2011 BUAP 108
108 November 9-11, 2009 - Mérida, Mexico CLIHC’09
• Tasks in the process are detailed using task
models
Ejercicio
6. Task Modeling
© 2011 BUAP 109
109 November 9-11, 2009 - Mérida, Mexico CLIHC’09
• Attributes identified for the tasks
Task Task
Type
Task Item User
category
Facet
Insert Name Create Element Interactive Input
Insert Zip Code Create Element Interactive Input
Select Age category Select Element Interactive Input
Select Gender Select Element Interactive Input
Ejercicio
© 2011 BUAP 110
Ejemplo
110 November 9-11, 2009 - Mérida, Mexico CLIHC’09
User Interface Action Types Facet Specification Information to take into account Possible Abstract Interaction
Component
“create name” and “create zip Code” Create attribute value Data type, domain characteristics A text output with a text input
associated to it
“select gender and select age
Category”
Select attribute value
+ selection values
known
Data type, domain characteristics,
selection values
A dropdown list, a group of radio
buttons textual or characters.
1-111
Example of MDE of Uis in UsiXML
Total graphical VS predominant graphical
ITEA UsiXML project #08026, 2009-2012
1-112
Example of MDE of Uis in UsiXML
Predominant vocal VS total vocal
ITEA UsiXML project #08026, 2009-2012
1-113
CUI rendering in VUItoolkit
1-114
X3D generated from Alice
• It’s a real 3D UI!
1-115
FUI included in virtual scene
© 2011 BUAP 116
User Interface Flow
© 2011 BUAP 117
User Interface Flow
© 2011 BUAP 118
Runtime Monitoring
1-119
CONCLUSIONES
1-120
Overview
1-121
@Juan__Gonzalez
Overview
1-122
@Juan__Gonzalez
Join us
BUAP
http://www.facebook.com/UsiXML
@usixml
1-123
For more information and downloading,
http://www.lilab.eu
User Interface eXtensible Markup Language
http://www.usixml.org
http://www.usixml.eu
Register as a member of the UsiXML End-User Club at
http://www.usixml.eu/end_user_club
Thank you very much for your
attention!
Contact in Mexico
Dra. Josefina Guerrero-García jguerrero@cs.buap.mx
Dr. Juan Manuel González-Calleros juan.gonzalez@cs.buap.mx
@Juan__Gonzalez

Más contenido relacionado

Similar a Modelado de Sistemas Interactivos con FlowiXMLGonzalez mini curso-flowixml

Proyecto tecnologico final
Proyecto tecnologico finalProyecto tecnologico final
Proyecto tecnologico finalJSGB11
 
Proyecto tecnologico
Proyecto tecnologicoProyecto tecnologico
Proyecto tecnologicoJSGB11
 
Enfoque integral de proyectos y operaciones
Enfoque integral de proyectos y operacionesEnfoque integral de proyectos y operaciones
Enfoque integral de proyectos y operacionessmbcreatividad
 
Enfoque integral de proyectos y operaciones
Enfoque integral de proyectos y operacionesEnfoque integral de proyectos y operaciones
Enfoque integral de proyectos y operacionessmbcreatividad
 
Conceptos relativos a la Administración de proyectos
Conceptos relativos a la Administración de proyectosConceptos relativos a la Administración de proyectos
Conceptos relativos a la Administración de proyectosCarlos Roa
 
4-Unidad 1: Proceso y Procedimientos - 1.3 Proceso vs Procedimiento
4-Unidad 1: Proceso y Procedimientos - 1.3 Proceso vs Procedimiento4-Unidad 1: Proceso y Procedimientos - 1.3 Proceso vs Procedimiento
4-Unidad 1: Proceso y Procedimientos - 1.3 Proceso vs ProcedimientoLuis Fernando Aguas Bucheli
 
Administración de proyectos
Administración de proyectosAdministración de proyectos
Administración de proyectosVi_Olivares
 
tipos de administración y manejo de las empresas
tipos de administración y manejo de las empresastipos de administración y manejo de las empresas
tipos de administración y manejo de las empresasJoseAreli1
 
Métodos Ágiles de Programación
Métodos Ágiles de Programación Métodos Ágiles de Programación
Métodos Ágiles de Programación Sonia Sosa
 
Técnicas elementales de administración.
Técnicas elementales de administración. Técnicas elementales de administración.
Técnicas elementales de administración. agarciagaliana
 
Funcionamiento de proyectos tecnológicos
Funcionamiento de proyectos tecnológicosFuncionamiento de proyectos tecnológicos
Funcionamiento de proyectos tecnológicosangieperez72
 
Pasos para la elaboracion de un proyecto segun la pmbok
Pasos para la elaboracion de un proyecto segun la pmbokPasos para la elaboracion de un proyecto segun la pmbok
Pasos para la elaboracion de un proyecto segun la pmbokJose Armirola
 
Gestión de Proyectos Informáticos II
Gestión de Proyectos Informáticos IIGestión de Proyectos Informáticos II
Gestión de Proyectos Informáticos IILeomelys López
 

Similar a Modelado de Sistemas Interactivos con FlowiXMLGonzalez mini curso-flowixml (20)

Proyecto tecnologico final
Proyecto tecnologico finalProyecto tecnologico final
Proyecto tecnologico final
 
Proyecto tecnologico
Proyecto tecnologicoProyecto tecnologico
Proyecto tecnologico
 
Enfoque integral de proyectos y operaciones
Enfoque integral de proyectos y operacionesEnfoque integral de proyectos y operaciones
Enfoque integral de proyectos y operaciones
 
Enfoque integral de proyectos y operaciones
Enfoque integral de proyectos y operacionesEnfoque integral de proyectos y operaciones
Enfoque integral de proyectos y operaciones
 
Manual del proyecto
Manual del proyectoManual del proyecto
Manual del proyecto
 
Conceptos relativos a la Administración de proyectos
Conceptos relativos a la Administración de proyectosConceptos relativos a la Administración de proyectos
Conceptos relativos a la Administración de proyectos
 
4-Unidad 1: Proceso y Procedimientos - 1.3 Proceso vs Procedimiento
4-Unidad 1: Proceso y Procedimientos - 1.3 Proceso vs Procedimiento4-Unidad 1: Proceso y Procedimientos - 1.3 Proceso vs Procedimiento
4-Unidad 1: Proceso y Procedimientos - 1.3 Proceso vs Procedimiento
 
Gestión y control de proyectos
Gestión y control de proyectosGestión y control de proyectos
Gestión y control de proyectos
 
Proyecto tecnológico
Proyecto  tecnológicoProyecto  tecnológico
Proyecto tecnológico
 
Administración de proyectos
Administración de proyectosAdministración de proyectos
Administración de proyectos
 
tipos de administración y manejo de las empresas
tipos de administración y manejo de las empresastipos de administración y manejo de las empresas
tipos de administración y manejo de las empresas
 
Métodos Ágiles de Programación
Métodos Ágiles de Programación Métodos Ágiles de Programación
Métodos Ágiles de Programación
 
Técnicas elementales de administración.
Técnicas elementales de administración. Técnicas elementales de administración.
Técnicas elementales de administración.
 
Trabajo final fase 3
Trabajo final fase 3Trabajo final fase 3
Trabajo final fase 3
 
Funcionamiento de proyectos tecnológicos
Funcionamiento de proyectos tecnológicosFuncionamiento de proyectos tecnológicos
Funcionamiento de proyectos tecnológicos
 
Pasos para la elaboracion de un proyecto segun la pmbok
Pasos para la elaboracion de un proyecto segun la pmbokPasos para la elaboracion de un proyecto segun la pmbok
Pasos para la elaboracion de un proyecto segun la pmbok
 
Gestión de Proyectos Informáticos II
Gestión de Proyectos Informáticos IIGestión de Proyectos Informáticos II
Gestión de Proyectos Informáticos II
 
Ensayo Gestión Jennyfer Cortés
Ensayo Gestión Jennyfer CortésEnsayo Gestión Jennyfer Cortés
Ensayo Gestión Jennyfer Cortés
 
Capitulo 1
Capitulo 1Capitulo 1
Capitulo 1
 
El pato-volador
El pato-voladorEl pato-volador
El pato-volador
 

Más de Juan Manuel Gonzalez Calleros

Más de Juan Manuel Gonzalez Calleros (20)

Pruebas de Software.pptx
Pruebas de Software.pptxPruebas de Software.pptx
Pruebas de Software.pptx
 
Patrón de Diseño Estrategia
Patrón de Diseño EstrategiaPatrón de Diseño Estrategia
Patrón de Diseño Estrategia
 
Modelos de desarrollo de software
Modelos de desarrollo de software Modelos de desarrollo de software
Modelos de desarrollo de software
 
05 Identificación de Tareas y Contexto de Uso (UX)
05 Identificación de Tareas y Contexto de Uso (UX)05 Identificación de Tareas y Contexto de Uso (UX)
05 Identificación de Tareas y Contexto de Uso (UX)
 
Rol del Director de Proyectos
Rol del Director de ProyectosRol del Director de Proyectos
Rol del Director de Proyectos
 
03 Introduccón a la administracion de proyectos
03 Introduccón a la administracion de proyectos03 Introduccón a la administracion de proyectos
03 Introduccón a la administracion de proyectos
 
02 Mitos de la ingeniería de software
02 Mitos de la ingeniería de software02 Mitos de la ingeniería de software
02 Mitos de la ingeniería de software
 
01 Presentacion curso ingeniería de software
01 Presentacion curso ingeniería de software01 Presentacion curso ingeniería de software
01 Presentacion curso ingeniería de software
 
Enfoque transformacional
Enfoque transformacionalEnfoque transformacional
Enfoque transformacional
 
Ciclo de Vida y roles
Ciclo de Vida y roles Ciclo de Vida y roles
Ciclo de Vida y roles
 
Emociones y HCI
Emociones y HCIEmociones y HCI
Emociones y HCI
 
Patrones de Interfaz de Usuario
Patrones de Interfaz de UsuarioPatrones de Interfaz de Usuario
Patrones de Interfaz de Usuario
 
Algunas Métricas de UX
Algunas Métricas de UXAlgunas Métricas de UX
Algunas Métricas de UX
 
La experiencia de Usuario: Introducción
La experiencia de Usuario: IntroducciónLa experiencia de Usuario: Introducción
La experiencia de Usuario: Introducción
 
Métodos de usabilidad
Métodos de usabilidadMétodos de usabilidad
Métodos de usabilidad
 
Guía de Técnicas de Usabilidad
Guía de Técnicas de UsabilidadGuía de Técnicas de Usabilidad
Guía de Técnicas de Usabilidad
 
Mapas de Empatía, Personas e Historias de Usuario
Mapas de Empatía, Personas e  Historias de UsuarioMapas de Empatía, Personas e  Historias de Usuario
Mapas de Empatía, Personas e Historias de Usuario
 
Guía de Entrevistas
Guía de Entrevistas Guía de Entrevistas
Guía de Entrevistas
 
Hacia un modelo educativo centrado en el alumno
Hacia un modelo educativo centrado en el alumnoHacia un modelo educativo centrado en el alumno
Hacia un modelo educativo centrado en el alumno
 
Técnicas de Recolección de necesidades
Técnicas de Recolección de necesidadesTécnicas de Recolección de necesidades
Técnicas de Recolección de necesidades
 

Modelado de Sistemas Interactivos con FlowiXMLGonzalez mini curso-flowixml

  • 1. Modelado de Sistemas Interactivos con FlowiXML Dr. Juan Manuel González Calleros Facultad de Ciencias de la Computación Benemérita Universidad Autónoma de Puebla Ciudad Universitaria Av. San Claudio y 14 sur, Edificio 136ª Puebla, México. Email: juan.gonzalez@cs.buap.mx Twitter: @Juan__Gonzalez
  • 7. 1-7 BCHI • The Belgian Laboratory of Computer-Human Interaction (BCHI) is conducting research, development, and consulting services in the domain of user interface engineering. Juan Manuel Gonzalez Calleros is a Ph. D. Researcher at BCHI •3DUIs, Model-Based modeling, HCI, workflow
  • 8. 1-8 BCHI in Europe Louvain la Neuve, Belgium
  • 9. 1-9 @Juan__Gonzalez Los procesos • Un proceso es un conjunto de actividades o eventos (coordinados u organizados) que se realizan o suceden (alternativa o simultáneamente)bajo ciertas circunstancias con un fin determinado. • La definición de un proceso indica el ordenamiento de tareas en tiempo, espacio, y recursos. – Relación directa con las tareas de alto nivel – Nos permite determinar lo que se requiere y no entrar en los detalles (modelo de tareas) • Para modelar problema más extensos y complejos
  • 10. 1-10 @Juan__Gonzalez ¿Por qué modelar procesos? • Dan soporte a los procesos de negocios cuando son automatizados usando Workflow – Requisito necesario para permanecer competitivo • Workflow se refiere a los procesos de negocio que pueden ser automatizados – En particular nos interesan aquellos que usan sistemas basados en computadoras • El modelado de procesos usando Workflows permite ladefinici{on de tareas de alto nivel, las cuales pueden ser detalladas con modelos de tareas
  • 11. 1-11 @Juan__Gonzalez ¿Por qué modelar procesos? • A pesar de que los sistemas de información se consideran vitales en una organización no necesariamente cumplen con tales expectativas en la practica. – Las tareas son definidas asumiendo que serán ejecutadas por personas – La estructura organizacional define grupos de usuarios – Después se determina si se requieren sistemas para apoyarlos en sus actividades  Los sistemas no logran sus objetivos
  • 12. 1-12 @Juan__Gonzalez ¿Por qué modelar procesos? • Es importante construir Sistemas con éxito es, al menos por dos razones: – 1) para lograr exitio un SI debe ser comprensible para las organizaciones y solo puede ser posible si tiene en cuenta prácticas actuales de trabajo, – 2) un SI determina, en cierto grado , qué trabajo se puede hacer y cómo puede llevarse a cabo, • debe ser diseñado de acuerdo a los objetivos y metas de las organizaciones
  • 13. 1-13 @Juan__Gonzalez Modelando Procesos • Workflow define las actividades relacionadas con la ejecución coordinada de múltiples tareas realizadas por los diferentes recursos para lograr un objetivo comercial común. – Una de las tareas define el trabajo que hacer por una persona, por un sistema de software o por ambos. – Para controlar y coordinar la ejecución de tareas tenemos que conocer quienes las deben ejecutar bajo que condiciones y donde, así como las relaciones entre las propias tareas.
  • 17. 1-17 @Juan__Gonzalez Beneficios del modelado de procesos –Adherencia a los procesos de modelos (compatible) –Explicita representación de control del flujo del trabajo • Cambios al modelado de procesos no requiere esfuerzo de codificación –Explicita representación del envolvimiento de los recursos • Trabajo es directamente ruteado hacia el recurso correcto • Aspectos como carga de trabajo, historial, entre otros, pueden ser tomados en cuenta en la asignación de trabajo
  • 18. 1-18 @Juan__Gonzalez Ciclo de vida del modelado de procesos Diagnostico (Re)Diseñ o de procesos y análisis Configuración del sistema Mejora de procesos y monitoreo
  • 19. 1-19 EL CONCEPTO DE TAREA Donde todo inicia
  • 20. 1-20 @Juan__Gonzalez 1. El concepto de tarea – Esta es una tarea • Incribirse a un peridico a traves de un formulario • Pedir un libro • Validar un plano con un urbanista cara a cara – Esta no es una tarea • Garantizar la distribución de periodicos – Tarea Interactiva = tarea de usuario • Exemples:   Guardar una solicitu de compra   Imprimir el correo de forma masiva
  • 21. 1-21 @Juan__Gonzalez El concepto de tarea • Ciclo simplificado de tareas Task created Task offered Task allocated Task delegated Task started Task suspended Task cancelled Task failed Task completed Task finished define offer start start start allocate delegate return cancel fail suspend resume run, redo undo, repeat finish review Task created Task offered Task allocated Task delegated Task started Task suspended Task cancelled Task failed Task completed Task finished define offer start start start allocate delegate return cancel fail suspend resume run, redo undo, repeat finish review
  • 22. 1-22 @Juan__Gonzalez Ciclo de vida estándar de una tarea • Creación – Resulta de identificar el objetivo operacional que la define • Afectación a un actor – El actor se convierte en responsable de la tarea • Lanzamiento – Una vez que las condiciones se dan se lanza la tarea • Toma de responsabilidad – Inicio de la realización efectiva de la tarea • Terminación – Momento donde el objetivo de la tarea se ha cumplido • Destrucción – Supresión de referencias en situaciones de cooperación
  • 23. 1-23 @Juan__Gonzalez 1. Concepto de tarea • Definición – Tratamiento de una unidad de ejecución espacio- temporal en una unidad organizacional usando el mismo conjunto de recursos • ¿Cómo identificar tareas? – Criterios de identificación
  • 24. 1-24 @Juan__Gonzalez 1. Concepto de tarea • Criterios de identificación • Cambio de unidad espacial (inter organización/manual/auto/mecánica) – reubicación estación de trabajo otro lugar (oficina general / sucursal) • Cambio de recurso Persona: + experto en finanzas Hardware: Pocket PC +, - terminal Información: Cliente -> Producto • Cambio de unidad temporal – Existencia de una interrupción existencia de un punto de espera Tipo de decisión: Si la opción es correcta – Tipo de acumulador: para cada permanencia en la unidad de implementación – Cambio en la frecuencia de ejecución
  • 25. 1-25 @Juan__Gonzalez 1. Concepto de tarea – Ejemplo : « Tratamiento de ordenes del cliente » • 1. Preparación de la orden – Tarea manual – Abrir sobres, verificar la orden de compra que este debidamente firmada y contenga la información necesaria para identificar al cliente • 2. Registro de la Orden – Tarea interactiva – El operador de registros debe, via una terminal de trabajo, codificar los dato de la orden. -Punto de espera -Punto de decisión -Cambio de recurso
  • 26. 1-26 @Juan__Gonzalez 1. Concepto de tarea • Ejemplo: « Tratamiento de ordenes del cliente » 2. Registro de la Orden • 3. Preparación de una solicitud – Tarea automática – Actualiza el inventario de productos asocia a la orden. Algunas cosas de la solicitud dan origen a solicitud de compras, el resto es guardado y será enviado en uno o más envíos. • 4. Preparación de la entrega – Tarea automática – Cuando n solicitudes han sido generadas, se procede con la preparación de los envíos de manera que se optimizan los recursos -Punto de decisión -Cambio de recurso Punto de espera
  • 27. 1-27 @Juan__Gonzalez 1. Concepto de tarea • Ejemplo: « Tratamiento de ordenes del cliente » • 4. Preparación del envío • 5. Tratamiento del pedido – Tarea manual – Cruzar la bodega recolectando los productos • 6. Elaboración del paquete – Tarea interactiva – Al final de la recolección de cosas se colocan en una maquina que empaqueta, ahí mismo se envia a imprimir el recibo, factura y los documentos de envío -Cambio de recurso -Cambio de lugar -Cambio de recurso
  • 28. 1-28 @Juan__Gonzalez 1. Concepto de tarea • Ejemplo: « Tratamiento de ordenes del cliente » – 6. Elaboración del paquete • 7. Envío de mercancía – Tarea manual – El paquete y los docs de acompañamiento (o prueba de no entrega) son enviados al cliente. • 8. Selección de ordenes retrasadas – Automática – Cuando llega mercancía, entregas retrasadas de estos productos son seleccionadas -Cambio de recurso -Diferencia de periodicidad
  • 29. 1-29 @Juan__Gonzalez 1. Concepto de tarea • Ejemplo: « Tratamiento de ordenes del cliente » – 8. Selección de ordenes retrasadas • 9. Notificación de no reservas – Tarea automática – Cada vez que el producto se ha terminado una notificación se hace al cliente -Diferencia de periodicidad
  • 30. 1-30 @Juan__Gonzalez Tabla de Identificación de Tareas – Presentación estándar de las tareas – N° = número de la tarea en la aplicación – Nom de la tarea = nombre de la tarea, verbo objeto afectado por la acción – Pred = no predecesor de la tarea – Definición = descripción detallada de la tarea – Justificación = lista de criterios de identificación de la tarea – Naturaleza = manual, interactiva, automática o abstracta N° Nom de la tarea Pred Definición Justificación Naturaleza 1 Hacer un expediente _ Ccrear un expediente Len la sucural Manual
  • 31. 1-31 @Juan__Gonzalez 1. Concepto de tarea • Criterios de identificacion («Trucos») – Para descubrir una tarea • Cambio de lugar – recorrido, cambio de lugar en la sucursal, cambio de oficina, ir a otro puesto de trabajo • Cambio de recurso – de tipo de persona : una a otra persona – de tipo material : » Todo cambio de materia prima (man/int/auto/méca) » terminal, impresora, red Internet – de tipe informacional : otro tipo de expediente • Punto de espara de tipo decisión – Decisión humana – Línea correcta, ccompra registrada, si…, acceptada, podría ser en caso de …, aprueba
  • 33. 1-33 @Juan__Gonzalez 1. Concepto de tarea • Criterios de identificacion («Trucos») – Para descubrir una tarea • Punto de espera tipo acumulación – Ara da producto, una vez que llega todo, esperamos un paquete para enviar, enviar despues de que llegan 10 paquetes • Diferencia de periodicidad – A cada re aprovisionamiento – cada que un producto esta disponible – A terminar la semana – al menos 20 minutos de espera
  • 34. 1-34 Herramienta de identificación de tareas Elicitación de requerimientos
  • 35. 1-35 @Juan__Gonzalez 35 HCIS’2008 – Milan, September 8-9th, 2008, during IFIP World Congress 2008 Tool support • Herramienta para la identificación de tareas
  • 36. 1-36 @Juan__Gonzalez Nivel : clasificación manual • Definición : – El usuario del programa hace el trabajo de elicitación – Sin la ayuda de un proceso automatizado • Método : – Selección de una zona de texto de un escenario – Seleccionar el modelo apropiado y el tipo de objetos
  • 38. 1-38 @Juan__Gonzalez Nivel : clasificación manual • Ventajas : – Resultados asegurados – Más fácil de implementar que una herramienta automatizada – No hay necesidad de datos de clasificación • Inconvenientes : – Fastidiosa para el usuario – Costoso en tiempo
  • 40. 1-40 @Juan__Gonzalez 1. Concepto de tarea • Ejercicio – Identifica y lista las tareas Cuando un cliente llega a la agencia inmobiliaria, ingresa su solicitud a la secretaria de solicitudes. Indica el tipo de bien que desea renta o comprar, sus restricciones de presupuesto así como las principales características de los bienes que le podrían interesar. El empleado registra su solicitud, es decir, asocia el perfil del cliente con las variable estándar de comprar de bienes, en caso de ser nuevo cliente se da de alta su perfil en el sistema. La conclusión del registro de una solicitud lanza de manera automática, para cada variante del perfil del cliente, la impresión de bienes que pudieran ser de su interés y que aún estén disponibles (esta lista describe la ubicación del bien, el precio solicitado y la información de la superficie) El cliente examina las listas y elimina lo que no le interesa. Si quedan cosas de su interés entonces se le dirige al servicio de visitas. Para cada bien que le interesa al cliente, se le proporcionan más amplios detalles, mientras otro empleado busca fotografías del bien. Gracias a los detalles extras y las fotos, el cliente puede tener una opinión más amplia del bien. El empleado registra si el cliente esta o no de acuerdo y procede a la visita física del inmueble.
  • 41. 1-41 @Juan__Gonzalez 1. Concepto de tarea • Ejercicio – Identifica y lista las tareas Cuando un cliente llega a la agencia inmobiliaria, ingresa su solicitud a la secretaria de solicitudes. Indica el tipo de bien que desea renta o comprar, sus restricciones de presupuesto así como las principales características de los bienes que le podrían interesar. El empleado registra su solicitud, es decir, asocia el perfil del cliente con las variable estándar de comprar de bienes, en caso de ser nuevo cliente se da de alta su perfil en el sistema. La conclusión del registro de una solicitud lanza de manera automática, para cada variante del perfil del cliente, la impresión de bienes que pudieran ser de su interés y que aún estén disponibles (esta lista describe la ubicación del bien, el precio solicitado y la información de la superficie) El cliente examina las listas y elimina lo que no le interesa. Si quedan cosas de su interés entonces se le dirige al servicio de visitas. Para cada bien que le interesa al cliente, se le proporcionan más amplios detalles, mientras otro empleado busca fotografías del bien. Gracias a los detalles extras y las fotos, el cliente puede tener una opinión más amplia del bien. El empleado registra si el cliente esta o no de acuerdo y procede a la visita física del inmueble.
  • 44. 1-44 @Juan__Gonzalez Organizando workflows • Cada caso involucra un proceso – Un proceso consiste de • Una serie de tareas que requieren ser ejecutadas • Un conjunto de condiciones que determinan el orden de las tareas • Es igual a un procedimiento – Una tarea es la unidad logica de trabajo que es ejecutada individualmente por un recurso • Ejecución <> responsabilidad – Orden de tareas = diagrama de procesos = n predecesores, 1 sucesor = 1 predecesor, n sucesores
  • 45. 1-45 @Juan__Gonzalez Organizando workflows • Una tarea en una proceso representa tareas de alto nivel las cuales pueden ser detalladas usando modelos de tareas – Un modelo de tareas es asociado • Un proceso es ejecutado por cada caso – La ejecución de una tarea por un recurso es llamado actividad • Varios casos podrían usar el mismo proceso pero cada caso seguirá su propia ruta – Depende de los atributos del caso
  • 46. 1-46 @Juan__Gonzalez Definición de proceso • La definición de un proceso especifica que pasos son requeridos y en que orden deben ser ejecutados. – (enrutamiento, definición, procedimiento, workflow script) – (orden de compra, declaración de impuestos, proceso de reclamación de seguro) • La definición de un procesos consiste de: – Tareas (paso, actividad, elemento del proceso) – Una tarea es de alto nivel y puede descomponerse en subtareas. – Condiciones (estado, fase, requirimiento) – Una condición es usada para determinar las tareas que esán disponibles.
  • 47. 1-47 @Juan__Gonzalez Caso • Un caso es la ‘cosa' que requiere ser procesada siguiendo la definición del proceso. – (instancia de un proceso, job, projecto) – (reclamo de seguro, orden de compra, queja, aplicación de prestamo) • El estado de un caso esta determinado por: – Variables del caso (parámetros del caso) – Los atributos lógicos del caso que son usados para direccionar el caso. – Condiciones – Los requerimientos que son satisfechos. • Datos de la aplicación están fuera del modelado de procesos.
  • 48. 1-48 @Juan__Gonzalez Modelando Procesos place transition arc •La notación esta inspirada en las redes de Petri •Definido por Carl Adam Petri en los años sesenta •Teoría formal para el modelado de concurrencia (varias actividades, varias personas, juntos o separados) •Grafo bipartito formado por los lugares/places (representados por círculos) y transiciones (representadas por las barras o cajas)
  • 50. 1-50 @Juan__Gonzalez Red de Petri de un proceso de reclamación de intervención de aseguradora de autos Obtener cotización Reparar auto Comprar auto nuevo Manejar cuenta preliminares de reclamación de seguros Presentar reclamación Final de seguro Nota: Tareas de alto nivel
  • 51. 1-51 @Juan__Gonzalez Habilitando las transiciones • Las transiciones cambian los estados de la red al ser ejecutadas. • Solo las transiciones habilitadas pueden ser ejecutadas. • Informalmente, una transición esta habilitada si todos los estados reueridos para su ejecución contienen al menos un token.
  • 52. 1-52 @Juan__Gonzalez Ejecución de una transición: Ejemplo Antes
  • 53. 1-53 @Juan__Gonzalez Ejecución de una transición: Ejemplo Antes
  • 54. 1-54 @Juan__Gonzalez Ejecución de una transición: Ejemplo Antes Después
  • 55. 1-55 @Juan__Gonzalez Ejecución de una transición: Ejemplos
  • 56. 1-56 @Juan__Gonzalez Ejemplo concreto Deposito de dulces rellenar Entregar dulce Listo para deposito de moneda Insertar moneda Retener moneda Rechazar moneda Listo a entregar Aceptar moneda Solicitar relleno
  • 57. 1-57 @Juan__Gonzalez Ejemplo concreto Deposito de dulces rellenar Entregar dulce Listo para deposito de moneda Insertar moneda Retener moneda Rechazar moneda Listo a entregar Aceptar moneda Solicitar relleno Única transición disponible
  • 58. 1-58 @Juan__Gonzalez Ejemplo concreto Deposito de dulces rellenar Entregar dulce Listo para deposito de moneda Insertar moneda Retener moneda Rechazar moneda Listo a entregar Aceptar moneda Solicitar relleno Transiciones disponibles
  • 59. 1-59 @Juan__Gonzalez Ejemplo concreto Deposito de dulces rellenar Entregar dulce Listo para deposito de moneda Insertar moneda Retener moneda Rechazar moneda Listo a entregar Aceptar moneda Solicitar relleno Rechazar la moneda me regresa al estado inicial
  • 60. 1-60 @Juan__Gonzalez Ejemplo concreto Deposito de dulces rellenar Entregar dulce Listo para deposito de moneda Insertar moneda Retener moneda Rechazar moneda Listo a entregar Aceptar moneda Solicitar relleno Aceptar la moneda
  • 61. 1-61 @Juan__Gonzalez Ejemplo concreto Deposito de dulces rellenar Entregar dulce Listo para deposito de moneda Insertar moneda Retener moneda Rechazar moneda Listo a entregar Aceptar moneda Solicitar relleno Listo para entregar dulce
  • 62. 1-62 @Juan__Gonzalez Ejemplo concreto Deposito de dulces rellenar Entregar dulce Listo para deposito de moneda Insertar moneda Retener moneda Rechazar moneda Listo a entregar Aceptar moneda Solicitar relleno Listo para recibir moneda Listo para rellenar maquina
  • 63. 1-63 @Juan__Gonzalez Ejemplo concreto Deposito de dulces rellenar Entregar dulce Listo para deposito de moneda Insertar moneda Retener moneda Rechazar moneda Listo a entregar Aceptar moneda Solicitar relleno Listo para recibir moneda No necesariamente se abastase inmediatamente
  • 64. 1-64 @Juan__Gonzalez Otro ejemplo de red de Petri: Elevador 1 número de tokens representa el número de movimientos verticales que puede hacer evador hacia arriba o abajo en cualquier estado del sistema nimation by Wil van der Aalst, Vincent Almering and Herman Wijbenga
  • 65. 1-65 @Juan__Gonzalez El token representa el elevador y sus posibles estados estan representados por lo pisosP1 a P4 y las transiciones A1 a A6 el ascenso o descenso del elevador Animation by Wil van der Aalst, Vincent Almering and Herman Wijbenga Otro ejemplo de red de Petri: Elevador 2
  • 66. 1-66 @Juan__Gonzalez El token representa la persona que usa al elevador y sus tareas denotadas de A1 a A4 Animation by Wil van der Aalst, Vincent Almering and Herman Wijbenga Otro ejemplo de red de Petri: Elevador 3
  • 67. 1-67 @Juan__Gonzalez Ejercicio de modelado • ¿Qué aprendimos de los ejemplos anteriores? – La perspectiva y el objeto en estudio hace que el modelado de procesos sea diferente • Ejercicio – Modelar la red de Petri necesaria para controlar los semáforos de un cruce simple, es decir, si el semáforo1 tiene luz roja ponerle luz roja al semáforo 2. • Modela primero un semáforo • Después busca el estado común que relaciona los dos semáforos
  • 68. 1-68 @Juan__Gonzalez Animation by Wil van der Aalst, Vincent Almering and Herman Wijbenga Solución al problema de tráfico de semáforo
  • 69. © 2011 BUAP 69 Catalogo de Patrones Patrones de Control Primario • Sequence  
  • 70. © 2011 BUAP 70 Catalogo de Patrones Patrones de Control Primario • And-Split – ejecuta actividades en paralelo • Ejemplos • Después de la terminación de la tarea de captura de la matrícula, ejecutar crear el perfil de los estudiantes y enviar confirmación de inscripción al mismo tiempo. • Cuando una alarma de intrusión se recibe, active la tarea alertar guardia e informar inmediatamente a la policía. Una vez el cliente haya pagado por los bienes, empaquetarlos y emitir un recibo.
  • 71. © 2011 BUAP 71 Catalogo de Patrones Patrones de Control Primario • And-Join – sincronizar dos hilos paralelos de ejecución • Ejemplos • La tarea de despacho de bienes se ejecuta inmediatamente después de que tanto la verificar factura y producir recibo son completadas. • La declaración de efectivo en el cajón sólo puede ocurrir cuando la tienda ha sido cerrada y el resumen de tarjeta de crédito ha sido impreso.
  • 72. © 2011 BUAP 72 Catalogo de Patrones Patrones de Control Primario • XOR-Split – seleccionar una ejecución de muchas alternativas • Ejemplos • Dependiendo del volumen de tierra para ser trasladados, se envía la petición de la retroexcavadora, el bobcat o la excavadora-D9 para completar el trabajo. Después de la tarea revisión de elección se haya completado, o bien declaran los resultados o la tarea de recuento de votos se realiza.
  • 73. © 2011 BUAP 73 Catalogo de Patrones Patrones de Control Primario • XOR-Join – une dos alternativas de ejecución • Ejemplos • A la conclusión de la excavación de la excavadora bobcat o la d9, la tarea de estimación de cantidad de tierra excavada es realizada para solicitar pago. • Después de hacer el pago u otorgar creditos, se inicia la tarea de hacer recibo del producto.
  • 74. © 2011 BUAP 74 Catalogo de Patrones • Or-Split – seleccione muchos caminos de ejecución de entre muchas opciones • Ejemplos • Dependiendo de la naturaleza de la llamada de emergencia, una o más tareas de envío es efectuada: enviar policía, enviar carro de bomberos y enviar ambulancia.
  • 75. © 2011 BUAP 75 Catalogo de Patrones Patrones de Conexión y Sincronización Avanzados • Or-Join – La unión de dos o más líneas de ejecución (que divergieron previamente en un punto especifico) y se unen en una única línea de consecución. • La Unión sincronizada estructurada ocurre en un contexto estructurado, es decir debe existir un or-split antes en el modelo de procesos.
  • 76. © 2011 BUAP 76 Catalogo de Patrones Patrones de Conexión y Sincronización Avanzados • Or-Join • Ejemplos • Dependiendo la naturaleza de la llamada una o más tareas de envío es efectuada: enviar policía, enviar carro de bomberos y enviar ambulancia. Cuando todos los vehículos de emergencia lleguen al lugar del accidente, la tarea transferir-paciente comienza.
  • 77. © 2011 BUAP 77 YAWL Herramienta para modelado de procesos
  • 78. © 2011 BUAP 78 YAWL notación Composite task Multiple Instance task
  • 79. © 2011 BUAP 79 Ejemplo general de Yawl
  • 80. © 2011 BUAP 80 Ejemplo general de Yawl
  • 81. © 2011 BUAP 81 Ejemplo general de Yawl
  • 82. © 2011 BUAP 82 Ejemplo General YAWL
  • 83. © 2011 BUAP 83 Actividad • Una agencia de viajes ejecuta varias tareas. Primero el cliente es registrado. Después, el empleado busca oportunidades que son comunicadas al cliente. Después el cliente es contactado para determinar si sigue interesado o no en el viaje ysi quiere otras opciones. Hay 3 posibilidades: 1) el cliente no esta interesado, 2) quiere ver mas alternativas, 3) el cliente selecciona una oportunidad. • Si el cliente selecciona un viaje, el viaje es reservado. En paralelo, uno o dos tipos de seguros (seguro de cancelación, perdida de equipaje) se preparan si es del deseo del cliente, puede ser que ninguno. Dos semanas antes del inicio del viaje los documentos son enviados al cliente. Un viaje puede ser cancelado en cualquier momento después de hacer la reservación y antes de que inicie el viaje. Notar que los que no tengan seguro no seran reembolsados.
  • 84. © 2011 BUAP 84 Ejercicio
  • 85. Asignación y aceptación del trabajo En el trabajo siempre estas bajo las ordenes de otras personas Jefe Cliente siempre tiene la razón Guían nuestro trabajo Las ordenes del jefe a su personal Directas. Cuando el producto realizado es directamente dirigido al cliente, procesos primarios Indirectas. Cuando el trabajo involucra mantenimiento o mejora de los procesos de producción, procesos secundarios y terciarios
  • 86. Asignación y aceptación del trabajo Los organigramas en una empresa sirven para definir el orden en que una tarea es asignada de una persona a otra. Los actores que intervienen en este proceso son: La persona que asigna la tarea es conocido como director; mientras que la persona a la que se le asigna una tarea es un contratista. Puede ser una persona o una empresa
  • 87. Asignación y aceptación del trabajo Para tener éxito es importante: Tener bien claro quién es nuestro cliente Un empleado trabaja mejor si sabe quien es su cliente Ayuda a la certidumbre sobre el potencial de lo que hace Para toda relación entre director y contratista existe una relación de trabajo o un contrato, a veces no escrito, donde se establecen las condiciones del producto (caso) a desarrollarse: Tiempo de elaboración Costo
  • 88. Asignación directa La capacidad de especificar directamente en tiempo de diseño la identidad de el recurso que va a ejecutar una tarea.
  • 89. Asignación basada en el rol La capacidad de especificar en tiempo de diseño que una tarea sólo puede ser ejecutada con los recursos que desempeñan una función (rol) determinada.
  • 90. Asignación diferida La posibilidad de aplazar la especificación de la identidad del recurso que ejecuta una tarea hasta el tiempo de ejecución.
  • 91. Asignación Aleatoria La habilidad de ofrecer or asignar trabajos to suitable recursos on a random basis.  Ejemplo: The Judge case trabajo is asignard to a Magistrate on a random basis.
  • 92. Asignación Round Robin  La habilidad de asignar un trabajo a recursos disponible usando ciclos  Ejemplo: Trabajos de revisión de artículos son asignados a los Referee usando un ciclo.
  • 93. Cola más corta La habilidad de asignar un trabajo al recurso que tiene el menor número de trabajo asignado a él. Tiene como objetivo acelerar el rendimiento
  • 95. Escalada  La habilidad de un sistema de workflow para ofrecer o asignar un trabajo a un recurso o grupo de recursos diferente a aquel al que se había escogido previamente vía asignación u oferta. Con el objetivo de lograr la ejecución del trabajo, generalmente por que se ha llegado a una fecha límite.
  • 96. Desasignación  La habilidad of a recurso (o grupo de recursos) a renunciar al trabajo que es asignado a él y hacerlo disponible para la asignación a otro recurso o grupo de recursos.
  • 97. Reasignación con estado La habilidad de un recurso a asignar un trabajo a otro recurso sin perdida del valor de los datos y el estado de avance de la tareas.
  • 98. Reasignación sin estado  La habilidad de un recurso de reasignar un trabajo que estaba ejecutando a otro recurso sin mantener el estado de la tarea.
  • 99. Suspensión / Resumen  La habilidad para un recurso para suspender y resumir la ejecución de un trabajo.
  • 100. Saltar La habilidad para un recurso de saltar un trabajo asignado y marcarlo como realizado.
  • 102. 1-102 Desarrollo de sistemas de Información
  • 108. © 2011 BUAP 108 108 November 9-11, 2009 - Mérida, Mexico CLIHC’09 • Tasks in the process are detailed using task models Ejercicio 6. Task Modeling
  • 109. © 2011 BUAP 109 109 November 9-11, 2009 - Mérida, Mexico CLIHC’09 • Attributes identified for the tasks Task Task Type Task Item User category Facet Insert Name Create Element Interactive Input Insert Zip Code Create Element Interactive Input Select Age category Select Element Interactive Input Select Gender Select Element Interactive Input Ejercicio
  • 110. © 2011 BUAP 110 Ejemplo 110 November 9-11, 2009 - Mérida, Mexico CLIHC’09 User Interface Action Types Facet Specification Information to take into account Possible Abstract Interaction Component “create name” and “create zip Code” Create attribute value Data type, domain characteristics A text output with a text input associated to it “select gender and select age Category” Select attribute value + selection values known Data type, domain characteristics, selection values A dropdown list, a group of radio buttons textual or characters.
  • 111. 1-111 Example of MDE of Uis in UsiXML Total graphical VS predominant graphical ITEA UsiXML project #08026, 2009-2012
  • 112. 1-112 Example of MDE of Uis in UsiXML Predominant vocal VS total vocal ITEA UsiXML project #08026, 2009-2012
  • 113. 1-113 CUI rendering in VUItoolkit
  • 114. 1-114 X3D generated from Alice • It’s a real 3D UI!
  • 115. 1-115 FUI included in virtual scene
  • 116. © 2011 BUAP 116 User Interface Flow
  • 117. © 2011 BUAP 117 User Interface Flow
  • 118. © 2011 BUAP 118 Runtime Monitoring
  • 123. 1-123 For more information and downloading, http://www.lilab.eu User Interface eXtensible Markup Language http://www.usixml.org http://www.usixml.eu Register as a member of the UsiXML End-User Club at http://www.usixml.eu/end_user_club Thank you very much for your attention! Contact in Mexico Dra. Josefina Guerrero-García jguerrero@cs.buap.mx Dr. Juan Manuel González-Calleros juan.gonzalez@cs.buap.mx @Juan__Gonzalez

Notas del editor

  1. Définition Traitement possédant une unité spatio-temporelle d’exécution, dans une cellule organisationnelle utilisant le même ensemble de ressources Critères d’identification dus à l’unité spatiale (inter/manuelle/auto/méca) changement de lieu poste de travail autre endroit (siège/agence) parcours changement de ressources Personne: +courtier, -expert Matériel: +Pocket PC, - terminal Information: client -&amp;gt; produit
  2. dus à l’unité temporelle existence d’une interruption existence d’un point d’attente De type décision : si ligne correcte De type accumulation : pour chaque permanence de l’unité d’exécution périodicité de l’exécution
  3. Exemple : « Traitement-commandes-clients » 1. Préparation bon de commande Tâche manuelle Décacheter les enveloppes, contrôler que les bons de commande sont signés et contiennent les informations indispensables à l’identification des clients 2. Enregistrement d’une commande Tâche interactive Les opérateurs d’enregistrement procèdent, via des terminaux, à l’identification du client, au contrôle des lignes de la commande et à l ’enregistrement de la commande et de ses lignes correctes
  4. Exemple : « Traitement-commandes-clients » 2. Enregistrement d’une commande 3. Préparation d’une réquisition Tâche automatique/automatisable Mise à jour du stock des produits relatifs à une commande enregistrée. La partie livrable donne lieu à un bon de réquisition, le reste est mémorisé et donnera lieu à une ou plusieurs livraisons différées 4. Préparation d’une série Tâche automatique/automatisable Lorsque n bons de réquisition ont été émis, on procède à la préparation d’une série par un calcul d’ordonnancement qui optimise le parcours du magasinier
  5. 4. Preparation of a series 5. Exécution d’une réquisition Tâche manuelle Parcours du magasinier pour prélever les produits 6. Constitution du colis Tâche interactive Au terme du parcours par le magasinier, les opérateurs d’emballage constituent les colis grâce aux bons de réquisition qu’ils affichent au terminal ; on déclenche ensuite l’impression locale de la facture et des documents d’expédition