include "../../cabecera.php" ?>
En esta etapa se aumenta el nivel de detalle en la especificación determinando cómo se llevan a cabo los casos de uso identificados. Los resultados se centran en refinar los flujos de trabajo y las tareas asociadas, las interacciones, cómo es el control del agente y cómo se satisfacen los objetivos del sistema.
Al detallar las interacciones y los flujos de trabajo, es normal que aparezcan nuevas tareas. Idealmente, con estas tareas se deberían estudiar en otra iteración dentro de la etapa de análisis-elaboración. En esta ocasión, este estudio se omite.
En esta etapa, la documentación es extensa, por ello se ha preferido mostrar sólo aquellos aspectos más relevantes y dejar el resto para la consulta de los lectores en una página web. Así, la documentación completa se puede consultar en http://grasia.fdi.ucm.es/metodologia.
Los modelos de organizaciones se refinan asociando tareas a los flujos de trabajo, actividad identificar tareas (5.a ). Estas tareas se obtienen de modelos de objetivos y tareas y de las interacciones esquematizadas en el análisis. Las tareas se conectan entre sí uniendo aquellas que produzcan entidades con aquellas que las consuman, actividad conectar tareas (5.b ). Se describen también qué recursos se consumen, actividad recursos en las tareas (5.e ), detallando qué tareas implican la ejecución de otras tareas en otros agentes, identificar tareas no locales (5.c ), y quién se encarga de ejecutarlas, identificar responsables (5.d ). Las instancias WFConecta se complementan con la información elaborada por la actividad identificar entidades mentales (5.f ), que produce los elementos intercambiados dentro de los flujos de trabajo.
|
Actividad |
Tipo de resultado |
Referencia |
|
identificar tareas (5.a ). |
Un conjunto de tareas asociadas a un flujo de trabajo |
Ilustración 123 Ilustración 131 Ilustración 137 Ilustración 144 Ilustración 150 Ilustración 154 |
|
conectar tareas (5.b
). |
Instancias de WFConecta |
Ilustración 124 Ilustración 132 Ilustración 138 Ilustración 145 Ilustración 151 Ilustración 154 |
|
identificar tareas no locales (5.c
), |
Tareas que producen interacciones |
Hecho en análisis-elaboración |
|
identificar responsables (5.d
) |
Instancias de WFResponsable asociando roles o agentes y tareas |
Ilustración 149 Ilustración 143 Ilustración 136 Ilustración 130 |
|
identificar entidades mentales (
5.f
), |
Asociaciones de las tareas con entidades mentales mediante instancias de WFProduce y WFConsume. |
Ilustración 125 Ilustración 133 Ilustración 139 Ilustración 146 Ilustración 152 Ilustración 155 |
Los modelos de interacción se relacionan con los flujos de trabajo a través de las entidades interacción. Estas entidades especifican la ejecución de tareas no locales tomando como guía los diagramas de colaboración existentes. La especificación se presenta con un conjunto de diagramas GRASIA. Estos diagramas parten de los diagramas de colaboración de la etapa anterior. La conversión se inicia traduciendo pasos de mensajes a unidades de interacción, actividad traducir mensajes ( 5.a ). En las unidades de interacción se explica por qué un agente decide mandar el mensaje,actividad establecer condiciones mentales 5.c , y qué tareas se ejecutan al enviar o recibire el mensaje, actividad asociar tareas (5.b ). Por último, se organizan las unidades de interacción en un diagrama de flujo para explicar en qué orden se ejecutan, actividad establecer orden de ejecución (5.d ).
|
Actividad |
Tipo de resultado |
Referencia |
|
traducir mensajes ( 5.a ) |
Diagramas GRASIA donde se asocian roles con unidades de interacción |
Ilustración 128 Ilustración 135 Ilustración 141 Ilustración 148 Ilustración 153 Ilustración 156 |
|
establecer orden de ejecución (5.d
). |
Relacionar las unidades de interacción mediante primitivas UIPrecede, UIBifurca, UIItera, UIConcurren |
|
|
establecer condiciones mentales 5.c
|
Instancias de patrón de estado mental asociado
a unidades de interacción |
Ver especificación completa en http://grasia.fdi.ucm.es/metodologia |
|
asociar tareas (
5.b
) |
Asociar tareas a instancias de unidad de interacción |
Hecho en análisis-elaboración |
Los modelos de agente no se modifican en este caso, aunque sí que se detalla cómo se espera que sea su control. Se estudian los estados mentales extraídos de las interacciones y los requeridos por los flujos de trabajo, actividad detallar los estados intermedios (6 ). Obtenidos estos estados mentales, hay que estudiar cómo se pasa de uno a otro, actividad determinar cómo se pasa de un estado mental a otro ( 7.a ), y detallar cómo decide el agente qué tarea ejecutar a continuación ( 7.c ).
|
Actividad |
Tipo de resultado |
Referencia |
|
Determinar cómo se pasa de un estado mental a otro ( 7.a ). |
Referencias a diagramas GRASIA y a modelos de tareas y objetivos |
Ver especificación completa en http://grasia.fdi.ucm.es/metodologia |
|
Detallar los estados intermedios (6
) |
Instancias de modelos de agente donde se asocia una instancia de agente concreto a instancias de estado mental |
Ver especificación completa en http://grasia.fdi.ucm.es/metodologia |
|
Detallar cómo se gestiona el estado mental (7.b ) |
Instancias de modelos de tareas y objetivos donden las tareas producen, destruyen o modifican objetivos |
Ilustración 162 Ver especificación completa en http://grasia.fdi.ucm.es/metodologia |
|
Asociar los estados mentales a la ejecución de acciones ( 7.c ). |
Instancias de modelos de tareas y objetivos donden las tareas producen, destruyen o modifican objetivos |
Ver especificación completa en http://grasia.fdi.ucm.es/metodologia |
Los modelos de entorno se refinan atendiendo al tipo de percepción de los agentes y detallando cuales son los parámetros de los recursos. Los recursos se asocian con tareas cuando sea necesario indicar necesidades relevantes, como tareas que consumen mucho tiempo de procesador. Aquí se utilizan principalmente para refinar la percepción de los agentes, actividad refinar la percepción de los agentes (9 ). Para determinar los parámetros adecuados de los recursos, actividad definir los atributos propios de cada recurso (11 ), conviene conocer antes qué necesidades se tienen. Para clarificar esta visión es apropiado aplicar la actividad asociar recursos, aplicaciones y tareas (12 ), a partir de lo cual será más sencillo determinar exactamente qué se necesita.
|
Actividad |
Tipo de resultado |
Referencia |
|
refinar la percepción de los agentes ( 9 ). |
Instancias de EPercibeNotifica y EPercibeMuestreo asociando agentes y aplicaciones |
Ilustración 163 Ver especificación completa en http://grasia.fdi.ucm.es/metodologia |
|
definir los atributos propios de cada recurso (11
) |
Instancias de modelos de agente donde se asocia una instancia de agente concreto a instancias de estado mental |
Ver especificación completa en http://grasia.fdi.ucm.es/metodologia |
|
asociar recursos, aplicaciones y tareas (12 ) |
Instancias de modelos de tareas y objetivos donden las tareas producen, destruyen o modifican objetivos |
Ver especificación completa en http://grasia.fdi.ucm.es/metodologia |
Los objetivos y tareas se estudian para indicar exactamente cómo se resuelven los objetivos y cómo se ejecutan las tareas. Para las tareas se describen las postcondiciones y precondiciones del análisis con detalle. Así, se indican qué recursos se consumen, actividad determinar recursos a consumir (8.b ), cuáles se restablecen, actividad indicar qué recursos se restablecen ( 7.a ), qué ocurre con las entidades mentales requeridas, actividad asociar tareas con entidades mentales (7.b ), si se necesitan nuevas entidades mentales, actividad refinar entidades mentales consumidas (8.a ), qué operaciones se están invocando sobre las aplicaciones, actividad asociar tareas con operaciones de las aplicaciones (7.c ). Los objetivos, por otro lado, se refinan indicando qué dependencias existen, actividad refinar dependencias de objetivos (10.a ), y cómo se satisfacen o fracasan, refinar satisfacción/fracaso de objetivos (10.b ).
|
Actividad |
Tipo de resultado |
Referencia |
|
determinar recursos a consumir (8.b ) |
Instancias de WFUsa asociando tareas y recursos |
Ilustración 157 Ver especificación completa en http://grasia.fdi.ucm.es/metodologia |
|
indicar qué recursos se restablecen (7.a
) |
Instancias de WFProduce asociando tareas y recursos |
|
|
asociar tareas con entidades mentales (
7.b
) |
Instancias de GTSatisface y GTFalla. |
|
|
refinar entidades
mentales consumidas (
8.a
) |
Instancias de WFConsume |
|
|
asociar tareas con operaciones de las aplicaciones
(7.c
) |
Instancias de WFUsaLlamada |
|
|
refinar dependencias de objetivos (10.a
) |
Determinar dependencias Y/O ente objetivos |
Ilustración 160 Ilustración 161 |
|
refinar satisfacción/fracaso de objetivos (10.b
) |
Instancias de GTFallaObjetivo o GTSatisfaceObjetivo asociando objetivos y tareas. |
Ilustración 157 Ilustración 159 Ilustración 158 |
La gestión de comunidades se ha descompuesto en una serie de tareas atómicas que implementan primitivas de gestión (tareas basicas de gestion), y en dos flujos de trabajo destinados a la tramitación de altas (altas en comunidad) y bajas en la comunidad ( bajas en comunidad).

