<?xml version="1.0" encoding="UTF-8"?>
<org.eclipse.epf.uma:PracticeDescription xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:org.eclipse.epf.uma="http://www.eclipse.org/epf/uma/1.0.6/uma.ecore" xmlns:epf="http://www.eclipse.org/epf" epf:version="1.5.1" xmlns:rmc="http://www.ibm.com/rmc" rmc:version="7.5.1" xmi:id="-VzK7KlhcXwRjbQizwE1ivg" name="new_practice,_MuX6YKcnEd-VK6zqjMaiPQ" guid="-VzK7KlhcXwRjbQizwE1ivg" changeDate="2011-09-26T18:32:56.751-0700" version="7.5.0">
  <mainDescription>&lt;p style=&quot;MARGIN: 3pt 0in&quot; class=&quot;MsoNormal&quot;>&#xD;
    Business rules are an expression of business policy in a form that is both comprehensible to business users and&#xD;
    executable by a rule engine. From a business perspective, a business rule is a precise statement that describes,&#xD;
    constrains, or controls some aspect of the business.&#xD;
&lt;/p>&#xD;
&lt;p style=&quot;MARGIN: 3pt 0in&quot; class=&quot;MsoNormal&quot;>&#xD;
    Let's illustrate this concept with a simple example coming from the lending industry. The following business policy can&#xD;
    be established to limit the loan amount a bank can purchase:&lt;br />&#xD;
&lt;/p>&#xD;
&lt;div&#xD;
style=&quot;BORDER-BOTTOM: medium none; BORDER-LEFT: gray 1.5pt solid; PADDING-BOTTOM: 0in; PADDING-LEFT: 3pt; PADDING-RIGHT: 0in; BACKGROUND: #f3f3f3; MARGIN-LEFT: 0.5in; BORDER-TOP: medium none; MARGIN-RIGHT: 0in; BORDER-RIGHT: medium none; PADDING-TOP: 0in; mso-element: para-border-div&quot;>&#xD;
    &lt;br />&#xD;
    &lt;p style=&quot;MARGIN: 0in 0in 0pt; BACKGROUND: #f3f3f3; mso-add-space: auto&quot; class=&quot;ISISCodeParagraphCxSpMiddle&quot;>&#xD;
        &lt;span&#xD;
        style=&quot;FONT-FAMILY: 'Times New Roman'; FONT-SIZE: 12pt; mso-bidi-language: AR-SA; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: EN-US&quot;>&lt;font&#xD;
         face=&quot;Courier&quot;>Only prime loans are eligible for purchase&lt;/font>&lt;/span>&#xD;
    &lt;/p>&lt;br />&#xD;
&lt;/div>&#xD;
&lt;p style=&quot;MARGIN: 3pt 0in&quot; class=&quot;MsoNormal&quot;>&#xD;
    This policy may be split into two implemented rules, one defining what a prime loan is and the second taking the&#xD;
    decision on purchasing it or not.&amp;nbsp;&#xD;
&lt;/p>&#xD;
&lt;div&#xD;
style=&quot;BORDER-BOTTOM: medium none; BORDER-LEFT: gray 1.5pt solid; PADDING-BOTTOM: 0in; PADDING-LEFT: 3pt; PADDING-RIGHT: 0in; BACKGROUND: #f3f3f3; MARGIN-LEFT: 0.5in; BORDER-TOP: medium none; MARGIN-RIGHT: 0in; BORDER-RIGHT: medium none; PADDING-TOP: 0in; mso-element: para-border-div&quot;>&#xD;
    &lt;br />&#xD;
    &lt;p style=&quot;MARGIN: 0in 0in 0pt; BACKGROUND: #f3f3f3; mso-add-space: auto&quot; class=&quot;ISISCodeParagraphCxSpMiddle&quot;>&#xD;
        &lt;span&#xD;
        style=&quot;FONT-FAMILY: 'Times New Roman'; FONT-SIZE: 12pt; mso-bidi-language: AR-SA; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: EN-US&quot;>&lt;font&#xD;
         face=&quot;Courier&quot;>If the loan amount is less than the prime loan limit, then the loan type is Prime&lt;/font>&lt;/span>&lt;br&#xD;
        style=&quot;MARGIN: 0in 0in 0pt; BACKGROUND: #f3f3f3; mso-add-space: auto&quot; class=&quot;ISISCodeParagraphCxSpMiddle&quot; />&#xD;
        &lt;br />&#xD;
    &lt;/p>&#xD;
    &lt;p style=&quot;MARGIN: 0in 0in 0pt; BACKGROUND: #f3f3f3; mso-add-space: auto&quot; class=&quot;ISISCodeParagraphCxSpMiddle&quot;>&#xD;
        &lt;span&#xD;
        style=&quot;FONT-FAMILY: 'Times New Roman'; FONT-SIZE: 12pt; mso-bidi-language: AR-SA; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: EN-US&quot;>&lt;font&#xD;
         face=&quot;Courier&quot;>If the loan type is not Prime then reject the loan&lt;/font>&lt;/span>&#xD;
    &lt;/p>&lt;br />&#xD;
