Summary


As with scripting languages, knowledge of a rule-based language is a valuable skill that software engineers should have at their disposal. Rule-based programming is no longer considered purely the domain of the computer scientist but is finding an application in the development of business systems.

Business rules represent one of the greatest areas of complexity within enterprise systems, and the rule engine offers an effective mechanism for managing their sophisticated and dynamic nature. Rule engines are therefore well suited to rapid application development, offering the following benefits:

  • Rules can be externalized from all applications to a centralized repository where they can be managed using specialized rule management tools.

  • Rule-based programming languages are more suited to defining business rules than are languages such as Java.

  • Business rules can be defined and managed by domain experts rather than by skilled IT professionals.

  • The rules themselves are dynamic, enabling business-rule changes to be effected across the enterprise without the need to rebuild system components.

The next and final chapter on rapid development languages covers aspect-oriented programming, one of the software industry's most exciting new paradigms.

Additional Information

The CLIPS software, along with examples and tutorials, is available from the site http://www.ghg.net/clips/CLIPS.html.

Jess is not public domain software. However, numerous Java implementations of rule engines exist that are. Table 10-1 lists some of them.

Table 10-1. Open Source Java Rule Engines

Name

Reference

Drools

http://drools.org/

OFBiz Rule Engine

http://www.ofbiz.org/docs/rules.html

Algernon

http://algernon-j.sourceforge.net/

TyRuBa

http://tyruba.sourceforge.net/

JTP Java Theorem Prover

http://www.ksl.stanford.edu/software/JTP/

JEOPS, Java Embedded Object Production System

http://www.di.ufpe.br/~jeops/

InfoSapient

http://info-sapient.sourceforge.net/

JShop

http://www.cs.umd.edu/projects/shop/description.html

RDFExpert

http://public.research.mimesweeper.com/RDF/RDFExpert/Intro.html

Jena 2

http://www.hpl.hp.com/semweb/jena2.htm


For more information on the intricacies of the Rete algorithm, refer to the paper in which it was first defined, Rete: A Fast Algorithm for the Many Pattern/Many Object Pattern Match Problem by Charles L. Forgy [Forgy, 1982].



    Rapid J2EE Development. An Adaptive Foundation for Enterprise Applications
    Rapid J2EEв„ў Development: An Adaptive Foundation for Enterprise Applications
    ISBN: 0131472208
    EAN: 2147483647
    Year: 2005
    Pages: 159
    Authors: Alan Monnox

    flylib.com © 2008-2017.
    If you may any questions please contact us: flylib@qtcs.net