Ilustración
123.
Tareas
que componen el flujo de trabajo altas en la comunidad
La identificación de tareas para el flujo altas en la comunidad (Ilustración 123 ) se basa en el diagrama de colaboración de la Ilustración 104 . El número final se debe a refinamientos con motivo de la definición de diagramas GRASIA que se mostrarán más tarde. La ordenación de estas tareas se muestra en la Ilustración 124 .

Ilustración 124. Dependencias entre las tareas del flujo altas en comunidad.
La tarea inicial (Ilustración
124
) es la de solicitar la incorporación a la comunidad (solicitar
incorporación). Esta petición es procesada por procesar petición
suscripción, que puede continuarse con una evaluación de la idoneidad del
nuevo miembro (enviar petición envaluacion suscripción) o con la
agregación directa (agregar nuevo miembro), en el caso en que no haya
otros usuarios registrados. Los evaluadores de la suscripción estudian la
petición ejecutando procesar evaluación suscripción y devuelven la
respuesta con enviar respuesta evaluación. Esta respuesta es procesada
con procesa evaluaciones suscripción que terminará con la agregación de un nuevo miembro o no. De cualquier forma, la respuesta se
envía con enviar respuesta solicitud suscripción que será procesada
por el solicitante con procesar respuesta alta.

Ilustración 125.
Descripción detallada del flujo solicitar alta en comunidad
La Ilustración 125 describe las entidades mentales intercambiadas en el flujo de trabajo solicitar alta en comunidad. Como en el flujo de trabajo evaluar documento, existen tareas cuya ejecución no dispara la ejecución de otras tareas. En este caso se trata de la tarea agregar nuevo miembro.
Las ejecución de las tareas del flujo dar alta en comunidad se definen dentro de un diagrama GRASIA asociado a la interacción solicitar alta en comunidad.