&lt;/div>&lt;br style=&quot;MARGIN: 3pt 0in&quot; class=&quot;MsoNormal&quot; />&#xD;
&lt;br />&#xD;
&lt;p style=&quot;MARGIN: 3pt 0in&quot; class=&quot;MsoNormal&quot;>&#xD;
    Implementing these rules using an Object Oriented Language may look like two if statements testing conditions on&#xD;
    objects, and applying actions on the same or other objects&#xD;
&lt;/p>&lt;br style=&quot;MARGIN: 3pt 0in&quot; class=&quot;MsoNormal&quot; />&#xD;
&lt;br />&#xD;
&lt;div&#xD;
style=&quot;BORDER-BOTTOM: medium none; BORDER-LEFT: gray 1.5pt solid; PADDING-BOTTOM: 0in; PADDING-LEFT: 3pt; PADDING-RIGHT: 0in; BACKGROUND: #f3f3f3; MARGIN-LEFT: 0.5in; BORDER-TOP: medium none; MARGIN-RIGHT: 0in; BORDER-RIGHT: medium none; PADDING-TOP: 0in; mso-element: para-border-div&quot;>&#xD;
    &lt;br style=&quot;MARGIN: 6pt 0in 0pt; BACKGROUND: #f3f3f3; mso-add-space: auto&quot; class=&quot;ISISCodeParagraphCxSpFirst&quot; />&#xD;
    &lt;br />&#xD;
    &lt;p style=&quot;MARGIN: 0in 0in 0pt; BACKGROUND: #f3f3f3; mso-add-space: auto&quot; class=&quot;ISISCodeParagraphCxSpMiddle&quot;>&#xD;
        &lt;span&#xD;
        style=&quot;FONT-FAMILY: 'Times New Roman'; FONT-SIZE: 12pt; mso-bidi-language: AR-SA; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: EN-US&quot;>&lt;font&#xD;
         face=&quot;Courier&quot;>if (loan.amount &amp;lt; PrimeLoanLimit) {&lt;/font>&lt;/span>&#xD;
    &lt;/p>&#xD;
    &lt;p style=&quot;MARGIN: 0in 0in 0pt; BACKGROUND: #f3f3f3; mso-add-space: auto&quot; class=&quot;ISISCodeParagraphCxSpMiddle&quot;>&#xD;
        &lt;span&#xD;
        style=&quot;FONT-FAMILY: 'Times New Roman'; FONT-SIZE: 12pt; mso-bidi-language: AR-SA; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: EN-US&quot;>&lt;font&#xD;
         face=&quot;Courier&quot;>loan.type = PrimeType;&lt;/font>&lt;/span>&#xD;
    &lt;/p>&#xD;
    &lt;p style=&quot;MARGIN: 0in 0in 0pt; BACKGROUND: #f3f3f3; mso-add-space: auto&quot; class=&quot;ISISCodeParagraphCxSpMiddle&quot;>&#xD;
        &lt;span&#xD;
        style=&quot;FONT-FAMILY: 'Times New Roman'; FONT-SIZE: 12pt; mso-bidi-language: AR-SA; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: EN-US&quot;>&lt;font&#xD;
         face=&quot;Courier&quot;>}&lt;/font>&lt;/span>&#xD;
    &lt;/p>&lt;br style=&quot;MARGIN: 0in 0in 0pt; BACKGROUND: #f3f3f3; mso-add-space: auto&quot; class=&quot;ISISCodeParagraphCxSpMiddle&quot; />&#xD;
    &lt;br />&#xD;
    &lt;p style=&quot;MARGIN: 0in 0in 0pt; BACKGROUND: #f3f3f3; mso-add-space: auto&quot; class=&quot;ISISCodeParagraphCxSpMiddle&quot;>&#xD;
        &lt;span&#xD;
        style=&quot;FONT-FAMILY: 'Times New Roman'; FONT-SIZE: 12pt; mso-bidi-language: AR-SA; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: EN-US&quot;>&lt;font&#xD;
         face=&quot;Courier&quot;>if (loan.type != PrimeType) {&lt;/font>&lt;/span>&#xD;
    &lt;/p>&#xD;
    &lt;p style=&quot;MARGIN: 0in 0in 0pt; BACKGROUND: #f3f3f3; mso-add-space: auto&quot; class=&quot;ISISCodeParagraphCxSpMiddle&quot;>&#xD;
        &lt;span&#xD;
        style=&quot;FONT-FAMILY: 'Times New Roman'; FONT-SIZE: 12pt; mso-bidi-language: AR-SA; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: EN-US&quot;>&lt;font&#xD;
         face=&quot;Courier&quot;>case = new Case(&quot;Loan is not Prime&quot;);&lt;/font>&lt;/span>&#xD;
    &lt;/p>&#xD;
    &lt;p style=&quot;MARGIN: 0in 0in 0pt; BACKGROUND: #f3f3f3; mso-add-space: auto&quot; class=&quot;ISISCodeParagraphCxSpMiddle&quot;>&#xD;
        &lt;span&#xD;
        style=&quot;FONT-FAMILY: 'Times New Roman'; FONT-SIZE: 12pt; mso-bidi-language: AR-SA; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: EN-US&quot;>&lt;font&#xD;
         face=&quot;Courier&quot;>loan.status = REJECT;&lt;/font>&lt;/span>&#xD;
    &lt;/p>&#xD;
    &lt;p style=&quot;MARGIN: 0in 0in 0pt; BACKGROUND: #f3f3f3; mso-add-space: auto&quot; class=&quot;ISISCodeParagraphCxSpMiddle&quot;>&#xD;
        &lt;span&#xD;
        style=&quot;FONT-FAMILY: 'Times New Roman'; FONT-SIZE: 12pt; mso-bidi-language: AR-SA; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: EN-US&quot;>&lt;font&#xD;
         face=&quot;Courier&quot;>}&lt;/font>&lt;/span>&lt;br />&#xD;
    &lt;/p>&#xD;
