Reactive Blocks is a visual model-driven development environment supporting formal model analysis, automated code generation, hierarchical modelling, and an extensive library of ready-to-use components for the Java platform. By combining re-usable blocks, a developer can create complex applications graphically.
In traditional programming, documentation and implementation are separate activities which can lead to differences between both. As the visual code of an Reactive Blocks application in itself is the documentation, there can never be a gap between documentation and implementation.
Because the visual definition of an application is more intuitive to understand, it eases the communication between the different areas of a company and with clients. The general understanding of a visual application requires no programming knowledge, this ensures that management, developers, and customers are always ‘on the same page’.
Reactive Blocks allow top-down as well as bottom-up design. In the former, the contract of a block is defined first followed by the detailed implementation of the block. For the latter an application can be composed from ready-to-use building blocks available in our extensive library.
Following the micro-service architecture pattern, an application can be assembled from multiple independent services implemented as Reactive Blocks applications. A clean architecture is further supported by the possibility to package the Reactive Blocks micro-services as OSGi bundles.
The analysis uses the state space as defined by the contracts of the blocks. It thus can be efficiently applied even before the code is ever executed. It can directly highlight which exact situation leads to a problem which makes it easy to identify the exact cause and possible solutions. Additional the Reactive Blocks development environment offers quick-fixes for a range of common issues which can be applied with a single click.
The Reactive Blocks development environment offers an integrated search engine to quickly find the right block for the problem at hand. Your application needs to subscribe to an MQTT broker? Simply search for ‘mqtt’, download the library, and drag the subscriber block into the application.
Because of the easier visual understanding of existing applications the integration of new team members is easier. The impact of growing a team is reduced and it can reach increased productively faster.
The visual style of developing also simplifies the cooperation in heterogeneous teams: A part of the developers focuses on the implementation of low-level blocks representing hardware drivers while another group develops the middle-layer of an application. Yet another team works independently on the overall integration of all building blocks into the final application.
Additionally Reactive Blocks also offers tight integration with OSGi based IoT stacks, allowing dynamic starting, stopping, and re-configuration of applications.
Bitreactive is an active member of the Eclipse IoT Working Group which offers an ecosystem of companies and individuals that are working together to establish an Internet of Things based on open technologies.
With Reactive Blocks you gain access to a comprehensive library of ready-to-use building blocks. It offers you all the essential blocks to get up and running quickly.
- Need to buffer some elements? Drag in the ‘Buffer Eager Simple’ block.
- Need to publish data via MQTT? Use the ‘MQTT publish’ block.
- Want to access an ModBus sensor? There is the ‘ModBus Simple’ block for that as well.