Ilustración 126. Relación de las tareas del flujo dar alta en comunidad con la interacción solicitar alta en comunidad
Para especificar esta ejecución se añade una nueva especificación de interacción a solicitar alta en comunidad. El tipo de la nueva especificación es un diagrama GRASIA (Ilustración 127 )

Ilustración 127. Refinamiento del modelo de interacción de solicitar alta en comunidad.
La Ilustración 127 muestra el modelo de interacción para solicitar alta en comunidad en el que se ha añadido una nueva especificación de tipo GRASIA.

Ilustración 128. Unidades de interacción identificadas para la interacción solicitar alta en comunidad.
Las unidades de interacción de la Ilustración 128 se obtienen a partir del diagrama de colaboración de la Ilustración 104 . Se ha intentado asimilar cada unidad de interacción con un paso de mensaje y cada tarea con las acciones esperadas por el emisor y el receptor.

Ilustración 129. Ordenación de las unidades de interacción en solicitar alta en comunidad
Estas unidades de interacción se ordenan según indica la Ilustración 129 . Respecto del flujo de trabajo inicial, sólo queda detallar quién es responsable de ejecutar la tarea, pero a partir de la ilustración anterior, es sencillo.

Ilustración
130.
Responsables
de la ejecución de tareas en el flujo dar alta en comunidad
La Ilustración 130 muestra la asociación de roles con tareas según lo indicado en la Ilustración 128 .