&lt;/div>&lt;br />&#xD;
&lt;p>&#xD;
    The concept of business rules is not new, and for decades analysts and developers were implementing them within&#xD;
    business applications. What is more recent is the introduction of a Business Rule Management System application which&#xD;
    provides tools to manage the rule as a standalone element, outside of the core business application, and in a form&#xD;
    which is executable by a rule engine.&#xD;
&lt;/p>&#xD;
&lt;p>&#xD;
    Business rules are packaged as a Rule Set which can be considered as a piece of software executed by a rule engine.&#xD;
    Integrated in a business application, the rule set implements a sub-set of the business logic. This logic is&#xD;
    externalized from the traditional code and can be easily changed, and maintained by business analysts instead of&#xD;
    developers.&#xD;
&lt;/p>&#xD;
&lt;p>&#xD;
    As opposed to business logic embedded and hidden in functions, procedures, macros or databases, business rules are&#xD;
    clearly separated from the rule engine, a software component which executes and activates rules based on matching&#xD;
    conditions on a set of data.&#xD;
&lt;/p>&#xD;
&lt;p>&#xD;
    Figure 1 below illustrates this fundamental approach in implementing business logic, with the old embedded model on the&#xD;
    left and the new architecture on the right. In many ways the approach is similar to the separation of code and data&#xD;
    which Data Base Management Systems (DBMS) brought in the 1970s.&lt;br />&#xD;
    &amp;nbsp;&#xD;
&lt;/p>&#xD;
&lt;p>&#xD;
    &amp;nbsp;&lt;img alt=&quot;&quot; src=&quot;resources/legacy2bre.jpg&quot; width=&quot;599&quot; height=&quot;386&quot; />&#xD;
