Spis treści

View page as slide show

MIW 2009 XTT_DROOLS

Cel projektu

Zamodelowanie systemu regułowego Drools przy pomocy XTT2:

Wyszukiwanie przykładowych systemów

Przykład reguł

rule "Platinum Priority"
  when
    c : Customer( subscription == "Platinum" )	
    t : Ticket( customer == c, status == "New" )	
  then
    t.setStatus( "Escalate" );
    modify ( t ) {setStatus( "Escalate" )}
end

Przykład reguł w XML-u

<?xml version="1.0"?>
<rule-set>      
  <rule name="Stock Price Low Enough">
    <parameter identifier="stockOffer">
      <class>StockOffer</class>
    </parameter>
    <java:condition>
      stockOffer.getRecommendPurchase() == null
    </java:condition>
    <java:condition>
      stockOffer.getStockPrice() < 100
    </java:condition>
    <java:consequence>
        stockOffer.setRecommendPurchase(YES);
    </java:consequence>
  </rule>
</rule-set>

Testowanie

Przykładowe błędy

<  WorkingMemory wm = ruleBase.newWorkingMemory();
<  wm.assertObject(la);
<  wm.assertObject(la.getBorrower());
<  wm.assertObject(la.getProperty());
---
>  WorkingMemory wm = ruleBase.newStatefulSession();
>  wm.insert(la);
>  wm.insert(la.getBorrower());
>  wm.insert(la.getProperty());

Przykładowe błędy - ścieżka do pliku


<  logger.setFileName( "log/trouble_ticket" );
---
>  logger.setFileName( "/tmp/log_trouble_ticket" );

Modelowanie diagramów

Diagram ARD

Diagram TPH