Está en la página 1de 5

AMENITIES es una metodologa, basada en modelos de comportamiento y

tareas, para el anlisis, diseo y desarrollo de sistemas cooperativos

Esta metodologa est centrada en el modelado inicial del sistema, usa el


punto de vista de los usuarios y tiene muy en cuenta aspectos relacionados
con el grupo (conciencia de grupo, relaciones entre usuarios, dinmica del
grupo, representacin de aspectos sociales, etc).
A pesar del potencial que nos brinda esta metodologa, cada vez que
modelamos un nuevo sistema hay que partir prcticamente de cero.
Sin embargo, durante el modelado conceptual de estos sistemas suelen
aparecer conceptos y escenarios comunes que deben ser descritos
reiteradamente. Capturar dichas situaciones, representarlas y documentarlas
para facilitar su posterior reutilizacin en otros proyectos es de un gran valor,
tanto desde el punto de vista del proceso como de la propia especificacin.

Dentro del modelo de desarrollo propuesto se distinguen tres fases.


Una primera fase de obtencin y representacin del modelo de
requisitos, donde se describen los elementos ms representativos del
sistema, usando tcnicas como la etnografa aplicada (traduce resultados
empricos en ideas para nuevos sistemas), los casos de uso (identifican
procesos y tareas relevantes) o modelos tericos (permiten el anlisis de
actividades de cooperacin y propiedades abstractas relacionadas con
aspectos de diseo).
En una segunda fase se realiza el modelo cooperativo del sistema,
modelo conceptual que constituye el ncleo central de la metodologa. Su
propsito es dar una descripcin del sistema independientemente de su
implementacin, proporcionando as una mejor comprensin del dominio del
problema, dada la complejidad que caracteriza a este tipo de sistemas.
La descripcin es realizada usando una notacin basada en UML y que se
denomina COMO-UML [8]. El modelo cooperativo representa el sistema
mediante cuatro vistas realizadas bajo diferentes niveles de abstraccin:

Vista organizacional. Por medio de los llamados diagramas de


organizacin, los cuales estn basados en los diagramas de estados de
UML, se modela la estructura esttica y dinmica de la organizacin del
sistema. Los estados representan los diferentes roles que pueden

desempear los miembros en la organizacin y las transiciones reflejan


los posibles cambios de rol en virtud del cumplimiento de ciertas
restricciones. Estas restricciones pueden ser capacidades (restricciones
cognitivas impuestas a un actor para participar bajo un rol determinado)
o leyes (restricciones impuestas por la propia organizacin que
identifican las reglas sociales que deben ser preservadas en el grupo).
Vista cognitiva. Representa las tareas que puede llevar a cabo cada
miembro del grupo en el escenario colaborativo. Por un lado se define la
interfaz del rol, el cual incluye las caractersticas ms relevantes del
conjunto de tareas a realizar (su naturaleza cooperativa, mecanismos de
activacin y modos de sincronizacin, interrupcin de unas tareas por
otras, etc.), y por otro lado se describen las tareas mediante diagramas
de actividades que reflejan los participantes, secuencialidad,
concurrencia, optatividad, etc. En esta vista pueden aparecer elementos
de las vistas de informacin (documentos, datos, recursos, etc.) y de
interaccin (protocolos).
Vista de interaccin. Se analiza la forma de comunicacin entre
participantes y los recursos usados mediante protocolos de interaccin
de alto nivel.
Vista de la informacin. Refleja la informacin que es compartida en el
escenario o que se utiliza para la comunicacin (documentos, eventos,
recursos, etc.). Esta informacin se puede describir a travs de los
diagramas de clases y de interaccin de UML.

A partir del modelo cooperativo se puede construir una mquina de estados en


UML y traducirla a una red de Petri coloreada (CPN) que permitira el anlisis y
verificacin de determinadas propiedades (interbloqueos, alcanzabilidad, etc.).
En una ltima fase, se pasara del modelo cooperativo a un diseo inicial del
sistema basndonos en una arquitectura [9] que permite integrar de manera
sencilla el modelo previamente propuesto.
III. LA INTEGRACIN DE PATRONES DE SOFTWARE CON AMENITIES
Capturamos, representamos y documentamos conceptos y escenarios comunes
que aparecen a menudo durante el modelado conceptual de este tipo de
sistemas, para despus seleccionarlos y aplicarlos en distintos proyectos
llevados a cabo a travs de dicha metodologa
Los patrones pueden aplicarse en las diferentes vistas del sistema que la
metodologa proporciona. Habitualmente, comenzamos aplicando patrones
durante el modelado de la estructura organizativa del sistema (vista
organizacional).
Posteriormente, identificamos tareas de la vista cognitiva que siguen patrones
de conducta determinados y en los que la utilizacin de recursos tambin
puede ser generalizada. Por ltimo, usamos patrones que especifican
protocolos de comunicacin o coordinacin para describir procesos de
comunicacin usados en la vista de interaccin.

UML usa colaboraciones parametrizadas que permiten especificar estructuras


formadas por clases/objetos reutilizables en una etapa de diseo orientado a
objetos.
Durante el modelado de un sistema cooperativo, adems de objetos y clases,
usamos otros tipos de elementos (estados, actividades, paquetes, eventos,
actores, roles, etc.) que nos permiten reflejar muchos otros aspectos relevantes
para esta clase de sistemas (flujos de trabajo, estructura social de los usuarios,
dinmica de la organizacin, protocolos sociales, cooperacin entre actores,
etc.), los cuales son recogidos en fases tempranas de modelado.
Para esto de define un profile en el que los patrones se consideran modelos
genricos parametrizados (de cualquier tipo) que actan como plantillas
flexibles para la construccin y/o descripcin de familias de modelos
semejantes (instancias del patrn).

objetivoo de facilitar la descripcin y reutilizacin de conceptos y escenarios


comunes que podemos encontrar durante la aplicacin de esta metodologa.
Los patrones los empleamos como piezas de conocimiento reutilizable para
agilizar la construccin y especificacin de unos modelos a partir de otros
(modelo del patrn), dando lugar a modelos ms comprensibles y fciles de
mantener. Al mismo tiempo, stos nos proveen de un vocabulario comn,
ayudando en la deteccin, comunicacin y discusin de los problemas tpicos
de modelado.

También podría gustarte