&lt;/p>&#xD;
&lt;p>&#xD;
    &lt;span style=&quot;mso-ansi-language: EN-GB&quot; lang=&quot;EN-GB&quot;>A piece of business logic or rule embedded in code will be more&#xD;
    difficult to identify, locate, and change, therefore increases costs of maintenance.&lt;/span>&#xD;
&lt;/p>&#xD;
&lt;p style=&quot;MARGIN: 3pt 0in&quot; class=&quot;MsoNormal&quot;>&#xD;
    &lt;span style=&quot;mso-ansi-language: EN-GB&quot; lang=&quot;EN-GB&quot;>A rule which is externalized in a BRMS platform, and whose versions&#xD;
    are controlled in a rule repository and deployed and executed in a rule engine, will be much easier to modify, thus&#xD;
    reducing dramatically the time and cost to implement changes required by the business.&lt;/span>&#xD;
&lt;/p>&#xD;
&lt;p style=&quot;MARGIN: 3pt 0in&quot; class=&quot;MsoNormal&quot;>&#xD;
    &lt;span style=&quot;mso-ansi-language: EN-GB&quot; lang=&quot;EN-GB&quot;>Traditional software life cycles such as the V cycle or waterfall&#xD;
    model are notorious for leading to systems which costs more than expected, come to market later than planned and with&#xD;
    outcomes not matching the clients' initial expectations. With such approaches, the business users have little ownership&#xD;
    of the solution, and the time required to implement changes can easily range from 3 to 6 months if not more. As a&#xD;
    result, policy owners don't feel comfortable with change which translates into a loss of agility to respond to new&#xD;
    business and competitive situations: too much time passes between policy owners submitting requirements to IT and the&#xD;
    actual deployment of new rules.&lt;/span>&#xD;
&lt;/p>&#xD;
&lt;p style=&quot;MARGIN: 3pt 0in&quot; class=&quot;MsoNormal&quot;>&#xD;
    &lt;span style=&quot;mso-ansi-language: EN-GB&quot; lang=&quot;EN-GB&quot;>Also, with all the fine tuning and iterations, policy owners cannot&#xD;
    really be sure that the policy is being implemented according to their needs. The only way to actually know is to keep&#xD;
    performing tests and hope that all the cases are covered in such tests.&lt;/span>&#xD;
&lt;/p>&#xD;
&lt;p style=&quot;MARGIN: 3pt 0in&quot; class=&quot;MsoNormal&quot;>&#xD;
    As important element of the business decision, the business rules need strong management processes and tools to support&#xD;
    their life cycle.&#xD;
&lt;/p>&#xD;
&lt;p style=&quot;MARGIN: 3pt 0in&quot; class=&quot;MsoNormal&quot;>&#xD;
    A BRMS provides solutions to make this management more efficient, both for developers and for the business users of the&#xD;
    applications. Obviously tooling is not the single answer to the software and business challenges behind the development&#xD;
    of decision-support systems. Deploying BRMS, BRE, and BPM components into business applications requires to modify&#xD;
    current development methodologies and practices in order to take into account new concepts as well as providing a&#xD;
    better collaboration framework between IT and business.&#xD;
&lt;/p>&#xD;
&lt;p style=&quot;MARGIN: 3pt 0in&quot; class=&quot;MsoNormal&quot;>&#xD;
    The Agile Business Rule Development methodology corresponds to such a need. It is an incremental and iterative software&#xD;
    development process leveraging the Agile Alliance manifesto (&lt;a href=&quot;http://agilemanifesto.org/&quot; target=&quot;_blank&quot;>Agile&#xD;
    Manifesto&lt;/a>). Here are some of the Agile development values particularly relevant to the implementation of a rule set&#xD;
    using the ABRD approach:&#xD;
&lt;/p>&#xD;
&lt;p style=&quot;TEXT-INDENT: -0.25in; MARGIN: 3pt 0in 3pt 36.3pt; tab-stops: list 36.3pt; mso-list: l0 level1 lfo1&quot;&#xD;
class=&quot;MsoNormal&quot;>&#xD;
    &lt;span style=&quot;FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol&quot;>&lt;span&#xD;
    style=&quot;mso-list: Ignore&quot;>·&lt;/span>&lt;/span> &lt;i>Individuals and interactions over processes and tools&lt;/i>. The rule&#xD;
    discovery, analysis and validation activities require an active and efficient communication between the rule developer&#xD;
    and the Subject Matter Experts (SMEs). Such processes are defined as light as possible.&#xD;
