clients: success stories

show all  
Bending the Rules

Rules engine software has been a boon to the businesses that have embraced the technology.  Once in place, a good rules engine implementation transfers control of the business rules in a system from the developers to the business users.  This departure from the traditional model allows for greater flexibility and response time, a necessity in the modern business environment.

By its nature, the domain encompassed by a rules engine is constantly evolving.  When the number of rules encompassed by the engine is small, it can be a simple matter to determine the behavior of the system.  A rules engine can quickly become responsible for managing thousands of rules, however.

While business needs are initially met without knowing the nature of the rules and their relationships, a time will often come when the business users want reporting on the rules managed by the rules engine.  If the rules are managed using a relational model or a reporting tool is bundled with the rules engine, this is a trivial concern.  However many rules engines use proprietary formats to store their rules and have insufficient reporting capabilities.

When this happens, a solution must come from the development front.  Such was the case with Avnet.

Business Needs
Avnet adopted the Blaze rules engine from Fair Isaac as a pricing engine.  This pricing engine used a series of XML files to store all of the rules for editing and a compiled binary file for runtime execution.  Though the engine met the pricing needs, the tools surrounding it did not provide the transparency into the rules required by the business.  Determining the relationship between the rules was a cumbersome process requiring the analysis of multiple XML files to answer even the simplest of queries.  The responsibility for performing these queries fell on the shoulders of the developers.  Avnet needed a solution to convert the contents of the rules into a form that could more easily be queried, reducing the turnaround time of the queries.  Additionally, any solution would have to be extensible enough to allow for future changes to the structure of the rules.

Isos Technology – Providing a Solution
Isos technology was able to bring years of enterprise development experience to the table to provide a solution.  The first step was analyzing the rule structure as defined in the templates used by Blaze.  An object model was created to capture the existing rule structures.  This model was designed to be flexible enough to allow for future rule structure changes, such as the addition of new classes of rules to the system.  Once the object model was created, collaboration with an Avnet database architect was done to create a flexible data model.  The object model was implemented in Java using the Spring framework.  The implementation was crafted to be flexible, allowing new rule classes to be added without changing the underlying application code.  The code was deployed to WebSphere Application Server and scheduled to run on a nightly basis, giving the business historical extracts of the rule contents.

Benefits to Avnet
With the rule extraction running on a nightly basis, complex queries can be run against recent versions of the rules.  This reduces the time required to perform queries and increases accuracy.  Consequently, errors in pricing can be tracked down quicker and rule duplication can be minimized.  Additionally, rules that are no longer needed may be flagged for removal from the system.  With the representation of the rules in a relational database, the foundation exists for creating a system where the business users can perform queries against the rules without the involvement of development, freeing the limited time of the developers.

Technologies Used
  • Blaze Rules Engine
  • Java 5
  • Spring 2.0.3
  • WebSphere Application Server 6.1
  • Oracle 9i
 
 

news/ events

show all  
 
Home | Company | Services | Clients | News/ Events | Technology Blogs | Careers | Contact Us
© 2010, Isos Technologies, All Rights Reserved.
web strategy bygatesix