Modelado de Sistemas Interactivos con FlowiXMLGonzalez mini curso-flowixml
-
Upload
juan-glez-calleros -
Category
Documents
-
view
58 -
download
2
Transcript of Modelado de Sistemas Interactivos con FlowiXMLGonzalez mini curso-flowixml
Modelado de Sistemas Interactivos con FlowiXML
Dr. Juan Manuel González Calleros
Facultad de Ciencias de la ComputaciónBenemérita Universidad Autónoma de PueblaCiudad UniversitariaAv. San Claudio y 14 sur, Edificio 136ªPuebla, México.
Email: [email protected] 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 TAREADonde 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
Taskcreated
Taskoffered
Taskallocated
Taskdelegated
Taskstarted
Tasksuspended
Taskcancelled
Taskfailed
Taskcompleted
Taskfinished
define
offerstart
start
startallocate
delegatereturn
cancel fail
suspendresume
run, redo
undo, repeat
finish
reviewTask
created
Taskoffered
Taskallocated
Taskdelegated
Taskstarted
Tasksuspended
Taskcancelled
Taskfailed
Taskcompleted
Taskfinished
define
offerstart
start
startallocate
delegatereturn
cancel fail
suspendresume
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 trabajootro lugar (oficina general / sucursal)
• Cambio de recursoPersona: + experto en finanzasHardware: Pocket PC +, - terminalInformación: Cliente -> Producto
• Cambio de unidad temporal– Existencia de una interrupción
existencia de un punto de esperaTipo 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 deperiodicidad
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 deperiodicidad
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 Naturaleza1 Hacer un
expediente_ Ccrear un expediente
Len la sucuralManual
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
12
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
El número de tokens representa el número de movimientos verticales que puede hacer un elevador hacia arriba o abajo en cualquier estado del sistemaAnimation 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 lospisosP1 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 A4Animation 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 PatronesPatrones de Control Primario• Sequence
2011 BUAP 70
Catalogo de PatronesPatrones 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 PatronesPatrones 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 PatronesPatrones 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 PatronesPatrones 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 PatronesPatrones 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 exist ir un or-spl it antes en el modelo de procesos.
2011 BUAP 76
Catalogo de PatronesPatrones 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
YAWLHerramienta 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 trabajoEn el trabajo siempre estas bajo las ordenes de otras personas
Jefe Cliente
siempre tiene la razónGuían nuestro trabajo
Las ordenes del jefe a su personalDirectas. Cuando el producto realizado es directamente
dirigido al cliente, procesos primariosIndirectas. Cuando el trabajo involucra mantenimiento o
mejora de los procesos de producción, procesos secundarios y terciarios
Asignación y aceptación del trabajoLos 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 trabajoPara tener éxito es importante:
Tener bien claro quién es nuestro clienteUn empleado trabaja mejor si sabe quien es su clienteAyuda 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ónCosto
Asignación directaLa 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 rolLa 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 diferidaLa 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 cortaLa 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 estadoLa 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 108108 November 9-11, 2009 - Mérida, Mexico CLIHC’09
• Tasks in the process are detailed using task models
Ejercicio6. Task Modeling
2011 BUAP 109109 November 9-11, 2009 - Mérida, Mexico CLIHC’09
• Attributes identified for the tasksTask Task
TypeTask Item User
categoryFacet
Insert Name Create Element Interactive InputInsert Zip Code Create Element Interactive InputSelect Age category Select Element Interactive InputSelect 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 UsiXMLTotal 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 Languagehttp://www.usixml.orghttp://www.usixml.euRegister 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 [email protected]
Dr. Juan Manuel González-Calleros [email protected] @Juan__Gonzalez