Ilustración
131.
Tareas
que componen el flujo de trabajo bajas en comunidad
Las bajas en la comunidad se rigen por el conjunto de tareas de la Ilustración 131 . De estas tareas, llama la atención dar de baja sesiones. Esta tarea se ha incluido para dar una solución al problema de qué hacer con las evaluaciones en que el usuario está participando cuando éste se da de baja. En principio, esta tarea elimina al usuario de cuanto proceso de evaluación existe y de cualquier difusión de sugerencias planificada.

Ilustración 132. Dependencias entre las tareas del flujo bajas en comunidad
La tarea inicial de la Ilustración 132 es la ejecutada por el solicitante de baja (solicitar baja). Esta tarea es la que origina la petición en el Agente de Comunidad que se procesa con procesa baja en comunidad. Estas tareas identifica las sugerencias que el usuario está pendiente de recibir y se las proporciona a dar baja sesiones. El paso siguiente es informar al solicitante que ha sido dado de baja (enviar baja en comunidad y procesar respuesta solicitud).

Ilustración 133. Descripción detallada del flujo dar de baja en comunidad
Las entidades mentales intercambiadas en el flujo de trabajo dar de baja en comunidad se presentan en la Ilustración 133 . La tarea dar baja sesiones se encargaría de asegurar que el usuario ha sido de baja en las sesiones de evaluación de documentos o usuarios. Una vez conseguido, procedería a dar de baja al usuario en el registro de miembros. Cuando estas operaciones concluyen, produce un hecho usuario desuscrito que, aparte de informar al usuario de la ejecución de la baja, sirve para indicar la finalización de otro flujo de trabajo, monitorizar acciones.

Ilustración 134. Relación de las tareas del flujo dar baja en comunidad con la interacción solicitar baja en comunidad
Las tareas de la Ilustración 132 se asocian con la interacción solicitar baja en comunidad en la Ilustración 134 . Asociada a esta interacción se ha incluido un nuevo diagrama GRASIA para especificar la ejecución de tareas.

Ilustración 135. Diagrama GRASIA asociado a la interacción solicitar baja en comunidad.
Como en el caso anterior, las unidades de interacción provienen de los pasos de mensaje dentro del diagrama de colaboración de Ilustración 107 (B).

Ilustración
136.
Responsables
de la ejecución de tareas en el flujo dar de baja en comunidad
Como resultado del diagrama de la Ilustración 135 se obtienen las asociaciones de responsabilidad de tareas con respecto a los roles. Estas relaciones se ofrecen en la Ilustración 136 .

Ilustración 137. Refinamiento del flujo de trabajo para la compartición de documentos
El refinamiento del flujo de trabajo compartir documentos se hace de acuerdo con el diagrama de colaboración de la Ilustración 105 . El planteamiento de este flujo de trabajo difiere de los anteriores en un detalle: existen flujos de trabajo dentro de un flujo de trabajo. Esta solución que podría haber sido aplicada a los otros flujos, se ha aplicado aquí para evaluar la importancia de la posibilidad de abstraer conjuntos de tareas e interacciones. En este caso, se trata de considerar el flujo evaluar documento como una unidad similar a la tarea, pero de orden superior, ya que la tarea no puede contener flujos de trabajo.

Ilustración
138.
Relaciones
entre las tareas del flujo de trabajo compartir documentos
Siguiendo este diagrama, primero el cliente ejecuta propagar sugerencia, en respuesta, la comunidad ejecuta tratar sugerencia. Esta tarea se descompone en el lanzamiento de las evaluaciones a realizar por los miembros de la comunidad (evaluar sugerencia), la evaluación de las respuestas (procesar preevaluaciones sugerencias), la difusión de la sugerencia a los otros miembros de la comunidad (difundir sugerencia), la recogida de las opiniones de los usuarios después de revisar el documento (procesar evaluaciones sugerencias) y la recepción de la respuesta por parte del usuario que sugirió el documento (revisar evaluaciones sugerencia).
Ilustración
139.
Descripción detallada del flujo de trabajo compartir documentos
La Ilustración
139
muestra cómo se ejecuta el flujo de trabajo de la Ilustración
138
. De esta ilustración se comentará sólo cómo se consigue integrar el
flujo de trabajo evaluar documento dentro del flujo compartir
documentos. Las tareas procesar sugerencia y difusión sugerencia
en curso producen un hecho, sugerencia recibida, que activa el flujo
de trabajo evaluar documento. Este flujo produce a su término o bien un
hecho evaluación positiva o bien evaluación negativa. Las
distintas evaluaciones se recogen mediante las tareas procesar preevaluación
sugerencia y procesar evaluación sugerencia. Cual de las dos debe
ser, se discierne por el hecho difusión sugerencia en curso, producido
por difundir sugerencia.