&lt;/p>&#xD;
&lt;p style=&quot;TEXT-INDENT: -0.25in; MARGIN: 3pt 0in 3pt 36.3pt; tab-stops: list 36.3pt; mso-list: l0 level1 lfo1&quot;&#xD;
class=&quot;MsoNormal&quot;>&#xD;
    &lt;span style=&quot;FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol&quot;>&lt;span&#xD;
    style=&quot;mso-list: Ignore&quot;>·&lt;/span>&lt;/span> &lt;i>Working software over comprehensive documentation&lt;/i>. The proposed rule&#xD;
    set development done per iteration, with its validation step, is based on the evidence that a working and executable&#xD;
    rule set has much more business value than a rule description manual. All the project stakeholders benefit from such a&#xD;
    principle but in particular the business users who are then sure that what they see (the rules) is what gets executed&#xD;
    in the deployed system.&#xD;
&lt;/p>&#xD;
&lt;p style=&quot;TEXT-INDENT: -0.25in; MARGIN: 3pt 0in 3pt 36.3pt; tab-stops: list 36.3pt; mso-list: l0 level1 lfo1&quot;&#xD;
class=&quot;MsoNormal&quot;>&#xD;
    &lt;span style=&quot;FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol&quot;>&lt;span&#xD;
    style=&quot;mso-list: Ignore&quot;>·&lt;/span>&lt;/span> &lt;i>Customer collaboration over contract negotiation&lt;/i>. Subject Matter&#xD;
    Experts who define the business policies and the business rules are strongly involved in the development process. They&#xD;
    are the customers of the final system, owners of the policies and are conveniently co-located with the development team&#xD;
    during the project.&#xD;
&lt;/p>&#xD;
&lt;p style=&quot;TEXT-INDENT: -0.25in; MARGIN: 3pt 0in 3pt 36.3pt; tab-stops: list 36.3pt; mso-list: l0 level1 lfo1&quot;&#xD;
class=&quot;MsoNormal&quot;>&#xD;
    &lt;span style=&quot;FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol&quot;>&lt;span&#xD;
    style=&quot;mso-list: Ignore&quot;>·&lt;/span>&lt;/span> &lt;i>Responding to change over following a plan&lt;/i>. Business rules evolve, more&#xD;
    often and faster than other standard pieces of software. This is actually one of the key values of the business rule&#xD;
    approach. For this fundamental reason the methodology to support the rule set development has to be tailored to such&#xD;
    rapid life cycle and include the appropriate activities, processes, best practices and work products to support such&#xD;
    changes efficiently.&#xD;
&lt;/p>&lt;br />&#xD;
&lt;p style=&quot;MARGIN: 3pt 0in&quot; class=&quot;MsoNormal&quot;>&#xD;
    Two fundamental drivers govern successful rule set developments:&#xD;
&lt;/p>&#xD;
&lt;p style=&quot;TEXT-INDENT: -0.25in; MARGIN: 3pt 0in 3pt 36.3pt; tab-stops: list 36.3pt; mso-list: l2 level1 lfo3&quot;&#xD;
class=&quot;MsoNormal&quot;>&#xD;
    &lt;span&#xD;
    style=&quot;FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol; mso-bidi-font-size: 10.0pt&quot;>&lt;span&#xD;
     style=&quot;mso-list: Ignore&quot;>·&lt;/span>&lt;/span> The unforgiving honesty of executable rules&#xD;
&lt;/p>&#xD;
&lt;p style=&quot;TEXT-INDENT: -0.25in; MARGIN: 3pt 0in 3pt 36.3pt; tab-stops: list 36.3pt; mso-list: l2 level1 lfo3&quot;&#xD;
class=&quot;MsoNormal&quot;>&#xD;
    &lt;span style=&quot;FONT-FAMILY: Symbol; COLOR: navy; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol&quot;>&lt;span&#xD;
    style=&quot;mso-list: Ignore&quot;>·&lt;/span>&lt;/span> The effectiveness of people working together with goodwill, shared vision and&#xD;
    common interests (the business user and the development team).&#xD;
