Modelado de Derivación de Código para el Desarrollo de Sistemas Colaborativos con Awareness
Resumen
La construcción de sistemas colaborativos con awareness es una tarea muy compleja. En este artículo se presenta la forma de utilización del lenguaje específico de dominio CSSL v2.0 - Collaborative Software System Language - construido como extensión de UML, usando el mecanismo de metamodelado. Se analiza la simplicidad, expresividad y precisión del lenguaje para modelar los conceptos principales de los sistemas colaborativos, especialmente los procesos colaborativos, protocolos y awareness. A partir de casos de modelado se muestra una sintaxis concreta -editores gráficos- que permiten construir modelos de sistemas colaborativos. Estos son independientes de la plataforma de implementación y están formalmente preparados para derivarlos utilizando transformaciones MDD. Luego se presenta una semántica del lenguaje a través de transformaciones de modelo a texto donde se obtiene versiones Web con tecnologías JavaScript, MongoDB y Websockets. Esto aporta a los desarrolladores de Sistemas Colaborativos un conjunto de herramientas que les permiten por un lado modelar los sistemas y por otro obtener aplicaciones ejecutables con aspectos centrales resueltos como la implementación de procesos colaborativos, awareness y el control de las operaciones que los roles realizan en el sistema.