Tester
Hyperon Studio provides a testing module for the rules. It means that every user, before publishing changes, can test whether the rules work as desired and check the impact on other rules by using a mass tester to perform regression tests.
For convenience, input data for the mass tests can be prepared in the Excel file and imported to Hyperon.
Private sessions
There is no limit to the number of users working simultaneously. Hence, every user has their session (register of changes) and works on the common environment applying his private changes. Those changes are not visible to other users before publishing. There is also a warning message if two users start to modify the same rule.
Rules provisioning
Usually, the process of development includes more than one environment, which creates a need to provision the configuration of the rules.
Hyperon provides a mechanism of snapshots that export the current configuration to text files. These files can be stored in an external repository or just simply imported into the other environment.
For more sophisticated rules migrations, there is a functionality of the "superpack".
Profiles
Inside Hyperon Studio, multiple profiles might be defined, which allows using one environment for many different configurations. Every profile contains its definition of client application inputs, outputs, and rules configuration. What does it mean for the user's application architecture? Only one Hyperon Runtime Library or REST API is needed, even in a multi-profile environment. The application can switch between profiles in runtime.
Context
Hyperon Studio provides a controlled way of defining inputs, which might be simple types or complex structures. The rules use this context to reference actual business data needed to evaluate a decision.
Persistence Engine
Hyperon comes with a persistence engine that is based on the context definition. Its usage is optional, but it speeds up the development process of Java applications. You can configure our object structure in the Hyperon and let it manage the read/write operations. This is the implementation of the ORM concept.
API
Hyperon comes with REST API, allowing you to connect to the engine from any technology stack. API allows not only the rules execution but also browsing the structure of the rules themselves or migrating the rules between environments.
Runtime
Hyperon Runtime is an execution element of the Hyperon. It can be embedded into the Java application or interfaced via REST API. It handles the in-memory rules caching, discovering changes made in the Hyperon Studio, and invalidating caches. It is designed especially to handle efficiently large decision tables.
Dev mode
Special mode to speed up the initial phase of the development. When the developer connects the rules to the application, this mode can be activated to skip the publishing phase of the rules. Each change is immediately visible to the outside world.
Works with SQL database
Hyperon application uses SQL databases for the rules configuration storage. Supported databases: Oracle, MS SQL Server, PostgreSQL, Mysql.