&lt;/p>&#xD;
&lt;p style=&quot;MARGIN: 3pt 0in&quot; class=&quot;MsoNormal&quot;>&#xD;
    Executable or working rules tell the developers and the Subject Matter Expert what they really do as opposed to promise&#xD;
    through a paper-based design or specification.&#xD;
&lt;/p>&lt;span&#xD;
style=&quot;FONT-FAMILY: 'Arial','sans-serif'; FONT-SIZE: 10pt; mso-bidi-language: AR-SA; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-font-family: 'Times New Roman'; mso-bidi-font-size: 12.0pt&quot;>ABRD&#xD;
is a practice and extends other element of EPF practice library to avoid redefining some standard roles, tasks, work&#xD;
products, guidelines and processes which are also relevant to rule development. As an EPF plug-in, development teams can&#xD;
leverage it for their own purpose and tailor it to the specific context of their own project, leveraging the EPF Composer&#xD;
tool.&lt;/span>&lt;br /></mainDescription>
  <problem>The Agile Business Rule Development&amp;nbsp;presents a pragmatic approach &lt;a id=&quot;XE_ABRD__introduction&quot;&#xD;
name=&quot;XE_ABRD__introduction&quot;>&lt;span&#xD;
style=&quot;FONT-SIZE: 12pt; FONT-FAMILY: 'Times New Roman'; mso-bidi-language: AR-SA; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: EN-US&quot;>&lt;font&#xD;
 face=&quot;Arial&quot; size=&quot;2&quot;>(&lt;/font>&lt;/span>&lt;/a>&lt;a class=&quot;elementLink&quot;&#xD;
href=&quot;./../../../practice.tech.abrd.base/guidances/concepts/cycle_approach_7FA44D8F.html&quot;&#xD;
guid=&quot;_ftAoIAjrEdyj5bYZ0eCR5g&quot;>Cycle Approach to Rules Development&lt;/a>) to the development of a Business Rule Application&#xD;
using Rule Engine and BRMS (&lt;a class=&quot;elementLink&quot;&#xD;
href=&quot;./../../../practice.tech.abrd.base/guidances/termdefinitions/brms_1E9B6D88.html&quot;&#xD;
guid=&quot;_19DpgBCQEdyJtJ3PbfdVDw&quot;>Business Rule Management System&lt;/a>) technology such as WebSphere ILOG JRules, ILOG Rules&#xD;
for .Net,&amp;nbsp;Fair Isaac Blaze Advisor, Drools&amp;nbsp;or any other &lt;a class=&quot;elementLink&quot;&#xD;
href=&quot;./../../../practice.tech.abrd.base/guidances/termdefinitions/rule_engine_A66B71B3.html&quot;&#xD;
guid=&quot;_QQcSoEXXEdy14e5PT9v3HQ&quot;>Rule engine&lt;/a> and BRMS on the market. This methodology supports the rule governance&#xD;
process description, and the architecture disciplines to deploy a Business Rule Engine into a Service Oriented Architecture&#xD;
and Business Process Management System.</problem>
  <background>&lt;p class=&quot;MsoNormal&quot; style=&quot;MARGIN: 3pt 0in&quot;>&#xD;
    ABRD was developed by ILOG to support implementation and deployment of BRMS by its customers and professional services.&#xD;
    It has hundreds of deployments world wide for many different industries. The polytechnic school of Singapore is using&#xD;
    it in its curriculum. It is now offered as a free open source methodology as part of the Eclipse Process Framework&#xD;
    plug-in library.&#xD;
&lt;/p></background>
  <goals>&lt;p>&#xD;
    ABRD applies the agile manifesto to efficiently implement business policies as executable rules. The goal is not having&#xD;
    a team spending months to document thousand of rules, where those rules can be implemented, executed, tested in less&#xD;
    time.&#xD;
&lt;/p>&#xD;
&lt;p class=&quot;MsoNormal&quot; style=&quot;MARGIN: 3pt 0in&quot;>&#xD;
    The Agile Business Rule Development methodology addresses in more detail the following goals:&#xD;