Ilustración 140. Relación de las tareas del flujo compartir documentos con la interacción propagar sugerencias
Las tareas de la Ilustración 138 se asocian con la interacción propagar sugerencias (ver Ilustración 140 ). A esta interacción se asocia un diagrama GRASIA para detallar la ejecución de tareas (Ilustración 141 ).
Ilustración 141. Diagrama GRASIA asociado a la interacción compartir documentos.
Dentro de este diagrama llama la atención que entre el Receptor de Sugerencias y el Evaluador de sugerencias no existen unidades de interacción, sino interacciones. Esto es consecuencia de haber definido el flujo de trabajo compartir documentos en términos del flujo evaluar documentos. Para iniciar esta interacción se ejecuta procesar sugerencia y para procesar los resultados, se ejecuta procesar preevaluación sugerencia, que no aparece en la ilustración porque su ejecución es posterior al término de la interacción. Otro elemento que destaca es que se implican N evaluadores en el proceso. Por cada evaluador habrá una instancia en ejecución de la interacción evaluar documento.

Ilustración 142. Ordenación de las unidades de interacción en la interacción propagar sugerencias
La ejecución de las unidades de interacción de la Ilustración 141 está sujeta a una bifurcación dependiendo de si la sugerencia encaja en los intereses de la comunidad o no (Ilustración 142 ). Si encaja, existe otra posible bifurcación dependiendo de si la evaluación de los usuarios ha sido positiva o negativa. De cualquier forma, la última unidad de interacción ejecutada será la de comunicación de resultados (comunicar resultados evaluación).

Ilustración 143. Responsables de la ejecución de tareas en el flujo compartir documentos
De la Ilustración 141 se obtienen los responsables de la ejecución de las tareas identificadas. Estos responsables se muestran en la Ilustración 143 .

Ilustración
144.
Tareas involucradas en el flujo de trabajo Evaluar
Documento
El flujo de trabajo evaluar documento consiste en enviar un documento a un usuario y hacer que éste lo evalúe. Para ahorrar trabajo al usuario, se han dispuesto tareas que permiten desarrollar la tarea de evaluación de forma semiautomática. La tarea cotejar documento con perfil usuario se encarga de hacer un análisis estadístico del documento entrante contra la colección de documentos que definen al usuario. Si este análisis no es determinante, se acude al usuario.

Ilustración 145. Relaciones entre las tareas del flujo Evaluar Documento
La primera tarea (Ilustración 145 ) es la que ejecuta la petición de evaluación (inicia evaluación documento). Ésta dispara el proceso de evaluación dentro del cual se ejecuta la evaluación semi-automática (evaluar) y después se envía la respuesta para que la reciba el iniciador (recibe respuesta evaluación).

Ilustración 146. Descripción detallada del flujo evaluar documento
La Ilustración
147
muestra las entidades mentales intercambiadas según las instancias de WFConecta
de la Ilustración
145
. Se puede apreciar que el flujo de trabajo parece descompuesto en dos,
la parte encargada de evaluar (tareas cotejar documento con perfil usuario
y solicitar opinion usuario) y la encargada del proceso de petición y
distribución de evaluaciones (el resto de tareas). El motivo es que la tarea evaluar,
iniciada a petición de otro agente, se descompone en tareas cuya ejecución es
local (no implica la ejecución de tareas en otros agentes). De hecho, estas
tareas locales no aparecen el diagrama GRASIA de la Ilustración
148
. El resultado devuelto por evaluar es un hecho resultado
evaluación que puede proceder o bien de cotejar documento con perfil
usuario o bien solicitar opinión al usuario.

Ilustración
147.
Asociación entre las tareas del flujo Evaluar
Documento y la interacción evaluar documento
La interacción que define la ejecución de las tareas del flujo evaluar documento recibe el mismo nombre, evaluar documento. Nótese que la tarea evaluar no se ejecuta a primera vista dentro de la interacción. La ejecución de la tarea de evaluación se dispara no porque haya una interacción, sino porque de repente hay que satisfacer el objetivo evaluar autónomamente, como se verá más adelante.

