In BRBeans, rule administration involves making changes to the set of business
rules being used by applications. This can include any of the following activities:
- creating new rules that didn't exist before,
- deleting existing rules,
- creating a new rule with the same name as an existing rule to replace
it,
- setting existing rules to expire when a change is to go into effect, or,
- moving rule changes from a development/test system to a production system.
There are two different interfaces that can be used for rule administration:
- Rule
Management Application: An external user interface that allows
users to manage rules interactively. It provides a very general purpose interface
for managing rules where no assumptions are made about the content or implementation
of the rules.
- Rule Management
APIs: A programmatic interface that can be used by programmers
writing code to manage rules or to customize an external user interface.
Rules can be administered in any way that makes sense for your application,
but the BRBeans framework was designed with the following adminstrative paradigm
in mind:
- Understand the change in business behavior that is desired.
- Inspect the application documentation (in particular information indicating
where trigger point are located) to understand where the changes will need
to be made in the system.
- Inspect the corresponding set of existing business rules using the Rule
Management Application (or your own custom management application, if
you have one) to understand which rules need to change.
- On a test system, use the Rule Management Application to create
one or more new rules that implement the required new behavior. Give these
rules the correct name so that they will be triggered by the appropriate
trigger point. Also make sure that these new rules are currently in effect.
- On the test system, withdraw (by setting the end date of the rule) all
rules that are to be superseded.
- Test the application to ensure it behaves as expected.
- Using the Rule Exporter on the test system, export the new rules. Schedule
them to become effective at the correct point in time.
- Using the Rule Exporter on the test system, export the rules to be superseded.
Set them to expire at the point in time at which the new rules come into effect.
- Using the Rule Importer on the production system, import the new rules.
This will create the new rules and schedule them to become effective at the
date specified when they were exported.
- Using the Rule Importer on the production system, import the rules to
be superseded. This will put the new end date into the existing rules on
the production system, thus setting them to expire on the specified date.