&lt;/p>&#xD;
&lt;p class=&quot;MsoNormal&quot;&#xD;
style=&quot;MARGIN: 3pt 0in 3pt 36.3pt; TEXT-INDENT: -0.25in; tab-stops: list 36.3pt; mso-list: l1 level1 lfo2&quot;>&#xD;
    &lt;span&#xD;
    style=&quot;FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol; mso-bidi-font-size: 10.0pt&quot;>&lt;span&#xD;
     style=&quot;mso-list: Ignore&quot;>·&lt;/span>&lt;/span> Separate rules as a manageable artifact using discovery, analysis and&#xD;
    authoring activities and work products&#xD;
&lt;/p>&#xD;
&lt;p class=&quot;MsoNormal&quot;&#xD;
style=&quot;MARGIN: 3pt 0in 3pt 36.3pt; TEXT-INDENT: -0.25in; tab-stops: list 36.3pt; mso-list: l1 level1 lfo2&quot;>&#xD;
    &lt;span style=&quot;FONT-SIZE: 11pt; FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol&quot;>&lt;span&#xD;
    style=&quot;mso-list: Ignore&quot;>·&lt;/span>&lt;/span> Trace rules during their full life cycle from requirement to deployment and&#xD;
    maintenance&#xD;
&lt;/p>&#xD;
&lt;p class=&quot;MsoNormal&quot;&#xD;
style=&quot;MARGIN: 3pt 0in 3pt 36.3pt; TEXT-INDENT: -0.25in; tab-stops: list 36.3pt; mso-list: l1 level1 lfo2&quot;>&#xD;
    &lt;span style=&quot;FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol&quot;>&lt;span&#xD;
    style=&quot;mso-list: Ignore&quot;>·&lt;/span>&lt;/span> Link rules to business context and motivation&#xD;
&lt;/p>&#xD;
&lt;p class=&quot;MsoNormal&quot;&#xD;
style=&quot;MARGIN: 3pt 0in 3pt 36.3pt; TEXT-INDENT: -0.25in; tab-stops: list 36.3pt; mso-list: l1 level1 lfo2&quot;>&#xD;
    &lt;span style=&quot;FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol&quot;>&lt;span&#xD;
    style=&quot;mso-list: Ignore&quot;>·&lt;/span>&lt;/span> Develop the rule description using business terms and high level rule language&#xD;
&lt;/p>&#xD;
&lt;p class=&quot;MsoNormal&quot;&#xD;
style=&quot;MARGIN: 3pt 0in 3pt 36.3pt; TEXT-INDENT: -0.25in; tab-stops: list 36.3pt; mso-list: l1 level1 lfo2&quot;>&#xD;
    &lt;span style=&quot;FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol&quot;>&lt;span&#xD;
    style=&quot;mso-list: Ignore&quot;>·&lt;/span>&lt;/span> Prepare the logical data model for the rule engine&amp;nbsp;&#xD;
&lt;/p>&#xD;
&lt;p class=&quot;MsoNormal&quot;&#xD;
style=&quot;MARGIN: 3pt 0in 3pt 36.3pt; TEXT-INDENT: -0.25in; tab-stops: list 36.3pt; mso-list: l1 level1 lfo2&quot;>&#xD;
    &lt;span style=&quot;FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol&quot;>&lt;span&#xD;
    style=&quot;mso-list: Ignore&quot;>·&lt;/span>&lt;/span> Prepare the Rule set implementation and deployment as decision services in a&#xD;
    SOA or BPM application&#xD;
&lt;/p>&#xD;
&lt;p class=&quot;MsoNormal&quot;&#xD;
style=&quot;MARGIN: 3pt 0in 3pt 36.3pt; TEXT-INDENT: -0.25in; tab-stops: list 36.3pt; mso-list: l1 level1 lfo2&quot;>&#xD;
    &lt;span style=&quot;FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol&quot;>&lt;span&#xD;
    style=&quot;mso-list: Ignore&quot;>·&lt;/span>&lt;/span> Articulate the rule governance processes&#xD;
&lt;/p></goals>
  <application>The best way to read this practice is to follow the proposed cycle approach process definition, or to go through the&#xD;
disciplines.</application>
</org.eclipse.epf.uma:PracticeDescription>