Ilustración
148.
Diagrama
GRASIA asociado a la interacción Evaluar Documento.
El diagrama GRASIA que especifica la interacción evaluar documento es uno de los más simples. Se trata de hacer una petición (evaluar sugerencia) y de esperar una respuesta (respuesta evaluación sugerencia).

Ilustración
149.
Responsables de la ejecución de las tareas del flujo Evaluar
Documento
Los responsables de la ejecución de tareas, como en los casos anteriores, se obtienen directamente de la especificación de diagrama GRASIA de la Ilustración 148 .

Ilustración 150. Tareas involucradas en el flujo de trabajo monitorizar acciones.
El refinamiento del flujo de trabajo monitorizar acciones se hace a partir del diagrama de colaboración de la Ilustración 110 . Consiste en definir un patrón observador [Gamma et al. 95] utilizando los elementos de esta notación. Este flujo de trabajo permite elaborar estadísticas de las acciones de los usuarios y así saber si están satisfechos o no con los resultados proporcionados por sus agentes.

Ilustración 151. Relaciones entre las tareas del flujo de trabajo monitorizar acciones.
El flujo comienza con solicitar_monitorización que elabora una petición para el colaborador con el objetivo de que le informe de cuantas acciones se realicen (aquí interesan en concreto los votos positivos y negativos emitidos por los usuarios). La tarea registrar_observador_acciones registra al solicitante para informarle de futuras acciones. Se admite que varias entidades soliciten ser informadas de las acciones de los usuarios. Cada acción realizada se registra con la tarea registrar_acción que utilizará el gestor de estadísticas para actualizar los datos de cada usuario. Cuando la monitorización se dé por terminada, el monitor ejecutará terminar monitorización, tras lo cual el agente observado tendrá que deregistrar al monitor con la tarea dar_baja_observador.
Como en el flujo evaluar documento (Ilustración 146 ), se tienen flujos separados de ejecución. En este caso existen tres componentes, primero la encargada de solicitar la monitorización (tareas solicitar monitorización y registrar observador acciones), por otro el registro de las acciones (tarea registrar acción) y para terminar la finalización de la monitorización (tareas terminar monitorización y dar baja observador). Esta vez, el motivo de la separación es que aunque existen dependencias (e.g. no se pueden recibir las acciones de los usuarios si no se ha registrado antes el observador) estas se refieren únicamente al instante de ejecución y para especificar el instante de ejecución se usan diagramas GRASIA. Por ello, no se han interconectado las tareas correspondientes.

Ilustración
152.
Descripción detallada del flujo de trabajo monitorizar acciones
Las entidades mentales intercambiadas en el proceso descrito en la Ilustración 151 se detallan en la Ilustración 152 . La obtención de acciones se realiza obligando a las tareas a monitorizar a producir evidencias adicionales. Tal es el caso del flujo evaluar documento que generará evidencias de tipo accion para que estas se registren en el observador. Nótese que este flujo no aparece dentro del diagrama GRASIA de la Ilustración 153 . Ello se debe a que este flujo se ha introducido unicamente por motivos de claridad, y no porque pertenezca realmente al flujo evaluar documento.

Ilustración 153. Diagrama GRASIA asociado a la interacción monitorizar usuario.
La especificación GRASIA de la interacción monitorizar usuarios (Ilustración 150 ) implementa un patrón observador. La unidad de interacción accion_ejecutada se repite hasta que el monitor decide que ya no necesita más información, esto es, hasta que se satisface el patrón de estado mental inicia deja de informar. Este patrón indica que debe existir un hecho usuario desuscrito para terminar la monitorización.

Ilustración 154. Tareas participantes en el flujo de trabajo echar_comunidad.
El flujo de trabajo echar de comunidad es el más simple de todos. Comienza cuando el gestor de suscripciones de la comunidad decide que un usuario no beneficia a la comunidad. Esta decisión se toma a partir de las estadísticas recolectadas sobre las acciones de los usuarios. La tarea echar de comunidad se encarga principalmente de eliminar de la comunidad al usuario y comunicarle el por qué del despido. El exmiembro de la comunidad, procesa la solicitud con procesar_expulsión_comunidad. Una decisión que se puede tomar a partir de la expulsión es volver a suscribirse.

