Bloques reactivos


Reactive Blocks [1] es un entorno de desarrollo impulsado por modelos visuales basado en diagramas de actividad que admiten análisis de modelos formales, generación de código automatizado, modelado jerárquico y una extensa biblioteca de componentes listos para usar para la plataforma Java.

La tecnología central se originó a partir de investigaciones en la Universidad Noruega de Ciencia y Tecnología y el Instituto de Telemática . [2] Reactive Blocks es un entorno de desarrollo impulsado por modelos visuales que admite el análisis de modelos formales, la generación automatizada de código, el modelado jerárquico y una amplia biblioteca de componentes listos para usar para la plataforma Java. Al combinar bloques reutilizables, un desarrollador puede crear aplicaciones complejas gráficamente.

Estos bloques de construcción se definen mediante una combinación de modelos gráficos y código Java. El modelo gráfico se basa en diagramas de actividad UML y máquinas de estado. La biblioteca existente se puede ampliar mediante bloques personalizados implementados por el usuario que pueden incluir todas las capacidades de la plataforma Java. Cada bloque tiene una descripción de interfaz ampliada en forma de pines de entrada y salida y un contrato. El contrato indica qué estados tiene un bloque y con qué pines se puede interactuar durante qué estado.

Reactive Blocks utiliza el modelo gráfico junto con la información de los contratos para analizar formalmente la aplicación y descubrir problemas comunes como puntos muertos o terminaciones incorrectas. Si el análisis encuentra un problema, se puede resaltar el estado correspondiente de la aplicación para identificar la causa. El entorno de desarrollo ofrece una animación paso a paso de la cadena de transiciones de estado que conducen al problema.

Una aplicación que pasó la validación se puede convertir automáticamente en código Java. Dado que la aplicación de un bloque de construcción es una definición formal correcta, el constructor puede transformar su lógica en código. El código generado está empaquetado en un proyecto estándar de Eclipse Java y, por lo tanto, puede tratarse como cualquier otro código; exportar archivos JAR ejecutables, depurar y crear perfiles funcionan de la misma manera.