Research and De­velop­ment of Reactive Systems with BTS*

A complete toolkit for incorporating the bigraphical reactive system formalism in software applications

Welcome to the Bigraph Toolkit Suite (BTS). BTS tries to be a comprehensive toolkit, primarily comprising a set of extensible model-driven integration frameworks, not only for the manipulation and interchange of bigraphical metamodels but also for the simulation of bigraphical reactive systems ‐ all in a platform-agnostic manner.

Explore Toolkit Components

reactive system theory for software


The bigraph theory, devised by Robin Milner and colleagues, provides a novel foundation for the formal modelling and reasoning of reactive systems, including facets such as ubiquitous systems, distributed systems, interacting systems and context-aware systems.

In line with this, the Bigraph Toolkit Suite provides a set of guidelines, tools, and programming frameworks in order to use bigraphs as the formal underpinning for the development of reactive systems and its various facets such as for context-adaptive software. BTS aims to facilitate experimentation for academic purposes. It is designed to straightforwardly allow the adoption of bigraphical mechanisms and philosophies.

Its underlying formalism allows to resemble rule-oriented and monitor-oriented programming approaches to a great extent, all combined with the power of formal verification techniques such as model checking.

Key Points and Aims

  • Metamodelling: BTS uses family of bigraphical metamodels designed for different purposes
  • Validation: Model instances conform to metamodels throughout BTS to ensure structural consistency
  • Interoperability: Metamodels foster building bigraphical toolchains and exchange between different formats
  • Verification: Bigraphical models can be used as a formal specification language for reasoning about reactive systems
  • Adopt and utilize bigraph-theoretical results in software applications
  • Integrate bigraphs as formal underpinning in software applications at different scales and levels of granularity
  • For instance, bigraphical mechanisms can be utilized, adopted and integrated just partially, e.g., within a single component of an even larger application.
  • Incorporate a rule-based or monitor-based programming approach by taking advantage of bigraphical reactive systems

BTS, i.e., any of its constituents listed below, is licensed according to the terms of the Apache License, Version 2.0.

A variety of problems can only be solved with a variety of methods.

8 Products

Explore the Bi­graphical Tool­kit Suite


Metamodelling, Manipulation and Simulation

Java Framework
logo

Dynamic creation of EMOF-compliant bigraphs at design and runtime (Ecore metamodel). Execution of bigraphical reactive systems for model checking tasks or simulation. Bigraphs can be exported to different formats. Simple bigraph visualization as PNG.

More Details
Ecore Metamodel
logo

A metamodel implemented using the Ecore metamodel standard. A common interface for the well-formed structural definition of bigraphs which further enables the interoperability with other tools and frameworks.

More Details
Modelling IDE
logo

Bigellor is a web-based modelling tool to graphically create and visualize bigraphs. It uses Spring in combination with Thymeleaf as web development framework, and Cytoscape.js for the visualization of bigraphs in the browser.

More Details

BDSL: Domain-specific Language

Xtext Grammar Workbench
logo

Contains the major building blocks of BDSL, a Bigraphical DSL, e.g., the grammar, the parser, and the Language Server Protocol for IDE implementation support, among others.

More Details
Java Framework
logo

Contains the main functionality for the operation of an BDSL interpreter. The BDSL Interpreter Framework supports the evaluation of arbitrary bigraph expressions and executes bigraphical reactive systems.

More Details
Command-line Interface
logo

A command-line interface application for using the interpreter via the terminal. It uses the BDSL Interpreter Framework for executing BDSL expressions.

More Details
IDE
logo

An IDE for writing BDSL scripts. It is based on Eclipse Theia und uses the Language Server Protocol implementation of BDSL Core Elements.

More Details

Model Storage and Distribution

Spring Data Framework Extension
logo

Provides the infrastructure components to build repository abstractions for stores dealing with the Connected Data Objects (CDO) model repository. Makes it easier to build Spring-powered applications that use data access technologies.

More Details
Docker Container
logo

Contains Eclipse CDO and configuration files to build and run a CDO server in a Docker container.

More Details

Both the kind and granularity of a problem suggest/determines the tool(s) to best work with in order to solve the problem.

More About the theory behind BTS


The resources listed below point to some interesting research work in the bigraph-related scientific literature.

Note that this is not an exhaustive nor curated list.

Articles

  • Kehrer, T.; Tsigkanos, C.; Ghezzi, C.: An EMOF-Compliant Abstract Syntax for Bigraphs. In: Electronic Proceedings in Theoretical Computer Science Bd. 231 (2016), S. 16–30.
  • Milner, R.: The Space and Motion of Communicating Agents. 1st. Aufl. New York, NY, USA : Cambridge University Press, 2009
  • Debois, S.: Computation in the informatic jungle (Technical Report) : IT University of Copenhagen (ITU), 2011
  • Perrone, G.; Debois, S.; Hildebrandt, T.: Bigraphical Refinement. In: Electronic Proceedings in Theoretical Computer Science Bd. 55 (2011), S. 20–36.1
  • Grzelak, D.; Aßmann., U.: Preparatory reflections on safe context-adaptive software (position paper). In: Proceedings of the 5th international conference on internet of things, big data and security - volume 1: IoTBDS, : SciTePress, 2020. INSTICC — ISBN 978-989-758-426-8, S. 382–391. DOI: 10.5220/0009459503820391

Acknowledgement


This research project is funded by the German Research Foundation (DFG, Deutsche Forschungsgemeinschaft) as part of Germany's Excellence Strategy - EXC 2050/1 - Project ID 390696704 - Cluster of Excellence "Centre for Tactile Internet with Human-in-the-Loop" (CeTI) of Technische Universität Dresden.