Ilustración
155.
Descripción detallada del flujo de trabajo echar de comunidad
La Ilustración 155 muestra las entidades mentales intercambiadas en el flujo de trabajo echar de comunidad. La tarea echar de comunidad se activa cada vez que se modifican las estadísticas del usuario (hecho acciones usuario). Con esta información y la configuración del agente (no mostrada aquí pero sí en el patrón de estado mental inicia echar comunidad en http://grasia.fdi.ucm.es/metodologia) se procede a expulsar de la comunidad indicando el motivo (usuario inactivo, usuario insatisfecho con la información recibida o por proporcionar siempre información que no gusta a los otros miembros de la comunidad). Con esta información el agente personal, el que jugaba el rol miembro de comunidad, deberá decidir qué hacer. Una opción es hacer que la tarea produzca una entidad hay que suscribirse a comunidad para iniciar otra vez la suscripción automática a la comunidad (ver Ilustración 125 ).

Ilustración
156.
Diagrama GRASIA para representar la interacción echar_usuarios.
Las tareas de la Ilustración 167 se organizan según indica la Ilustración 156 . No es necesario detallar ningun orden de ejecución porque sólo hay una unidad de interacción.
En cuanto a la satisfacción de objetivos, en esta sección se mostrará solamente como se satisfacen los objetivos asociados a las tareas del flujo de trabajo compartir documentos (ver Ilustración 137 ) asociadas al rol emisor de sugerencias. El resto de tareas se muestran en http://grasia.fdi.ucm.es/metodologia. Ya se ha estudiado cómo tiene lugar la ejecución de tareas dentro de flujos de trabajo, ahora se estudia cómo su ejecución consigue satisfacer objetivos. Para ello será relevante estudiar también las entradas, salidas, aplicaciones y recursos utilizados por las tareas.

Ilustración 157. Satisfacción de los objetivos iniciales en base a la participación en flujos de trabajo (I)
La Ilustración 157 muestra cómo se satisface el objetivo proporcionar documentos interesantes. Este objetivo se satisface mediante dos tareas propagar sugerencia y revisar evaluaciones sugerencia. La que proporciona realmente las evidencias requeridas por el objetivo, que serán comentadas a continuación, es la segunda. Sin embargo, la segunda no puede suceder si no se ejecuta antes propagar sugerencia, de acuerdo con el flujo de trabajo. Así, se llega a la conclusión de que para alcanzar el objetivo proporcionar documentos interesantes, hay que ejecutar las dos tareas. Esto se indica en el diagrama asociando ambas tareas al mismo objetivo. Nótese que tras la ejecución de propagar sugerencia, no se satisface el objetivo asociado, pero su solución está más cercana ya que produce un hecho sesion usuario sugiere documento que se requiere en las condiciones de éxito y fracaso.
El hecho sesion usuario sugiere documento recoge el estado de la comunicación para poder detectar, por ejemplo, fallos en la comunicación y si la interacción ha terminado. En la Ilustración 157 , las tareas pueden indicar estas situaciones durante la creación de este hecho fijando el valor “FALLO” (tarea propagar sugerencia) o bien modificando el slot estado de este hecho (tarea revisar evaluaciones sugerencia) cuando ya existe.
Al término del flujo de trabajo, la tarea revisar evaluaciones sugerencia utiliza la aplicación servidor de aplicaciones para informar al usuario de que se tiene el informe de aceptación de la sugerencia enviada.

Ilustración
158.
Condiciones para dar por fallido el objetivo proporcionar documentos
interesantes
Para dar por fracasado el objetivo proporcionar documentos interesantes, se tiene que o bien ha ocurrido un fallo (el slot estado del hecho sesion usuario sugiere documento contiene el valor “FALLO”), o bien todo ha seguido los cauces normales, pero el documento no ha sido considerado interesante por la comunidad (el slot aceptada de resultado propagación está fijado a false).

Ilustración
159.
Condiciones para satisfacer el objetivo proporcionar documentos interesantes
Para dar por alcanzado el objetivo proporcionar documentos interesantes, el flujo de trabajo debe haber terminado, esto es, la tarea revisar evaluaciones sugerencia debe haberse ejecutado, y la sugerencia debe haber sido aceptada por la comunidad de usuarios (el slot aceptada de resultado propagación está fijado a true).
La satisfacción de los objetivos del sistema no tiene por qué depender exclusivamente de la existencia de entidades mentales. Así, existen objetivos que pueden alcanzarse o fracasar debido a las dependencias que exhiben respecto de otros objetivos.

Ilustración 160. Dependencias entre objetivos (I)
Así, para satisfacer el objetivo mantener la calidad de documentos, se entiende que se pueden satisfacer cualquiera de sus subobjetivos (ver Ilustración 112 ). El motivo es que si se satisface alguno de ellos, se tendrán valoraciones de la calidad de la información, lo cual permitirá decidir con más acierto, o bien se evitará que aparezca información proveniente de fuentes que no han funcionado bien en el pasado. Por ello la calidad de la información que circule en las comunidades será, cuanto menos, mantenida.
El caso de sus sub-objetivos es diferente. Prevenir malas fuentes de información y disminuir malas fuentes de información necesitan que se satisfagan ambos sub-objetivos. Mientras que detectar mala información sólo necesita que se cumpla alguno. En los dos primeros, el motivo es que una identificación parcial o una eliminación parcial de malas fuentes, no es satisfactoria. Mientras que para detectar la mala información se puede confiar o bien en los expertos o bien en las herramientas de evaluación automática.

Ilustración 161. Dependencias entre objetivos (II)
Para no molestar al usuario se confía en la combinación de los mecanismos de evaluación automática junto con la consulta de expertos. El objetivo evaluar autónomamente se satiface invocando a los medios de evaluación automática, mientras que no enviar información no deseada utiliza mecanismos de filtrado colaborativo. Por ello, se requiere de la satisfacción de los dos objetivos.
La distribución de documentos interesantes es un
objetivo compartido por agentes personales y por agentes de comunidad.
Por ello, se entiende que se satisface cuando el agente sugiere documentos a la
comunidad (objetivo proporcionar documentos interesantes) o cuando la
comunidad incrementa su colección de documentos interesantes. Relacionado con incrementar
colección de documentos interesantes están los objetivos encaminados a
incrementar el número de usuarios en la comunidad (objetivos suscribirse
fuentes información e incorporar usuarios), y a aceptar sugerencias
de la comunidad (objetivo aceptar sugerencias), gracias a lo cual tienen
lugar los procesos de filtrado colaborativo.
Las entidades mentales son importantes tanto para expresar la satisfacción o fracaso de los objetivos como para pasar información de una tarea a otra. Sin embargo, la actuación de las tareas, como se ha visto, crea muchos hechos que no son destruidos. Como se explicó en la sección 2.2 , los modelos de objetivos y tareas pueden emplearse para especificar qué hacer con estas entidades mentales.

Ilustración 162. Descripción de la gestión del estado mental
La Ilustración 165 muestra un ejemplo de tareas que se encargan de destruir entidades mentales. La tarea destruye temporizacion elimina los eventos de temporización utilizados para detectar fallos en la comunicación o inactividad del usuario a la hora de evaluar documentos. Estos eventos han de ser eliminados si se producen cuando la sesión a la que están asociados ha terminado (ver la documentación completa). La tarea destruye hechos asociados a sesiones elimina la información relacionada con las distintas sesiones iniciadas por el agente una vez que estas han terminado.
Para terminar, queda hablar de la percepción de los agentes personales. El único agente que de momento necesita de modelos de entorno para definir su percepción es el agente personal. Hasta ahora la percepción era una asociación simple con el servidor de aplicaciones. Este agente está unido al servidor de aplicaciones ya que es a través de él que percibe las acciones de su usuario. Tras el estudio de tareas asociadas al agente, se está en condiciones de determinar exactamente cómo es esta percepción.
Ilustración 163. Percepción del agente personal
Según la Ilustración 166 , cuando el usuario ejecuta una acción, se producen eventos. Los eventos que se tratan en el agente son usuario sugirió documento, que denota una sugerencia a una comunidad, usuario quiere suscribirse, que es interpretado por el agente como que hay que suscribirse a una comunidad, y opinión usuario, que hace referencia a la evaluación, positiva o negativa, de un documento o solicitud de evaluación de petición de suscripción.
include "../../pie.php" ?>