<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:planet="http://planet.intertwingly.net/" xmlns:indexing="urn:atom-extension:indexing" indexing:index="no"><access:restriction xmlns:access="http://www.bloglines.com/about/specs/fac-1.0" relationship="deny"/>
  <title>Planet BPM</title>
  <updated>2012-02-09T05:27:25Z</updated>
  <generator uri="http://intertwingly.net/code/venus/">Venus</generator>
  <author>
    <name>Planet BPM</name>
    <email>info@planetbpm.org</email>
  </author>
  <id>http://www.planetbpm.org/atom.xml</id>
  <link href="http://www.planetbpm.org/atom.xml" rel="self" type="application/atom+xml"/>
  <link href="http://www.planetbpm.org/" rel="alternate"/>

  <entry xml:lang="de">
    <id>http://www.bpm-guide.de/?p=3480</id>
    <link href="http://www.bpm-guide.de/2012/02/08/bpmn-2-0-activiti-und-camunda-fox-auf-der-cebit/" rel="alternate" type="text/html"/>
    <title>BPM-Guide.de: BPMN 2.0, Activiti and camunda fox at the CeBIT</title>
    <summary>If you are visiting CeBIT 2012 and you are interested in the topics above, you shoud also pay a visit to camunda’s booth in Hall 2, Booth B68. We will share our extensive project experiences in BPMN 2.0 and Activiti with you, and will explain and demonstrate, why camunda fox is the best Enterprise Solution, [...]</summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><div class="wp-caption alignleft" id="attachment_3481" style="width: 160px;"><a href="http://www.bpm-guide.de/wp-content/uploads/2012/02/camunda-cebit.png"><img alt="camunda auf der CeBIT" class="size-thumbnail wp-image-3481 colorbox-3480" height="112" src="http://www.bpm-guide.de/wp-content/uploads/2012/02/camunda-cebit-150x112.png" title="camunda @CeBIT" width="150"/></a><p class="wp-caption-text">camunda @CeBIT</p></div>
<p>If you are visiting CeBIT 2012 and you are interested in the topics above, you shoud also pay a visit to camunda’s booth in <strong>Hall 2, Booth B68</strong>. We will share our extensive project experiences in BPMN 2.0 and Activiti with you, and will explain and demonstrate, why <a href="http://www.camunda.com/fox">camunda fox</a> is the best Enterprise Solution, if you plan to automate your business processes in a Java-environment. </p>
<p>Have we peaked your interest? Then we look forward to meeting you there <img alt=":-)" class="wp-smiley colorbox-3480" src="http://www.bpm-guide.de/wp-includes/images/smilies/icon_smile.gif"/> </p>
<p>By the way: If necessary, you can also get a free CeBIT Ticket from us. Please contact <a href="mailto:maria.courmont@camunda.com">Maria Courmont</a>.</p></div>
    </content>
    <updated>2012-02-08T20:07:47Z</updated>
    <category term="Allgemein"/>
    <category term="Activiti"/>
    <category term="BPMN"/>
    <category term="fox"/>
    <author>
      <name>Jakob Freund</name>
    </author>
    <source>
      <id>http://www.bpm-guide.de</id>
      <link href="http://www.bpm-guide.de/feed/" rel="self" type="application/atom+xml"/>
      <link href="http://www.bpm-guide.de" rel="alternate" type="text/html"/>
      <subtitle>It's Business Process Management</subtitle>
      <title>BPM-Guide.de</title>
      <updated>2012-02-08T20:27:14Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-5869426.post-1468437191194874530</id>
    <link href="http://feeds.athico.com/~r/DroolsRSS/~3/HDjzWgkvofM/developerconference-2012-in-brno-czech.html" rel="alternate" type="text/html"/>
    <title>Drools &amp; JBPM: DeveloperConference 2012 in Brno, Czech Republic 17 - 18 February 2012</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">Next week, on Friday 17 February, I 'll be presenting a introduction to Drools, Guvnor and Planner at <a href="http://fedoraproject.org/wiki/DeveloperConference2012">the DeveloperConference 2012</a> in Brno, Czech Republic.
<div class="separator" style="clear: both; text-align: center;">
<a href="http://fedoraproject.org/wiki/DeveloperConference2012" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="862" src="http://fedoraproject.org/w/uploads/3/38/Rdc-2012.png" width="615"/></a></div>
There are plenty of other interesting JBoss talks, about topics such as CDI, Arquillian Drone, Errai, Infinispan, Hibernate OGM, ... The entrance is free, so join us if you're in the neighborhood.<div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/5869426-1468437191194874530?l=blog.athico.com" width="1"/></div><img height="1" src="http://feeds.feedburner.com/~r/DroolsRSS/~4/HDjzWgkvofM" width="1"/></div>
    </summary>
    <updated>2012-02-08T09:12:00Z</updated>
    <category scheme="http://www.blogger.com/atom/ns#" term="event"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="BRMS Guvnor Drools"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="planner"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="Drools"/><feedburner:origLink xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://blog.athico.com/2012/02/developerconference-2012-in-brno-czech.html</feedburner:origLink>
    <author>
      <name>Geoffrey De Smet</name>
      <email>noreply@blogger.com</email>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-5869426</id>
      <category term="Performance"/>
      <category term="compilers"/>
      <category term="Conflict Resolution"/>
      <category term="Probability"/>
      <category term="use case"/>
      <category term="competition"/>
      <category term="drools webinar"/>
      <category term="cookbook"/>
      <category term="uncertainty"/>
      <category term="aires"/>
      <category term="service repository"/>
      <category term="Simulation and Testing"/>
      <category term="Job"/>
      <category term="Testing"/>
      <category term="medical"/>
      <category term="Time-Sensitive"/>
      <category term="GSoC"/>
      <category term="AI"/>
      <category term="javapolis"/>
      <category term="video"/>
      <category term="Ad-Hoc"/>
      <category term="Expert Systems"/>
      <category term="RuleML"/>
      <category term="variables"/>
      <category term="Business Rules"/>
      <category term="Domain Specific Languages"/>
      <category term="workshop"/>
      <category term="java"/>
      <category term="infoQ"/>
      <category term="JBoss Rules"/>
      <category term="example"/>
      <category term="Mind Map"/>
      <category term="Rules Engine"/>
      <category term="BAM"/>
      <category term="DotNet"/>
      <category term="Rules"/>
      <category term="Business Rules Forum"/>
      <category term="Fuzzy"/>
      <category term="decision tables"/>
      <category term="Boot Camp"/>
      <category term="Drools Boot Camp"/>
      <category term="interview"/>
      <category term="Eclipse"/>
      <category term="MicroContainer"/>
      <category term="Stream"/>
      <category term="designer"/>
      <category term="Brazilian"/>
      <category term="upgrade tool"/>
      <category term="milestone"/>
      <category term="BOF"/>
      <category term="Seam"/>
      <category term="quote"/>
      <category term="JDT"/>
      <category term="shadow facts"/>
      <category term="event"/>
      <category term="ORF 2008"/>
      <category term="SOA"/>
      <category term="Smooks"/>
      <category term="GUI"/>
      <category term="grammar"/>
      <category term="Drools Expert"/>
      <category term="sequential"/>
      <category term="announcement"/>
      <category term="Drools"/>
      <category term="buenos"/>
      <category term="ESP"/>
      <category term="Natural Language"/>
      <category term="Camel"/>
      <category term="SSL"/>
      <category term="jBPM5"/>
      <category term="JSON"/>
      <category term="Drools Flow"/>
      <category term="RuleML 2008"/>
      <category term="Rete"/>
      <category term="Production Rules Systems"/>
      <category term="DRL"/>
      <category term="remote"/>
      <category term="brms insurance demo standalone"/>
      <category term="FactTemplate"/>
      <category term="traveling tournament"/>
      <category term="BRMS"/>
      <category term="MVEL"/>
      <category term="Rule Flow"/>
      <category term="Open Source"/>
      <category term="argentina"/>
      <category term="IKVM"/>
      <category term="BPMN"/>
      <category term="source code"/>
      <category term="standards"/>
      <category term="machine learning"/>
      <category term="image processing"/>
      <category term="Backward Chaining."/>
      <category term="Monitoring"/>
      <category term="modify block"/>
      <category term="GIS"/>
      <category term="accumulate"/>
      <category term="Drools Fusion"/>
      <category term="Codehaus"/>
      <category term="JUG"/>
      <category term="Rule Authoring"/>
      <category term="Negation"/>
      <category term="Business Rules Governance"/>
      <category term="DynaBeans"/>
      <category term="junit"/>
      <category term="JFDI"/>
      <category term="Rule Engines"/>
      <category term="KAMS"/>
      <category term="dynamically generated classes"/>
      <category term="ORF"/>
      <category term="Form Builder"/>
      <category term="syntax"/>
      <category term="shadow proxies"/>
      <category term="BRMS Guvnor Drools"/>
      <category term="ANTLR"/>
      <category term="Service Manager"/>
      <category term="FedEx"/>
      <category term="DSL"/>
      <category term="Clips"/>
      <category term="planner"/>
      <category term="traits"/>
      <category term="examination"/>
      <category term="search space"/>
      <category term="Janino"/>
      <category term="MySQL"/>
      <category term="Web Services"/>
      <category term="semantic web"/>
      <category term="jBPM"/>
      <category term="constraint programming"/>
      <category term="generated classes"/>
      <category term="Research Network"/>
      <category term="algorithm"/>
      <category term="cloud"/>
      <category term="Life Cycle"/>
      <category term="MISMO"/>
      <category term="BPEL"/>
      <category term="LDAP"/>
      <category term="jBPM5 webinar"/>
      <category term="Templates"/>
      <category term="case management"/>
      <category term="android"/>
      <category term="persistence"/>
      <category term="RIF"/>
      <category term="Logic Operators"/>
      <category term="relational programming"/>
      <category term="Debug"/>
      <category term="Jess"/>
      <category term="release"/>
      <category term="extensibility"/>
      <category term="Atom"/>
      <category term="Analytics"/>
      <category term="Portuguese"/>
      <category term="Meetups"/>
      <category term="Synasc"/>
      <category term="drools puzzle"/>
      <category term="Computer Games"/>
      <category term="Progress"/>
      <category term="JavaOne"/>
      <category term="accumulate function"/>
      <category term="Programming"/>
      <category term="Healthcare"/>
      <category term="October Rules Fest"/>
      <category term="Guvnor"/>
      <category term="SwitchYard"/>
      <category term="WordNet"/>
      <category term="SBVR"/>
      <category term="devoxx"/>
      <category term="one"/>
      <category term="Drools Chance"/>
      <category term="plug tree"/>
      <category term="Presentation"/>
      <category term="Spring"/>
      <category term="Guice"/>
      <category term="salaboy"/>
      <category term="solver"/>
      <category term="Savvion"/>
      <category term="OSGi"/>
      <category term="http://www.blogger.com/img/blank.gif"/>
      <category term="REST"/>
      <category term="DSL regexp antlr"/>
      <category term="project proposals"/>
      <category term="Forward  Chaining"/>
      <category term="declarative programming"/>
      <category term="videos"/>
      <category term="CEP"/>
      <category term="book"/>
      <category term="API"/>
      <category term="brms ajax web"/>
      <category term="combinatorial optimization"/>
      <category term="tests"/>
      <category term="computer vision"/>
      <category term="functional programming"/>
      <category term="Time"/>
      <category term="parser"/>
      <category term="droos ide update-site downloads"/>
      <category term="expressiveness"/>
      <author>
        <name>Mark Proctor</name>
        <email>noreply@blogger.com</email>
      </author>
      <link href="http://blog.athico.com/" rel="alternate" type="text/html"/>
      <link href="http://feeds.athico.com/DroolsRSS" rel="self" type="application/atom+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <subtitle>All things Artificial Intelligence related: Rules, Processes, Events, Agents, Planning, Ontologies and more :)</subtitle>
      <title>Drools &amp; jBPM</title>
      <updated>2012-02-08T23:27:12Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://feedproxy.google.com/~r/brsilver/toIM/~3/IQjRWPIoGh8/</id>
    <link href="http://feedproxy.google.com/~r/brsilver/toIM/~3/IQjRWPIoGh8/" rel="alternate" type="text/html"/>
    <title>Bruce Silver: BPMN Method and Style Training March 5-7</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">There’s still space available in my BPMessentials live-onine BPMN Method and Style class, March 5-7 from 11am -4pm (US ET)/8am-1pm (US PT)/5pm-10pm (Europe CET) each day.  No previous modeling experience is required, and you will come out of the training able to construct BPMN models that are not only correct but clear, consistent, and complete.  [...]
<p><a href="http://feedads.g.doubleclick.net/~a/5L5jsSMqzVD0K5gZNzr13lsbo78/0/da"><img border="0" ismap="true" src="http://feedads.g.doubleclick.net/~a/5L5jsSMqzVD0K5gZNzr13lsbo78/0/di"/></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/5L5jsSMqzVD0K5gZNzr13lsbo78/1/da"><img border="0" ismap="true" src="http://feedads.g.doubleclick.net/~a/5L5jsSMqzVD0K5gZNzr13lsbo78/1/di"/></a></p><img height="1" src="http://feeds.feedburner.com/~r/brsilver/toIM/~4/IQjRWPIoGh8" width="1"/></div>
    </summary>
    <updated>2012-02-07T20:27:27Z</updated><feedburner:origLink xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://www.brsilver.com/2012/02/07/bpmn-method-and-style-training-march-5-7/</feedburner:origLink>
    <source>
      <id>http://www.brsilver.com</id>
      <author>
        <name>Bruce Silver</name>
      </author>
      <link href="http://www.brsilver.com" rel="alternate" type="text/html"/>
      <link href="http://feeds.feedburner.com/brsilver/toIM" rel="self" type="application/rss+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <subtitle>Bruce Silver on business process management</subtitle>
      <title>BPMS Watch</title>
      <updated>2012-02-07T20:27:27Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-5869426.post-6749828155721035131</id>
    <link href="http://feeds.athico.com/~r/DroolsRSS/~3/KKcayPhHOIE/drools-jbpm-info-sheet.html" rel="alternate" type="text/html"/>
    <title>Drools &amp; JBPM: Drools &amp; jBPM Info Sheet</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><div dir="ltr" style="text-align: left;">
We've made an Info Sheet that provides an overview of Drools, jBPM and Guvnor. Feel free to download it and hand it out in your public presentations. There are 13 pages in total. You'll need to sign in to slideshare to download. Big text and lots of pretty pictures and very sexy, but not to be used for "extra" curriculum activities ;)<br/>
<a href="http://www.slideshare.net/MarkProctor/drools-jbpm-info-sheet">http://www.slideshare.net/MarkProctor/drools-jbpm-info-sheet</a><br/>
<div class="separator" style="clear: both; text-align: center;">
<a href="http://4.bp.blogspot.com/-XsvNmjYCW9Y/TzFy-ZQB8fI/AAAAAAAAAqQ/1mo0L91Sbco/s1600/infosheet1.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="320" src="http://4.bp.blogspot.com/-XsvNmjYCW9Y/TzFy-ZQB8fI/AAAAAAAAAqQ/1mo0L91Sbco/s320/infosheet1.png" width="229"/></a></div>
<br/></div><div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/5869426-6749828155721035131?l=blog.athico.com" width="1"/></div><img height="1" src="http://feeds.feedburner.com/~r/DroolsRSS/~4/KKcayPhHOIE" width="1"/></div>
    </summary>
    <updated>2012-02-07T18:55:00Z</updated>
    <category scheme="http://www.blogger.com/atom/ns#" term="Presentation"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="jBPM"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="Drools"/><feedburner:origLink xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://blog.athico.com/2012/02/drools-jbpm-info-sheet.html</feedburner:origLink>
    <author>
      <name>Mark Proctor</name>
      <email>noreply@blogger.com</email>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-5869426</id>
      <category term="Performance"/>
      <category term="compilers"/>
      <category term="Conflict Resolution"/>
      <category term="Probability"/>
      <category term="use case"/>
      <category term="competition"/>
      <category term="drools webinar"/>
      <category term="cookbook"/>
      <category term="uncertainty"/>
      <category term="aires"/>
      <category term="service repository"/>
      <category term="Simulation and Testing"/>
      <category term="Job"/>
      <category term="Testing"/>
      <category term="medical"/>
      <category term="Time-Sensitive"/>
      <category term="GSoC"/>
      <category term="AI"/>
      <category term="javapolis"/>
      <category term="video"/>
      <category term="Ad-Hoc"/>
      <category term="Expert Systems"/>
      <category term="RuleML"/>
      <category term="variables"/>
      <category term="Business Rules"/>
      <category term="Domain Specific Languages"/>
      <category term="workshop"/>
      <category term="java"/>
      <category term="infoQ"/>
      <category term="JBoss Rules"/>
      <category term="example"/>
      <category term="Mind Map"/>
      <category term="Rules Engine"/>
      <category term="BAM"/>
      <category term="DotNet"/>
      <category term="Rules"/>
      <category term="Business Rules Forum"/>
      <category term="Fuzzy"/>
      <category term="decision tables"/>
      <category term="Boot Camp"/>
      <category term="Drools Boot Camp"/>
      <category term="interview"/>
      <category term="Eclipse"/>
      <category term="MicroContainer"/>
      <category term="Stream"/>
      <category term="designer"/>
      <category term="Brazilian"/>
      <category term="upgrade tool"/>
      <category term="milestone"/>
      <category term="BOF"/>
      <category term="Seam"/>
      <category term="quote"/>
      <category term="JDT"/>
      <category term="shadow facts"/>
      <category term="event"/>
      <category term="ORF 2008"/>
      <category term="SOA"/>
      <category term="Smooks"/>
      <category term="GUI"/>
      <category term="grammar"/>
      <category term="Drools Expert"/>
      <category term="sequential"/>
      <category term="announcement"/>
      <category term="Drools"/>
      <category term="buenos"/>
      <category term="ESP"/>
      <category term="Natural Language"/>
      <category term="Camel"/>
      <category term="SSL"/>
      <category term="jBPM5"/>
      <category term="JSON"/>
      <category term="Drools Flow"/>
      <category term="RuleML 2008"/>
      <category term="Rete"/>
      <category term="Production Rules Systems"/>
      <category term="DRL"/>
      <category term="remote"/>
      <category term="brms insurance demo standalone"/>
      <category term="FactTemplate"/>
      <category term="traveling tournament"/>
      <category term="BRMS"/>
      <category term="MVEL"/>
      <category term="Rule Flow"/>
      <category term="Open Source"/>
      <category term="argentina"/>
      <category term="IKVM"/>
      <category term="BPMN"/>
      <category term="source code"/>
      <category term="standards"/>
      <category term="machine learning"/>
      <category term="image processing"/>
      <category term="Backward Chaining."/>
      <category term="Monitoring"/>
      <category term="modify block"/>
      <category term="GIS"/>
      <category term="accumulate"/>
      <category term="Drools Fusion"/>
      <category term="Codehaus"/>
      <category term="JUG"/>
      <category term="Rule Authoring"/>
      <category term="Negation"/>
      <category term="Business Rules Governance"/>
      <category term="DynaBeans"/>
      <category term="junit"/>
      <category term="JFDI"/>
      <category term="Rule Engines"/>
      <category term="KAMS"/>
      <category term="dynamically generated classes"/>
      <category term="ORF"/>
      <category term="Form Builder"/>
      <category term="syntax"/>
      <category term="shadow proxies"/>
      <category term="BRMS Guvnor Drools"/>
      <category term="ANTLR"/>
      <category term="Service Manager"/>
      <category term="FedEx"/>
      <category term="DSL"/>
      <category term="Clips"/>
      <category term="planner"/>
      <category term="traits"/>
      <category term="examination"/>
      <category term="search space"/>
      <category term="Janino"/>
      <category term="MySQL"/>
      <category term="Web Services"/>
      <category term="semantic web"/>
      <category term="jBPM"/>
      <category term="constraint programming"/>
      <category term="generated classes"/>
      <category term="Research Network"/>
      <category term="algorithm"/>
      <category term="cloud"/>
      <category term="Life Cycle"/>
      <category term="MISMO"/>
      <category term="BPEL"/>
      <category term="LDAP"/>
      <category term="jBPM5 webinar"/>
      <category term="Templates"/>
      <category term="case management"/>
      <category term="android"/>
      <category term="persistence"/>
      <category term="RIF"/>
      <category term="Logic Operators"/>
      <category term="relational programming"/>
      <category term="Debug"/>
      <category term="Jess"/>
      <category term="release"/>
      <category term="extensibility"/>
      <category term="Atom"/>
      <category term="Analytics"/>
      <category term="Portuguese"/>
      <category term="Meetups"/>
      <category term="Synasc"/>
      <category term="drools puzzle"/>
      <category term="Computer Games"/>
      <category term="Progress"/>
      <category term="JavaOne"/>
      <category term="accumulate function"/>
      <category term="Programming"/>
      <category term="Healthcare"/>
      <category term="October Rules Fest"/>
      <category term="Guvnor"/>
      <category term="SwitchYard"/>
      <category term="WordNet"/>
      <category term="SBVR"/>
      <category term="devoxx"/>
      <category term="one"/>
      <category term="Drools Chance"/>
      <category term="plug tree"/>
      <category term="Presentation"/>
      <category term="Spring"/>
      <category term="Guice"/>
      <category term="salaboy"/>
      <category term="solver"/>
      <category term="Savvion"/>
      <category term="OSGi"/>
      <category term="http://www.blogger.com/img/blank.gif"/>
      <category term="REST"/>
      <category term="DSL regexp antlr"/>
      <category term="project proposals"/>
      <category term="Forward  Chaining"/>
      <category term="declarative programming"/>
      <category term="videos"/>
      <category term="CEP"/>
      <category term="book"/>
      <category term="API"/>
      <category term="brms ajax web"/>
      <category term="combinatorial optimization"/>
      <category term="tests"/>
      <category term="computer vision"/>
      <category term="functional programming"/>
      <category term="Time"/>
      <category term="parser"/>
      <category term="droos ide update-site downloads"/>
      <category term="expressiveness"/>
      <author>
        <name>Mark Proctor</name>
        <email>noreply@blogger.com</email>
      </author>
      <link href="http://blog.athico.com/" rel="alternate" type="text/html"/>
      <link href="http://feeds.athico.com/DroolsRSS" rel="self" type="application/atom+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <subtitle>All things Artificial Intelligence related: Rules, Processes, Events, Agents, Planning, Ontologies and more :)</subtitle>
      <title>Drools &amp; jBPM</title>
      <updated>2012-02-08T23:27:12Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://www.kurze-prozesse.de/?p=1785</id>
    <link href="http://www.kurze-prozesse.de/2012/02/07/mit-der-qualitat-im-prozessmanagement-ist-es-nicht-immer-gut-bestellt/" rel="alternate" type="text/html"/>
    <title>Thomas Allweyer: Mit der Qualität im Prozessmanagement ist es nicht immer gut bestellt</title>
    <summary>Das Qualitätsmanagement ist kaum aus einer Firma wegzudenken. Und die Bedeutung der Prozesse zum Erreichen einer hohen Produkt- oder Dienstleistungsqualität ist unbestritten. Wie aber sieht es mit der Qualität des Prozessmanagements selbst aus? Dieser Frage sind Ayelt Komus vom BPM-Labor der FH Koblenz und Thomas Olbrich von der Firma Taraneon nachgegangen. In Ihrer Studie, an [...]</summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p><a href="http://www.q-in-bpm.org" target="_blank"><img alt="" class="alignnone size-full wp-image-1786" height="127" src="http://www.kurze-prozesse.de/blog/wp-content/uploads/2012/02/Cover-Qualit&#xE4;t-im-Gesch&#xE4;ftsprozessmanagement.jpg" style="float: left; margin-bottom: 10px; margin-right: 10px;" title="Cover Qualit&#xE4;t im Gesch&#xE4;ftsprozessmanagement" width="182"/></a>Das Qualitätsmanagement ist kaum aus einer Firma wegzudenken. Und die Bedeutung der Prozesse zum Erreichen einer hohen Produkt- oder Dienstleistungsqualität ist unbestritten. Wie aber sieht es mit der Qualität des Prozessmanagements selbst aus? Dieser Frage sind <a href="http://www.fh-koblenz.de/Prof-Dr-Ayelt-Komus.komus.0.html" target="_blank">Ayelt Komus vom BPM-Labor der FH Koblenz</a> und Thomas Olbrich von der Firma <a href="http://www.taraneon.de/" target="_blank">Taraneon</a> nachgegangen. In Ihrer Studie, an der 150 Unternehmen aus Deutschland und den USA teilnahmen, fragten sie beispielsweise, wie viele Fehler neu entwickelte oder geänderte Prozesse noch haben, wenn sie live gehen, und wie hoch der Aufwand zur Fehlerkorrektur ist.<span id="more-1785"/></p>
<p>Die Ergebnisse sind nicht gerade ermutigend. So erfüllen nur 46% aller Prozessvorhaben alle Vorgaben hinsichtlich Inhalt, Kosten und Zeit. Bei 37% aller neu entwickelten Prozessen sind wesentliche Nacharbeiten erforderlich. In fast der Hälfte dieser Fälle müssen hierfür mehr als 15% der ursprünglichen Projektzeit investiert werden. Der Korrekturbedarf ist geringer, wenn ein Prozessmanager anstelle eines fachlichen Projektleiters oder eines IT-Projektleiters die Verantwortung trägt.</p>
<p>Wie sieht es mit der Agilität der Unternehmen aus? 33% der Befragten ändern ihre Prozesse ein bis vier Mal pro Jahr, 11% sogar mehr als vier Mal. Diejenigen, die sich selbst als überdurchschnittlich erfolgreiche Unternehmen sehen, ändern ihre Prozesse häufiger als der Durchschnitt. Dennoch sind viele Unternehmen schlecht auf Veränderungen vorbereitet. So schätzen 74%, dass sie im Falle einer radikalen Marktveränderung länger als einen Monat benötigen um festzustellen, welche Prozesse von einer radikalen Marktveränderung betroffen sind. Auch eine systematische Rückmeldung auftretender Fehler und Probleme unterbleibt häufig. So werden in vielen Unternehmen weder Support-Anfragen ausgewertet oder Problemmeldungen in Foren gesammelt, noch wird ein automatisches Monitoring durchgeführt. Vielfach gibt es auch keine definierte Vorgehensweise zur Änderung von Prozessen.</p>
<p>Was sollten die Unternehmen besser machen? Die Autoren der Studie empfehlen, das Wissen der Mitarbeiter um die Prozesse zu verbessern und Prozessmanagement nicht in Form einzelner Projekte sondern als ständige Managementaufgabe zu etablieren. Bei der Neugestaltung von Prozessen sind frühzeitig geeignete Qualitätssicherungsmaßnahmen durchzuführen, und die betroffenen Mitarbeiter stärker einzubinden.</p>
<p>Die Studie kann <a href="http://www.q-in-bpm.org" target="_blank">hier</a> kostenlos angefordert werden.</p></div>
    </content>
    <updated>2012-02-07T18:17:50Z</updated>
    <category term="BPM"/>
    <category term="Qualit&#xE4;tsmanagement"/>
    <category term="Studie"/>
    <author>
      <name>Thomas Allweyer</name>
    </author>
    <source>
      <id>http://www.kurze-prozesse.de</id>
      <link href="http://www.kurze-prozesse.de/feed/" rel="self" type="application/atom+xml"/>
      <link href="http://www.kurze-prozesse.de" rel="alternate" type="text/html"/>
      <subtitle>Das BPM-Blog *</subtitle>
      <title>Kurze Prozesse</title>
      <updated>2012-02-07T20:27:26Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-5869426.post-2400606646731573753</id>
    <link href="http://feeds.athico.com/~r/DroolsRSS/~3/j5XYzC1uCBk/welcome-alexandre-porcelli.html" rel="alternate" type="text/html"/>
    <title>Drools &amp; JBPM: Welcome Alexandre Porcelli</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><div dir="ltr" style="text-align: left;">
Alexandre Porcelli has joined the Drools&amp;jBPM team today. Alexandre is an <a href="http://www.antlr.org/">Antlr </a>guru and also leads the Open Spotlight project, <a href="http://porcelli.github.com/OpenSpotLight/">http://porcelli.github.com/OpenSpotLight/</a>.<br/>
<br/>
Alexendre will initially be helping out on the Guvnor work for jBPM, then in a few months time we hope that he'll lead our work around distributed computing.<br/>
<br/>
Alexendre lives in sunny Brazil, you can read more about him <a href="http://www.blogger.com/here,http://porcelli.com.br/">here,http://porcelli.com.br/</a>.<br/>
<br/>
<div class="separator" style="clear: both; text-align: center;">
<a href="http://a2.twimg.com/profile_images/1130589863/avatar.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="314" src="http://a2.twimg.com/profile_images/1130589863/avatar.png" width="320"/></a></div>
<br/>
<br/>
<br/></div><div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/5869426-2400606646731573753?l=blog.athico.com" width="1"/></div><img height="1" src="http://feeds.feedburner.com/~r/DroolsRSS/~4/j5XYzC1uCBk" width="1"/></div>
    </summary>
    <updated>2012-02-07T14:43:00Z</updated>
    <category scheme="http://www.blogger.com/atom/ns#" term="jBPM"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="Drools"/><feedburner:origLink xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://blog.athico.com/2012/02/welcome-alexandre-porcelli.html</feedburner:origLink>
    <author>
      <name>Mark Proctor</name>
      <email>noreply@blogger.com</email>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-5869426</id>
      <category term="Performance"/>
      <category term="compilers"/>
      <category term="Conflict Resolution"/>
      <category term="Probability"/>
      <category term="use case"/>
      <category term="competition"/>
      <category term="drools webinar"/>
      <category term="cookbook"/>
      <category term="uncertainty"/>
      <category term="aires"/>
      <category term="service repository"/>
      <category term="Simulation and Testing"/>
      <category term="Job"/>
      <category term="Testing"/>
      <category term="medical"/>
      <category term="Time-Sensitive"/>
      <category term="GSoC"/>
      <category term="AI"/>
      <category term="javapolis"/>
      <category term="video"/>
      <category term="Ad-Hoc"/>
      <category term="Expert Systems"/>
      <category term="RuleML"/>
      <category term="variables"/>
      <category term="Business Rules"/>
      <category term="Domain Specific Languages"/>
      <category term="workshop"/>
      <category term="java"/>
      <category term="infoQ"/>
      <category term="JBoss Rules"/>
      <category term="example"/>
      <category term="Mind Map"/>
      <category term="Rules Engine"/>
      <category term="BAM"/>
      <category term="DotNet"/>
      <category term="Rules"/>
      <category term="Business Rules Forum"/>
      <category term="Fuzzy"/>
      <category term="decision tables"/>
      <category term="Boot Camp"/>
      <category term="Drools Boot Camp"/>
      <category term="interview"/>
      <category term="Eclipse"/>
      <category term="MicroContainer"/>
      <category term="Stream"/>
      <category term="designer"/>
      <category term="Brazilian"/>
      <category term="upgrade tool"/>
      <category term="milestone"/>
      <category term="BOF"/>
      <category term="Seam"/>
      <category term="quote"/>
      <category term="JDT"/>
      <category term="shadow facts"/>
      <category term="event"/>
      <category term="ORF 2008"/>
      <category term="SOA"/>
      <category term="Smooks"/>
      <category term="GUI"/>
      <category term="grammar"/>
      <category term="Drools Expert"/>
      <category term="sequential"/>
      <category term="announcement"/>
      <category term="Drools"/>
      <category term="buenos"/>
      <category term="ESP"/>
      <category term="Natural Language"/>
      <category term="Camel"/>
      <category term="SSL"/>
      <category term="jBPM5"/>
      <category term="JSON"/>
      <category term="Drools Flow"/>
      <category term="RuleML 2008"/>
      <category term="Rete"/>
      <category term="Production Rules Systems"/>
      <category term="DRL"/>
      <category term="remote"/>
      <category term="brms insurance demo standalone"/>
      <category term="FactTemplate"/>
      <category term="traveling tournament"/>
      <category term="BRMS"/>
      <category term="MVEL"/>
      <category term="Rule Flow"/>
      <category term="Open Source"/>
      <category term="argentina"/>
      <category term="IKVM"/>
      <category term="BPMN"/>
      <category term="source code"/>
      <category term="standards"/>
      <category term="machine learning"/>
      <category term="image processing"/>
      <category term="Backward Chaining."/>
      <category term="Monitoring"/>
      <category term="modify block"/>
      <category term="GIS"/>
      <category term="accumulate"/>
      <category term="Drools Fusion"/>
      <category term="Codehaus"/>
      <category term="JUG"/>
      <category term="Rule Authoring"/>
      <category term="Negation"/>
      <category term="Business Rules Governance"/>
      <category term="DynaBeans"/>
      <category term="junit"/>
      <category term="JFDI"/>
      <category term="Rule Engines"/>
      <category term="KAMS"/>
      <category term="dynamically generated classes"/>
      <category term="ORF"/>
      <category term="Form Builder"/>
      <category term="syntax"/>
      <category term="shadow proxies"/>
      <category term="BRMS Guvnor Drools"/>
      <category term="ANTLR"/>
      <category term="Service Manager"/>
      <category term="FedEx"/>
      <category term="DSL"/>
      <category term="Clips"/>
      <category term="planner"/>
      <category term="traits"/>
      <category term="examination"/>
      <category term="search space"/>
      <category term="Janino"/>
      <category term="MySQL"/>
      <category term="Web Services"/>
      <category term="semantic web"/>
      <category term="jBPM"/>
      <category term="constraint programming"/>
      <category term="generated classes"/>
      <category term="Research Network"/>
      <category term="algorithm"/>
      <category term="cloud"/>
      <category term="Life Cycle"/>
      <category term="MISMO"/>
      <category term="BPEL"/>
      <category term="LDAP"/>
      <category term="jBPM5 webinar"/>
      <category term="Templates"/>
      <category term="case management"/>
      <category term="android"/>
      <category term="persistence"/>
      <category term="RIF"/>
      <category term="Logic Operators"/>
      <category term="relational programming"/>
      <category term="Debug"/>
      <category term="Jess"/>
      <category term="release"/>
      <category term="extensibility"/>
      <category term="Atom"/>
      <category term="Analytics"/>
      <category term="Portuguese"/>
      <category term="Meetups"/>
      <category term="Synasc"/>
      <category term="drools puzzle"/>
      <category term="Computer Games"/>
      <category term="Progress"/>
      <category term="JavaOne"/>
      <category term="accumulate function"/>
      <category term="Programming"/>
      <category term="Healthcare"/>
      <category term="October Rules Fest"/>
      <category term="Guvnor"/>
      <category term="SwitchYard"/>
      <category term="WordNet"/>
      <category term="SBVR"/>
      <category term="devoxx"/>
      <category term="one"/>
      <category term="Drools Chance"/>
      <category term="plug tree"/>
      <category term="Presentation"/>
      <category term="Spring"/>
      <category term="Guice"/>
      <category term="salaboy"/>
      <category term="solver"/>
      <category term="Savvion"/>
      <category term="OSGi"/>
      <category term="http://www.blogger.com/img/blank.gif"/>
      <category term="REST"/>
      <category term="DSL regexp antlr"/>
      <category term="project proposals"/>
      <category term="Forward  Chaining"/>
      <category term="declarative programming"/>
      <category term="videos"/>
      <category term="CEP"/>
      <category term="book"/>
      <category term="API"/>
      <category term="brms ajax web"/>
      <category term="combinatorial optimization"/>
      <category term="tests"/>
      <category term="computer vision"/>
      <category term="functional programming"/>
      <category term="Time"/>
      <category term="parser"/>
      <category term="droos ide update-site downloads"/>
      <category term="expressiveness"/>
      <author>
        <name>Mark Proctor</name>
        <email>noreply@blogger.com</email>
      </author>
      <link href="http://blog.athico.com/" rel="alternate" type="text/html"/>
      <link href="http://feeds.athico.com/DroolsRSS" rel="self" type="application/atom+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <subtitle>All things Artificial Intelligence related: Rules, Processes, Events, Agents, Planning, Ontologies and more :)</subtitle>
      <title>Drools &amp; jBPM</title>
      <updated>2012-02-08T23:27:11Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-5869426.post-679027687867670225</id>
    <link href="http://feeds.athico.com/~r/DroolsRSS/~3/drxqfzAX9sA/wumpus-world-lives.html" rel="alternate" type="text/html"/>
    <title>Drools &amp; JBPM: Wumpus World Lives!!!</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><div dir="ltr" style="text-align: left;">
Wumpus world continues to improve and is now fully playable. The UI has a lot more polish now and nearly all of the code has been moved to DRL now, including the swing graphics rendering for the cave and the sensor panels. You'll need to use master head to try it. Java is just used to build the kbase from the drl files and to create the swing panels, buttons and forms. WindowBuilder was used to graphical layout things.<br/>
<br/>
The final thing I have to do is allow for client integration, so that people can write rules to automate the hero. <br/>
<br/>
<a href="https://github.com/droolsjbpm/drools/blob/master/drools-examples/src/main/resources/org/drools/examples/wumpus/init.drl">https://github.com/droolsjbpm/drools/blob/master/drools-examples/src/main/resources/org/drools/examples/wumpus/init.drl</a><br/>
<a href="https://github.com/droolsjbpm/drools/blob/master/drools-examples/src/main/resources/org/drools/examples/wumpus/commands.drl">https://github.com/droolsjbpm/drools/blob/master/drools-examples/src/main/resources/org/drools/examples/wumpus/commands.drl</a><br/>
<a href="https://github.com/droolsjbpm/drools/blob/master/drools-examples/src/main/resources/org/drools/examples/wumpus/collision.drl%20">https://github.com/droolsjbpm/drools/blob/master/drools-examples/src/main/resources/org/drools/examples/wumpus/collision.drl </a><br/>
<a href="https://github.com/droolsjbpm/drools/blob/master/drools-examples/src/main/resources/org/drools/examples/wumpus/score.drl">https://github.com/droolsjbpm/drools/blob/master/drools-examples/src/main/resources/org/drools/examples/wumpus/score.drl</a><br/>
<a href="https://github.com/droolsjbpm/drools/blob/master/drools-examples/src/main/resources/org/drools/examples/wumpus/view/ui.drl">https://github.com/droolsjbpm/drools/blob/master/drools-examples/src/main/resources/org/drools/examples/wumpus/view/ui.drl</a><br/>
<a href="https://github.com/droolsjbpm/drools/blob/master/drools-examples/src/main/resources/org/drools/examples/wumpus/view/paintCave.drl">https://github.com/droolsjbpm/drools/blob/master/drools-examples/src/main/resources/org/drools/examples/wumpus/view/paintCave.drl</a><br/>
<a href="https://github.com/droolsjbpm/drools/blob/master/drools-examples/src/main/resources/org/drools/examples/wumpus/view/paintSensor.drl">https://github.com/droolsjbpm/drools/blob/master/drools-examples/src/main/resources/org/drools/examples/wumpus/view/paintSensor.drl</a><br/>
<br/>
Cave is hidden, playing the game purely with Sensors.
<br/>
<div class="separator" style="clear: both; text-align: left;">
<a href="http://2.bp.blogspot.com/-hgzThfa_sik/TzCS2dNOfgI/AAAAAAAAAqA/cfw6t3trQis/s1600/wumpus1.png"><img border="0" height="361" src="http://2.bp.blogspot.com/-hgzThfa_sik/TzCS2dNOfgI/AAAAAAAAAqA/cfw6t3trQis/s400/wumpus1.png" width="400"/></a></div>
<br/>
Cave is now shown, but unvisited rooms are greyed out.
<br/>
<div class="separator" style="clear: both; text-align: left;">
<a href="http://1.bp.blogspot.com/-CHNlj_6AaPg/TzCS0ej9pGI/AAAAAAAAApo/JunZB503d2U/s1600/wumpus3.png"><img border="0" height="350" src="http://1.bp.blogspot.com/-CHNlj_6AaPg/TzCS0ej9pGI/AAAAAAAAApo/JunZB503d2U/s400/wumpus3.png" width="400"/></a></div>
<br/>
Cheating reveals all, I have shot the Wumpus Dead
<br/>
<div class="separator" style="clear: both; text-align: left;">
<a href="http://2.bp.blogspot.com/-ai80aKpHv3A/TzCS06FwQtI/AAAAAAAAAp4/TrHgcRlasw0/s1600/wumpus2.png"><img border="0" height="365" src="http://2.bp.blogspot.com/-ai80aKpHv3A/TzCS06FwQtI/AAAAAAAAAp4/TrHgcRlasw0/s400/wumpus2.png" width="400"/></a></div>
<br/>
Window Builder with MigLayout was used to create the panels, buttons and forms<br/>
<div class="separator" style="clear: both; text-align: left;">
<a href="http://4.bp.blogspot.com/-_lYJ5U6s5J8/TzCW-v19CUI/AAAAAAAAAqI/Goy1kWNNtI4/s1600/wumpus_window_builder.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="177" src="http://4.bp.blogspot.com/-_lYJ5U6s5J8/TzCW-v19CUI/AAAAAAAAAqI/Goy1kWNNtI4/s320/wumpus_window_builder.png" width="320"/></a></div>
<br/>
<br/>
Here is the code to incrementally render the cave rooms:
<br/>
<pre class="brush.drl">function void paintCaveCell(String image, Cell cell, GameView gv, GameUI gui) {
     int rowIndent = 20;
     int colIndent = 5;
     int rowPad = cell.getRow() * gv.getCellPadding();
     int colPad = cell.getCol() * gv.getCellPadding();
     int y = (4 - cell.getRow()) * 50 - rowPad + rowIndent;
     int x = cell.getCol() * 50 + colPad + colIndent;
     
     Graphics caveG = gui.getCavePanel().getCaveG();
     caveG.setColor( Color.WHITE ); // background
     caveG.fillRect( x, y,  gv.getCellWidth(), gv.getCellHeight() );
     caveG.drawImage( ImageIO.read( GameView.class.getResource( image ) ), x, y, gv.getCellHeight(), gv.getCellWidth(), gui.getCavePanel() );
}

rule "Init CaveDirty" when
    not CaveDirty()
then
    insert( new CaveDirty() );
end

rule "Create CompositeImage" when
    $c : Cell()
    not CompositeImageName( cell == $c )
then
    CompositeImageName cin = new CompositeImageName($c, "", "", "", "");
    insert( cin );
end  

rule "Reset CompositeImage" when
    $cin : CompositeImageName()
    not Cell( row == $cin.cell.row, col == $cin.cell.col)
then
    retract( $cin );
end    

rule "Base Paint" when
    $c : Cell()
    $cin : CompositeImageName( cell == $c );
then
end    

rule "Paint Gold" extends "Base Paint" when
    Gold(row == $c.row, col == $c.col)  
then
   modify( $cin ) { gold = "gold" };
end

rule "Paint Empty Gold" extends "Base Paint" when
    not Gold(row == $c.row, col == $c.col)  
then
   modify( $cin ) { gold = "" };
end

rule "Paint Pit" extends "Base Paint" when
    Pit(row == $c.row, col == $c.col)  
then
   modify( $cin ) { pit = "pit" };
end

rule "Paint Empty Pit" extends "Base Paint" when
    not Pit(row == $c.row, col == $c.col)  
then
   modify( $cin ) { pit = "" };
end

rule "Paint Wumpus Alive" extends "Base Paint" when
    Wumpus(alive == true, row == $c.row, col == $c.col)  
then
   modify( $cin ) { wumpus = "wumpus_alive" };
end

rule "Paint Wumpus Dead" extends "Base Paint" when
    Wumpus(alive == false, row == $c.row, col == $c.col)  
then
   modify( $cin ) { wumpus = "wumpus_dead" }
end

rule "Paint Empty Wumpus" extends "Base Paint" when
    not Wumpus(row == $c.row, col == $c.col)  
then
   modify( $cin ) { wumpus = "" }
end


rule "Paint Hero Direction Up" extends "Base Paint" when 
    $h : Hero( direction == Direction.UP, row == $c.row, col == $c.col )
then
     modify( $cin ) { hero = "hero_up" };
end    

rule "Paint Hero Direction Down" extends "Base Paint"  when
    $h : Hero( direction == Direction.DOWN, row == $c.row, col == $c.col  )
then
    modify( $cin ) { hero = "hero_down" };
end   

rule "Paint Hero Direction Left" extends "Base Paint"  when
    $h : Hero( direction == Direction.LEFT, row == $c.row, col == $c.col  )
then
    modify( $cin ) { hero = "hero_left" };
end    

rule "Paint Hero Direction Right" extends "Base Paint" when
    $h : Hero( direction == Direction.RIGHT, row == $c.row, col == $c.col  )
then
    modify( $cin ) { hero = "hero_right" };
end 

rule "Paint Empty Hero" extends "Base Paint" when
    not Hero( row == $c.row, col == $c.col  )
then
    modify( $cin ) { hero = "" };
end   

rule "Paint Hidden Room" when 
    $gui : GameUI( cavePanel != null &amp;&amp; cavePanel.caveG != null  )
    $cd : CaveDirty() @watch(!*)
    $gv : GameView(showAllCells == false)
    $c : Cell(hidden == true) 
then
   paintCaveCell( "hidden_room.png", $c, $gv, $gui);
   modify( $cd ) { dirty = true };
end


rule "Paint Empty Room" when 
   $gui : GameUI( cavePanel != null &amp;&amp; cavePanel.caveG != null )
    $cd : CaveDirty() @watch(!*)   
   ($gv : GameView(showAllCells == true) and $c : Cell() ) or
   ($gv : GameView(showAllCells == false) and $c : Cell(hidden == false) )      
   CompositeImageName( cell == $c, pit == "", wumpus == "", gold == "", hero == "" ) @watch(*)
then
   paintCaveCell( "empty_room.png", $c, $gv, $gui );
   modify( $cd ) { dirty = true };
end 

rule "Paint Non Empty Room" when
   $gui : GameUI( cavePanel != null &amp;&amp; cavePanel.caveG != null )
   $cd : CaveDirty() @watch(!*)   
   ($gv : GameView(showAllCells == true) and $c : Cell() ) or
   ($gv : GameView(showAllCells == false) and $c : Cell(hidden == false) )    
   $cin : CompositeImageName( cell == $c, ( !(hero != "" &amp;&amp; pit != "")  &amp;&amp;  // don't draw a hero on the same square as a pit or an alive wumpus, as the game is over
                                            !(hero != "" &amp;&amp; wumpus == "wumpus_alive") &amp;&amp; 
                                            !(pit == "" &amp;&amp; wumpus == "" &amp;&amp; gold == "" &amp;&amp; hero == "") ) ) @watch(*)
then
    paintCaveCell( $cin.pit + $cin.wumpus + $cin.gold +  $cin.hero + ".png", $cin.cell, $gv, $gui );
    modify( $cd ) { dirty = true };
end

rule "Redraw Cave" no-loop salience -500 when
   $gui : GameUI() 
   $cd : CaveDirty( dirty == true )
then
   $gui.updateCave();
   modify( $cd ) { dirty = false };
end
</pre>
</div><div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/5869426-679027687867670225?l=blog.athico.com" width="1"/></div><img height="1" src="http://feeds.feedburner.com/~r/DroolsRSS/~4/drxqfzAX9sA" width="1"/></div>
    </summary>
    <updated>2012-02-07T03:16:00Z</updated>
    <category scheme="http://www.blogger.com/atom/ns#" term="Drools Expert"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="Drools"/><feedburner:origLink xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://blog.athico.com/2012/02/wumpus-world-lives.html</feedburner:origLink>
    <author>
      <name>Mark Proctor</name>
      <email>noreply@blogger.com</email>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-5869426</id>
      <category term="Performance"/>
      <category term="compilers"/>
      <category term="Conflict Resolution"/>
      <category term="Probability"/>
      <category term="use case"/>
      <category term="competition"/>
      <category term="drools webinar"/>
      <category term="cookbook"/>
      <category term="uncertainty"/>
      <category term="aires"/>
      <category term="service repository"/>
      <category term="Simulation and Testing"/>
      <category term="Job"/>
      <category term="Testing"/>
      <category term="medical"/>
      <category term="Time-Sensitive"/>
      <category term="GSoC"/>
      <category term="AI"/>
      <category term="javapolis"/>
      <category term="video"/>
      <category term="Ad-Hoc"/>
      <category term="Expert Systems"/>
      <category term="RuleML"/>
      <category term="variables"/>
      <category term="Business Rules"/>
      <category term="Domain Specific Languages"/>
      <category term="workshop"/>
      <category term="java"/>
      <category term="infoQ"/>
      <category term="JBoss Rules"/>
      <category term="example"/>
      <category term="Mind Map"/>
      <category term="Rules Engine"/>
      <category term="BAM"/>
      <category term="DotNet"/>
      <category term="Rules"/>
      <category term="Business Rules Forum"/>
      <category term="Fuzzy"/>
      <category term="decision tables"/>
      <category term="Boot Camp"/>
      <category term="Drools Boot Camp"/>
      <category term="interview"/>
      <category term="Eclipse"/>
      <category term="MicroContainer"/>
      <category term="Stream"/>
      <category term="designer"/>
      <category term="Brazilian"/>
      <category term="upgrade tool"/>
      <category term="milestone"/>
      <category term="BOF"/>
      <category term="Seam"/>
      <category term="quote"/>
      <category term="JDT"/>
      <category term="shadow facts"/>
      <category term="event"/>
      <category term="ORF 2008"/>
      <category term="SOA"/>
      <category term="Smooks"/>
      <category term="GUI"/>
      <category term="grammar"/>
      <category term="Drools Expert"/>
      <category term="sequential"/>
      <category term="announcement"/>
      <category term="Drools"/>
      <category term="buenos"/>
      <category term="ESP"/>
      <category term="Natural Language"/>
      <category term="Camel"/>
      <category term="SSL"/>
      <category term="jBPM5"/>
      <category term="JSON"/>
      <category term="Drools Flow"/>
      <category term="RuleML 2008"/>
      <category term="Rete"/>
      <category term="Production Rules Systems"/>
      <category term="DRL"/>
      <category term="remote"/>
      <category term="brms insurance demo standalone"/>
      <category term="FactTemplate"/>
      <category term="traveling tournament"/>
      <category term="BRMS"/>
      <category term="MVEL"/>
      <category term="Rule Flow"/>
      <category term="Open Source"/>
      <category term="argentina"/>
      <category term="IKVM"/>
      <category term="BPMN"/>
      <category term="source code"/>
      <category term="standards"/>
      <category term="machine learning"/>
      <category term="image processing"/>
      <category term="Backward Chaining."/>
      <category term="Monitoring"/>
      <category term="modify block"/>
      <category term="GIS"/>
      <category term="accumulate"/>
      <category term="Drools Fusion"/>
      <category term="Codehaus"/>
      <category term="JUG"/>
      <category term="Rule Authoring"/>
      <category term="Negation"/>
      <category term="Business Rules Governance"/>
      <category term="DynaBeans"/>
      <category term="junit"/>
      <category term="JFDI"/>
      <category term="Rule Engines"/>
      <category term="KAMS"/>
      <category term="dynamically generated classes"/>
      <category term="ORF"/>
      <category term="Form Builder"/>
      <category term="syntax"/>
      <category term="shadow proxies"/>
      <category term="BRMS Guvnor Drools"/>
      <category term="ANTLR"/>
      <category term="Service Manager"/>
      <category term="FedEx"/>
      <category term="DSL"/>
      <category term="Clips"/>
      <category term="planner"/>
      <category term="traits"/>
      <category term="examination"/>
      <category term="search space"/>
      <category term="Janino"/>
      <category term="MySQL"/>
      <category term="Web Services"/>
      <category term="semantic web"/>
      <category term="jBPM"/>
      <category term="constraint programming"/>
      <category term="generated classes"/>
      <category term="Research Network"/>
      <category term="algorithm"/>
      <category term="cloud"/>
      <category term="Life Cycle"/>
      <category term="MISMO"/>
      <category term="BPEL"/>
      <category term="LDAP"/>
      <category term="jBPM5 webinar"/>
      <category term="Templates"/>
      <category term="case management"/>
      <category term="android"/>
      <category term="persistence"/>
      <category term="RIF"/>
      <category term="Logic Operators"/>
      <category term="relational programming"/>
      <category term="Debug"/>
      <category term="Jess"/>
      <category term="release"/>
      <category term="extensibility"/>
      <category term="Atom"/>
      <category term="Analytics"/>
      <category term="Portuguese"/>
      <category term="Meetups"/>
      <category term="Synasc"/>
      <category term="drools puzzle"/>
      <category term="Computer Games"/>
      <category term="Progress"/>
      <category term="JavaOne"/>
      <category term="accumulate function"/>
      <category term="Programming"/>
      <category term="Healthcare"/>
      <category term="October Rules Fest"/>
      <category term="Guvnor"/>
      <category term="SwitchYard"/>
      <category term="WordNet"/>
      <category term="SBVR"/>
      <category term="devoxx"/>
      <category term="one"/>
      <category term="Drools Chance"/>
      <category term="plug tree"/>
      <category term="Presentation"/>
      <category term="Spring"/>
      <category term="Guice"/>
      <category term="salaboy"/>
      <category term="solver"/>
      <category term="Savvion"/>
      <category term="OSGi"/>
      <category term="http://www.blogger.com/img/blank.gif"/>
      <category term="REST"/>
      <category term="DSL regexp antlr"/>
      <category term="project proposals"/>
      <category term="Forward  Chaining"/>
      <category term="declarative programming"/>
      <category term="videos"/>
      <category term="CEP"/>
      <category term="book"/>
      <category term="API"/>
      <category term="brms ajax web"/>
      <category term="combinatorial optimization"/>
      <category term="tests"/>
      <category term="computer vision"/>
      <category term="functional programming"/>
      <category term="Time"/>
      <category term="parser"/>
      <category term="droos ide update-site downloads"/>
      <category term="expressiveness"/>
      <author>
        <name>Mark Proctor</name>
        <email>noreply@blogger.com</email>
      </author>
      <link href="http://blog.athico.com/" rel="alternate" type="text/html"/>
      <link href="http://feeds.athico.com/DroolsRSS" rel="self" type="application/atom+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <subtitle>All things Artificial Intelligence related: Rules, Processes, Events, Agents, Planning, Ontologies and more :)</subtitle>
      <title>Drools &amp; jBPM</title>
      <updated>2012-02-08T23:27:12Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-5869426.post-8686174714467479905</id>
    <link href="http://feeds.athico.com/~r/DroolsRSS/~3/0nSxriPK_SY/drools-developers-cookbook-review.html" rel="alternate" type="text/html"/>
    <title>Drools &amp; JBPM: Drools Developer's Cookbook review</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><a href="http://3.bp.blogspot.com/-PgSME24VCXk/TywJ633hQHI/AAAAAAAAAKc/My00jPs-R-Q/s1600/Drools%2BDevelopers%2BCookbook.jpg"><img alt="" border="0" id="BLOGGER_PHOTO_ID_5704945735005454450" src="http://3.bp.blogspot.com/-PgSME24VCXk/TywJ633hQHI/AAAAAAAAAKc/My00jPs-R-Q/s320/Drools%2BDevelopers%2BCookbook.jpg" style="float: left; margin: 0 10px 10px 0; cursor: pointer; cursor: hand; width: 125px; height: 151px;"/></a><br/>A few weeks ago <b>Packt Publishing</b> released the <a href="http://link.packtpub.com/wdmKYU"><b>Drools Developer's Cookbook</b></a>, written by <i>Lucas Amador</i>. I had the opportunity to review an early draft of the book last year and when I received my copy of the released book I was eager to read it and check out how was it. I am glad to say I am pleasantly surprised.<br/><br/>Packt is known for publishing many high quality books on open source projects and it has already published 2 other books on Drools, but managed to publish this 3rd book with a completely different perspective and as so, allows readers to choose which ones they would benefit more from.<br/><br/>While <a href="http://www.packtpub.com/jboss-drools-business-rules/book"><b>JBoss Drools Business Rules</b></a>, by <i>Paul Browne</i>, focus its content on higher level rule authoring and an earlier version of Guvnor, <a href="http://www.packtpub.com/drools-jboss-rules-50-developers-guide/book"><b>Drools JBoss Rules 5.0 Developer's Guide</b></a>, by <i>Michal Bali</i>, is a deeper tutorial-style reading that builds on the examples from chapter to chapter, detailing how every piece of the puzzle fits together.<br/><br/><a href="http://link.packtpub.com/wdmKYU"><b>Drools Developer's Cookbook</b></a> on the other hand, as the name implies, contains recipes on how to leverage Drools' features to effectively build business solutions. This is an <i>excellent format for those with some knowledge of the platform</i> and that want a detailed reference on how to use specific features. While the Developer's Guide is more suited for a throughout reading, the cookbook is a good reference material that can be read on a chapter basis in any order the reader wishes.<br/><br/>Each recipe is divided in usually 3 sections:<br/><ul><li><b>"Getting ready"</b> details which setup steps are necessary to use the feature/complete the task in that recipe, like for instance, additional jar dependencies or configuration options are required.</li><li><b>"How to do it..."</b> is a step by step explanation of how to use the feature/complete the task.</li><li><b>"How it works..."</b> is my favorite section and explains how and why things work the way they do. This is important knowledge that can be leveraged to achieve different goals.</li></ul>Some recipes also have references for additional documentation or information.<br/><br/>The book covers<a href="http://www.packtpub.com/drools-developers-using-jboss-cookbook/book?utm_source=edsont.com&amp;utm_medium=bookrev&amp;utm_content=blog&amp;utm_campaign=mdb_009715#chapter_0"> an extensive set of components and features</a>, as can be seen in the table of contents: from the core Drools Expert, to Guvnor, Fusion, Planner, Camel/Spring/JPA integration and even a bit of jBPM. I think the book will be really helpful to a large percentage of the Drools user base.<br/><br/>Unfortunately, the book is not perfect. There are some minor issues, like some typos in some of the printed examples. The good news is that this is totally offset by the great <a href="http://www.packtpub.com/support">support Packt</a> provides to all their published books. The (fixed) <a href="http://www.packtpub.com/support">source code</a> is available for download, and I imagine the errata should be soon available as well.<br/><br/>The over 40 recipes in this book are an excellent resource, and I am sure it will left the readers looking forward for more!<div><br/></div><div>Happy Drooling</div><div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/5869426-8686174714467479905?l=blog.athico.com" width="1"/></div><img height="1" src="http://feeds.feedburner.com/~r/DroolsRSS/~4/0nSxriPK_SY" width="1"/></div>
    </summary>
    <updated>2012-02-03T16:30:00Z</updated>
    <category scheme="http://www.blogger.com/atom/ns#" term="cookbook"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="BRMS Guvnor Drools"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="book"/><feedburner:origLink xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://blog.athico.com/2012/02/drools-developers-cookbook-review.html</feedburner:origLink>
    <author>
      <name>Edson Tirelli</name>
      <email>noreply@blogger.com</email>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-5869426</id>
      <category term="Performance"/>
      <category term="compilers"/>
      <category term="Conflict Resolution"/>
      <category term="Probability"/>
      <category term="use case"/>
      <category term="competition"/>
      <category term="drools webinar"/>
      <category term="cookbook"/>
      <category term="uncertainty"/>
      <category term="aires"/>
      <category term="service repository"/>
      <category term="Simulation and Testing"/>
      <category term="Job"/>
      <category term="Testing"/>
      <category term="medical"/>
      <category term="Time-Sensitive"/>
      <category term="GSoC"/>
      <category term="AI"/>
      <category term="javapolis"/>
      <category term="video"/>
      <category term="Ad-Hoc"/>
      <category term="Expert Systems"/>
      <category term="RuleML"/>
      <category term="variables"/>
      <category term="Business Rules"/>
      <category term="Domain Specific Languages"/>
      <category term="workshop"/>
      <category term="java"/>
      <category term="infoQ"/>
      <category term="JBoss Rules"/>
      <category term="example"/>
      <category term="Mind Map"/>
      <category term="Rules Engine"/>
      <category term="BAM"/>
      <category term="DotNet"/>
      <category term="Rules"/>
      <category term="Business Rules Forum"/>
      <category term="Fuzzy"/>
      <category term="decision tables"/>
      <category term="Boot Camp"/>
      <category term="Drools Boot Camp"/>
      <category term="interview"/>
      <category term="Eclipse"/>
      <category term="MicroContainer"/>
      <category term="Stream"/>
      <category term="designer"/>
      <category term="Brazilian"/>
      <category term="upgrade tool"/>
      <category term="milestone"/>
      <category term="BOF"/>
      <category term="Seam"/>
      <category term="quote"/>
      <category term="JDT"/>
      <category term="shadow facts"/>
      <category term="event"/>
      <category term="ORF 2008"/>
      <category term="SOA"/>
      <category term="Smooks"/>
      <category term="GUI"/>
      <category term="grammar"/>
      <category term="Drools Expert"/>
      <category term="sequential"/>
      <category term="announcement"/>
      <category term="Drools"/>
      <category term="buenos"/>
      <category term="ESP"/>
      <category term="Natural Language"/>
      <category term="Camel"/>
      <category term="SSL"/>
      <category term="jBPM5"/>
      <category term="JSON"/>
      <category term="Drools Flow"/>
      <category term="RuleML 2008"/>
      <category term="Rete"/>
      <category term="Production Rules Systems"/>
      <category term="DRL"/>
      <category term="remote"/>
      <category term="brms insurance demo standalone"/>
      <category term="FactTemplate"/>
      <category term="traveling tournament"/>
      <category term="BRMS"/>
      <category term="MVEL"/>
      <category term="Rule Flow"/>
      <category term="Open Source"/>
      <category term="argentina"/>
      <category term="IKVM"/>
      <category term="BPMN"/>
      <category term="source code"/>
      <category term="standards"/>
      <category term="machine learning"/>
      <category term="image processing"/>
      <category term="Backward Chaining."/>
      <category term="Monitoring"/>
      <category term="modify block"/>
      <category term="GIS"/>
      <category term="accumulate"/>
      <category term="Drools Fusion"/>
      <category term="Codehaus"/>
      <category term="JUG"/>
      <category term="Rule Authoring"/>
      <category term="Negation"/>
      <category term="Business Rules Governance"/>
      <category term="DynaBeans"/>
      <category term="junit"/>
      <category term="JFDI"/>
      <category term="Rule Engines"/>
      <category term="KAMS"/>
      <category term="dynamically generated classes"/>
      <category term="ORF"/>
      <category term="Form Builder"/>
      <category term="syntax"/>
      <category term="shadow proxies"/>
      <category term="BRMS Guvnor Drools"/>
      <category term="ANTLR"/>
      <category term="Service Manager"/>
      <category term="FedEx"/>
      <category term="DSL"/>
      <category term="Clips"/>
      <category term="planner"/>
      <category term="traits"/>
      <category term="examination"/>
      <category term="search space"/>
      <category term="Janino"/>
      <category term="MySQL"/>
      <category term="Web Services"/>
      <category term="semantic web"/>
      <category term="jBPM"/>
      <category term="constraint programming"/>
      <category term="generated classes"/>
      <category term="Research Network"/>
      <category term="algorithm"/>
      <category term="cloud"/>
      <category term="Life Cycle"/>
      <category term="MISMO"/>
      <category term="BPEL"/>
      <category term="LDAP"/>
      <category term="jBPM5 webinar"/>
      <category term="Templates"/>
      <category term="case management"/>
      <category term="android"/>
      <category term="persistence"/>
      <category term="RIF"/>
      <category term="Logic Operators"/>
      <category term="relational programming"/>
      <category term="Debug"/>
      <category term="Jess"/>
      <category term="release"/>
      <category term="extensibility"/>
      <category term="Atom"/>
      <category term="Analytics"/>
      <category term="Portuguese"/>
      <category term="Meetups"/>
      <category term="Synasc"/>
      <category term="drools puzzle"/>
      <category term="Computer Games"/>
      <category term="Progress"/>
      <category term="JavaOne"/>
      <category term="accumulate function"/>
      <category term="Programming"/>
      <category term="Healthcare"/>
      <category term="October Rules Fest"/>
      <category term="Guvnor"/>
      <category term="SwitchYard"/>
      <category term="WordNet"/>
      <category term="SBVR"/>
      <category term="devoxx"/>
      <category term="one"/>
      <category term="Drools Chance"/>
      <category term="plug tree"/>
      <category term="Presentation"/>
      <category term="Spring"/>
      <category term="Guice"/>
      <category term="salaboy"/>
      <category term="solver"/>
      <category term="Savvion"/>
      <category term="OSGi"/>
      <category term="http://www.blogger.com/img/blank.gif"/>
      <category term="REST"/>
      <category term="DSL regexp antlr"/>
      <category term="project proposals"/>
      <category term="Forward  Chaining"/>
      <category term="declarative programming"/>
      <category term="videos"/>
      <category term="CEP"/>
      <category term="book"/>
      <category term="API"/>
      <category term="brms ajax web"/>
      <category term="combinatorial optimization"/>
      <category term="tests"/>
      <category term="computer vision"/>
      <category term="functional programming"/>
      <category term="Time"/>
      <category term="parser"/>
      <category term="droos ide update-site downloads"/>
      <category term="expressiveness"/>
      <author>
        <name>Mark Proctor</name>
        <email>noreply@blogger.com</email>
      </author>
      <link href="http://blog.athico.com/" rel="alternate" type="text/html"/>
      <link href="http://feeds.athico.com/DroolsRSS" rel="self" type="application/atom+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <subtitle>All things Artificial Intelligence related: Rules, Processes, Events, Agents, Planning, Ontologies and more :)</subtitle>
      <title>Drools &amp; jBPM</title>
      <updated>2012-02-08T23:27:11Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-5869426.post-3304008513685888393</id>
    <link href="http://feeds.athico.com/~r/DroolsRSS/~3/mBaWzwLoyBo/traveling-salesman-problem-demo-with.html" rel="alternate" type="text/html"/>
    <title>Drools &amp; JBPM: Traveling Salesman Problem demo with Drools Planner</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">Implementing TSP or vehicle routing in <a href="http://www.jboss.org/drools/drools-planner">Drools Planner</a> 5.4.0.Beta2 and earlier was difficult. But starting from 5.4.0.CR1, such use cases are easy and far less code to implement. And they are compatible with real-time planning.<br/>
<br/>
Just take a look at the Traveling Salesman Problem (TSP) demo. It shows adding cities in real-time and demonstrates how easy it is to change the constraints:<br/>
<br/>

<br/>
<br/>
Coming soon: a vehicle routing example and even better scalability.<div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/5869426-3304008513685888393?l=blog.athico.com" width="1"/></div><img height="1" src="http://feeds.feedburner.com/~r/DroolsRSS/~4/mBaWzwLoyBo" width="1"/></div>
    </summary>
    <updated>2012-02-03T16:12:00Z</updated>
    <category scheme="http://www.blogger.com/atom/ns#" term="planner"/><feedburner:origLink xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://blog.athico.com/2012/02/traveling-salesman-problem-demo-with.html</feedburner:origLink>
    <author>
      <name>Geoffrey De Smet</name>
      <email>noreply@blogger.com</email>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-5869426</id>
      <category term="Performance"/>
      <category term="compilers"/>
      <category term="Conflict Resolution"/>
      <category term="Probability"/>
      <category term="use case"/>
      <category term="competition"/>
      <category term="drools webinar"/>
      <category term="cookbook"/>
      <category term="uncertainty"/>
      <category term="aires"/>
      <category term="service repository"/>
      <category term="Simulation and Testing"/>
      <category term="Job"/>
      <category term="Testing"/>
      <category term="medical"/>
      <category term="Time-Sensitive"/>
      <category term="GSoC"/>
      <category term="AI"/>
      <category term="javapolis"/>
      <category term="video"/>
      <category term="Ad-Hoc"/>
      <category term="Expert Systems"/>
      <category term="RuleML"/>
      <category term="variables"/>
      <category term="Business Rules"/>
      <category term="Domain Specific Languages"/>
      <category term="workshop"/>
      <category term="java"/>
      <category term="infoQ"/>
      <category term="JBoss Rules"/>
      <category term="example"/>
      <category term="Mind Map"/>
      <category term="Rules Engine"/>
      <category term="BAM"/>
      <category term="DotNet"/>
      <category term="Rules"/>
      <category term="Business Rules Forum"/>
      <category term="Fuzzy"/>
      <category term="decision tables"/>
      <category term="Boot Camp"/>
      <category term="Drools Boot Camp"/>
      <category term="interview"/>
      <category term="Eclipse"/>
      <category term="MicroContainer"/>
      <category term="Stream"/>
      <category term="designer"/>
      <category term="Brazilian"/>
      <category term="upgrade tool"/>
      <category term="milestone"/>
      <category term="BOF"/>
      <category term="Seam"/>
      <category term="quote"/>
      <category term="JDT"/>
      <category term="shadow facts"/>
      <category term="event"/>
      <category term="ORF 2008"/>
      <category term="SOA"/>
      <category term="Smooks"/>
      <category term="GUI"/>
      <category term="grammar"/>
      <category term="Drools Expert"/>
      <category term="sequential"/>
      <category term="announcement"/>
      <category term="Drools"/>
      <category term="buenos"/>
      <category term="ESP"/>
      <category term="Natural Language"/>
      <category term="Camel"/>
      <category term="SSL"/>
      <category term="jBPM5"/>
      <category term="JSON"/>
      <category term="Drools Flow"/>
      <category term="RuleML 2008"/>
      <category term="Rete"/>
      <category term="Production Rules Systems"/>
      <category term="DRL"/>
      <category term="remote"/>
      <category term="brms insurance demo standalone"/>
      <category term="FactTemplate"/>
      <category term="traveling tournament"/>
      <category term="BRMS"/>
      <category term="MVEL"/>
      <category term="Rule Flow"/>
      <category term="Open Source"/>
      <category term="argentina"/>
      <category term="IKVM"/>
      <category term="BPMN"/>
      <category term="source code"/>
      <category term="standards"/>
      <category term="machine learning"/>
      <category term="image processing"/>
      <category term="Backward Chaining."/>
      <category term="Monitoring"/>
      <category term="modify block"/>
      <category term="GIS"/>
      <category term="accumulate"/>
      <category term="Drools Fusion"/>
      <category term="Codehaus"/>
      <category term="JUG"/>
      <category term="Rule Authoring"/>
      <category term="Negation"/>
      <category term="Business Rules Governance"/>
      <category term="DynaBeans"/>
      <category term="junit"/>
      <category term="JFDI"/>
      <category term="Rule Engines"/>
      <category term="KAMS"/>
      <category term="dynamically generated classes"/>
      <category term="ORF"/>
      <category term="Form Builder"/>
      <category term="syntax"/>
      <category term="shadow proxies"/>
      <category term="BRMS Guvnor Drools"/>
      <category term="ANTLR"/>
      <category term="Service Manager"/>
      <category term="FedEx"/>
      <category term="DSL"/>
      <category term="Clips"/>
      <category term="planner"/>
      <category term="traits"/>
      <category term="examination"/>
      <category term="search space"/>
      <category term="Janino"/>
      <category term="MySQL"/>
      <category term="Web Services"/>
      <category term="semantic web"/>
      <category term="jBPM"/>
      <category term="constraint programming"/>
      <category term="generated classes"/>
      <category term="Research Network"/>
      <category term="algorithm"/>
      <category term="cloud"/>
      <category term="Life Cycle"/>
      <category term="MISMO"/>
      <category term="BPEL"/>
      <category term="LDAP"/>
      <category term="jBPM5 webinar"/>
      <category term="Templates"/>
      <category term="case management"/>
      <category term="android"/>
      <category term="persistence"/>
      <category term="RIF"/>
      <category term="Logic Operators"/>
      <category term="relational programming"/>
      <category term="Debug"/>
      <category term="Jess"/>
      <category term="release"/>
      <category term="extensibility"/>
      <category term="Atom"/>
      <category term="Analytics"/>
      <category term="Portuguese"/>
      <category term="Meetups"/>
      <category term="Synasc"/>
      <category term="drools puzzle"/>
      <category term="Computer Games"/>
      <category term="Progress"/>
      <category term="JavaOne"/>
      <category term="accumulate function"/>
      <category term="Programming"/>
      <category term="Healthcare"/>
      <category term="October Rules Fest"/>
      <category term="Guvnor"/>
      <category term="SwitchYard"/>
      <category term="WordNet"/>
      <category term="SBVR"/>
      <category term="devoxx"/>
      <category term="one"/>
      <category term="Drools Chance"/>
      <category term="plug tree"/>
      <category term="Presentation"/>
      <category term="Spring"/>
      <category term="Guice"/>
      <category term="salaboy"/>
      <category term="solver"/>
      <category term="Savvion"/>
      <category term="OSGi"/>
      <category term="http://www.blogger.com/img/blank.gif"/>
      <category term="REST"/>
      <category term="DSL regexp antlr"/>
      <category term="project proposals"/>
      <category term="Forward  Chaining"/>
      <category term="declarative programming"/>
      <category term="videos"/>
      <category term="CEP"/>
      <category term="book"/>
      <category term="API"/>
      <category term="brms ajax web"/>
      <category term="combinatorial optimization"/>
      <category term="tests"/>
      <category term="computer vision"/>
      <category term="functional programming"/>
      <category term="Time"/>
      <category term="parser"/>
      <category term="droos ide update-site downloads"/>
      <category term="expressiveness"/>
      <author>
        <name>Mark Proctor</name>
        <email>noreply@blogger.com</email>
      </author>
      <link href="http://blog.athico.com/" rel="alternate" type="text/html"/>
      <link href="http://feeds.athico.com/DroolsRSS" rel="self" type="application/atom+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <subtitle>All things Artificial Intelligence related: Rules, Processes, Events, Agents, Planning, Ontologies and more :)</subtitle>
      <title>Drools &amp; jBPM</title>
      <updated>2012-02-08T23:27:11Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-5869426.post-6527926437329810587</id>
    <link href="http://feeds.athico.com/~r/DroolsRSS/~3/Tz_vd-U8zYI/drools-cookbook.html" rel="alternate" type="text/html"/>
    <title>Drools &amp; JBPM: Drools Cookbook</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><a href="http://link.packtpub.com/ivHAPZ">http://link.packtpub.com/ivHAPZ</a><br/><br/><a href="http://www.packtpub.com/sites/default/files/1964OS_Drools%20Developer%E2%80%99s%20Cookbook.jpg"><img alt="" border="0" src="http://www.packtpub.com/sites/default/files/1964OS_Drools%20Developer%E2%80%99s%20Cookbook.jpg" style="cursor: pointer; cursor: hand; width: 500px; height: 617px;"/></a><div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/5869426-6527926437329810587?l=blog.athico.com" width="1"/></div><img height="1" src="http://feeds.feedburner.com/~r/DroolsRSS/~4/Tz_vd-U8zYI" width="1"/></div>
    </summary>
    <updated>2012-02-02T09:56:00Z</updated>
    <category scheme="http://www.blogger.com/atom/ns#" term="Drools"/><feedburner:origLink xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://blog.athico.com/2012/02/drools-cookbook.html</feedburner:origLink>
    <author>
      <name>Mark Proctor</name>
      <email>noreply@blogger.com</email>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-5869426</id>
      <category term="Performance"/>
      <category term="compilers"/>
      <category term="Conflict Resolution"/>
      <category term="Probability"/>
      <category term="use case"/>
      <category term="competition"/>
      <category term="drools webinar"/>
      <category term="cookbook"/>
      <category term="uncertainty"/>
      <category term="aires"/>
      <category term="service repository"/>
      <category term="Simulation and Testing"/>
      <category term="Job"/>
      <category term="Testing"/>
      <category term="medical"/>
      <category term="Time-Sensitive"/>
      <category term="GSoC"/>
      <category term="AI"/>
      <category term="javapolis"/>
      <category term="video"/>
      <category term="Ad-Hoc"/>
      <category term="Expert Systems"/>
      <category term="RuleML"/>
      <category term="variables"/>
      <category term="Business Rules"/>
      <category term="Domain Specific Languages"/>
      <category term="workshop"/>
      <category term="java"/>
      <category term="infoQ"/>
      <category term="JBoss Rules"/>
      <category term="example"/>
      <category term="Mind Map"/>
      <category term="Rules Engine"/>
      <category term="BAM"/>
      <category term="DotNet"/>
      <category term="Rules"/>
      <category term="Business Rules Forum"/>
      <category term="Fuzzy"/>
      <category term="decision tables"/>
      <category term="Boot Camp"/>
      <category term="Drools Boot Camp"/>
      <category term="interview"/>
      <category term="Eclipse"/>
      <category term="MicroContainer"/>
      <category term="Stream"/>
      <category term="designer"/>
      <category term="Brazilian"/>
      <category term="upgrade tool"/>
      <category term="milestone"/>
      <category term="BOF"/>
      <category term="Seam"/>
      <category term="quote"/>
      <category term="JDT"/>
      <category term="shadow facts"/>
      <category term="event"/>
      <category term="ORF 2008"/>
      <category term="SOA"/>
      <category term="Smooks"/>
      <category term="GUI"/>
      <category term="grammar"/>
      <category term="Drools Expert"/>
      <category term="sequential"/>
      <category term="announcement"/>
      <category term="Drools"/>
      <category term="buenos"/>
      <category term="ESP"/>
      <category term="Natural Language"/>
      <category term="Camel"/>
      <category term="SSL"/>
      <category term="jBPM5"/>
      <category term="JSON"/>
      <category term="Drools Flow"/>
      <category term="RuleML 2008"/>
      <category term="Rete"/>
      <category term="Production Rules Systems"/>
      <category term="DRL"/>
      <category term="remote"/>
      <category term="brms insurance demo standalone"/>
      <category term="FactTemplate"/>
      <category term="traveling tournament"/>
      <category term="BRMS"/>
      <category term="MVEL"/>
      <category term="Rule Flow"/>
      <category term="Open Source"/>
      <category term="argentina"/>
      <category term="IKVM"/>
      <category term="BPMN"/>
      <category term="source code"/>
      <category term="standards"/>
      <category term="machine learning"/>
      <category term="image processing"/>
      <category term="Backward Chaining."/>
      <category term="Monitoring"/>
      <category term="modify block"/>
      <category term="GIS"/>
      <category term="accumulate"/>
      <category term="Drools Fusion"/>
      <category term="Codehaus"/>
      <category term="JUG"/>
      <category term="Rule Authoring"/>
      <category term="Negation"/>
      <category term="Business Rules Governance"/>
      <category term="DynaBeans"/>
      <category term="junit"/>
      <category term="JFDI"/>
      <category term="Rule Engines"/>
      <category term="KAMS"/>
      <category term="dynamically generated classes"/>
      <category term="ORF"/>
      <category term="Form Builder"/>
      <category term="syntax"/>
      <category term="shadow proxies"/>
      <category term="BRMS Guvnor Drools"/>
      <category term="ANTLR"/>
      <category term="Service Manager"/>
      <category term="FedEx"/>
      <category term="DSL"/>
      <category term="Clips"/>
      <category term="planner"/>
      <category term="traits"/>
      <category term="examination"/>
      <category term="search space"/>
      <category term="Janino"/>
      <category term="MySQL"/>
      <category term="Web Services"/>
      <category term="semantic web"/>
      <category term="jBPM"/>
      <category term="constraint programming"/>
      <category term="generated classes"/>
      <category term="Research Network"/>
      <category term="algorithm"/>
      <category term="cloud"/>
      <category term="Life Cycle"/>
      <category term="MISMO"/>
      <category term="BPEL"/>
      <category term="LDAP"/>
      <category term="jBPM5 webinar"/>
      <category term="Templates"/>
      <category term="case management"/>
      <category term="android"/>
      <category term="persistence"/>
      <category term="RIF"/>
      <category term="Logic Operators"/>
      <category term="relational programming"/>
      <category term="Debug"/>
      <category term="Jess"/>
      <category term="release"/>
      <category term="extensibility"/>
      <category term="Atom"/>
      <category term="Analytics"/>
      <category term="Portuguese"/>
      <category term="Meetups"/>
      <category term="Synasc"/>
      <category term="drools puzzle"/>
      <category term="Computer Games"/>
      <category term="Progress"/>
      <category term="JavaOne"/>
      <category term="accumulate function"/>
      <category term="Programming"/>
      <category term="Healthcare"/>
      <category term="October Rules Fest"/>
      <category term="Guvnor"/>
      <category term="SwitchYard"/>
      <category term="WordNet"/>
      <category term="SBVR"/>
      <category term="devoxx"/>
      <category term="one"/>
      <category term="Drools Chance"/>
      <category term="plug tree"/>
      <category term="Presentation"/>
      <category term="Spring"/>
      <category term="Guice"/>
      <category term="salaboy"/>
      <category term="solver"/>
      <category term="Savvion"/>
      <category term="OSGi"/>
      <category term="http://www.blogger.com/img/blank.gif"/>
      <category term="REST"/>
      <category term="DSL regexp antlr"/>
      <category term="project proposals"/>
      <category term="Forward  Chaining"/>
      <category term="declarative programming"/>
      <category term="videos"/>
      <category term="CEP"/>
      <category term="book"/>
      <category term="API"/>
      <category term="brms ajax web"/>
      <category term="combinatorial optimization"/>
      <category term="tests"/>
      <category term="computer vision"/>
      <category term="functional programming"/>
      <category term="Time"/>
      <category term="parser"/>
      <category term="droos ide update-site downloads"/>
      <category term="expressiveness"/>
      <author>
        <name>Mark Proctor</name>
        <email>noreply@blogger.com</email>
      </author>
      <link href="http://blog.athico.com/" rel="alternate" type="text/html"/>
      <link href="http://feeds.athico.com/DroolsRSS" rel="self" type="application/atom+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <subtitle>All things Artificial Intelligence related: Rules, Processes, Events, Agents, Planning, Ontologies and more :)</subtitle>
      <title>Drools &amp; jBPM</title>
      <updated>2012-02-08T23:27:12Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://www.kurze-prozesse.de/?p=1761</id>
    <link href="http://www.kurze-prozesse.de/2012/02/02/neuauflage-bpmn-method-style/" rel="alternate" type="text/html"/>
    <title>Thomas Allweyer: Neuauflage BPMN Method &amp; Style</title>
    <summary>Bruce Silver hat sein beliebtes BPMN-Buch umfassend überarbeitet. In die Neuauflage von BPMN Method and Style flossen einerseits Erfahrungen aus den BPMN-Kursen des Autors ein, andererseits ist zwischenzeitlich die Endfassung der BPMN 2.0 erschienen. Silver hat selbst an der neuen Spezifikation mitgearbeitet. Einige der Ideen aus seinem Buch wurden auch in den offiziellen Standard übernommen, [...]</summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p><a href="http://www.amazon.de/gp/product/0982368119/ref=as_li_ss_tl?ie=UTF8&amp;tag=kurzproz-21&amp;linkCode=as2&amp;camp=1638&amp;creative=19454&amp;creativeASIN=0982368119" target="_blank"><img alt="" class="alignnone size-full wp-image-1762" height="188" src="http://www.kurze-prozesse.de/blog/wp-content/uploads/2012/01/Cover-BPMN-Method-and-Style.jpg" style="float: left; margin-bottom: 10px; margin-right: 10px;" title="Cover BPMN Method and Style" width="153"/></a>Bruce Silver hat sein beliebtes BPMN-Buch umfassend überarbeitet. In die Neuauflage von <a href="http://www.amazon.de/gp/product/0982368119/ref=as_li_ss_tl?ie=UTF8&amp;tag=kurzproz-21&amp;linkCode=as2&amp;camp=1638&amp;creative=19454&amp;creativeASIN=0982368119" target="_blank">BPMN Method and Style</a> flossen einerseits Erfahrungen aus den BPMN-Kursen des Autors ein, andererseits ist zwischenzeitlich die Endfassung der BPMN 2.0 erschienen. Silver hat selbst an der neuen Spezifikation mitgearbeitet. Einige der Ideen aus seinem Buch wurden auch in den offiziellen Standard übernommen, insbesondere die Einteilung der BPMN-Sprachelemente in verschiedene Klassen für unterschiedliche Modellierungszwecke. So umfasst die BPMN-Palette für die deskriptive Prozessmodellierung die recht einfachen Elemente, die in Silvers Methodik für das Modellierungs-Level 1 verwendet werden. Wesentlich umfangreicher ist die Modellierungpalette für die analytische Modellierung oder das Level 2. <span id="more-1761"/></p>
<p>Die grafische Notation selbst hat gegenüber Version 1.2 nicht viele Änderungen erfahren. Größere Neuerungen stellen vielmehr die Einführung des Metamodells, das standardisierte Austauschformat und die Ausführungssemantik für Process Engines dar. Entsprechend umfasst das Buch zwei Teile: Der erste Teil befasst sich mit der grafischen Notation. Hier finden sich auch viele Inhalte aus der ersten Auflage wieder. Der zweite Teil, der komplett neu geschrieben wurde,  behandelt vor allem den XML-basierten Austausch von beschreibenden und ausführbaren Modellen. Entsprechend richtet sich der erste Teil an alle BPMN-Nutzer, der zweite Teil hingegen vor allem an Hersteller von Modellierungswerkzeugen und Process Engines. Die z. T. umfangreichen XML-Beispiele sind für  normale Modellierer wenig hilfreich. Sie können die Lektüre daher getrost in der Mitte des Buches beenden.</p>
<div style="float: right; width: 7em; border: 1px solid gray; font-size: 140%; color: darkgray; text-align: center; padding: 10px;"><strong><a href="http://www.kurze-prozesse.de/bpmbuecher/">Weitere Bücher zum Thema BPM</a></strong></div>
<p>Im ersten Teil hingegen erklärt der Autor nicht nur die einzelnen Konstrukte der BPMN, sondern erläutert auch seine Methoden- und Stil-Regeln, die dazu beitragen sollen, möglichst eindeutige und verständliche Modelle zu erstellen. Die BPMN-Spezifikation gibt eben keine Hinweise, wie man gute Modelle entwickelt. Die im Buch vorgestellte Methodik erweitert daher die BPMN um geeignete Modellierungskonventionen. Silver legt dabei vor allem Wert darauf, dass ein Diagramm keinen Interpretationsspielraum lässt, sondern den betreffenden Prozess eindeutig beschreibt. Außerdem soll die Grafik die Prozesslogik so komplett beschreiben, dass sie auch ohne zusätzliche Erläuterungen oder in Attributen versteckte Details genutzt werden kann.</p>
<p>Da die Regeln der BPMN quer durch die gesamte Spezifikation verstreut sind, dürften auch erfahrene BPMN-Modellierer davon profitieren, dass die wichtigsten Modellierungsregeln in einem eigenen Kapitel als zusammenhängende Liste zusammengefasst sind. Auch Silvers Erweiterungen – die im übrigen völlig konsistent mit dem Standard sind und lediglich die geeignete Anwendung der Spezifikation regeln – werden hier nochmals übersichtlich aufgeführt.</p>
<p>Bewusst behandelt Silver nicht den gesamten Sprachumfang, sondern nur die aus seiner Sicht relevanten Teile der BPMN. So fehlen die in der BPMN 2.0 hinzugekommenen Choreographie- und Kollaborationsdiagramme komplett, die auch in der Praxis bislang keine so große Verbreitung gefunden haben. Etwas kurz geraten ist die Erläuterung für welche Zwecke die beiden Modellierungs-Level jeweils eingesetzt werden sollten. Hier wird man als Modellierer ein wenig alleine gelassen. Im Gegensatz zur ersten Auflage wird das etwas umfangreichere Beispiel eines Autoverkaufs auch nur noch für das Level 1 ausgeführt. Die etwas unübersichtlich geratenen Level 2-Diagramme dieses Beispiels fehlen nun komplett, so dass nicht ganz klar wird, wie man für dieses Level das angestrebte Ziel der guten Verständlichkeit erreicht.</p>
<p>Trotz dieser Einschränkungen ist zumindest der erste Teil für jeden uneingeschränkt empfehlenswert, der sich ernsthaft mit der BPMN auseinandersetzen möchte.</p>
<hr/>
<p>
Silver, Bruce:<br/>
BPMN Method &amp; Style. With BPMN Implementer’s Guide.<br/>
2nd Edition<br/>
Cody-Cassidy Press 2011<br/>
<a href="http://www.amazon.de/gp/product/0982368119/ref=as_li_ss_tl?ie=UTF8&amp;tag=kurzproz-21&amp;linkCode=as2&amp;camp=1638&amp;creative=19454&amp;creativeASIN=0982368119" target="_blank">Das Buch bei amazon.</a></p></div>
    </content>
    <updated>2012-02-02T07:53:41Z</updated>
    <category term="Allgemein"/>
    <category term="BPMN"/>
    <category term="B&#xFC;cher"/>
    <category term="Modellierung"/>
    <category term="BPMN 2.0"/>
    <category term="Modellierungskonventionen"/>
    <category term="Modellierungsmethode"/>
    <author>
      <name>Thomas Allweyer</name>
    </author>
    <source>
      <id>http://www.kurze-prozesse.de</id>
      <link href="http://www.kurze-prozesse.de/feed/" rel="self" type="application/atom+xml"/>
      <link href="http://www.kurze-prozesse.de" rel="alternate" type="text/html"/>
      <subtitle>Das BPM-Blog *</subtitle>
      <title>Kurze Prozesse</title>
      <updated>2012-02-07T20:27:26Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://social-biz.org/?p=1820</id>
    <link href="http://social-biz.org/2012/02/01/interview-for-projects-at-work/" rel="alternate" type="text/html"/>
    <title>Keith Swenson: Interview for Projects at Work</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">John R. D’Entremont interviewed me to put together an article called “Mastering the Unpredictable” on the Projects At Work website.  You have to register to read the entire article, but it is free, and John has done a nice job of … <a href="http://social-biz.org/2012/02/01/interview-for-projects-at-work/">Continue reading <span class="meta-nav">→</span></a><img alt="" border="0" height="1" src="http://stats.wordpress.com/b.gif?host=social-biz.org&amp;blog=190929&amp;post=1820&amp;subd=kswenson&amp;ref=&amp;feed=1" width="1"/></div>
    </summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p>John R. D’Entremont interviewed me to put together an article called “<a href="http://www.projectsatwork.com/content/Articles/270139.cfm">Mastering the Unpredictable</a>” on the <a href="http://www.projectsatwork.com/content/Articles/270139.cfm">Projects At Work</a> website.  You have to register to read the entire article, but it is free, and John has done a nice job of putting all the information together into a compelling article about the genesis of the book by the same title.  Below is some of the questions and answers that we exchanged.<span id="more-1820"/></p>
<h3><strong><span style="color: #008080;">John: To help our readers gain some perspective on your background, could you share some thoughts on what you do when you are not writing?</span></strong></h3>
<p>Keith: I am really a software architect: I help design system and that requires that standard processes and procedures be put into place within the entire team of developers. To do that, I do a lot of thinking about how to design rules that people can work with. In the early 1990′s I got involved in a number of standards efforts: OMG, Case Communique, and Workflow Management Coalition. This was because I saw the need for design rules across the industry, and these organizations were the best ways to accomplish such things.</p>
<h3><strong><span style="color: #008080;">John: What inspired you to write your first book?</span></strong></h3>
<p>Keith: It was a long time coming. In the early 90′s I got my first papers published in conferences because Fujitsu had no real mechanism to publicize ideas, and conference proceedings seemed the best way to get in contact with others who care about the topic. From there I moved to tutorials and writing the materials for that. Then a German professor contacted me to let me know he was using my tutorial notes in his college class on Business Process Reengineering and Workflow. I self published four books from tutorial notes and from other documents that I had developed over the years for guidelines on software development techniques. In the mid 2000′s I participated in a chain of technology tutorials with the WfMC. Robert Shapiro and I recorded one of our sessions and turned that into a book on BPM standards. I spend so much time trying to get the concepts clear to me, that I really was compelled to write the stuff down and make it available in a reproducible form.</p>
<h3><span style="color: #008080;"><strong>What was the motivation behind your research and writing on the subject of knowledge work and Adaptive Case Management (ACM)?</strong></span></h3>
<p>Keith: My goal has always been to find a way to support office workers. I thikn I was always considering the creative work the knowledge workers do, although I was not using that term then. If you read my papers in the 1990′s you will find discussion of how each team, and potentially each worker, needs to find the right fit to their own needs. The idea behind “Collaborative Planning” was that getting together to decide what to do was an important part of actually doing things. This is a BIG difference philosophically from those who believe that all work can be automated, and that you can eliminate humans from work entirely. The Workflow Management Coalition always included the idea that some work can be automated, but some work inherently must be done by humans, that is enshrined in the Workflow Reference Architecture produced in 1995 and still relevant today. I, and many others in the BPM field, were struggling to support humans along side the automatable data processing. It was in 2009 that it became clear that the definition of BPM had “collapsed” in the public eye to mean only automatable work, and specifically orchestrating data flow between servers. People felt that BPM was a part of SOA. Many of us were frustrated by that, because there is so much that can not be automated and required human intelligence. The key concept was that people were doing work that could not be predicted in advance, and so predictability became distinguishing aspect of what was and was not knowledge work. We had a meeting in Maidenhead England where the WfMC invited many of the top thinkers on this topic. Eleven of the 12 authors of Mastering the Unpredictable were at that meeting. We felt that the subject was so important, and so urgent, that we decided to share the effort and write it all down. Five months later Mastering the Unpredictable was released to the public.</p>
<h3><span style="color: #008080;"><strong>Are there any sections (or elements) in “Mastering the Unpredictable” that you are particularly passionate about?</strong></span></h3>
<p>That is a little like asking which of your children you like the best! The book progressively discloses ideas, and so the first chapter covers the concepts at a high level, and chapters 4 and 5 get into a lot of important details. Then the rest of the book reflects on use cases and how the technology fits into different fields. We know so much more know about the field, but still I think the book stands on its own for giving a cogent picture of what is possible.</p>
<h3><span style="color: #008080;"><strong>Are there any particular challenges that come into play with ACM? Can you recommend any best practices?</strong></span></h3>
<p>The biggest challenge is getting IT departments to realize that they can’t automate the creative parts of the organization. They have a “Jetson’s Mentality” thinking that all work will ultimately be reduced to a single button press. At the same time, the people who lead creative organizations, and know that it can not be automated, tend to shun al technology because of the way that the IT department tried to reduce all work to automation. Creativity comes so naturally to people that we don’t realize what we are doing and how we do it. So we find that we have to sell not a technology, but a management philosophy. Many manager believe that there is actually exactly one way to do things, even though their teams are constantly changing form and method. Because they are not faced with the reality that work processes are continually in flux, they tend to believe that there must be one single best way to do something. Getting past the “Newtonian Illusion” that an organization is base on fundamentally simple rule is the biggest challenges to deployment of ACM.</p>
<h3><span style="color: #008080;"><strong>Do you have any advice on how to incorporate social media into managing the unpredictable?</strong></span></h3>
<p>I am always careful to distinguish “social media” from “social technology” – they are similar technology, but distinct uses and benefits. Social media is typically used to broadcast to — and from — masses of people. Social technology however is a set of capabilities that take social network relationships into account. In many ways ACM *is* social technology because it makes use of explicit representation of relationships between people to support the work on a particular case.</p>
<h3><span style="color: #008080;"><strong>Do you have any case studies where you’ve combined social media with ACM?</strong></span></h3>
<p>I would say that ACM is about supporting case managers to accomplish projects and get things done. One of the things they may want to do is to engage the public using social media and their use of social media will be not significantly different from those who don’t use ACM. One of the use cases covered in the book is “New Product Development” and clearly when you release a product, you are going to want to leverage social media in the normal way. So they go together but I don’t see any specific dependence between the two subjects.</p>
<h3><span style="color: #008080;"><strong>In hindsight, are there any features of your published works that you would change or build upon?</strong></span></h3>
<p>There have been way to many discussion of the comparison of ACM to BPM. This is because we accurately predicted that those who see the world as something to be automated, would perceive ACM as being the same as BPM, and we wanted to preempt the discussion and try to make it the distinction clear from the start. However, most of this discussion is in vein because those who try to automate all work tend to think only of automatable work cases are important, and dismiss the unpredictable work as either nonexistent or unimportant. If I were to do it over, I would probably simply ignore the BPM comparison, simply focus on those organization that depend upon innovation and creativity, and show how ACM can support that work, without any comparison with BPM. It seems that the knowledge work support, and routine work support, are distinct problem that can be handled by different support organizations.</p>
<h3><span style="color: #008080;"><strong>What are your current/future projects?</strong></span></h3>
<p>Organization are realizing the value of supporting knowledge workers, particulary that knowledge work is the most important element of competition in the coming years. As routine work is automated, what is left is work that requires a human intelligence, and better you can leverage human intelligence the more competitive you will be. I am helping companies to select the right technology and configure it for use in supporting knowledge workers. I am trying to work with a group of people to define more clearly what is and is not essential as part of an ACM package, and if things work well I would like to develop interoperability standards to allow various ACM system to cooperate with each other.</p>
<h3><span style="color: #008080;"><strong>Can you share some of the feedback that you’ve recieved for “Mastering the Unpredictable”? Have people in the field embraced the concepts outlined in the book?</strong></span></h3>
<p>There has been a big and positive response among those who have to deal with creative knowledge work. Forrester have published a rating of case management products (they call it Dynamic Case Management). IBM calls it “Advanced Case Management” and people from TJ Watson Research Center have published paper recently on similar topics. A proposal have been submitted for holding the first International workshop for Adaptive Case Management in Sept 2012. Even with this response, we are still just seeing the beginning of movement. Most IT Departments are still focused on automating routine work, and for good reason: there is still a lot of low-hanging fruit or routine processes that really need automating, and such automation is saving organizations tremendous amounts of needless human activity. But over the next 10 years those routine processes will be mostly automated. What will IT departments do when all the routine processes are automated? They will implement ACM system to facilitate knowledge workers, and such support will will make the difference between a winner and loser in the marketplace. It will become a key strategic factor for a company.</p>
<h3><span style="color: #008080;"><strong>Any recommendations on how to get IT departments on board with ACM deployment?</strong></span></h3>
<p>The most important thing is to understand the principle of “unpredictability”. I use the example of a search and rescue team to demonstrate the kind of decisions-on-the-fly that are involved. A search and rescue team prepares in advance, but not by making specific pre-defined actions, but instead to practice “patterns” of working together that can be reused. Think of this like different “plays” in American football: the team practices how to interact using different plays, but the game is never scripted, and even a give play has variability that is decided at the time of the play, and by the players as the play works out. The launch of a new movie makes use of patterns of working together (booking first run theaters, billboard advertisements, promotional products at fast food restaurants, etc) but no two movies are ever launched in exactly the same way, because every launch needs to take into account many factors of current events, culture, fads, trends, as well as competition that is being launched at nearly the same time. IT departments need to acknowledge that in certain types of work, there is no single process, but instead the process followed is different every single time.</p>
<p>Another example I often use is Dr. House the television show because it demonstrates in nearly every episode that the information necessary to predict the correct treatment is not available up front. The patient is dying, and something has to be done, but nobody knows what. After treatment starts, strange responses to the treatment give additional clues about what is wrong, causing the doctor to decide to change the treatment as it progresses. This idea of insufficient information up front, and evolving the plan as the treatment is being given is an essential aspect of Adaptive Case Management. Many of the patients have combinations of problems. Statistical analysis shows that even combining only two illnesses can give you hundreds of millions of combinations, implying that every such patient that comes to a hospital is potentially unique. The idea that there are a small number of standard treatments that can be prescribed up front must be abandoned.</p>
<p>Once the IT department understands that things are not predictable up front, once they have let go of the Newtonian idea that there is a simple rule and the bottom of all behavior, then it is fairly easy to get them to see that ACM provides a way to put an intelligent human at the center of the work. Instead of a factory that is automated to eliminate all human involvement, the IT system becomes a kind of “bionic limb” that allows people to access information faster, sift and sort it more effectively, communicate to others more effectively, and to coordinate the tasks of other people more powerfully. The IT systems become extensions of the decision makers, not the replacement of them.</p>
<p>For many, when they realize this, they also realize that they have always known that executives would never be replaced by IT systems. For many, this is a realization that IT systems can support more kinds of work than they ever thought possible before. Instead of being an approach that competes with existing ways of designing and implementing applications, this become a way to extend IT systems to jobs that have never been able to be effectively supported before. It is a new opportunity for IT departments.</p>
<h3><span style="color: #008080;"><strong>What is your vision of the long range future?</strong></span></h3>
<p>If you indulge me in a bit of wild speculation, we might glimpse at the far future. In 10 to 20 years we will see the transformation of business such that all workers are executives. What I mean by this is that work will consist of making decisions: someone will have to decide how much money and resources to invest in a particular initiative, but the actions resulting from that decision will be largely automated. I don’t mean to imply that we all will live like some futuristic Henry VIII. There will be hundreds of millions of other executives to deal with, so the chief decisions will be about strategies to get others on board with your initiatives — or more frequently on whether to get on board with other initiatives. Once the decision is made to do something with all the right people involved, all the rest will be essentially automated and will proceed without any “work”. Decide that you want the latest electronic gadget and it will be manufactured for you in Siberia and automatically shipped to your doorstep and possible even set up automatically for you. Decide that angioplasty is right treatment for this patient, and all the rest of the preparation, handling, exchange of money, and supply of materials is done automatically, and possibly even the surgery itself (although I expect innovative surgery will be one of the last areas of automation because surgeons need to be very adaptive as they work). Decide that a particular product line is unprofitable, but that there appears to be an uptick in demand for another product line, and this can be automatically communicated to all the right people, triggering a cascade of decision making through the organization, but much of what we consider today as “work” will be fully automated. It is not a panacea: decision making can be more stressful and more exhausting than what we call work today. Furthermore, the effect of poor decisions will be amplified the same way that good decision are, and so the pressure to make the right decision increases. Progressive companies are recognizing this trend today, and preparing by focusing on getting good decision makers, and on IT systems that support decision making such as ACM.</p>
<h3><span style="color: #008080;"><strong>Again, thank you so much for your time on this.  It was a pleasure chatting with you, and I think our readers will really appreciate this opportunity to further connect with the concepts that you discuss in your writing.</strong></span></h3>
<p>My pleasure as well.</p>
<br/>  <a href="http://feeds.wordpress.com/1.0/gocomments/kswenson.wordpress.com/1820/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/kswenson.wordpress.com/1820/"/></a> <a href="http://feeds.wordpress.com/1.0/godelicious/kswenson.wordpress.com/1820/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/kswenson.wordpress.com/1820/"/></a> <a href="http://feeds.wordpress.com/1.0/gofacebook/kswenson.wordpress.com/1820/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/kswenson.wordpress.com/1820/"/></a> <a href="http://feeds.wordpress.com/1.0/gotwitter/kswenson.wordpress.com/1820/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/kswenson.wordpress.com/1820/"/></a> <a href="http://feeds.wordpress.com/1.0/gostumble/kswenson.wordpress.com/1820/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/kswenson.wordpress.com/1820/"/></a> <a href="http://feeds.wordpress.com/1.0/godigg/kswenson.wordpress.com/1820/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/kswenson.wordpress.com/1820/"/></a> <a href="http://feeds.wordpress.com/1.0/goreddit/kswenson.wordpress.com/1820/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/kswenson.wordpress.com/1820/"/></a> <img alt="" border="0" height="1" src="http://stats.wordpress.com/b.gif?host=social-biz.org&amp;blog=190929&amp;post=1820&amp;subd=kswenson&amp;ref=&amp;feed=1" width="1"/></div>
    </content>
    <updated>2012-02-02T03:15:48Z</updated>
    <category term="Adaptive Case Management"/>
    <category term="Social Business"/>
    <category term="Social Network"/>
    <category term="social software"/>
    <author>
      <name>kswenson</name>
    </author>
    <source>
      <id>http://social-biz.org</id>
      <logo>http://s2.wp.com/i/buttonw-com.png</logo>
      <link href="http://social-biz.org/feed/" rel="self" type="application/atom+xml"/>
      <link href="http://social-biz.org" rel="alternate" type="text/html"/>
      <link href="http://social-biz.org/osd.xml" rel="search" type="application/opensearchdescription+xml"/>
      <link href="http://social-biz.org/?pushpress=hub" rel="hub" type="text/html"/>
      <subtitle>Empowering office workers to be more efficient, adaptive, and effective.</subtitle>
      <title>Collaborative Planning &amp; Social Business</title>
      <updated>2012-02-09T05:27:02Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-5869426.post-7335632684347818078</id>
    <link href="http://feeds.athico.com/~r/DroolsRSS/~3/hcdggkOrfbA/drools-540beta-2-released.html" rel="alternate" type="text/html"/>
    <title>Drools &amp; JBPM: Drools 5.4.0.Beta 2 released</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">We're happy to announce the release of Drools (Expert, Fusion, Planner, Guvnor) <b>5.4.0.Beta2</b>.<br/><br/><p>Documentation, Release Notes and Downloads are detailed below:<br/></p><ul><li>Download the zips from the bottom of <a href="http://www.jboss.org/drools/downloads">the drools download page</a>.</li><ul><li>To try out the examples, just unzip one and run a <font>runExamples.sh/.bat</font> script.</li></ul><ul><li>See the JBoss Maven repository for <a href="https://repository.jboss.org/nexus/index.html#nexus-search;gav%7Eorg.drools*%7E%7E5.4.0.Beta2%7E%7E">a list of all released artifacts</a>.</li><ul><li>It will be synced to <a href="http://search.maven.org/#search%7Cga%7Beta1%7Corg.drools">Maven Central</a> automatically in a couple of hours.</li></ul></ul><li><b><a href="http://docs.jboss.org/drools/release/5.4.0.Beta2/droolsjbpm-introduction-docs/html/releaseNotesBeta2.html">Read the new and noteworthy changes here.</a></b></li></ul>Try it out and give us some feed-back (<a href="http://www.jboss.org/drools/lists">user list</a>, <a href="https://issues.jboss.org/browse/JBRULES">issue tracker</a>).<div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/5869426-7335632684347818078?l=blog.athico.com" width="1"/></div><img height="1" src="http://feeds.feedburner.com/~r/DroolsRSS/~4/hcdggkOrfbA" width="1"/></div>
    </summary>
    <updated>2012-01-31T13:49:00Z</updated>
    <category scheme="http://www.blogger.com/atom/ns#" term="release"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="Drools"/><feedburner:origLink xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://blog.athico.com/2012/01/drools-540beta-2-released.html</feedburner:origLink>
    <author>
      <name>Toni Rikkola</name>
      <email>noreply@blogger.com</email>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-5869426</id>
      <category term="Performance"/>
      <category term="compilers"/>
      <category term="Conflict Resolution"/>
      <category term="Probability"/>
      <category term="use case"/>
      <category term="competition"/>
      <category term="drools webinar"/>
      <category term="cookbook"/>
      <category term="uncertainty"/>
      <category term="aires"/>
      <category term="service repository"/>
      <category term="Simulation and Testing"/>
      <category term="Job"/>
      <category term="Testing"/>
      <category term="medical"/>
      <category term="Time-Sensitive"/>
      <category term="GSoC"/>
      <category term="AI"/>
      <category term="javapolis"/>
      <category term="video"/>
      <category term="Ad-Hoc"/>
      <category term="Expert Systems"/>
      <category term="RuleML"/>
      <category term="variables"/>
      <category term="Business Rules"/>
      <category term="Domain Specific Languages"/>
      <category term="workshop"/>
      <category term="java"/>
      <category term="infoQ"/>
      <category term="JBoss Rules"/>
      <category term="example"/>
      <category term="Mind Map"/>
      <category term="Rules Engine"/>
      <category term="BAM"/>
      <category term="DotNet"/>
      <category term="Rules"/>
      <category term="Business Rules Forum"/>
      <category term="Fuzzy"/>
      <category term="decision tables"/>
      <category term="Boot Camp"/>
      <category term="Drools Boot Camp"/>
      <category term="interview"/>
      <category term="Eclipse"/>
      <category term="MicroContainer"/>
      <category term="Stream"/>
      <category term="designer"/>
      <category term="Brazilian"/>
      <category term="upgrade tool"/>
      <category term="milestone"/>
      <category term="BOF"/>
      <category term="Seam"/>
      <category term="quote"/>
      <category term="JDT"/>
      <category term="shadow facts"/>
      <category term="event"/>
      <category term="ORF 2008"/>
      <category term="SOA"/>
      <category term="Smooks"/>
      <category term="GUI"/>
      <category term="grammar"/>
      <category term="Drools Expert"/>
      <category term="sequential"/>
      <category term="announcement"/>
      <category term="Drools"/>
      <category term="buenos"/>
      <category term="ESP"/>
      <category term="Natural Language"/>
      <category term="Camel"/>
      <category term="SSL"/>
      <category term="jBPM5"/>
      <category term="JSON"/>
      <category term="Drools Flow"/>
      <category term="RuleML 2008"/>
      <category term="Rete"/>
      <category term="Production Rules Systems"/>
      <category term="DRL"/>
      <category term="remote"/>
      <category term="brms insurance demo standalone"/>
      <category term="FactTemplate"/>
      <category term="traveling tournament"/>
      <category term="BRMS"/>
      <category term="MVEL"/>
      <category term="Rule Flow"/>
      <category term="Open Source"/>
      <category term="argentina"/>
      <category term="IKVM"/>
      <category term="BPMN"/>
      <category term="source code"/>
      <category term="standards"/>
      <category term="machine learning"/>
      <category term="image processing"/>
      <category term="Backward Chaining."/>
      <category term="Monitoring"/>
      <category term="modify block"/>
      <category term="GIS"/>
      <category term="accumulate"/>
      <category term="Drools Fusion"/>
      <category term="Codehaus"/>
      <category term="JUG"/>
      <category term="Rule Authoring"/>
      <category term="Negation"/>
      <category term="Business Rules Governance"/>
      <category term="DynaBeans"/>
      <category term="junit"/>
      <category term="JFDI"/>
      <category term="Rule Engines"/>
      <category term="KAMS"/>
      <category term="dynamically generated classes"/>
      <category term="ORF"/>
      <category term="Form Builder"/>
      <category term="syntax"/>
      <category term="shadow proxies"/>
      <category term="BRMS Guvnor Drools"/>
      <category term="ANTLR"/>
      <category term="Service Manager"/>
      <category term="FedEx"/>
      <category term="DSL"/>
      <category term="Clips"/>
      <category term="planner"/>
      <category term="traits"/>
      <category term="examination"/>
      <category term="search space"/>
      <category term="Janino"/>
      <category term="MySQL"/>
      <category term="Web Services"/>
      <category term="semantic web"/>
      <category term="jBPM"/>
      <category term="constraint programming"/>
      <category term="generated classes"/>
      <category term="Research Network"/>
      <category term="algorithm"/>
      <category term="cloud"/>
      <category term="Life Cycle"/>
      <category term="MISMO"/>
      <category term="BPEL"/>
      <category term="LDAP"/>
      <category term="jBPM5 webinar"/>
      <category term="Templates"/>
      <category term="case management"/>
      <category term="android"/>
      <category term="persistence"/>
      <category term="RIF"/>
      <category term="Logic Operators"/>
      <category term="relational programming"/>
      <category term="Debug"/>
      <category term="Jess"/>
      <category term="release"/>
      <category term="extensibility"/>
      <category term="Atom"/>
      <category term="Analytics"/>
      <category term="Portuguese"/>
      <category term="Meetups"/>
      <category term="Synasc"/>
      <category term="drools puzzle"/>
      <category term="Computer Games"/>
      <category term="Progress"/>
      <category term="JavaOne"/>
      <category term="accumulate function"/>
      <category term="Programming"/>
      <category term="Healthcare"/>
      <category term="October Rules Fest"/>
      <category term="Guvnor"/>
      <category term="SwitchYard"/>
      <category term="WordNet"/>
      <category term="SBVR"/>
      <category term="devoxx"/>
      <category term="one"/>
      <category term="Drools Chance"/>
      <category term="plug tree"/>
      <category term="Presentation"/>
      <category term="Spring"/>
      <category term="Guice"/>
      <category term="salaboy"/>
      <category term="solver"/>
      <category term="Savvion"/>
      <category term="OSGi"/>
      <category term="http://www.blogger.com/img/blank.gif"/>
      <category term="REST"/>
      <category term="DSL regexp antlr"/>
      <category term="project proposals"/>
      <category term="Forward  Chaining"/>
      <category term="declarative programming"/>
      <category term="videos"/>
      <category term="CEP"/>
      <category term="book"/>
      <category term="API"/>
      <category term="brms ajax web"/>
      <category term="combinatorial optimization"/>
      <category term="tests"/>
      <category term="computer vision"/>
      <category term="functional programming"/>
      <category term="Time"/>
      <category term="parser"/>
      <category term="droos ide update-site downloads"/>
      <category term="expressiveness"/>
      <author>
        <name>Mark Proctor</name>
        <email>noreply@blogger.com</email>
      </author>
      <link href="http://blog.athico.com/" rel="alternate" type="text/html"/>
      <link href="http://feeds.athico.com/DroolsRSS" rel="self" type="application/atom+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <subtitle>All things Artificial Intelligence related: Rules, Processes, Events, Agents, Planning, Ontologies and more :)</subtitle>
      <title>Drools &amp; jBPM</title>
      <updated>2012-02-08T23:27:12Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-5869426.post-7558107747966527771</id>
    <link href="http://feeds.athico.com/~r/DroolsRSS/~3/m2OqFzqcJE4/wumpus-world-update.html" rel="alternate" type="text/html"/>
    <title>Drools &amp; JBPM: Wumpus World Update</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">I made further progress with Wumpus World today, as previously blogged <a href="http://blog.athico.com/2012/01/wumpus-world.html">here</a>. The project is checked into drools-examples, execute "WumpusWorldServer" to run.<br/>-larger sensor icons<br/>-bump and scream sensors added<br/>-left, right buttons now rotate left and rotate right.<br/>-hero faces direction based on rotation<br/>-can now shoot arrows<br/>-wumpus can die<br/><a href="http://2.bp.blogspot.com/-87YyR6fjgGo/TyHRPEYSCAI/AAAAAAAAApU/yRPFb5p1r98/s1600/wumpus.png"><img alt="" border="0" id="BLOGGER_PHOTO_ID_5702068660031588354" src="http://2.bp.blogspot.com/-87YyR6fjgGo/TyHRPEYSCAI/AAAAAAAAApU/yRPFb5p1r98/s400/wumpus.png" style="cursor: pointer; cursor: hand; width: 400px; height: 287px;"/></a><div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/5869426-7558107747966527771?l=blog.athico.com" width="1"/></div><img height="1" src="http://feeds.feedburner.com/~r/DroolsRSS/~4/m2OqFzqcJE4" width="1"/></div>
    </summary>
    <updated>2012-01-26T22:15:00Z</updated>
    <category scheme="http://www.blogger.com/atom/ns#" term="Drools Expert"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="Drools"/><feedburner:origLink xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://blog.athico.com/2012/01/wumpus-world-update.html</feedburner:origLink>
    <author>
      <name>Mark Proctor</name>
      <email>noreply@blogger.com</email>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-5869426</id>
      <category term="Performance"/>
      <category term="compilers"/>
      <category term="Conflict Resolution"/>
      <category term="Probability"/>
      <category term="use case"/>
      <category term="competition"/>
      <category term="drools webinar"/>
      <category term="cookbook"/>
      <category term="uncertainty"/>
      <category term="aires"/>
      <category term="service repository"/>
      <category term="Simulation and Testing"/>
      <category term="Job"/>
      <category term="Testing"/>
      <category term="medical"/>
      <category term="Time-Sensitive"/>
      <category term="GSoC"/>
      <category term="AI"/>
      <category term="javapolis"/>
      <category term="video"/>
      <category term="Ad-Hoc"/>
      <category term="Expert Systems"/>
      <category term="RuleML"/>
      <category term="variables"/>
      <category term="Business Rules"/>
      <category term="Domain Specific Languages"/>
      <category term="workshop"/>
      <category term="java"/>
      <category term="infoQ"/>
      <category term="JBoss Rules"/>
      <category term="example"/>
      <category term="Mind Map"/>
      <category term="Rules Engine"/>
      <category term="BAM"/>
      <category term="DotNet"/>
      <category term="Rules"/>
      <category term="Business Rules Forum"/>
      <category term="Fuzzy"/>
      <category term="decision tables"/>
      <category term="Boot Camp"/>
      <category term="Drools Boot Camp"/>
      <category term="interview"/>
      <category term="Eclipse"/>
      <category term="MicroContainer"/>
      <category term="Stream"/>
      <category term="designer"/>
      <category term="Brazilian"/>
      <category term="upgrade tool"/>
      <category term="milestone"/>
      <category term="BOF"/>
      <category term="Seam"/>
      <category term="quote"/>
      <category term="JDT"/>
      <category term="shadow facts"/>
      <category term="event"/>
      <category term="ORF 2008"/>
      <category term="SOA"/>
      <category term="Smooks"/>
      <category term="GUI"/>
      <category term="grammar"/>
      <category term="Drools Expert"/>
      <category term="sequential"/>
      <category term="announcement"/>
      <category term="Drools"/>
      <category term="buenos"/>
      <category term="ESP"/>
      <category term="Natural Language"/>
      <category term="Camel"/>
      <category term="SSL"/>
      <category term="jBPM5"/>
      <category term="JSON"/>
      <category term="Drools Flow"/>
      <category term="RuleML 2008"/>
      <category term="Rete"/>
      <category term="Production Rules Systems"/>
      <category term="DRL"/>
      <category term="remote"/>
      <category term="brms insurance demo standalone"/>
      <category term="FactTemplate"/>
      <category term="traveling tournament"/>
      <category term="BRMS"/>
      <category term="MVEL"/>
      <category term="Rule Flow"/>
      <category term="Open Source"/>
      <category term="argentina"/>
      <category term="IKVM"/>
      <category term="BPMN"/>
      <category term="source code"/>
      <category term="standards"/>
      <category term="machine learning"/>
      <category term="image processing"/>
      <category term="Backward Chaining."/>
      <category term="Monitoring"/>
      <category term="modify block"/>
      <category term="GIS"/>
      <category term="accumulate"/>
      <category term="Drools Fusion"/>
      <category term="Codehaus"/>
      <category term="JUG"/>
      <category term="Rule Authoring"/>
      <category term="Negation"/>
      <category term="Business Rules Governance"/>
      <category term="DynaBeans"/>
      <category term="junit"/>
      <category term="JFDI"/>
      <category term="Rule Engines"/>
      <category term="KAMS"/>
      <category term="dynamically generated classes"/>
      <category term="ORF"/>
      <category term="Form Builder"/>
      <category term="syntax"/>
      <category term="shadow proxies"/>
      <category term="BRMS Guvnor Drools"/>
      <category term="ANTLR"/>
      <category term="Service Manager"/>
      <category term="FedEx"/>
      <category term="DSL"/>
      <category term="Clips"/>
      <category term="planner"/>
      <category term="traits"/>
      <category term="examination"/>
      <category term="search space"/>
      <category term="Janino"/>
      <category term="MySQL"/>
      <category term="Web Services"/>
      <category term="semantic web"/>
      <category term="jBPM"/>
      <category term="constraint programming"/>
      <category term="generated classes"/>
      <category term="Research Network"/>
      <category term="algorithm"/>
      <category term="cloud"/>
      <category term="Life Cycle"/>
      <category term="MISMO"/>
      <category term="BPEL"/>
      <category term="LDAP"/>
      <category term="jBPM5 webinar"/>
      <category term="Templates"/>
      <category term="case management"/>
      <category term="android"/>
      <category term="persistence"/>
      <category term="RIF"/>
      <category term="Logic Operators"/>
      <category term="relational programming"/>
      <category term="Debug"/>
      <category term="Jess"/>
      <category term="release"/>
      <category term="extensibility"/>
      <category term="Atom"/>
      <category term="Analytics"/>
      <category term="Portuguese"/>
      <category term="Meetups"/>
      <category term="Synasc"/>
      <category term="drools puzzle"/>
      <category term="Computer Games"/>
      <category term="Progress"/>
      <category term="JavaOne"/>
      <category term="accumulate function"/>
      <category term="Programming"/>
      <category term="Healthcare"/>
      <category term="October Rules Fest"/>
      <category term="Guvnor"/>
      <category term="SwitchYard"/>
      <category term="WordNet"/>
      <category term="SBVR"/>
      <category term="devoxx"/>
      <category term="one"/>
      <category term="Drools Chance"/>
      <category term="plug tree"/>
      <category term="Presentation"/>
      <category term="Spring"/>
      <category term="Guice"/>
      <category term="salaboy"/>
      <category term="solver"/>
      <category term="Savvion"/>
      <category term="OSGi"/>
      <category term="http://www.blogger.com/img/blank.gif"/>
      <category term="REST"/>
      <category term="DSL regexp antlr"/>
      <category term="project proposals"/>
      <category term="Forward  Chaining"/>
      <category term="declarative programming"/>
      <category term="videos"/>
      <category term="CEP"/>
      <category term="book"/>
      <category term="API"/>
      <category term="brms ajax web"/>
      <category term="combinatorial optimization"/>
      <category term="tests"/>
      <category term="computer vision"/>
      <category term="functional programming"/>
      <category term="Time"/>
      <category term="parser"/>
      <category term="droos ide update-site downloads"/>
      <category term="expressiveness"/>
      <author>
        <name>Mark Proctor</name>
        <email>noreply@blogger.com</email>
      </author>
      <link href="http://blog.athico.com/" rel="alternate" type="text/html"/>
      <link href="http://feeds.athico.com/DroolsRSS" rel="self" type="application/atom+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <subtitle>All things Artificial Intelligence related: Rules, Processes, Events, Agents, Planning, Ontologies and more :)</subtitle>
      <title>Drools &amp; jBPM</title>
      <updated>2012-02-08T23:27:12Z</updated>
    </source>
  </entry>

  <entry>
    <id>http://www.tomdebevoise.com/blog/2012/1/25/my-predictions-for-2012-for-process-modeling-and-bpm-in-gene.html</id>
    <link href="http://www.tomdebevoise.com/blog/2012/1/25/my-predictions-for-2012-for-process-modeling-and-bpm-in-gene.html" rel="alternate" type="text/html"/>
    <title>Tom Debevoise: My predictions for 2012 for Process Modeling and BPM in General</title>
    <content type="xhtml" xml:lang="en-US"><div xmlns="http://www.w3.org/1999/xhtml"><p>On our Bosch Software Innovations blog, I have posted some <span lang="EN" style="color: #222222;">observations concerning BPM/Business Rules Management or IBPM (intelligent BPM) and continued predictive conditions for 2012.</span></p>
<p><span style="color: #4b4b4b;">As we enter the 5<sup>th</sup> year following the real-estate crisis of 2008, we still face hard efficiencies and economic realities both in the EU and the US. Process and Rules Methods and technologies will play a role but probably not the way you think.</span></p>
<p><span style="color: #4b4b4b;">The post is here:</span></p>
<p><strong><a href="http://blog.bosch-si.com/10-predictions-for-information-and-operational-technology/">http://blog.bosch-si.com/10-predictions-for-information-and-operational-technology/</a></strong></p></div>
    </content>
    <updated>2012-01-25T19:02:25Z</updated>
    <published>2012-01-25T19:02:25Z</published>
    <category term="BPM"/>
    <category term="Business Events"/>
    <category term="Internet of Things"/>
    <author>
      <name>Tom Debevoise</name>
    </author>
    <source>
      <id>http://www.tomdebevoise.com/blog/</id>
      <link href="http://www.tomdebevoise.com/blog/" rel="alternate" type="application/xhtml+xml"/>
      <link href="http://www.tomdebevoise.com/blog/atom.xml" rel="self" type="application/atom+xml"/>
      <subtitle>Blog</subtitle>
      <title>Blog</title>
      <updated>2012-01-25T19:04:47Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://www.column2.com/?p=2729</id>
    <link href="http://www.column2.com/2012/01/upcoming-webinars-with-progress-software/" rel="alternate" type="text/html"/>
    <title>Sandy Kemsley: Upcoming Webinars with Progress Software</title>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">TweetBlogging around here has been sporadic, to say the least. I have several half-finished posts about product reviews and some good BPM books that I’ve been reading, but I have that “problem” that...<br/>
<br/>
[Content summary only, click through for full article and links]</div>
    </content>
    <updated>2012-01-25T13:17:23Z</updated>
    <category term="BPM"/>
    <category term="Software design"/>
    <author>
      <name>Sandy Kemsley</name>
    </author>
    <source>
      <id>http://www.column2.com</id>
      <link href="http://www.column2.com" rel="alternate" type="text/html"/>
      <link href="http://feeds.feedburner.com/Column2Summary" rel="self" type="application/atom+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <subtitle>BPM, Enterprise 2.0 and technology trends in business.</subtitle>
      <title>Column 2</title>
      <updated>2012-01-25T14:27:23Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-5869426.post-4428690291256233560</id>
    <link href="http://feeds.athico.com/~r/DroolsRSS/~3/FNUS7ZgSmmo/wumpus-world.html" rel="alternate" type="text/html"/>
    <title>Drools &amp; JBPM: Wumpus World</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">I've just committed a working version of Wumpus World, an AI example covered in in the book "Artificial Intelligence : A Modern Approach". It's not complete yet, as I still need to add the ability to shoot arrows and to clumb out of the cave. But the rest of it is there and working.<br/><br/>When the game first starst all the cells are greyed out. As you walk around they become visible. The cave has pitts, a wumpus and gold. When you are next to a pittt you will feel a breeze, when you are next to the wumpus you will smell a stench and see glitter when next to gold. The sensor icons are shown above the move buttons. If you walk into a pitt or the wumpus, you die.<br/><br/>Here are the slides that I used in my presentation for Wumpus World, along with a demo, at Judcon India 2012. The code will be part of 5.4 beta 2 going out today/tomorrow.<br/><br/>A more detailed overview of Wumpus World can be found <a href="http://www.cis.temple.edu/%7Eingargio/cis587/readings/wumpus.shtml">here</a>.<br/><br/><a href="http://4.bp.blogspot.com/-39kCnbM0UTk/Tx-_AFR-4kI/AAAAAAAAAoY/F2amwOz40ts/s1600/wumpus1.png"><img alt="" border="0" id="BLOGGER_PHOTO_ID_5701485661412844098" src="http://4.bp.blogspot.com/-39kCnbM0UTk/Tx-_AFR-4kI/AAAAAAAAAoY/F2amwOz40ts/s400/wumpus1.png" style="cursor: pointer; cursor: hand; width: 400px; height: 300px;"/></a><br/><br/><a href="http://1.bp.blogspot.com/-pu7bI4e0zFo/Tx-_AX1uFOI/AAAAAAAAAoo/zKiBHn53gwY/s1600/wumpus2.png"><img alt="" border="0" id="BLOGGER_PHOTO_ID_5701485666394576098" src="http://1.bp.blogspot.com/-pu7bI4e0zFo/Tx-_AX1uFOI/AAAAAAAAAoo/zKiBHn53gwY/s400/wumpus2.png" style="cursor: pointer; cursor: hand; width: 400px; height: 303px;"/></a><br/><br/><a href="http://2.bp.blogspot.com/-XNJSAWqIeLw/Tx-_A281lkI/AAAAAAAAAow/URA0UlMozf0/s1600/wumpus3.png"><img alt="" border="0" id="BLOGGER_PHOTO_ID_5701485674745927234" src="http://2.bp.blogspot.com/-XNJSAWqIeLw/Tx-_A281lkI/AAAAAAAAAow/URA0UlMozf0/s400/wumpus3.png" style="cursor: pointer; cursor: hand; width: 400px; height: 223px;"/></a><br/><br/><a href="http://1.bp.blogspot.com/-rNyfv1C79m0/Tx-_BG4XYRI/AAAAAAAAAo8/ODfeev1nV2k/s1600/wumpus4.png"><img alt="" border="0" id="BLOGGER_PHOTO_ID_5701485679022137618" src="http://1.bp.blogspot.com/-rNyfv1C79m0/Tx-_BG4XYRI/AAAAAAAAAo8/ODfeev1nV2k/s400/wumpus4.png" style="cursor: pointer; cursor: hand; width: 400px; height: 209px;"/></a><br/><br/><a href="http://1.bp.blogspot.com/-1fxPWA4K_yM/Tx-_BbyeFQI/AAAAAAAAApE/sqxYR_1bVAk/s1600/wumpus5.png"><img alt="" border="0" id="BLOGGER_PHOTO_ID_5701485684634555650" src="http://1.bp.blogspot.com/-1fxPWA4K_yM/Tx-_BbyeFQI/AAAAAAAAApE/sqxYR_1bVAk/s400/wumpus5.png" style="cursor: pointer; cursor: hand; width: 400px; height: 276px;"/></a><br/>asdf<div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/5869426-4428690291256233560?l=blog.athico.com" width="1"/></div><img height="1" src="http://feeds.feedburner.com/~r/DroolsRSS/~4/FNUS7ZgSmmo" width="1"/></div>
    </summary>
    <updated>2012-01-25T08:28:00Z</updated>
    <category scheme="http://www.blogger.com/atom/ns#" term="Drools Expert"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="Drools"/><feedburner:origLink xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://blog.athico.com/2012/01/wumpus-world.html</feedburner:origLink>
    <author>
      <name>Mark Proctor</name>
      <email>noreply@blogger.com</email>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-5869426</id>
      <category term="Performance"/>
      <category term="compilers"/>
      <category term="Conflict Resolution"/>
      <category term="Probability"/>
      <category term="use case"/>
      <category term="competition"/>
      <category term="drools webinar"/>
      <category term="cookbook"/>
      <category term="uncertainty"/>
      <category term="aires"/>
      <category term="service repository"/>
      <category term="Simulation and Testing"/>
      <category term="Job"/>
      <category term="Testing"/>
      <category term="medical"/>
      <category term="Time-Sensitive"/>
      <category term="GSoC"/>
      <category term="AI"/>
      <category term="javapolis"/>
      <category term="video"/>
      <category term="Ad-Hoc"/>
      <category term="Expert Systems"/>
      <category term="RuleML"/>
      <category term="variables"/>
      <category term="Business Rules"/>
      <category term="Domain Specific Languages"/>
      <category term="workshop"/>
      <category term="java"/>
      <category term="infoQ"/>
      <category term="JBoss Rules"/>
      <category term="example"/>
      <category term="Mind Map"/>
      <category term="Rules Engine"/>
      <category term="BAM"/>
      <category term="DotNet"/>
      <category term="Rules"/>
      <category term="Business Rules Forum"/>
      <category term="Fuzzy"/>
      <category term="decision tables"/>
      <category term="Boot Camp"/>
      <category term="Drools Boot Camp"/>
      <category term="interview"/>
      <category term="Eclipse"/>
      <category term="MicroContainer"/>
      <category term="Stream"/>
      <category term="designer"/>
      <category term="Brazilian"/>
      <category term="upgrade tool"/>
      <category term="milestone"/>
      <category term="BOF"/>
      <category term="Seam"/>
      <category term="quote"/>
      <category term="JDT"/>
      <category term="shadow facts"/>
      <category term="event"/>
      <category term="ORF 2008"/>
      <category term="SOA"/>
      <category term="Smooks"/>
      <category term="GUI"/>
      <category term="grammar"/>
      <category term="Drools Expert"/>
      <category term="sequential"/>
      <category term="announcement"/>
      <category term="Drools"/>
      <category term="buenos"/>
      <category term="ESP"/>
      <category term="Natural Language"/>
      <category term="Camel"/>
      <category term="SSL"/>
      <category term="jBPM5"/>
      <category term="JSON"/>
      <category term="Drools Flow"/>
      <category term="RuleML 2008"/>
      <category term="Rete"/>
      <category term="Production Rules Systems"/>
      <category term="DRL"/>
      <category term="remote"/>
      <category term="brms insurance demo standalone"/>
      <category term="FactTemplate"/>
      <category term="traveling tournament"/>
      <category term="BRMS"/>
      <category term="MVEL"/>
      <category term="Rule Flow"/>
      <category term="Open Source"/>
      <category term="argentina"/>
      <category term="IKVM"/>
      <category term="BPMN"/>
      <category term="source code"/>
      <category term="standards"/>
      <category term="machine learning"/>
      <category term="image processing"/>
      <category term="Backward Chaining."/>
      <category term="Monitoring"/>
      <category term="modify block"/>
      <category term="GIS"/>
      <category term="accumulate"/>
      <category term="Drools Fusion"/>
      <category term="Codehaus"/>
      <category term="JUG"/>
      <category term="Rule Authoring"/>
      <category term="Negation"/>
      <category term="Business Rules Governance"/>
      <category term="DynaBeans"/>
      <category term="junit"/>
      <category term="JFDI"/>
      <category term="Rule Engines"/>
      <category term="KAMS"/>
      <category term="dynamically generated classes"/>
      <category term="ORF"/>
      <category term="Form Builder"/>
      <category term="syntax"/>
      <category term="shadow proxies"/>
      <category term="BRMS Guvnor Drools"/>
      <category term="ANTLR"/>
      <category term="Service Manager"/>
      <category term="FedEx"/>
      <category term="DSL"/>
      <category term="Clips"/>
      <category term="planner"/>
      <category term="traits"/>
      <category term="examination"/>
      <category term="search space"/>
      <category term="Janino"/>
      <category term="MySQL"/>
      <category term="Web Services"/>
      <category term="semantic web"/>
      <category term="jBPM"/>
      <category term="constraint programming"/>
      <category term="generated classes"/>
      <category term="Research Network"/>
      <category term="algorithm"/>
      <category term="cloud"/>
      <category term="Life Cycle"/>
      <category term="MISMO"/>
      <category term="BPEL"/>
      <category term="LDAP"/>
      <category term="jBPM5 webinar"/>
      <category term="Templates"/>
      <category term="case management"/>
      <category term="android"/>
      <category term="persistence"/>
      <category term="RIF"/>
      <category term="Logic Operators"/>
      <category term="relational programming"/>
      <category term="Debug"/>
      <category term="Jess"/>
      <category term="release"/>
      <category term="extensibility"/>
      <category term="Atom"/>
      <category term="Analytics"/>
      <category term="Portuguese"/>
      <category term="Meetups"/>
      <category term="Synasc"/>
      <category term="drools puzzle"/>
      <category term="Computer Games"/>
      <category term="Progress"/>
      <category term="JavaOne"/>
      <category term="accumulate function"/>
      <category term="Programming"/>
      <category term="Healthcare"/>
      <category term="October Rules Fest"/>
      <category term="Guvnor"/>
      <category term="SwitchYard"/>
      <category term="WordNet"/>
      <category term="SBVR"/>
      <category term="devoxx"/>
      <category term="one"/>
      <category term="Drools Chance"/>
      <category term="plug tree"/>
      <category term="Presentation"/>
      <category term="Spring"/>
      <category term="Guice"/>
      <category term="salaboy"/>
      <category term="solver"/>
      <category term="Savvion"/>
      <category term="OSGi"/>
      <category term="http://www.blogger.com/img/blank.gif"/>
      <category term="REST"/>
      <category term="DSL regexp antlr"/>
      <category term="project proposals"/>
      <category term="Forward  Chaining"/>
      <category term="declarative programming"/>
      <category term="videos"/>
      <category term="CEP"/>
      <category term="book"/>
      <category term="API"/>
      <category term="brms ajax web"/>
      <category term="combinatorial optimization"/>
      <category term="tests"/>
      <category term="computer vision"/>
      <category term="functional programming"/>
      <category term="Time"/>
      <category term="parser"/>
      <category term="droos ide update-site downloads"/>
      <category term="expressiveness"/>
      <author>
        <name>Mark Proctor</name>
        <email>noreply@blogger.com</email>
      </author>
      <link href="http://blog.athico.com/" rel="alternate" type="text/html"/>
      <link href="http://feeds.athico.com/DroolsRSS" rel="self" type="application/atom+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <subtitle>All things Artificial Intelligence related: Rules, Processes, Events, Agents, Planning, Ontologies and more :)</subtitle>
      <title>Drools &amp; jBPM</title>
      <updated>2012-02-08T23:27:12Z</updated>
    </source>
  </entry>

  <entry xml:lang="de">
    <id>http://www.bpm-guide.de/?p=3431</id>
    <link href="http://www.bpm-guide.de/2012/01/24/camunda-in-2011-und-2012/" rel="alternate" type="text/html"/>
    <title>BPM-Guide.de: camunda in 2011… und 2012</title>
    <summary>2012 ist schon nicht mehr ganz so jung – aber für alle, die sich für camunda generell interessieren, kommen jetzt ein paar Status-Infos zum Stand unserer Unternehmensentwicklung: In 2011 haben wir erstmalig mehr als eine Million EUR Umsatz erzielt (sogar deutlich mehr). Das macht uns natürlich stolz, zumal wir nicht einfach “irgendeine Unternehmensberatung” oder “irgendein [...]</summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><div class="wp-caption alignleft" id="attachment_3451" style="width: 160px;"><a href="http://www.bpm-guide.de/wp-content/uploads/2012/01/camunda-2012.jpg"><img alt="camunda bei der Neujahrsfeier 2012" class="size-thumbnail wp-image-3451 colorbox-3431" height="84" src="http://www.bpm-guide.de/wp-content/uploads/2012/01/camunda-2012-150x84.jpg" title="camunda bei der Neujahrsfeier 2012" width="150"/></a><p class="wp-caption-text">camunda bei der Neujahrsfeier 2012</p></div>
<p>2012 ist schon nicht mehr ganz so jung – aber für alle, die sich für camunda generell interessieren, kommen jetzt ein paar Status-Infos zum Stand unserer Unternehmensentwicklung:</p>
<p><span id="more-3431"/></p>
<p>In 2011 haben wir erstmalig mehr als eine Million EUR Umsatz erzielt (sogar deutlich mehr). Das macht uns natürlich stolz, zumal wir nicht einfach “irgendeine Unternehmensberatung” oder “irgendein IT-Dienstleister” sind, und ständig “irgendwelche Consultants” in Projekte stecken, nur um kräftig Tage zu fakturieren. Stattdessen fokussieren wir uns nach wie vor zu 100% auf BPM, und treten viel mehr als “Enabler”, also “Befähiger” unserer Kunden auf, denn wir geben konzentriertes Know-how zu einem abgrenzbaren Themenkomplex weiter. Dementsprechend kurz sind in der Regel auch unsere Einsätze, und dementsprechend breit ist unsere Kundenbasis: Insgesamt haben 254 unterschiedliche Unternehmen und Behörden in 2011 unsere Leistungen in Anspruch genommen, wovon 48 Neukunden waren.</p>
<p>Aber natürlich gab es auch Projekteinsätze, die wir vor allem deshalb durchführten, weil wir bei spannenden und innovativen BPM-Projekten gerne am Ball bleiben und daraus wiederum Know-how für unser “Premium Consulting” ziehen. Zugenommen haben in 2011 auch die “begleitenden Coachings” auf Basis eines punktuell abrufbaren Kontingentes, wie es zum Beispiel Energie Südbayern für die Einführung von BPMN in Anspruch genommen hat (siehe <a href="http://www.camunda.com/wp-content/uploads/stories/camunda_ESB.pdf">Praxisbericht</a>).</p>
<p>Neben den Themen BPM im Allgemeinen und BPMN im Besonderen hat in 2011 auch ganz klar das Thema <a href="http://www.Activiti.org">Activiti</a> zugenommen: Deutlich mehr als die Hälfte unserer Einsätze im Premium Consulting und der Projektarbeit bezogen sich auf diese ja noch vergleichsweise junge Open Source BPM-Lösung. Wir merken also sehr deutlich, dass Activiti in der Praxis angekommen ist und im Grunde einen ähnlichen “Siegeszug” erlebt wie die BPMN – wenn auch im kleineren Maßstab. Besonders spannend ist für unsere Consultants auch der Einsatz im Ausland, der dank Activiti in 2011 bereits spürbar zugenommen hat (innerhalb Europas, aber auch weltweit).</p>
<p>Da der Einsatz von Open Source beim Kunden natürlich einige Fragen aufwirft (Support, Stabilisierung, aber auch fehlende Features) ist es kein Wunder, dass wir diese Fragen zunächst punktuell, inzwischen aber auch in einer vollständigen Lösung beantwortet haben: <a href="http://www.camunda.com/fox">camunda fox</a> wurde geboren. Wer sich für die Aktivitäten von camunda in 2012 interessiert, findet hier auch bereits die primäre Antwort <img alt=";-)" class="wp-smiley colorbox-3431" src="http://www.bpm-guide.de/wp-includes/images/smilies/icon_wink.gif"/> .</p>
<p>Mit dem Auftragseingang ist natürlich auch unsere Mannschaft gewachsen, die inzwischen 16 Köpfe zählt und Anfang Januar ihre traditionelle Neujahrsfeier zelebrierte (siehe Foto, wenngleich vier Kollegen leider nicht dabei sein konnten). Wir sind also – ganz bewusst – nach wie vor ein überschaubares Team, und ich denke in mancherlei Hinsicht auch ein einzigartiges: Hervorragend in unserer Kernkompetenz BPM, sind wir gleichzeitig unseren Werten verbunden. Viele der scheinbaren Sachzwänge der traditionellen Geschäftswelt werden von uns schlicht und egreifend ignoriert, und wir sind nicht trotzdem, sondern gerade deshalb erfolgreich.</p>
<p>Wer also BPM liebt und gleichzeitig den Mut hat, neue Wege zu gehen, damit eine Organisation besser funktioniert, den laden wir herzlich ein, uns auch in 2012 zu begleiten: Als Kunde, Partner oder Mitarbeiter. Gemeinsam werden wir eine Menge bewegen <img alt=":-)" class="wp-smiley colorbox-3431" src="http://www.bpm-guide.de/wp-includes/images/smilies/icon_smile.gif"/> </p></div>
    </content>
    <updated>2012-01-24T19:53:48Z</updated>
    <category term="Allgemein"/>
    <author>
      <name>Jakob Freund</name>
    </author>
    <source>
      <id>http://www.bpm-guide.de</id>
      <link href="http://www.bpm-guide.de/feed/" rel="self" type="application/atom+xml"/>
      <link href="http://www.bpm-guide.de" rel="alternate" type="text/html"/>
      <subtitle>It's Business Process Management</subtitle>
      <title>BPM-Guide.de</title>
      <updated>2012-02-08T20:27:14Z</updated>
    </source>
  </entry>

  <entry xml:lang="de">
    <id>http://www.saperionblog.com/?p=5681</id>
    <link href="http://www.saperionblog.com/lang/de/das-internet-der-dinge-zwischen-himmel-und-holle-und-agilem-bpmecm/5681" rel="alternate" type="text/html"/>
    <title>Saperion.com (BPM related posts): Das Internet der Dinge zwischen Himmel und Hölle und agilem BPM/ECM</title>
    <summary>Milch an Kühlschrank: “Hey, wenn wir zwei Flaschen noch einen Tag länger schaffen sollen, dann kühl uns bitte mal zwei Grad runter. Außerdem ist Nr. 2 schon fast leer, d.h. Nachschub wird notwendig.” Kühlschrank an Lebensmittel-Service: “Hier ist mein neuer Einkaufszettel. Geliefert werden kann morgen im Zeitraum von 10-12h.” Lebensmittel- an Liefer-Service: “Folgende Pakete sind [...]</summary>
    <updated>2012-01-23T14:46:53Z</updated>
    <category term="general"/>
    <category term="process management"/>
    <category term="BPM"/>
    <category term="ECM"/>
    <category term="IoT"/>
    <author>
      <name>Dr. Martin Bartonitz</name>
    </author>
    <source>
      <id>http://www.saperionblog.com</id>
      <link href="http://www.saperionblog.com/tag/bpm/feed/" rel="self" type="application/atom+xml"/>
      <link href="http://www.saperionblog.com" rel="alternate" type="text/html"/>
      <link href="http://friendfeed.com/api/public-sup.json#ae70a1f9c8" rel="http://api.friendfeed.com/2008/03#sup" type="application/json"/>
      <subtitle>COMPLIANCE - SaaS - ECM - BPM - CMIS - SCRUM</subtitle>
      <title>SAPERION Blog » BPM</title>
      <updated>2012-02-08T11:27:11Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-5869426.post-7917265391200746341</id>
    <link href="http://feeds.athico.com/~r/DroolsRSS/~3/M_2IW1LSf4o/guided-decision-tables-update.html" rel="alternate" type="text/html"/>
    <title>Drools &amp; JBPM: Guided Decision Tables - An update</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">The guided decision table editor in Guvnor has come a long way since it was first added to Guvnor in 2008 so I thought it worth while consolidating the efforts we've made into a short summary so those unfamiliar with recent developments can re-consider what a powerful tool Guvnor now posses.<br/><br/><span style="font-size: 85%;"><span style="font-weight: bold; font-style: italic;">The editor in 2008</span> </span><br/><a href="http://1.bp.blogspot.com/-BxM1PUuCzo8/Tx00R6Ta8FI/AAAAAAAAAf0/BNB3DoyCBZs/s1600/WebDT.png"><img alt="" border="0" id="BLOGGER_PHOTO_ID_5700770185634050130" src="http://1.bp.blogspot.com/-BxM1PUuCzo8/Tx00R6Ta8FI/AAAAAAAAAf0/BNB3DoyCBZs/s400/WebDT.png" style="cursor: pointer; cursor: hand; width: 400px; height: 167px;"/></a><br/><span style="font-weight: bold;">Complete re-write</span><br/><br/>When Guvnor moved from GWT-EXT to vanilla GWT we took the opportunity to re-write the entire editor. GWT's table widgets did not offer the flexibility we wanted to provide users in their authoring environment: We wanted users to be able to quickly and easily build tables enabling them to concentrate on their rules rather than data-entry. Thus the new editor was born offering keyboard or mouse navigation, in-cell editing together with merging and grouping of cells.<br/><br/><span style="font-size: 85%;"><span style="font-weight: bold; font-style: italic;">The editor as it is today</span> </span><br/><a href="http://2.bp.blogspot.com/-Sx0Sdb3vum8/Tx04faYRVdI/AAAAAAAAAgA/O_5I6KEf-S4/s1600/dtable-extended-entry.png"><img alt="" border="0" id="BLOGGER_PHOTO_ID_5700774815629137362" src="http://2.bp.blogspot.com/-Sx0Sdb3vum8/Tx04faYRVdI/AAAAAAAAAgA/O_5I6KEf-S4/s400/dtable-extended-entry.png" style="cursor: pointer; cursor: hand; width: 400px; height: 119px;"/></a><br/><br/><br/><span style="font-weight: bold;">Guided construction</span><br/><br/>To make the initial definition process as pain-free as possible we added a Wizard to walk users through creation. The Wizard also offers users the ability to generate an expanded form table.<br/><br/><span style="font-size: 85%;"><span style="font-weight: bold; font-style: italic;">The wizard</span> </span><br/><a href="http://3.bp.blogspot.com/-kncuDbqQ-Pk/Tx08l1QU-EI/AAAAAAAAAgw/wC7kN1AFsZk/s1600/dtable-wizard-defining.png"><img alt="" border="0" id="BLOGGER_PHOTO_ID_5700779323969304642" src="http://3.bp.blogspot.com/-kncuDbqQ-Pk/Tx08l1QU-EI/AAAAAAAAAgw/wC7kN1AFsZk/s400/dtable-wizard-defining.png" style="cursor: pointer; cursor: hand; width: 400px; height: 228px;"/></a><br/><br/><span style="font-weight: bold;"><br/>Merging</span><br/><br/>Merging of cells combines cells with identical values into one; thus providing a quick way to change the value of multiple cells in a single operation (of course, you could equally select multiple-cells with either a mouse-drag operation or keyboard but we felt merging minimized the process). Merging was also the precursor to grouping of cells, a powerful facility to collapse sections of the table whilst authoring.<br/><br/><span style="font-size: 85%;"><span style="font-weight: bold; font-style: italic;">Merged cells</span> </span><br/><a href="http://1.bp.blogspot.com/-sG0Fl4tT1Mc/Tx05orknLnI/AAAAAAAAAgM/ApL6mRmR_-U/s1600/dtable-merged.png"><img alt="" border="0" id="BLOGGER_PHOTO_ID_5700776074374753906" src="http://1.bp.blogspot.com/-sG0Fl4tT1Mc/Tx05orknLnI/AAAAAAAAAgM/ApL6mRmR_-U/s400/dtable-merged.png" style="cursor: pointer; cursor: hand; width: 400px; height: 117px;"/></a><br/><br/><br/><span style="font-weight: bold;">Grouping</span><br/><br/>Merged cells can be collapsed into one. All editing operations continue to work as normal: copying-pasting rows and editing cell values etc. The only difference being that you can effectively hide sections of the table. Copying and pasting a grouped row also offers a convenient way to duplicate sections of the table (before editing as appropriate).<br/><br/><span style="font-size: 85%;"><span style="font-weight: bold; font-style: italic;">Grouped cells</span> </span><br/><a href="http://4.bp.blogspot.com/-ZlVd0B-X7Lo/Tx06l7gxq4I/AAAAAAAAAgY/pKCUvwe1bqE/s1600/dtable-grouped.png"><img alt="" border="0" id="BLOGGER_PHOTO_ID_5700777126625651586" src="http://4.bp.blogspot.com/-ZlVd0B-X7Lo/Tx06l7gxq4I/AAAAAAAAAgY/pKCUvwe1bqE/s400/dtable-grouped.png" style="cursor: pointer; cursor: hand; width: 400px; height: 105px;"/></a><br/><br/><br/><span style="font-weight: bold;">Extended and Limited Entry</span><br/><br/>What type of decision table editor would we have without offering both Extended Entry and Limited Entry? Extended entry allows constraint and action values to be defined in the table body; whereas Limited entry moves the entire definition to the column itself with the body simply allowing the user to define which constraints and/or actions apply.<br/><br/><span style="font-size: 85%;"><span style="font-weight: bold; font-style: italic;">Limited Entry</span> </span><br/><a href="http://1.bp.blogspot.com/-hmFjfH3hKs0/Tx07ty866bI/AAAAAAAAAgk/xvZiXTbF86I/s1600/dtable-limited-entry.png"><img alt="" border="0" id="BLOGGER_PHOTO_ID_5700778361278359986" src="http://1.bp.blogspot.com/-hmFjfH3hKs0/Tx07ty866bI/AAAAAAAAAgk/xvZiXTbF86I/s400/dtable-limited-entry.png" style="cursor: pointer; cursor: hand; width: 400px; height: 94px;"/></a><br/><span style="font-weight: bold;"><br/><br/>Analysis</span><br/><br/>Support has been added to detect mistakes in your decision table. Currently we detect 2 types of problem and want to add many more.<ul><li>Impossible matches</li><li>Conflict detection</li></ul><span style="font-size: 85%;"><span style="font-weight: bold; font-style: italic;">Conflict detection</span></span><br/><a href="http://2.bp.blogspot.com/-pT3Xb9GmO4M/Tx1AbAomUtI/AAAAAAAAAhI/B7ZApFB1dzo/s1600/conflictingMatch2.png"><img alt="" border="0" id="BLOGGER_PHOTO_ID_5700783536091845330" src="http://2.bp.blogspot.com/-pT3Xb9GmO4M/Tx1AbAomUtI/AAAAAAAAAhI/B7ZApFB1dzo/s400/conflictingMatch2.png" style="cursor: pointer; cursor: hand; width: 400px; height: 94px;"/></a><br/><br/><br/><span style="font-weight: bold;">Integration of jBPM work items</span><br/><br/>Rules are frequently used from within jBPM to drive dynamic processes. What better then than providing a means for jBPM Work Items to be used in your rules' consequences? Work Item input parameters can be bound to Facts or their properties and likewise output parameters used to populate Facts.<br/><br/><br/><span style="font-weight: bold;">Use of BRL fragments</span><br/><br/>Column definitions have historically only been able to offer a thin veil of abstraction. With the introduction of BRL fragments, columns can be defined using the full range of Guvnor's guided rule authoring capabilities (including DSL) which, coupled with Limited Entry, allows a higher level of abstraction to be realized.<br/><br/><span style="font-size: 85%;"><span style="font-weight: bold; font-style: italic;">A BRL fragment column</span> </span><br/><a href="http://4.bp.blogspot.com/-FPa-ozBEU60/Tx1DTWBjmgI/AAAAAAAAAhU/B_EkB8ZXbHA/s1600/dtable-brl-condition.png"><img alt="" border="0" id="BLOGGER_PHOTO_ID_5700786702929598978" src="http://4.bp.blogspot.com/-FPa-ozBEU60/Tx1DTWBjmgI/AAAAAAAAAhU/B_EkB8ZXbHA/s400/dtable-brl-condition.png" style="cursor: pointer; cursor: hand; width: 400px; height: 187px;"/></a><br/><span style="font-weight: bold;"><br/><br/>Roadmap<br/><br/></span><span>Whilst, you might agree, significant progress has been made made there is still a long way to go. There still is a tremendous amount of work we want to complete before feeling our decision table offering is as complete as we'd like.</span><span style="font-weight: bold;"><br/></span><ul><li>Round-trip between Excel and Guvnor</li><li>Improved integration of V&amp;V to provide visual feedback</li><li>Further V&amp;V to check conflict, completeness, ambiguity, subsumption etc<br/></li><li>Expansion and contraction</li><li>Enforcement of multi-hit and single-hit variants<br/></li><li>Typed input of default values and lists of permitted values for Conditions</li><li>Pluggable editors for domain types<br/></li><li>Column and row drag and drop</li><li>Horizontal decision table</li><li>Integration of WorkingSets</li></ul><div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/5869426-7917265391200746341?l=blog.athico.com" width="1"/></div><img height="1" src="http://feeds.feedburner.com/~r/DroolsRSS/~4/M_2IW1LSf4o" width="1"/></div>
    </summary>
    <updated>2012-01-23T10:04:00Z</updated>
    <category scheme="http://www.blogger.com/atom/ns#" term="decision tables"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="Guvnor"/><feedburner:origLink xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://blog.athico.com/2012/01/guided-decision-tables-update.html</feedburner:origLink>
    <author>
      <name>Michael Anstis</name>
      <email>noreply@blogger.com</email>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-5869426</id>
      <category term="Performance"/>
      <category term="compilers"/>
      <category term="Conflict Resolution"/>
      <category term="Probability"/>
      <category term="use case"/>
      <category term="competition"/>
      <category term="drools webinar"/>
      <category term="cookbook"/>
      <category term="uncertainty"/>
      <category term="aires"/>
      <category term="service repository"/>
      <category term="Simulation and Testing"/>
      <category term="Job"/>
      <category term="Testing"/>
      <category term="medical"/>
      <category term="Time-Sensitive"/>
      <category term="GSoC"/>
      <category term="AI"/>
      <category term="javapolis"/>
      <category term="video"/>
      <category term="Ad-Hoc"/>
      <category term="Expert Systems"/>
      <category term="RuleML"/>
      <category term="variables"/>
      <category term="Business Rules"/>
      <category term="Domain Specific Languages"/>
      <category term="workshop"/>
      <category term="java"/>
      <category term="infoQ"/>
      <category term="JBoss Rules"/>
      <category term="example"/>
      <category term="Mind Map"/>
      <category term="Rules Engine"/>
      <category term="BAM"/>
      <category term="DotNet"/>
      <category term="Rules"/>
      <category term="Business Rules Forum"/>
      <category term="Fuzzy"/>
      <category term="decision tables"/>
      <category term="Boot Camp"/>
      <category term="Drools Boot Camp"/>
      <category term="interview"/>
      <category term="Eclipse"/>
      <category term="MicroContainer"/>
      <category term="Stream"/>
      <category term="designer"/>
      <category term="Brazilian"/>
      <category term="upgrade tool"/>
      <category term="milestone"/>
      <category term="BOF"/>
      <category term="Seam"/>
      <category term="quote"/>
      <category term="JDT"/>
      <category term="shadow facts"/>
      <category term="event"/>
      <category term="ORF 2008"/>
      <category term="SOA"/>
      <category term="Smooks"/>
      <category term="GUI"/>
      <category term="grammar"/>
      <category term="Drools Expert"/>
      <category term="sequential"/>
      <category term="announcement"/>
      <category term="Drools"/>
      <category term="buenos"/>
      <category term="ESP"/>
      <category term="Natural Language"/>
      <category term="Camel"/>
      <category term="SSL"/>
      <category term="jBPM5"/>
      <category term="JSON"/>
      <category term="Drools Flow"/>
      <category term="RuleML 2008"/>
      <category term="Rete"/>
      <category term="Production Rules Systems"/>
      <category term="DRL"/>
      <category term="remote"/>
      <category term="brms insurance demo standalone"/>
      <category term="FactTemplate"/>
      <category term="traveling tournament"/>
      <category term="BRMS"/>
      <category term="MVEL"/>
      <category term="Rule Flow"/>
      <category term="Open Source"/>
      <category term="argentina"/>
      <category term="IKVM"/>
      <category term="BPMN"/>
      <category term="source code"/>
      <category term="standards"/>
      <category term="machine learning"/>
      <category term="image processing"/>
      <category term="Backward Chaining."/>
      <category term="Monitoring"/>
      <category term="modify block"/>
      <category term="GIS"/>
      <category term="accumulate"/>
      <category term="Drools Fusion"/>
      <category term="Codehaus"/>
      <category term="JUG"/>
      <category term="Rule Authoring"/>
      <category term="Negation"/>
      <category term="Business Rules Governance"/>
      <category term="DynaBeans"/>
      <category term="junit"/>
      <category term="JFDI"/>
      <category term="Rule Engines"/>
      <category term="KAMS"/>
      <category term="dynamically generated classes"/>
      <category term="ORF"/>
      <category term="Form Builder"/>
      <category term="syntax"/>
      <category term="shadow proxies"/>
      <category term="BRMS Guvnor Drools"/>
      <category term="ANTLR"/>
      <category term="Service Manager"/>
      <category term="FedEx"/>
      <category term="DSL"/>
      <category term="Clips"/>
      <category term="planner"/>
      <category term="traits"/>
      <category term="examination"/>
      <category term="search space"/>
      <category term="Janino"/>
      <category term="MySQL"/>
      <category term="Web Services"/>
      <category term="semantic web"/>
      <category term="jBPM"/>
      <category term="constraint programming"/>
      <category term="generated classes"/>
      <category term="Research Network"/>
      <category term="algorithm"/>
      <category term="cloud"/>
      <category term="Life Cycle"/>
      <category term="MISMO"/>
      <category term="BPEL"/>
      <category term="LDAP"/>
      <category term="jBPM5 webinar"/>
      <category term="Templates"/>
      <category term="case management"/>
      <category term="android"/>
      <category term="persistence"/>
      <category term="RIF"/>
      <category term="Logic Operators"/>
      <category term="relational programming"/>
      <category term="Debug"/>
      <category term="Jess"/>
      <category term="release"/>
      <category term="extensibility"/>
      <category term="Atom"/>
      <category term="Analytics"/>
      <category term="Portuguese"/>
      <category term="Meetups"/>
      <category term="Synasc"/>
      <category term="drools puzzle"/>
      <category term="Computer Games"/>
      <category term="Progress"/>
      <category term="JavaOne"/>
      <category term="accumulate function"/>
      <category term="Programming"/>
      <category term="Healthcare"/>
      <category term="October Rules Fest"/>
      <category term="Guvnor"/>
      <category term="SwitchYard"/>
      <category term="WordNet"/>
      <category term="SBVR"/>
      <category term="devoxx"/>
      <category term="one"/>
      <category term="Drools Chance"/>
      <category term="plug tree"/>
      <category term="Presentation"/>
      <category term="Spring"/>
      <category term="Guice"/>
      <category term="salaboy"/>
      <category term="solver"/>
      <category term="Savvion"/>
      <category term="OSGi"/>
      <category term="http://www.blogger.com/img/blank.gif"/>
      <category term="REST"/>
      <category term="DSL regexp antlr"/>
      <category term="project proposals"/>
      <category term="Forward  Chaining"/>
      <category term="declarative programming"/>
      <category term="videos"/>
      <category term="CEP"/>
      <category term="book"/>
      <category term="API"/>
      <category term="brms ajax web"/>
      <category term="combinatorial optimization"/>
      <category term="tests"/>
      <category term="computer vision"/>
      <category term="functional programming"/>
      <category term="Time"/>
      <category term="parser"/>
      <category term="droos ide update-site downloads"/>
      <category term="expressiveness"/>
      <author>
        <name>Mark Proctor</name>
        <email>noreply@blogger.com</email>
      </author>
      <link href="http://blog.athico.com/" rel="alternate" type="text/html"/>
      <link href="http://feeds.athico.com/DroolsRSS" rel="self" type="application/atom+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <subtitle>All things Artificial Intelligence related: Rules, Processes, Events, Agents, Planning, Ontologies and more :)</subtitle>
      <title>Drools &amp; jBPM</title>
      <updated>2012-02-08T23:27:12Z</updated>
    </source>
  </entry>

  <entry xml:lang="de">
    <id>http://www.bpm-guide.de/?p=3439</id>
    <link href="http://www.bpm-guide.de/2012/01/22/run-activiti-on-ibm-websphere-application-server-with-camunda-fox/" rel="alternate" type="text/html"/>
    <title>BPM-Guide.de: Run Activiti on IBM Websphere Application Server with camunda fox</title>
    <summary>Both the Activiti community and our consulting customers are repeatedly asking me about how to run Activiti on IBM WebSphere Application Server. In this blogpost I want to summarize the problems and challenges you face when you want to do that and along the lines give a sneak preview of the upcoming WebSphere support in [...]</summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><div class="wp-caption alignleft" id="attachment_3444" style="width: 121px;"><img alt=" " class="size-thumbnail wp-image-3444 colorbox-3439" height="150" src="http://www.bpm-guide.de/wp-content/uploads/2012/01/IbmWebsphereAppServer-111x150.png" title=" " width="111"/><p class="wp-caption-text"> </p></div>
<p>Both the Activiti community and our consulting customers are repeatedly asking me about how to run Activiti on IBM WebSphere Application Server. In this blogpost I want to summarize the problems and challenges you face when you want to do that and along the lines give a sneak preview of the upcoming WebSphere support in <a href="http://www.camunda.com/fox/">camunda fox</a> (our enterprise BPM platform based on Activiti).</p>
<p><span id="more-3439"/></p>
<p>Let’s start with the challenges.</p>
<h2>Transactions</h2>
<p>A first challenge is transaction management. When developing a process application with Activiti, you often want the process engine to participate in container transactions. This allows you to implement units of work in which both the process engine and other transactional resources like a database, a message queue or EJB’s participate. The Java EE Solution to this problem is JTA, a specification which defines multi-resource transactions.  Activiti integrates with JTA out of the box, if you configure the JtaTransactionInterceptor. This makes sure, that whenever you run a command (do something in Activiti, like completing a user task), we either start a new transaction or participate in the currently active transaction. The desired behavior is that if you invoke Activiti form an EJB Session Bean, it will take part in the transaction managed by the Session Bean / EJB Container. The same is also true in the opposite direction: lets say you call an EJB from an asynchronous service task, in that case Activiti will open a transaction when executing the service task and the EJB has the possibility to participate in that transaction. Why is this so helpful? As I said before it gives us the possibility to implement units of work in which both Activiti and the EJB Container take part and by the means of transactions ensure consistency: if Activiti fails, the EJB fails and vice-versa (remember <a href="http://en.wikipedia.org/wiki/ACID_transactions">ACID transactions</a>?).</p>
<p>Now, why is this challenging on WebSphere? WebSphere Application Server does not provide a standard JTA javax.transaction.TransactionManager (like for instance JBoss AS or Glassfish), but instead exposes a proprietary interface named com.ibm.wsspi.uow.UOWManager. IBM is allowed to do so, as the Java EE / EJB specification does not require vendors to provide a JTA TransactionManager implementation. All they are required doing is providing a javax.transaction.UserTransaction (which Websphere does). The UserTransaction interface would allow Activiti to open new transactions and participate in existing transactions; however that is not enough for Activiti to function correctly. For some commands (for example when decrementing retries after a failed job) we need REQUIRES_NEW semantics for executing the command. This means we need to suspend the current transaction and start a new transaction. Now the javax.transaction.UserTransaction interface does not provide such functionality, which means that you need to use proprietary IBM API for achieving this. This is one reason among (others) why running Activiti on WebSphere application server requires you to solve the transaction problem. One possibility would be to use Spring’s org.springframework.transaction.jta.JtaTransactionManager abstraction and configure the SpringTransactionInterceptor in Activiti.</p>
<h2>Performing Background Work</h2>
<p>A process engine like Activiti uses the calling thread for performing most of its work. This is a natural consequence from the requirement to share transactions between Activiti and the application code, as transactions are thread-bound. This means that, when you call Activiti, the call will block until Activiti has performed its work. But there are also certain situations where Activiti will call you. For example if you have a timer in the process, Activiti will wait for the timer to reach its due date and then continue with executing the process. Hence Activiti performs some kind of background work, where it checks if it has work to do (the concept is called “Jobs”) and if so, it will perform this work. To make this happen Activiti needs to manage its own threads.</p>
<p>Now, in a managed environment like an applications server, you do not want to manage the threads yourself, instead you want the container to manage them (more exactly: it is even forbidden by the Java EE Specification). This is for various reasons like for instance to allow the container to perform additional “magic”, like monitoring the threads, detecting deadlocks, ensure that work submitted by an application is canceled when the application is undeployed, that threads requested by an application are stopped if the application is undeployed and so on. Most of this is to ensure that “everything is under control” and to ensure the overall stability of your application and server environment.  Another important feature is ensuring that work submitted by an application is executed within the correct security / naming / transaction context.</p>
<p>When running Activiti on WebSphere, the main challenge is having the JobExecutor (this is the component which performs the background work) delegate to supported, container-managed threads. On WebSphere this means delegating to an asynchronous beans WorkManager. There are multiple interfaces to the WorkManager; one of them is commonj.work.WorkManager, another one com.ibm.websphere.asynchbeans.WorkManager. Using the WorkManager for Activiti background work was a problem until recently, as the activiti JobExecutor always started its own Threads and it was not easy to configure it. Recently we have done a number of refactorings in which we separated the JobExecutor logic from the thread management, such that it is now easier to implement a JobExecutor delegating to a Websphere WorkManager (watch out for Activiti 5.9).</p>
<p>Ok, so if we know all this, why is there no Activiti distribution for WebSphere you can just download?</p>
<h2>Why is WebSphere Support not pre-built in Activiti?</h2>
<p>The reason is that it is not only a technical problem. Activiti aims at being a highly configurable and embeddable engine. This means that conceptually it possible to integrate Activiti with whatever Java-based environment you come up with. This is a good thing!  However, that also poses some challenges. One challenge is knowing where to stop. Take for instance WebShere Support: let’s say we add WebSphere support classes to Activiti. Now the main problem is to test and to maintain it. This includes automated testing and quality assurance, preferably on different versions of the application server, different Java Runtimes (e.g. the IBM JDK) and so on. That kind of effort is impossible for us to do in the context of an open source project, especially as WebSphere is not the only application server out there. This is why we focus on delivering a high quality embeddable process engine in the Activiti project, get that right and do not assume responsibility for integration with various platforms and vendors. Because, as I said before: even if we made that promise, it is hard for an open source project to deliver on it. And don’t forget: Somebody has to pay my salary <img alt=":-)" class="wp-smiley colorbox-3439" src="http://www.bpm-guide.de/wp-includes/images/smilies/icon_smile.gif"/> </p>
<p>One way out for you by the way could be the Spring Framework which already contains abstractions for many vendor-specific technologies like transactions and threading. So by providing first-class integration with the Spring Framework, we give users of Activiti the possibility to integrate with various vendors more easily, but it still means you have to do some integration work yourself and especially take the responsibility for the integration and maintenance of it yourself.</p>
<h2>Support in camunda fox</h2>
<div class="wp-caption alignleft" id="attachment_3447" style="width: 160px;"><img alt=" " class="size-thumbnail wp-image-3447 colorbox-3439" height="86" src="http://www.bpm-guide.de/wp-content/uploads/2012/01/iStock_000009973852XSmall-150x86.jpg" title=" " width="150"/><p class="wp-caption-text"> </p></div>
<p>In the <a href="http://www.camunda.com/fox/">camunda fox</a> enterprise bpm platform we provide pre-built integration with IBM WebSphere Application Server 8. We do perform automated testing, quality assurance and maintenance and we offer professional support. This is one of some differences between Activiti open source and camunda fox enterprise.</p>
<p> </p>
<p>While this is no “official” announcement about the camunda fox platform for websphere, I cannot stop myself from giving you a sneak preview about what you can expect in terms of functionally. You must have already gathered some of it form this blog (I know, it’s long again…): we support container managed transactions and container managed threads for background work. In addition, we support a central process engine service which can be shared by all applications installed on the application server. That also means that it allows you to align the container deployment lifecycle with process deployment lifecycle, i.e. when you deploy a WAR file (application) which contains processes, the processes are automatically deployed to the central process engine service. This is includes some class-loading magic as well. But more on this at a later point in time. So for the moment, enjoy the following screen-shots:</p>
<div class="wp-caption alignleft" id="attachment_3461" style="width: 160px;"><a href="http://www.bpm-guide.de/wp-content/uploads/2012/01/foxPlatform_WAS_env_settings.png"><img alt="Process Engine Configuration using the WAS web console" class="size-thumbnail wp-image-3461 colorbox-3439" height="87" src="http://www.bpm-guide.de/wp-content/uploads/2012/01/foxPlatform_WAS_env_settings-150x87.png" title="Process Engine Configuration using the WAS web console" width="150"/></a><p class="wp-caption-text">Process Engine Configuration using the WAS web console</p></div>
<div class="wp-caption alignleft" id="attachment_3460" style="width: 90px;"><a href="http://www.bpm-guide.de/wp-content/uploads/2012/01/foxPlatform_WAS_workmanager_pool.png"><img alt="Configuration of the WAS WorkManager used by the JobExecutor" class="size-thumbnail wp-image-3460 colorbox-3439" height="150" src="http://www.bpm-guide.de/wp-content/uploads/2012/01/foxPlatform_WAS_workmanager_pool-80x150.png" title="Configuration of the WAS WorkManager used by the JobExecutor" width="80"/></a><p class="wp-caption-text">Configuration of the WAS WorkManager used by the JobExecutor</p></div></div>
    </content>
    <updated>2012-01-22T16:56:45Z</updated>
    <category term="Allgemein"/>
    <category term="Activiti"/>
    <category term="fox"/>
    <category term="WebSphere"/>
    <author>
      <name>Daniel Meyer</name>
    </author>
    <source>
      <id>http://www.bpm-guide.de</id>
      <link href="http://www.bpm-guide.de/feed/" rel="self" type="application/atom+xml"/>
      <link href="http://www.bpm-guide.de" rel="alternate" type="text/html"/>
      <subtitle>It's Business Process Management</subtitle>
      <title>BPM-Guide.de</title>
      <updated>2012-02-08T20:27:14Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-5869426.post-5372317788359262465</id>
    <link href="http://feeds.athico.com/~r/DroolsRSS/~3/wIYQ0wpad-k/jbpm-form-builder-roadmap.html" rel="alternate" type="text/html"/>
    <title>Drools &amp; JBPM: jBPM Form Builder roadmap</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">Greetings from Argentina. This post will try to cover a general view of where the <a href="https://github.com/marianbuenosayres/jbpm/tree/master/jbpm-gwt/jbpm-gwt-form-builder">form builder</a> is right now and where it is going to be in the near future. You can get a current status view from the video below:<br/>
<br/>
<br/>
<br/>
On this video you can see a great deal of how the form builder works today. It doesn't cover the jBPM console integration part or the automatic form generation option, but it allows you to see how users will experience working with the form builder. To download the project, you can find it in the following locations<br/>
<br/>
<b>Nightly builds</b><br/>
<ul>
<li><a href="https://github.com/marianbuenosayres/jbpm">https://github.com/marianbuenosayres/jbpm</a></li>
<li><a href="https://github.com/marianbuenosayres/guvnor">https://github.com/marianbuenosayres/guvnor</a></li>
</ul>
In the next few days, I'll start keeping a<b> stable release</b> on this other address as well:<br/>
<ul>
<li><a href="https://github.com/marianbuenosayres2/jbpm">https://github.com/marianbuenosayres2/jbpm</a></li>
<li><a href="https://github.com/marianbuenosayres2/guvnor">https://github.com/marianbuenosayres2/guvnor</a></li>
</ul>
Feel free to download, comment or join. That pretty much covers where the form builder is right now. As to where it is heading, here's an initial roadmap<br/>
<br/>
<b><span style="font-size: large;">jBPM Form Builder Roadmap</span></b><br/>
<br/>
<br/>
<ol>
<li><b>Adding HTML5 templates:</b> Current items work with pure GWT and HTML4 for Freemarker. The idea is to build a new renderer that will allow users to export to Freemarker as well, but allowing them to export using HTML5 instead of HTML4 to create the forms. The idea as well is to create as many menu options to properly cover HTML5 capabilities, such as audio and video tags, menus, fieldsets and so on.</li>
<li><b>Adding new validations:</b> Current validations cover basic concepts, like number or email validation. The idea is to expand and improve validation definitions, in order to allow both client side and server side validation to any level of complexity. Among new validations that are thought to be added, there will be regular expression validation, multi-field validations (applied directly to the form), and rules-based validation (in order to define a ruleflow-group specially to validate the correctness of input data)</li>
<li><b>Adding script helpers to add dynamic ui components on client side:</b> Script helpers are shown in the video above. They allow a user with very little knowledge of javascript to create scripting solutions for UI component's event handling. The idea is to create a new script helper to allow javascript to add a new visual component on a particular layout and layout position when an event happens.</li>
<li><b>Cleaning up effects and form items library:</b> Current implementations of form items (the UI components you drop on your form) and form effects (the actions available when you right click on a form item) are done in a way that could be made configurable with a proper refactor. The whole idea is to make it more easily extensible, minimizing the amount of code to be added to create a right click action for UI components, or a UI component itself.</li>
<li><b>Adding tests for effects and form items library:</b> Along with the previous item, some refactoring will be made to allow a better separation of display logic from actions logic, in order to create better test prepareness on the code side. Along with that, proper tests will be implemented for the form items and effects library.</li>
<li><b>Adding server validation to the generated form's API:</b> Extension of the form utility API used from jBPM console, to handle validations on server side. </li>
<li><b>Adding server interpretation of complex objects to the generated form's API:</b> Currently, all form submit responses are treated like a map of simple data. The idea is to create complex object associations to particular paths in the form definition, in order to create the proper objects on submit time. This will benefit both user task definitions and rule-based form validations.</li>
<li><b>Adding template management for complex objects for the generated form's inputs:</b> The previous item covers submit to server rendering of request data, from simple data types to complex data types. This item covers the other way around, for when a user task is given a complex type and needs to decompose it to make it available for form input data. It will allow the user to define paths within an object when defining form inputs.</li>
<li><b>Improvement of properties edition panel to add better coverage of properties for form items:</b> This comes in hand with item 4. Once a proper management of form item properties is done, there will be a need for a better way of editing such properties.</li>
<li><b>Improvement on tree and edition panel visualization: </b>Bug fixing and visual highlighting in the current form are two of the main things to be tackled by this bullet.</li>
<li><b>Allow switching layouts once they're filled without losing content:</b> Currently, once you define a layout and start adding content to it, the only way to change layouts is to create a new one and move all the content manually. This item is thought to be able to do that automatically.</li>
<li><b>Adding script helpers to allow onEvent simple validations on client side:</b> Along with validation library expansion and server validation API, this item is thought to allow some validations to happen on the client side, to be handled on particular events (i.e. like on the change of value of an input field)</li>
<li><b>Pagination items:</b> Create UI components that would allow to create very large forms within several pages, all part of the same form.</li>
<li><b>Definition of a standard page layout for a given user or role:</b> Most companies have a template structure for most of their forms (wether it has a logo on a particular place, a standard stylesheet, etc). The idea is to allow designers to define such page layout and force its use to either some people or a group of people within the company.</li>
<li><b>Definition of standard UI visualization strategies for particular types of data: </b>This is to aid the automatic form generation. The idea is to allow users to define, for example, the standard way to create visual content for Strings, Integers, Booleans and so on. It should cover complex data types as well.</li>
<li><b>New translators and renderers for JSF, XUL, Android, IPhone and Swing:</b> Among other technologies, this would be a nice subset to cover. The order of the technologies and the omission of any don't express any priority whatsoever.</li>
<li><b>Adding effects to allow loading contents from an ajax script or from an array variable:</b> This way, content from a form could be loaded from an external source from the client side.</li>
<li><b>Importing of inputs from other external sources: </b>Right now the only way to import inputs on the IO Data tab is to have them defined inside a BPMN2 process. The idea is to be able to take them from a server invocation, a user file, or any other way. This will also allow to define forms for other platforms different than the BPM engine.</li>
</ol>
<br/>
Cheers,<br/>
Mariano<div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/5869426-5372317788359262465?l=blog.athico.com" width="1"/></div><img height="1" src="http://feeds.feedburner.com/~r/DroolsRSS/~4/wIYQ0wpad-k" width="1"/></div>
    </summary>
    <updated>2012-01-20T14:31:00Z</updated><feedburner:origLink xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://blog.athico.com/2012/01/jbpm-form-builder-roadmap.html</feedburner:origLink>
    <author>
      <name>Marian Buenosayres</name>
      <email>noreply@blogger.com</email>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-5869426</id>
      <category term="Performance"/>
      <category term="compilers"/>
      <category term="Conflict Resolution"/>
      <category term="Probability"/>
      <category term="use case"/>
      <category term="competition"/>
      <category term="drools webinar"/>
      <category term="cookbook"/>
      <category term="uncertainty"/>
      <category term="aires"/>
      <category term="service repository"/>
      <category term="Simulation and Testing"/>
      <category term="Job"/>
      <category term="Testing"/>
      <category term="medical"/>
      <category term="Time-Sensitive"/>
      <category term="GSoC"/>
      <category term="AI"/>
      <category term="javapolis"/>
      <category term="video"/>
      <category term="Ad-Hoc"/>
      <category term="Expert Systems"/>
      <category term="RuleML"/>
      <category term="variables"/>
      <category term="Business Rules"/>
      <category term="Domain Specific Languages"/>
      <category term="workshop"/>
      <category term="java"/>
      <category term="infoQ"/>
      <category term="JBoss Rules"/>
      <category term="example"/>
      <category term="Mind Map"/>
      <category term="Rules Engine"/>
      <category term="BAM"/>
      <category term="DotNet"/>
      <category term="Rules"/>
      <category term="Business Rules Forum"/>
      <category term="Fuzzy"/>
      <category term="decision tables"/>
      <category term="Boot Camp"/>
      <category term="Drools Boot Camp"/>
      <category term="interview"/>
      <category term="Eclipse"/>
      <category term="MicroContainer"/>
      <category term="Stream"/>
      <category term="designer"/>
      <category term="Brazilian"/>
      <category term="upgrade tool"/>
      <category term="milestone"/>
      <category term="BOF"/>
      <category term="Seam"/>
      <category term="quote"/>
      <category term="JDT"/>
      <category term="shadow facts"/>
      <category term="event"/>
      <category term="ORF 2008"/>
      <category term="SOA"/>
      <category term="Smooks"/>
      <category term="GUI"/>
      <category term="grammar"/>
      <category term="Drools Expert"/>
      <category term="sequential"/>
      <category term="announcement"/>
      <category term="Drools"/>
      <category term="buenos"/>
      <category term="ESP"/>
      <category term="Natural Language"/>
      <category term="Camel"/>
      <category term="SSL"/>
      <category term="jBPM5"/>
      <category term="JSON"/>
      <category term="Drools Flow"/>
      <category term="RuleML 2008"/>
      <category term="Rete"/>
      <category term="Production Rules Systems"/>
      <category term="DRL"/>
      <category term="remote"/>
      <category term="brms insurance demo standalone"/>
      <category term="FactTemplate"/>
      <category term="traveling tournament"/>
      <category term="BRMS"/>
      <category term="MVEL"/>
      <category term="Rule Flow"/>
      <category term="Open Source"/>
      <category term="argentina"/>
      <category term="IKVM"/>
      <category term="BPMN"/>
      <category term="source code"/>
      <category term="standards"/>
      <category term="machine learning"/>
      <category term="image processing"/>
      <category term="Backward Chaining."/>
      <category term="Monitoring"/>
      <category term="modify block"/>
      <category term="GIS"/>
      <category term="accumulate"/>
      <category term="Drools Fusion"/>
      <category term="Codehaus"/>
      <category term="JUG"/>
      <category term="Rule Authoring"/>
      <category term="Negation"/>
      <category term="Business Rules Governance"/>
      <category term="DynaBeans"/>
      <category term="junit"/>
      <category term="JFDI"/>
      <category term="Rule Engines"/>
      <category term="KAMS"/>
      <category term="dynamically generated classes"/>
      <category term="ORF"/>
      <category term="Form Builder"/>
      <category term="syntax"/>
      <category term="shadow proxies"/>
      <category term="BRMS Guvnor Drools"/>
      <category term="ANTLR"/>
      <category term="Service Manager"/>
      <category term="FedEx"/>
      <category term="DSL"/>
      <category term="Clips"/>
      <category term="planner"/>
      <category term="traits"/>
      <category term="examination"/>
      <category term="search space"/>
      <category term="Janino"/>
      <category term="MySQL"/>
      <category term="Web Services"/>
      <category term="semantic web"/>
      <category term="jBPM"/>
      <category term="constraint programming"/>
      <category term="generated classes"/>
      <category term="Research Network"/>
      <category term="algorithm"/>
      <category term="cloud"/>
      <category term="Life Cycle"/>
      <category term="MISMO"/>
      <category term="BPEL"/>
      <category term="LDAP"/>
      <category term="jBPM5 webinar"/>
      <category term="Templates"/>
      <category term="case management"/>
      <category term="android"/>
      <category term="persistence"/>
      <category term="RIF"/>
      <category term="Logic Operators"/>
      <category term="relational programming"/>
      <category term="Debug"/>
      <category term="Jess"/>
      <category term="release"/>
      <category term="extensibility"/>
      <category term="Atom"/>
      <category term="Analytics"/>
      <category term="Portuguese"/>
      <category term="Meetups"/>
      <category term="Synasc"/>
      <category term="drools puzzle"/>
      <category term="Computer Games"/>
      <category term="Progress"/>
      <category term="JavaOne"/>
      <category term="accumulate function"/>
      <category term="Programming"/>
      <category term="Healthcare"/>
      <category term="October Rules Fest"/>
      <category term="Guvnor"/>
      <category term="SwitchYard"/>
      <category term="WordNet"/>
      <category term="SBVR"/>
      <category term="devoxx"/>
      <category term="one"/>
      <category term="Drools Chance"/>
      <category term="plug tree"/>
      <category term="Presentation"/>
      <category term="Spring"/>
      <category term="Guice"/>
      <category term="salaboy"/>
      <category term="solver"/>
      <category term="Savvion"/>
      <category term="OSGi"/>
      <category term="http://www.blogger.com/img/blank.gif"/>
      <category term="REST"/>
      <category term="DSL regexp antlr"/>
      <category term="project proposals"/>
      <category term="Forward  Chaining"/>
      <category term="declarative programming"/>
      <category term="videos"/>
      <category term="CEP"/>
      <category term="book"/>
      <category term="API"/>
      <category term="brms ajax web"/>
      <category term="combinatorial optimization"/>
      <category term="tests"/>
      <category term="computer vision"/>
      <category term="functional programming"/>
      <category term="Time"/>
      <category term="parser"/>
      <category term="droos ide update-site downloads"/>
      <category term="expressiveness"/>
      <author>
        <name>Mark Proctor</name>
        <email>noreply@blogger.com</email>
      </author>
      <link href="http://blog.athico.com/" rel="alternate" type="text/html"/>
      <link href="http://feeds.athico.com/DroolsRSS" rel="self" type="application/atom+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <subtitle>All things Artificial Intelligence related: Rules, Processes, Events, Agents, Planning, Ontologies and more :)</subtitle>
      <title>Drools &amp; jBPM</title>
      <updated>2012-02-08T23:27:12Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-5869426.post-3088334808662799702</id>
    <link href="http://feeds.athico.com/~r/DroolsRSS/~3/TTC8Qqeazc4/guided-decision-table-copyingpasting.html" rel="alternate" type="text/html"/>
    <title>Drools &amp; JBPM: Guided Decision Table - Copying\pasting rows</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">Before starting the next big feature, I relaxed a bit (Mark will kill me ;-) ) and added  the ability to copy and paste rows in the guided Decision Table editor  in Guvnor.<br/><br/>This feature comes to the Template Data grid for  free.<br/><br/><a href="http://4.bp.blogspot.com/-1QLI4fWkSps/TxhGXdoYP1I/AAAAAAAAAfY/q0ZSNksteCM/s1600/Screenshot.png"><img alt="" border="0" id="BLOGGER_PHOTO_ID_5699382697342287698" src="http://4.bp.blogspot.com/-1QLI4fWkSps/TxhGXdoYP1I/AAAAAAAAAfY/q0ZSNksteCM/s400/Screenshot.png" style="cursor: pointer; cursor: hand; width: 388px; height: 188px;"/></a><br/><br/>Video <a href="http://vimeo.com/35323602">here</a>.<div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/5869426-3088334808662799702?l=blog.athico.com" width="1"/></div><img height="1" src="http://feeds.feedburner.com/~r/DroolsRSS/~4/TTC8Qqeazc4" width="1"/></div>
    </summary>
    <updated>2012-01-19T16:26:00Z</updated>
    <category scheme="http://www.blogger.com/atom/ns#" term="decision tables"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="Guvnor"/><feedburner:origLink xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://blog.athico.com/2012/01/guided-decision-table-copyingpasting.html</feedburner:origLink>
    <author>
      <name>Michael Anstis</name>
      <email>noreply@blogger.com</email>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-5869426</id>
      <category term="Performance"/>
      <category term="compilers"/>
      <category term="Conflict Resolution"/>
      <category term="Probability"/>
      <category term="use case"/>
      <category term="competition"/>
      <category term="drools webinar"/>
      <category term="cookbook"/>
      <category term="uncertainty"/>
      <category term="aires"/>
      <category term="service repository"/>
      <category term="Simulation and Testing"/>
      <category term="Job"/>
      <category term="Testing"/>
      <category term="medical"/>
      <category term="Time-Sensitive"/>
      <category term="GSoC"/>
      <category term="AI"/>
      <category term="javapolis"/>
      <category term="video"/>
      <category term="Ad-Hoc"/>
      <category term="Expert Systems"/>
      <category term="RuleML"/>
      <category term="variables"/>
      <category term="Business Rules"/>
      <category term="Domain Specific Languages"/>
      <category term="workshop"/>
      <category term="java"/>
      <category term="infoQ"/>
      <category term="JBoss Rules"/>
      <category term="example"/>
      <category term="Mind Map"/>
      <category term="Rules Engine"/>
      <category term="BAM"/>
      <category term="DotNet"/>
      <category term="Rules"/>
      <category term="Business Rules Forum"/>
      <category term="Fuzzy"/>
      <category term="decision tables"/>
      <category term="Boot Camp"/>
      <category term="Drools Boot Camp"/>
      <category term="interview"/>
      <category term="Eclipse"/>
      <category term="MicroContainer"/>
      <category term="Stream"/>
      <category term="designer"/>
      <category term="Brazilian"/>
      <category term="upgrade tool"/>
      <category term="milestone"/>
      <category term="BOF"/>
      <category term="Seam"/>
      <category term="quote"/>
      <category term="JDT"/>
      <category term="shadow facts"/>
      <category term="event"/>
      <category term="ORF 2008"/>
      <category term="SOA"/>
      <category term="Smooks"/>
      <category term="GUI"/>
      <category term="grammar"/>
      <category term="Drools Expert"/>
      <category term="sequential"/>
      <category term="announcement"/>
      <category term="Drools"/>
      <category term="buenos"/>
      <category term="ESP"/>
      <category term="Natural Language"/>
      <category term="Camel"/>
      <category term="SSL"/>
      <category term="jBPM5"/>
      <category term="JSON"/>
      <category term="Drools Flow"/>
      <category term="RuleML 2008"/>
      <category term="Rete"/>
      <category term="Production Rules Systems"/>
      <category term="DRL"/>
      <category term="remote"/>
      <category term="brms insurance demo standalone"/>
      <category term="FactTemplate"/>
      <category term="traveling tournament"/>
      <category term="BRMS"/>
      <category term="MVEL"/>
      <category term="Rule Flow"/>
      <category term="Open Source"/>
      <category term="argentina"/>
      <category term="IKVM"/>
      <category term="BPMN"/>
      <category term="source code"/>
      <category term="standards"/>
      <category term="machine learning"/>
      <category term="image processing"/>
      <category term="Backward Chaining."/>
      <category term="Monitoring"/>
      <category term="modify block"/>
      <category term="GIS"/>
      <category term="accumulate"/>
      <category term="Drools Fusion"/>
      <category term="Codehaus"/>
      <category term="JUG"/>
      <category term="Rule Authoring"/>
      <category term="Negation"/>
      <category term="Business Rules Governance"/>
      <category term="DynaBeans"/>
      <category term="junit"/>
      <category term="JFDI"/>
      <category term="Rule Engines"/>
      <category term="KAMS"/>
      <category term="dynamically generated classes"/>
      <category term="ORF"/>
      <category term="Form Builder"/>
      <category term="syntax"/>
      <category term="shadow proxies"/>
      <category term="BRMS Guvnor Drools"/>
      <category term="ANTLR"/>
      <category term="Service Manager"/>
      <category term="FedEx"/>
      <category term="DSL"/>
      <category term="Clips"/>
      <category term="planner"/>
      <category term="traits"/>
      <category term="examination"/>
      <category term="search space"/>
      <category term="Janino"/>
      <category term="MySQL"/>
      <category term="Web Services"/>
      <category term="semantic web"/>
      <category term="jBPM"/>
      <category term="constraint programming"/>
      <category term="generated classes"/>
      <category term="Research Network"/>
      <category term="algorithm"/>
      <category term="cloud"/>
      <category term="Life Cycle"/>
      <category term="MISMO"/>
      <category term="BPEL"/>
      <category term="LDAP"/>
      <category term="jBPM5 webinar"/>
      <category term="Templates"/>
      <category term="case management"/>
      <category term="android"/>
      <category term="persistence"/>
      <category term="RIF"/>
      <category term="Logic Operators"/>
      <category term="relational programming"/>
      <category term="Debug"/>
      <category term="Jess"/>
      <category term="release"/>
      <category term="extensibility"/>
      <category term="Atom"/>
      <category term="Analytics"/>
      <category term="Portuguese"/>
      <category term="Meetups"/>
      <category term="Synasc"/>
      <category term="drools puzzle"/>
      <category term="Computer Games"/>
      <category term="Progress"/>
      <category term="JavaOne"/>
      <category term="accumulate function"/>
      <category term="Programming"/>
      <category term="Healthcare"/>
      <category term="October Rules Fest"/>
      <category term="Guvnor"/>
      <category term="SwitchYard"/>
      <category term="WordNet"/>
      <category term="SBVR"/>
      <category term="devoxx"/>
      <category term="one"/>
      <category term="Drools Chance"/>
      <category term="plug tree"/>
      <category term="Presentation"/>
      <category term="Spring"/>
      <category term="Guice"/>
      <category term="salaboy"/>
      <category term="solver"/>
      <category term="Savvion"/>
      <category term="OSGi"/>
      <category term="http://www.blogger.com/img/blank.gif"/>
      <category term="REST"/>
      <category term="DSL regexp antlr"/>
      <category term="project proposals"/>
      <category term="Forward  Chaining"/>
      <category term="declarative programming"/>
      <category term="videos"/>
      <category term="CEP"/>
      <category term="book"/>
      <category term="API"/>
      <category term="brms ajax web"/>
      <category term="combinatorial optimization"/>
      <category term="tests"/>
      <category term="computer vision"/>
      <category term="functional programming"/>
      <category term="Time"/>
      <category term="parser"/>
      <category term="droos ide update-site downloads"/>
      <category term="expressiveness"/>
      <author>
        <name>Mark Proctor</name>
        <email>noreply@blogger.com</email>
      </author>
      <link href="http://blog.athico.com/" rel="alternate" type="text/html"/>
      <link href="http://feeds.athico.com/DroolsRSS" rel="self" type="application/atom+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <subtitle>All things Artificial Intelligence related: Rules, Processes, Events, Agents, Planning, Ontologies and more :)</subtitle>
      <title>Drools &amp; jBPM</title>
      <updated>2012-02-08T23:27:12Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-5869426.post-1001767331887469253</id>
    <link href="http://feeds.athico.com/~r/DroolsRSS/~3/ZJkXbgG1mcI/project-idea-debug-helper.html" rel="alternate" type="text/html"/>
    <title>Drools &amp; JBPM: Project Idea: Debug Helper</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">Have a great project for any intrepid rule exlorers. The project itself  is not too difficult and will make it really easy for people to get an  idea for what is going on inside of the engine. The below is an early  concept idea sketched out, don't take it as a spec to be rigidly  followed :) You know where to find us if you want mentoring on this task:<br/><a href="http://www.jboss.org/drools/irc">http://www.jboss.org/drools/irc</a><br/><br/>While the rule itself is named, patterns are not. By allowing patterns  themselves to take on ids, we can specify capture points. This is  already possible for rule terminal nodes via listeners for rule  activation, but users would still need to write their own handlers. The  proposal here is to write a utility that will capture propagations  during a given start/stop period that users can later inspect for both  activations and join attempts. This will allow users to know exactly  what is happening underneath.<br/><br/>Blow shows a rule with 3 potential capture points:<br/><pre>package pkg1<br/><br/>rule r1 when then<br/>   Person( name == "xxx" ) @id(p1)<br/>   Location( name == "xxx" ) @id(l1)<br/>then<br/>end</pre>1) The terminal node, via the rule name.<br/>2) p1<br/>2) l1<br/><br/>The idea is to be able to turn on monitor, that has a start(), stop()  and clear() methods. When started it will capture the insert, update,  retract propagations. Further it should be possible to write assertion  utility to assert on the state of the captured information.<br/><br/>When capture is turned on for a given capture point it will record a  List of instances. As different nodes have different data, there is a  base node and a child node. Every time a propagation happens an instance  is created and added to the montior representing the current state.<pre>BaseCapture<br/>   NodeType nodeType       // enum for join, exists, not etc to allow  for casting to correct node<br/>   String nodeName           // enum for join, exists, not etc<br/>   Collection<br/> rules   // Rules is a collection, as the node  might be shared<br/>   Activation activation      // Activation at the root of the WM  operation (may be null, if the acion came from outside of the wm).<br/>   FactHandle[] f                // fact at the root of the working  memory operation<br/>   FactHandle[] fh              // fact[] that entered the node<br/><br/>JoinCaptire extends BaseCapture<br/>   Direction direction              // Left/Right enum<br/>   FactHandle[] successJoins // the opposite fact handles that were  successfully joined with, during this montioring session<br/>   FactHandle[] failedJoins    // the opposite fact handles that were  unsuccessfully joined with, during this monitoring session.<br/>                                                //Note if the  propagation was from the left the join arrays will all be an length of 1.<br/>RulePropagation extends BasePropagation<br/>   RuleStatus status        // Matched, UnMatched, Fired</pre>For example lets say I want to monitor the propagations on l1 and r1,  that happens during two working memory actions. I can do the following:<pre>ksession.insert( new Person("darth"));<br/>fh = ksession.insert( new Location("death star));<br/>NodeMonitor l1monitor = ksession.getMonitor("pkg1/r1/l1")<br/>NodeMonitor r1monitor = ksession.getMonitor("pkg1/r1")<br/>l1monitor.start();<br/>r1monitor.start();<br/>ksession.insert( new Person("yoda));<br/>ksession.retract( fh );<br/>l2monitor.start();<br/>r2monitor.start();<br/><br/>List props = l1monitor.getResults(JoinCapture.class);<br/>List props = r1monitor.getResults(RuleCapture.class);</pre>l1monitor will show left propagation for yoda and a successful join for  death star<br/>r1 will have two entries. It will show a match (activation creation) but  it will also show an unmatch, due to the retract.<div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/5869426-1001767331887469253?l=blog.athico.com" width="1"/></div><img height="1" src="http://feeds.feedburner.com/~r/DroolsRSS/~4/ZJkXbgG1mcI" width="1"/></div>
    </summary>
    <updated>2012-01-19T03:38:00Z</updated>
    <category scheme="http://www.blogger.com/atom/ns#" term="Drools Expert"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="Drools"/><feedburner:origLink xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://blog.athico.com/2012/01/project-idea-debug-helper.html</feedburner:origLink>
    <author>
      <name>Mark Proctor</name>
      <email>noreply@blogger.com</email>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-5869426</id>
      <category term="Performance"/>
      <category term="compilers"/>
      <category term="Conflict Resolution"/>
      <category term="Probability"/>
      <category term="use case"/>
      <category term="competition"/>
      <category term="drools webinar"/>
      <category term="cookbook"/>
      <category term="uncertainty"/>
      <category term="aires"/>
      <category term="service repository"/>
      <category term="Simulation and Testing"/>
      <category term="Job"/>
      <category term="Testing"/>
      <category term="medical"/>
      <category term="Time-Sensitive"/>
      <category term="GSoC"/>
      <category term="AI"/>
      <category term="javapolis"/>
      <category term="video"/>
      <category term="Ad-Hoc"/>
      <category term="Expert Systems"/>
      <category term="RuleML"/>
      <category term="variables"/>
      <category term="Business Rules"/>
      <category term="Domain Specific Languages"/>
      <category term="workshop"/>
      <category term="java"/>
      <category term="infoQ"/>
      <category term="JBoss Rules"/>
      <category term="example"/>
      <category term="Mind Map"/>
      <category term="Rules Engine"/>
      <category term="BAM"/>
      <category term="DotNet"/>
      <category term="Rules"/>
      <category term="Business Rules Forum"/>
      <category term="Fuzzy"/>
      <category term="decision tables"/>
      <category term="Boot Camp"/>
      <category term="Drools Boot Camp"/>
      <category term="interview"/>
      <category term="Eclipse"/>
      <category term="MicroContainer"/>
      <category term="Stream"/>
      <category term="designer"/>
      <category term="Brazilian"/>
      <category term="upgrade tool"/>
      <category term="milestone"/>
      <category term="BOF"/>
      <category term="Seam"/>
      <category term="quote"/>
      <category term="JDT"/>
      <category term="shadow facts"/>
      <category term="event"/>
      <category term="ORF 2008"/>
      <category term="SOA"/>
      <category term="Smooks"/>
      <category term="GUI"/>
      <category term="grammar"/>
      <category term="Drools Expert"/>
      <category term="sequential"/>
      <category term="announcement"/>
      <category term="Drools"/>
      <category term="buenos"/>
      <category term="ESP"/>
      <category term="Natural Language"/>
      <category term="Camel"/>
      <category term="SSL"/>
      <category term="jBPM5"/>
      <category term="JSON"/>
      <category term="Drools Flow"/>
      <category term="RuleML 2008"/>
      <category term="Rete"/>
      <category term="Production Rules Systems"/>
      <category term="DRL"/>
      <category term="remote"/>
      <category term="brms insurance demo standalone"/>
      <category term="FactTemplate"/>
      <category term="traveling tournament"/>
      <category term="BRMS"/>
      <category term="MVEL"/>
      <category term="Rule Flow"/>
      <category term="Open Source"/>
      <category term="argentina"/>
      <category term="IKVM"/>
      <category term="BPMN"/>
      <category term="source code"/>
      <category term="standards"/>
      <category term="machine learning"/>
      <category term="image processing"/>
      <category term="Backward Chaining."/>
      <category term="Monitoring"/>
      <category term="modify block"/>
      <category term="GIS"/>
      <category term="accumulate"/>
      <category term="Drools Fusion"/>
      <category term="Codehaus"/>
      <category term="JUG"/>
      <category term="Rule Authoring"/>
      <category term="Negation"/>
      <category term="Business Rules Governance"/>
      <category term="DynaBeans"/>
      <category term="junit"/>
      <category term="JFDI"/>
      <category term="Rule Engines"/>
      <category term="KAMS"/>
      <category term="dynamically generated classes"/>
      <category term="ORF"/>
      <category term="Form Builder"/>
      <category term="syntax"/>
      <category term="shadow proxies"/>
      <category term="BRMS Guvnor Drools"/>
      <category term="ANTLR"/>
      <category term="Service Manager"/>
      <category term="FedEx"/>
      <category term="DSL"/>
      <category term="Clips"/>
      <category term="planner"/>
      <category term="traits"/>
      <category term="examination"/>
      <category term="search space"/>
      <category term="Janino"/>
      <category term="MySQL"/>
      <category term="Web Services"/>
      <category term="semantic web"/>
      <category term="jBPM"/>
      <category term="constraint programming"/>
      <category term="generated classes"/>
      <category term="Research Network"/>
      <category term="algorithm"/>
      <category term="cloud"/>
      <category term="Life Cycle"/>
      <category term="MISMO"/>
      <category term="BPEL"/>
      <category term="LDAP"/>
      <category term="jBPM5 webinar"/>
      <category term="Templates"/>
      <category term="case management"/>
      <category term="android"/>
      <category term="persistence"/>
      <category term="RIF"/>
      <category term="Logic Operators"/>
      <category term="relational programming"/>
      <category term="Debug"/>
      <category term="Jess"/>
      <category term="release"/>
      <category term="extensibility"/>
      <category term="Atom"/>
      <category term="Analytics"/>
      <category term="Portuguese"/>
      <category term="Meetups"/>
      <category term="Synasc"/>
      <category term="drools puzzle"/>
      <category term="Computer Games"/>
      <category term="Progress"/>
      <category term="JavaOne"/>
      <category term="accumulate function"/>
      <category term="Programming"/>
      <category term="Healthcare"/>
      <category term="October Rules Fest"/>
      <category term="Guvnor"/>
      <category term="SwitchYard"/>
      <category term="WordNet"/>
      <category term="SBVR"/>
      <category term="devoxx"/>
      <category term="one"/>
      <category term="Drools Chance"/>
      <category term="plug tree"/>
      <category term="Presentation"/>
      <category term="Spring"/>
      <category term="Guice"/>
      <category term="salaboy"/>
      <category term="solver"/>
      <category term="Savvion"/>
      <category term="OSGi"/>
      <category term="http://www.blogger.com/img/blank.gif"/>
      <category term="REST"/>
      <category term="DSL regexp antlr"/>
      <category term="project proposals"/>
      <category term="Forward  Chaining"/>
      <category term="declarative programming"/>
      <category term="videos"/>
      <category term="CEP"/>
      <category term="book"/>
      <category term="API"/>
      <category term="brms ajax web"/>
      <category term="combinatorial optimization"/>
      <category term="tests"/>
      <category term="computer vision"/>
      <category term="functional programming"/>
      <category term="Time"/>
      <category term="parser"/>
      <category term="droos ide update-site downloads"/>
      <category term="expressiveness"/>
      <author>
        <name>Mark Proctor</name>
        <email>noreply@blogger.com</email>
      </author>
      <link href="http://blog.athico.com/" rel="alternate" type="text/html"/>
      <link href="http://feeds.athico.com/DroolsRSS" rel="self" type="application/atom+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <subtitle>All things Artificial Intelligence related: Rules, Processes, Events, Agents, Planning, Ontologies and more :)</subtitle>
      <title>Drools &amp; jBPM</title>
      <updated>2012-02-08T23:27:11Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-5869426.post-5198419454324301656</id>
    <link href="http://feeds.athico.com/~r/DroolsRSS/~3/Tyamil8D-8E/fine-grained-property-change-listeners_18.html" rel="alternate" type="text/html"/>
    <title>Drools &amp; JBPM: Fine Grained Property Change Listeners (Slot Specific)  (Mario Fusco)</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><div class="moz-text-html" lang="x-unicode">Just a quick  recap of what I did until now to check if we are all on the same page  and also agree with the naming convention I used.<br/><br/>The property  specific feature is off by default in order to make the behavior of the  rule engine backward compatible with the former releases. If you want to  activate it on a specific bean you have to annotate it with  @propSpecific. This annotation works both on drl type declarations:<br/><br/>declare Person<br/>   @propSpecific<br/>   firstName : String<br/>   lastName : String<br/>end<br/><br/>and on Java classes:<br/><br/>@PropSpecific<br/>public static class Person {<br/>   private String firstName;<br/>   private String lastName;<br/>}<br/><br/>Moreover on Java classes you can also annotate any method to  say that its invocation actually modifies other properties. For instance  in the former Person class you could have a method like:<br/><br/>@Modifies( "firstName, lastName" )<br/>public void setName(String name) {<br/>   String[] names = name.split("\\s");<br/>   this.firstName = names[0];<br/>   this.lastName = names[1];<br/>}<br/><br/>That means that if a rule has a RHS like the following:<br/><br/>modify($person) { setName("Mario Fusco") }<br/><br/>it  will correctly recognize that both the firstName and lastName have been  modified and act accordingly. Of course the @Modifies annotation on a  method has no effect if the declaring class isn't  annotated with  @PropSpecific.<br/><br/>The third annotation I have introduced is on patterns and allows you  to modify the inferred set of properties "listened" by it. So, for  example, you can annotate a pattern in the LHS of a rule like:<br/><br/>Person(  firstName == $expectedFirstName ) @watch( lastName ) // --&gt; listens  for changes on both firstName (inferred) and lastName<br/>Person( firstName == $expectedFirstName ) @watch( * ) // --&gt;  listens for all the properties of the Person bean<br/>Person( firstName  == $expectedFirstName ) @watch( lastName, !firstName ) // --&gt; listens  for changes on lastName and explicitly exclude firstName<br/>Person( firstName == $expectedFirstName ) @watch( *, !age )  // --&gt; listens for changes on all the properties except the age one<br/><br/>Once again this annotation has no effect if the corresponding pattern's type hasn't been annotated with @PropSpecific.<br/><br/>I've  almost finished with the development of this feature (at the moment I  am missing the compile-time check of the properties named in the @watch  annotation together with some more exhaustive tests), so if you think  that I misunderstood something or there is room for any improvement (or  you just don't like the annotation's names I chose) please let me know  as soon as possible.<br/><br/>Mario<br/></div><div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/5869426-5198419454324301656?l=blog.athico.com" width="1"/></div><img height="1" src="http://feeds.feedburner.com/~r/DroolsRSS/~4/Tyamil8D-8E" width="1"/></div>
    </summary>
    <updated>2012-01-18T00:27:00Z</updated>
    <category scheme="http://www.blogger.com/atom/ns#" term="Drools Expert"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="Drools"/><feedburner:origLink xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://blog.athico.com/2012/01/fine-grained-property-change-listeners_18.html</feedburner:origLink>
    <author>
      <name>Mark Proctor</name>
      <email>noreply@blogger.com</email>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-5869426</id>
      <category term="Performance"/>
      <category term="compilers"/>
      <category term="Conflict Resolution"/>
      <category term="Probability"/>
      <category term="use case"/>
      <category term="competition"/>
      <category term="drools webinar"/>
      <category term="cookbook"/>
      <category term="uncertainty"/>
      <category term="aires"/>
      <category term="service repository"/>
      <category term="Simulation and Testing"/>
      <category term="Job"/>
      <category term="Testing"/>
      <category term="medical"/>
      <category term="Time-Sensitive"/>
      <category term="GSoC"/>
      <category term="AI"/>
      <category term="javapolis"/>
      <category term="video"/>
      <category term="Ad-Hoc"/>
      <category term="Expert Systems"/>
      <category term="RuleML"/>
      <category term="variables"/>
      <category term="Business Rules"/>
      <category term="Domain Specific Languages"/>
      <category term="workshop"/>
      <category term="java"/>
      <category term="infoQ"/>
      <category term="JBoss Rules"/>
      <category term="example"/>
      <category term="Mind Map"/>
      <category term="Rules Engine"/>
      <category term="BAM"/>
      <category term="DotNet"/>
      <category term="Rules"/>
      <category term="Business Rules Forum"/>
      <category term="Fuzzy"/>
      <category term="decision tables"/>
      <category term="Boot Camp"/>
      <category term="Drools Boot Camp"/>
      <category term="interview"/>
      <category term="Eclipse"/>
      <category term="MicroContainer"/>
      <category term="Stream"/>
      <category term="designer"/>
      <category term="Brazilian"/>
      <category term="upgrade tool"/>
      <category term="milestone"/>
      <category term="BOF"/>
      <category term="Seam"/>
      <category term="quote"/>
      <category term="JDT"/>
      <category term="shadow facts"/>
      <category term="event"/>
      <category term="ORF 2008"/>
      <category term="SOA"/>
      <category term="Smooks"/>
      <category term="GUI"/>
      <category term="grammar"/>
      <category term="Drools Expert"/>
      <category term="sequential"/>
      <category term="announcement"/>
      <category term="Drools"/>
      <category term="buenos"/>
      <category term="ESP"/>
      <category term="Natural Language"/>
      <category term="Camel"/>
      <category term="SSL"/>
      <category term="jBPM5"/>
      <category term="JSON"/>
      <category term="Drools Flow"/>
      <category term="RuleML 2008"/>
      <category term="Rete"/>
      <category term="Production Rules Systems"/>
      <category term="DRL"/>
      <category term="remote"/>
      <category term="brms insurance demo standalone"/>
      <category term="FactTemplate"/>
      <category term="traveling tournament"/>
      <category term="BRMS"/>
      <category term="MVEL"/>
      <category term="Rule Flow"/>
      <category term="Open Source"/>
      <category term="argentina"/>
      <category term="IKVM"/>
      <category term="BPMN"/>
      <category term="source code"/>
      <category term="standards"/>
      <category term="machine learning"/>
      <category term="image processing"/>
      <category term="Backward Chaining."/>
      <category term="Monitoring"/>
      <category term="modify block"/>
      <category term="GIS"/>
      <category term="accumulate"/>
      <category term="Drools Fusion"/>
      <category term="Codehaus"/>
      <category term="JUG"/>
      <category term="Rule Authoring"/>
      <category term="Negation"/>
      <category term="Business Rules Governance"/>
      <category term="DynaBeans"/>
      <category term="junit"/>
      <category term="JFDI"/>
      <category term="Rule Engines"/>
      <category term="KAMS"/>
      <category term="dynamically generated classes"/>
      <category term="ORF"/>
      <category term="Form Builder"/>
      <category term="syntax"/>
      <category term="shadow proxies"/>
      <category term="BRMS Guvnor Drools"/>
      <category term="ANTLR"/>
      <category term="Service Manager"/>
      <category term="FedEx"/>
      <category term="DSL"/>
      <category term="Clips"/>
      <category term="planner"/>
      <category term="traits"/>
      <category term="examination"/>
      <category term="search space"/>
      <category term="Janino"/>
      <category term="MySQL"/>
      <category term="Web Services"/>
      <category term="semantic web"/>
      <category term="jBPM"/>
      <category term="constraint programming"/>
      <category term="generated classes"/>
      <category term="Research Network"/>
      <category term="algorithm"/>
      <category term="cloud"/>
      <category term="Life Cycle"/>
      <category term="MISMO"/>
      <category term="BPEL"/>
      <category term="LDAP"/>
      <category term="jBPM5 webinar"/>
      <category term="Templates"/>
      <category term="case management"/>
      <category term="android"/>
      <category term="persistence"/>
      <category term="RIF"/>
      <category term="Logic Operators"/>
      <category term="relational programming"/>
      <category term="Debug"/>
      <category term="Jess"/>
      <category term="release"/>
      <category term="extensibility"/>
      <category term="Atom"/>
      <category term="Analytics"/>
      <category term="Portuguese"/>
      <category term="Meetups"/>
      <category term="Synasc"/>
      <category term="drools puzzle"/>
      <category term="Computer Games"/>
      <category term="Progress"/>
      <category term="JavaOne"/>
      <category term="accumulate function"/>
      <category term="Programming"/>
      <category term="Healthcare"/>
      <category term="October Rules Fest"/>
      <category term="Guvnor"/>
      <category term="SwitchYard"/>
      <category term="WordNet"/>
      <category term="SBVR"/>
      <category term="devoxx"/>
      <category term="one"/>
      <category term="Drools Chance"/>
      <category term="plug tree"/>
      <category term="Presentation"/>
      <category term="Spring"/>
      <category term="Guice"/>
      <category term="salaboy"/>
      <category term="solver"/>
      <category term="Savvion"/>
      <category term="OSGi"/>
      <category term="http://www.blogger.com/img/blank.gif"/>
      <category term="REST"/>
      <category term="DSL regexp antlr"/>
      <category term="project proposals"/>
      <category term="Forward  Chaining"/>
      <category term="declarative programming"/>
      <category term="videos"/>
      <category term="CEP"/>
      <category term="book"/>
      <category term="API"/>
      <category term="brms ajax web"/>
      <category term="combinatorial optimization"/>
      <category term="tests"/>
      <category term="computer vision"/>
      <category term="functional programming"/>
      <category term="Time"/>
      <category term="parser"/>
      <category term="droos ide update-site downloads"/>
      <category term="expressiveness"/>
      <author>
        <name>Mark Proctor</name>
        <email>noreply@blogger.com</email>
      </author>
      <link href="http://blog.athico.com/" rel="alternate" type="text/html"/>
      <link href="http://feeds.athico.com/DroolsRSS" rel="self" type="application/atom+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <subtitle>All things Artificial Intelligence related: Rules, Processes, Events, Agents, Planning, Ontologies and more :)</subtitle>
      <title>Drools &amp; jBPM</title>
      <updated>2012-02-08T23:27:12Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://social-biz.org/?p=1863</id>
    <link href="http://social-biz.org/2012/01/16/storytelling-derails-process-discovery/" rel="alternate" type="text/html"/>
    <title>Keith Swenson: Storytelling derails Process Discovery</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">There is an interesting video “Your Storytelling Brain”  from Cognitive Neuroscientist Michael Gazzaniga who talks about how we remember things.  He describes a part of the brain called “the interpreter” which functions to organize memories into plausible stories.  This is great … <a href="http://social-biz.org/2012/01/16/storytelling-derails-process-discovery/">Continue reading <span class="meta-nav">→</span></a><img alt="" border="0" height="1" src="http://stats.wordpress.com/b.gif?host=social-biz.org&amp;blog=190929&amp;post=1863&amp;subd=kswenson&amp;ref=&amp;feed=1" width="1"/></div>
    </summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p>There is an interesting video “<a href="http://bigthink.com/ideas/41943">Your Storytelling Brain</a>”  from Cognitive Neuroscientist Michael Gazzaniga who talks about how we remember things.  He describes a part of the brain called “the interpreter” which functions to organize memories into plausible stories.  This is great most of the time, but causes a type of memory distortion that is gets in the way of designing appropriate business processes.<span id="more-1863"/></p>
<p>You memories are not perfect, but the interpreter can help to fill in details which are plausible.  Evidence of this is seen from how people who have suffered trauma that eliminates some of their real memories, will confabulate things to fill in the gaps, in a way to make a consistent narrative.  We do this all the time, and if you memories are complete enough, and your understanding of the context good enough, this confabulation works in your favor.</p>
<p>This tendency to create a plausible narrative effects process design in two ways.  The first is that when people are interviewed about a given process they have been taking part of, the interpreter part of the brain will make up things to fill in the gaps in the process story that they might not have been aware of.  Indeed, while working in the process, people will have a narrative of how the process proceeds outside of their direct interaction that may be completely inaccurate.  That narrative, however, help to support their own part of it.  Memory works by having a consistent story, not necessarily an accurate story.  They may hold false beliefs about a process, but as long as they do their part correctly there is no harm.  It may be hard, however, for a process researcher to distinguish the parts that they actually know, from the parts that they filled in to make a consistent narrative.</p>
<p>The second reason it gets in the way is that when the process changes, the narrative can change along with it, and in doing so the original process is forgotten.  Organizations are constantly changing around us, but as we learn of a change we incorporate it into our narratives, and forget that there was a change.  Because the memory has a filled in narrative, it is hard for people to remember the exceptional cases.  People will often insist that they have been running a process the same way every time, until you remind them of a particular exception they handled.  Then the remark is usually “oh yes, that did happen.”</p>
<p>I have written about “<a href="http://social-biz.org/2008/05/25/process-confabulation/">Process Confabulation</a>” before as a danger inherent interviewing people to find out the existing process.  I found Michael Gazzaniga’s video interesting because it explains how this is caused by a basic element in the way memory works.</p>
<br/>  <a href="http://feeds.wordpress.com/1.0/gocomments/kswenson.wordpress.com/1863/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/kswenson.wordpress.com/1863/"/></a> <a href="http://feeds.wordpress.com/1.0/godelicious/kswenson.wordpress.com/1863/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/kswenson.wordpress.com/1863/"/></a> <a href="http://feeds.wordpress.com/1.0/gofacebook/kswenson.wordpress.com/1863/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/kswenson.wordpress.com/1863/"/></a> <a href="http://feeds.wordpress.com/1.0/gotwitter/kswenson.wordpress.com/1863/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/kswenson.wordpress.com/1863/"/></a> <a href="http://feeds.wordpress.com/1.0/gostumble/kswenson.wordpress.com/1863/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/kswenson.wordpress.com/1863/"/></a> <a href="http://feeds.wordpress.com/1.0/godigg/kswenson.wordpress.com/1863/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/kswenson.wordpress.com/1863/"/></a> <a href="http://feeds.wordpress.com/1.0/goreddit/kswenson.wordpress.com/1863/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/kswenson.wordpress.com/1863/"/></a> <img alt="" border="0" height="1" src="http://stats.wordpress.com/b.gif?host=social-biz.org&amp;blog=190929&amp;post=1863&amp;subd=kswenson&amp;ref=&amp;feed=1" width="1"/></div>
    </content>
    <updated>2012-01-16T20:02:05Z</updated>
    <category term="BPM"/>
    <category term="Process Mining"/>
    <category term="Workflow"/>
    <category term="process discovery"/>
    <category term="process mining"/>
    <author>
      <name>kswenson</name>
    </author>
    <source>
      <id>http://social-biz.org</id>
      <logo>http://s2.wp.com/i/buttonw-com.png</logo>
      <link href="http://social-biz.org/feed/" rel="self" type="application/atom+xml"/>
      <link href="http://social-biz.org" rel="alternate" type="text/html"/>
      <link href="http://social-biz.org/osd.xml" rel="search" type="application/opensearchdescription+xml"/>
      <link href="http://social-biz.org/?pushpress=hub" rel="hub" type="text/html"/>
      <subtitle>Empowering office workers to be more efficient, adaptive, and effective.</subtitle>
      <title>Collaborative Planning &amp; Social Business</title>
      <updated>2012-02-09T05:27:03Z</updated>
    </source>
  </entry>

  <entry xml:lang="de">
    <id>http://www.saperionblog.com/?p=5658</id>
    <link href="http://www.saperionblog.com/lang/de/die-neuen-bpm-trends-fur-2012-was-uns-dieses-jahr-anmachen-wird/5658" rel="alternate" type="text/html"/>
    <title>Saperion.com (BPM related posts): Die neuen BPM-Trends für 2012: was uns dieses Jahr anmachen wird …</title>
    <summary>Es ist wieder einige Zeit her, daher habe mich mal wieder umgeschaut, welche neuen Akronyme, Begriffe und sonstigen Schönheiten sich am BPM-Horizont bemerkbar machen, jedenfalls was die Marktanalysten so sehen. Fangen wir mal mit Gartners Hype Cycle for Business Process Management aus 2011 an. Da ich die Grafik hier nicht veröffentlichen darf, so sei noch [...]</summary>
    <updated>2012-01-16T17:59:03Z</updated>
    <category term="general"/>
    <category term="process management"/>
    <category term="ACM"/>
    <category term="BPM"/>
    <category term="BPM-Trends"/>
    <category term="Case Management"/>
    <category term="Gartner"/>
    <author>
      <name>Dr. Martin Bartonitz</name>
    </author>
    <source>
      <id>http://www.saperionblog.com</id>
      <link href="http://www.saperionblog.com/tag/bpm/feed/" rel="self" type="application/atom+xml"/>
      <link href="http://www.saperionblog.com" rel="alternate" type="text/html"/>
      <link href="http://friendfeed.com/api/public-sup.json#ae70a1f9c8" rel="http://api.friendfeed.com/2008/03#sup" type="application/json"/>
      <subtitle>COMPLIANCE - SaaS - ECM - BPM - CMIS - SCRUM</subtitle>
      <title>SAPERION Blog » BPM</title>
      <updated>2012-02-08T11:27:11Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://social-biz.org/?p=1842</id>
    <link href="http://social-biz.org/2012/01/15/first-international-acm-workshop/" rel="alternate" type="text/html"/>
    <title>Keith Swenson: First International ACM Workshop</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">The organizing committee for the BPM 2012 conference has accepted a proposal for the First International Workshop on Adaptive Case Management  (ACM2012).  It will be a half or full day workshop (depending on the quantity of papers accepted) on Sept … <a href="http://social-biz.org/2012/01/15/first-international-acm-workshop/">Continue reading <span class="meta-nav">→</span></a><img alt="" border="0" height="1" src="http://stats.wordpress.com/b.gif?host=social-biz.org&amp;blog=190929&amp;post=1842&amp;subd=kswenson&amp;ref=&amp;feed=1" width="1"/></div>
    </summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p>The organizing committee for the <a href="http://bpm2012.ut.ee/">BPM 2012 conference</a> has accepted a proposal for the <a href="http://acm2012.blogs.dsv.su.se/"><strong>First International Workshop on Adaptive Case Management  (ACM2012)</strong></a>.  It will be a half or full day workshop (depending on the quantity of papers accepted) on Sept 3, 2012 in Tallinn, Estonia.  <span id="more-1842"/>That is the Monday before the week-long 10th installment of the BPM conference series hosted this year by the <a href="http://www.cs.ut.ee/en">Institute of Computer Science </a>at the <a href="http://www.ut.ee/en">University of Tartu</a>.</p>
<p><strong>Official Title:</strong> <span style="color: #0000ff;">The First International Workshop on Adaptive Case Management and other non-workflow approaches to BPM (ACM 2012) in conjunction with BPM 2012</span></p>
<p><strong><a href="http://kswenson.files.wordpress.com/2012/01/bpm2012header.png"><img alt="" class="size-full wp-image-1844 alignright" src="http://kswenson.files.wordpress.com/2012/01/bpm2012header.png?w=640" title="BPM2012header"/></a>Goal:</strong> While practitioners are trying to overcome the restrictions of workflow thinking, the research on the topic is somewhat lagging. The goal of this workshop is to bring together researchers and practitioners to discuss theoretical and practical problems and solutions in the area of non-workflow based approaches to BPM in general, and ACM (as a leading movement) in particular. This workshop is aimed to promote new, non-traditional ways of modelling and controlling business processes, the ones that suit better the dynamic environment in which contemporary enterprises and public organizations function.</p>
<p><strong>Important Dates:</strong></p>
<ul>
<li>Submission deadline: 1 June 2012</li>
<li>Notification due 2 July 2012</li>
<li>Camera-ready submission deadline: 30 July 2012</li>
<li>Workshop: 3 September 2012</li>
</ul>
<p><strong>Submissions Categories:</strong></p>
<ul>
<li><em>Position papers</em> raising relevant questions in the workshop area, identifying problems and providing a glimpse of solution for a given problem. Representing a basis for discussion, a position paper does not necessarily need to include solutions to its stated problems. Position papers must not exceed 4 pages.</li>
<li><em>Idea papers</em> exploring the history, successes, and challenges for various non-workflow approaches to BPM and outlining research roadmaps for the future. Contrary to short position papers, idea papers should provide the in-depth analysis of a problem, review its existing solutions, demonstrate insufficiency of these solutions and suggest new (yet unevaluated but well argued) solutions. Idea papers must not exceed 12 pages.</li>
<li><em>Experience reports</em> presenting challenges encountered in practice, their related case studies, success and failure stories. An experience report should clearly describe the working context, and focus on the problem and on the lessons learned. Experience reports should be complete and allow for rigorous testing of research theories methods and tools. Experience reports must be limited to 5-12 pages.</li>
<li><em>Research papers</em> reporting original results in the area addressed by the workshop. A research paper should clearly describe the problem tackled, explore the relevant state of the art, describe the proposed solution and provide a preliminary validation of this solution. Research papers must not exceed 12 pages.</li>
</ul>
<p>The real motivation for holding a workshop came from Irina Rychkova of the University Paris and Ilia Bider of Ibisoft in Stockholm who both got me involved as well.  Those who know me well may find it ironic that first academic workshop is being held in conjunction with the academic BPM conference.  Indeed, I criticized the BPM 2010 conference for its complete lack of case management topics.  While many proponents of BPM seem entrenched in Taylorist ideas that behind every job is a simple fixed process, there are many others who are searching simply for ways to make workers more efficient, regardless of whether the process can be predicted or not.  The forming of this workshop is evidence of that, and association with the well respected BPM conference series, it is likely that this workshop will include many well considered rigorous papers on Adaptive Case Management research.</p>
<p>I have been to Tallinn only once before, when I took the ferry across the Baltic from Helsinki where I was working on the TeamWARE Flow product in the early 1990′s.   That visit was marvelous, and I can only expect that Estonia much have changed remarkably in the long time since it has been out from under the shadow of the Soviet Union.  I am looking forward to it.</p>
<p>This is the third of three ACM events already planned for 2012, the other two are the <a href="http://social-biz.org/2012/01/14/2012-international-acm-awards/">ACM Awards</a>, and the <a href="http://social-biz.org/2012/01/15/2012-acm-live-virtual-summit/">ACM Live Virtual Event</a> in June.</p>
<br/>  <a href="http://feeds.wordpress.com/1.0/gocomments/kswenson.wordpress.com/1842/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/kswenson.wordpress.com/1842/"/></a> <a href="http://feeds.wordpress.com/1.0/godelicious/kswenson.wordpress.com/1842/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/kswenson.wordpress.com/1842/"/></a> <a href="http://feeds.wordpress.com/1.0/gofacebook/kswenson.wordpress.com/1842/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/kswenson.wordpress.com/1842/"/></a> <a href="http://feeds.wordpress.com/1.0/gotwitter/kswenson.wordpress.com/1842/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/kswenson.wordpress.com/1842/"/></a> <a href="http://feeds.wordpress.com/1.0/gostumble/kswenson.wordpress.com/1842/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/kswenson.wordpress.com/1842/"/></a> <a href="http://feeds.wordpress.com/1.0/godigg/kswenson.wordpress.com/1842/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/kswenson.wordpress.com/1842/"/></a> <a href="http://feeds.wordpress.com/1.0/goreddit/kswenson.wordpress.com/1842/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/kswenson.wordpress.com/1842/"/></a> <img alt="" border="0" height="1" src="http://stats.wordpress.com/b.gif?host=social-biz.org&amp;blog=190929&amp;post=1842&amp;subd=kswenson&amp;ref=&amp;feed=1" width="1"/></div>
    </content>
    <updated>2012-01-15T19:30:18Z</updated>
    <category term="Adaptive Case Management"/>
    <category term="BPM"/>
    <category term="acm"/>
    <category term="conference"/>
    <category term="workshop"/>
    <author>
      <name>kswenson</name>
    </author>
    <source>
      <id>http://social-biz.org</id>
      <logo>http://s2.wp.com/i/buttonw-com.png</logo>
      <link href="http://social-biz.org/feed/" rel="self" type="application/atom+xml"/>
      <link href="http://social-biz.org" rel="alternate" type="text/html"/>
      <link href="http://social-biz.org/osd.xml" rel="search" type="application/opensearchdescription+xml"/>
      <link href="http://social-biz.org/?pushpress=hub" rel="hub" type="text/html"/>
      <subtitle>Empowering office workers to be more efficient, adaptive, and effective.</subtitle>
      <title>Collaborative Planning &amp; Social Business</title>
      <updated>2012-02-09T05:27:03Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://social-biz.org/?p=1839</id>
    <link href="http://social-biz.org/2012/01/15/2012-acm-live-virtual-summit/" rel="alternate" type="text/html"/>
    <title>Keith Swenson: 2012 ACM Live Virtual Summit</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">Tom Koulopoulos of the Delphi Group is planning another Adaptive Case Management Virtual Summit for first week of June 2012.  This is the second of three significant ACM events planned for this coming year. I don’t yet see the detailed … <a href="http://social-biz.org/2012/01/15/2012-acm-live-virtual-summit/">Continue reading <span class="meta-nav">→</span></a><img alt="" border="0" height="1" src="http://stats.wordpress.com/b.gif?host=social-biz.org&amp;blog=190929&amp;post=1839&amp;subd=kswenson&amp;ref=&amp;feed=1" width="1"/></div>
    </summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p><a href="http://www.tomkoulopoulos.com/">Tom Koulopoulos</a> of the Delphi Group is planning another <a href="http://www.acmsummit.com/">Adaptive Case Management Virtual Summit</a> for first week of June 2012.  This is the second of three significant ACM events planned for this coming year.<span id="more-1839"/></p>
<p>I don’t yet see the detailed agenda yet of the event — that announcement is still yet to come.  It is not my intention to scoop the announcement, but what I do know is that that we are planning to announce the winners of the <a href="http://social-biz.org/2012/01/14/2012-international-acm-awards/">2012 International ACM Awards</a> at this event.</p>
<p>Last year’s event featured one-on-one interviews with many top speakers on Adaptive Case Management as well as a keynotes by <a href="http://www.jimchampy.com/">Jim Champy</a> and Tom K himself.   Also, we announced the winners of the <a href="http://adaptivecasemanagement.org/awards_2011_finalists.html">2011 ACM Awards</a> there as well.  Because the entire two day event is virtual, it is easy to attend from anywhere. And all the talks and presentations were video recorded and so they can still be viewed now, on demand.  I felt the event was well organized and represented a solid way for people to become much more knowledgeable about Adaptive Case Management.</p>
<p>I will update this entry when I have more specifics about this event.</p>
<br/>  <a href="http://feeds.wordpress.com/1.0/gocomments/kswenson.wordpress.com/1839/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/kswenson.wordpress.com/1839/"/></a> <a href="http://feeds.wordpress.com/1.0/godelicious/kswenson.wordpress.com/1839/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/kswenson.wordpress.com/1839/"/></a> <a href="http://feeds.wordpress.com/1.0/gofacebook/kswenson.wordpress.com/1839/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/kswenson.wordpress.com/1839/"/></a> <a href="http://feeds.wordpress.com/1.0/gotwitter/kswenson.wordpress.com/1839/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/kswenson.wordpress.com/1839/"/></a> <a href="http://feeds.wordpress.com/1.0/gostumble/kswenson.wordpress.com/1839/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/kswenson.wordpress.com/1839/"/></a> <a href="http://feeds.wordpress.com/1.0/godigg/kswenson.wordpress.com/1839/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/kswenson.wordpress.com/1839/"/></a> <a href="http://feeds.wordpress.com/1.0/goreddit/kswenson.wordpress.com/1839/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/kswenson.wordpress.com/1839/"/></a> <img alt="" border="0" height="1" src="http://stats.wordpress.com/b.gif?host=social-biz.org&amp;blog=190929&amp;post=1839&amp;subd=kswenson&amp;ref=&amp;feed=1" width="1"/></div>
    </content>
    <updated>2012-01-15T16:04:30Z</updated>
    <category term="Adaptive Case Management"/>
    <category term="ACM Awards"/>
    <category term="ACM Live"/>
    <category term="Tom Koulopoulos"/>
    <author>
      <name>kswenson</name>
    </author>
    <source>
      <id>http://social-biz.org</id>
      <logo>http://s2.wp.com/i/buttonw-com.png</logo>
      <link href="http://social-biz.org/feed/" rel="self" type="application/atom+xml"/>
      <link href="http://social-biz.org" rel="alternate" type="text/html"/>
      <link href="http://social-biz.org/osd.xml" rel="search" type="application/opensearchdescription+xml"/>
      <link href="http://social-biz.org/?pushpress=hub" rel="hub" type="text/html"/>
      <subtitle>Empowering office workers to be more efficient, adaptive, and effective.</subtitle>
      <title>Collaborative Planning &amp; Social Business</title>
      <updated>2012-02-09T05:27:03Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://social-biz.org/?p=1826</id>
    <link href="http://social-biz.org/2012/01/14/2012-international-acm-awards/" rel="alternate" type="text/html"/>
    <title>Keith Swenson: 2012 International ACM Awards</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">My first post of 2012 can not be delayed any further … so many things are commencing in the Adaptive Case Management world.  In this post I will cover the first of three important upcoming event you might want to … <a href="http://social-biz.org/2012/01/14/2012-international-acm-awards/">Continue reading <span class="meta-nav">→</span></a><img alt="" border="0" height="1" src="http://stats.wordpress.com/b.gif?host=social-biz.org&amp;blog=190929&amp;post=1826&amp;subd=kswenson&amp;ref=&amp;feed=1" width="1"/></div>
    </summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p>My first post of 2012 can not be delayed any further … so many things are commencing in the Adaptive Case Management world.  In this post I will cover the first of three important upcoming event you might want to plan for: the<a href="http://adaptivecasemanagement.org/awards1.html"> 2nd Annual Adaptive Case Management Awards</a>.<span id="more-1826"/></p>
<p>Last year the WfMC sponsored the ACM awards and it was a huge success.  From the submissions, the panel of world renown judges selected the best 10 examples of the use of case management.  These were then featured in the First ACM Virtual Summit, and then in September the case studies became available to everyone in the form of the first ACM case book called “Taming the Unpredictable.”  The feedback has been incredibly positive.  It is very vaulable to have a book that describes in detail how people have actually used case management techniques to accomplish business goals.</p>
<p><a href="http://kswenson.files.wordpress.com/2012/01/acm-2011_award.jpg"><img alt="" class="alignright size-full wp-image-1850" src="http://kswenson.files.wordpress.com/2012/01/acm-2011_award.jpg?w=640" title="ACM-2011_award"/></a>This year we want to make it bigger and better.</p>
<ul>
<li>We are going to spend more effort up front making sure that everyone knows about it, and attract a larger set of submissions, and hopefully select more finalists from that.</li>
<li>The judging criteria will be more refined after what we learned last year.</li>
<li>We already know to plan for the virtual summit which will encourage more people to participate.</li>
<li>We have an example of a successful book which will attract interest in submissions.</li>
</ul>
<p>This format, of accepting case studies, judging, selecting, then presenting, and publishing in a book is a accepted way to gather the best examples into a place for delivering to an audience.  It is clear to me that the more that the public knows about this approach, the better they will be able to make appropriate use of it.</p>
<p>Most of the information you need is at the <a href="http://adaptivecasemanagement.org/awards1.html">Adaptive Case Management Awards</a> site.  The schedule is as follows:</p>
<ul>
<li>Any time between now and Feb 28 register an intent by submitting an abstract.  There is no risk, and those who do this early will get some feedback and guidance on the abstract.</li>
<li>Before March 15 officially register.</li>
<li>Before April 20, submit the finished case study for judging.</li>
<li>June 6, winners will be announced at the ACMLive Virtual Summit</li>
<li>September, the associated book will be launched</li>
</ul>
<p>Mark these dates on your calendar, you don’t want to miss out just because you missed the deadline.  I have a list of questions an answers below:</p>
<p><strong>Must the case </strong><strong>use a bona fide ACM product?</strong>  No.  ACM is an approach to supporting knowledge workers, not a type of product.  Many of the submissions last year were on custom home grown systems.  Some other cases were hosted on systems designed specifically for ACM, while still others were build on systems that had to be, shall we say, <em>adapted</em> into supporting case work.  Instead of looking at the system, you should ask the question of whether the case study is about supporting <em>knowledge workers</em>, and if so that would most likely be appropriate.</p>
<p><strong>What really constitutes knowledge work?</strong>  A good reseource for this is my chapter from the <a href="http://www.wfmc.org/2010-bpm-and-workflow-handbook.html">2010 BPM and Workflow Handbook on Business Intelligence</a> which I link here for convenience (pdf):  <a href="http://adaptivecasemanagement.org/images/2010_BPM_Workflow_Handbook_ACM_Free_Chapter.pdf">Knowledge Work and Unpredictable Processes</a>.  The publisher has made other books available to registrants at a discount.</p>
<p><strong>What about Enterprise 2.0, or Social BPM Cases?</strong>  There is a big overlap between E20, social business, and enterprise social with adaptive case management.  See the <a href="http://adaptivecasemanagement.org/awards1.html">judging criteria</a> to evaluate whether your E20 case might qualify.  The case must show how knowledge workers are supported while getting work done.</p>
<p><strong>How about Just Plain Case Management?</strong>  Be aware of the importance of adaptability.  Read my post on <a href="http://social-biz.org/2011/11/13/understanding-what-adaptive-means/">Understanding what “Adaptive” means</a>.  For example, telephones clearly support knowledge workers, but they are not adaptive in any significant way.  Judges will be looking for some ability to mold the system to the individual knowledge worker over time.</p>
<p><strong>Do you need more judges?</strong>  I am hoping to expand the pool of judges this year, and if you are have made a contribution to ACM discussions in the past year, please send a message to <a href="http://kswenson.files.wordpress.com/2012/01/acmjudge1a.png"><img alt="" class="alignnone size-full wp-image-1852" src="http://kswenson.files.wordpress.com/2012/01/acmjudge1a.png?w=640" title="acmjudge1a"/></a><a href="http://kswenson.files.wordpress.com/2012/01/acmjudge1b.png"><img alt="" class="alignnone size-full wp-image-1853" src="http://kswenson.files.wordpress.com/2012/01/acmjudge1b.png?w=640" title="acmjudge1b"/></a><a href="http://kswenson.files.wordpress.com/2012/01/acmjudge1c.png"><img alt="" class="alignnone size-full wp-image-1854" src="http://kswenson.files.wordpress.com/2012/01/acmjudge1c.png?w=640" title="acmjudge1c"/></a><a href="http://kswenson.files.wordpress.com/2012/01/acmjudge1d.png"><img alt="" class="alignnone size-full wp-image-1855" src="http://kswenson.files.wordpress.com/2012/01/acmjudge1d.png?w=640" title="acmjudge1d"/></a><a href="http://kswenson.files.wordpress.com/2012/01/acmjudge1e.png"><img alt="" class="alignnone size-full wp-image-1856" src="http://kswenson.files.wordpress.com/2012/01/acmjudge1e.png?w=640" title="acmjudge1e"/></a>.</p>
<p>Stay tuned, I still have to cover the following posts:</p>
<ul>
<li>The <a href="http://social-biz.org/2012/01/15/2012-acm-live-virtual-summit/">ACM Live Virtual Summit</a> in June 2012</li>
<li>The <a href="http://social-biz.org/2012/01/15/first-international-acm-workshop/">1st International Workshop on Adaptive Case Management (ACM 2012)</a> in conjunction with BPM 2012 in September</li>
</ul>
<br/>  <a href="http://feeds.wordpress.com/1.0/gocomments/kswenson.wordpress.com/1826/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/kswenson.wordpress.com/1826/"/></a> <a href="http://feeds.wordpress.com/1.0/godelicious/kswenson.wordpress.com/1826/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/kswenson.wordpress.com/1826/"/></a> <a href="http://feeds.wordpress.com/1.0/gofacebook/kswenson.wordpress.com/1826/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/kswenson.wordpress.com/1826/"/></a> <a href="http://feeds.wordpress.com/1.0/gotwitter/kswenson.wordpress.com/1826/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/kswenson.wordpress.com/1826/"/></a> <a href="http://feeds.wordpress.com/1.0/gostumble/kswenson.wordpress.com/1826/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/kswenson.wordpress.com/1826/"/></a> <a href="http://feeds.wordpress.com/1.0/godigg/kswenson.wordpress.com/1826/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/kswenson.wordpress.com/1826/"/></a> <a href="http://feeds.wordpress.com/1.0/goreddit/kswenson.wordpress.com/1826/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/kswenson.wordpress.com/1826/"/></a> <img alt="" border="0" height="1" src="http://stats.wordpress.com/b.gif?host=social-biz.org&amp;blog=190929&amp;post=1826&amp;subd=kswenson&amp;ref=&amp;feed=1" width="1"/></div>
    </content>
    <updated>2012-01-14T20:31:36Z</updated>
    <category term="Adaptive"/>
    <category term="Adaptive Case Management"/>
    <category term="ACM Awards"/>
    <author>
      <name>kswenson</name>
    </author>
    <source>
      <id>http://social-biz.org</id>
      <logo>http://s2.wp.com/i/buttonw-com.png</logo>
      <link href="http://social-biz.org/feed/" rel="self" type="application/atom+xml"/>
      <link href="http://social-biz.org" rel="alternate" type="text/html"/>
      <link href="http://social-biz.org/osd.xml" rel="search" type="application/opensearchdescription+xml"/>
      <link href="http://social-biz.org/?pushpress=hub" rel="hub" type="text/html"/>
      <subtitle>Empowering office workers to be more efficient, adaptive, and effective.</subtitle>
      <title>Collaborative Planning &amp; Social Business</title>
      <updated>2012-02-09T05:27:02Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-5869426.post-5536022280336396167</id>
    <link href="http://feeds.athico.com/~r/DroolsRSS/~3/zI3Fydv9hDo/fine-grained-property-change-listeners.html" rel="alternate" type="text/html"/>
    <title>Drools &amp; JBPM: Fine Grained Property Change Listeners (Slot Specific)</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">Mario just got a first cut working for fine grained property change listeners. Previously when you call update() it will trigger revaluation of all Patterns of the matching object type in the knowledeg base.<br/><br/>As some have found this can be a problem, forcing you to split up your objects into smaller 1 to 1 objects, to avoid unwanted evaluation of objects - i.e. recursion or excessive evaluation problems.<br/><br/>The new approach now means the pattern's will only react to fields constrained or bound inside of the pattern. This will help with performance and recursion and avoid artificial object splitting.  We previously discussed this here:<br/><a href="http://blog.athico.com/2010/07/slot-specific-and-refraction.html">http://blog.athico.com/2010/07/slot-specific-and-refraction.html</a><br/>You can see the unit test here:<br/><a href="https://github.com/droolsjbpm/drools/blob/ca55c78429cbc0f14167c604c413cdc3faaf6988/drools-compiler/src/test/java/org/drools/integrationtests/MiscTest.java">https://github.com/droolsjbpm/drools/blob/ca55c78429cbc0f14167c604c413cdc3faaf6988/drools-compiler/src/test/java/org/drools/integrationtests/MiscTest.java</a><br/><br/>The implementation is bit mask based, so very efficient. When the engine executes a modify statement it uses a bit mask of fields being changed, the pattern will only respond if it has an overlapping bit mask. This does not work for update(), and is one of the reason why we promote modify() as it encapsulates the field changes within the statement. You can follow Mario's chain of work on this at his github activity feed:<br/><a href="https://github.com/mariofusco.atom">https://github.com/mariofusco.atom</a><br/><br/>The adventerous amoung you can pick this up from hudson, or from maven, and start playing now. My hope is that this will make drools much easier to use:<br/><a href="https://hudson.jboss.org/hudson/job/drools/lastSuccessfulBuild/artifact/drools-distribution/target/">https://hudson.jboss.org/hudson/job/drools/lastSuccessfulBuild/artifact/drools-distribution/target/</a><br/>Btw we are after a name. Drools is not a frame based system, so "slot specific" doesn't seem appropropriate. Property Specific seems a bit of a mouth full. I'm quite liking High Fidelity Change Listeners :) any other suggestions?<br/><br/>slot-specific is the name used by Jess for this feature, . It's also the standard way that Clips COOL works, which is the Clips OO module. Although that's partly a side effect of the triple representation of properties used in COOL, and the modifications are triple based. I don't know what mechanism Jess is using to enable this.<br/><br/>Mark<div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/5869426-5536022280336396167?l=blog.athico.com" width="1"/></div><img height="1" src="http://feeds.feedburner.com/~r/DroolsRSS/~4/zI3Fydv9hDo" width="1"/></div>
    </summary>
    <updated>2012-01-13T22:30:00Z</updated>
    <category scheme="http://www.blogger.com/atom/ns#" term="Drools Expert"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="Rule Engines"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="Drools"/><feedburner:origLink xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://blog.athico.com/2012/01/fine-grained-property-change-listeners.html</feedburner:origLink>
    <author>
      <name>Mark Proctor</name>
      <email>noreply@blogger.com</email>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-5869426</id>
      <category term="Performance"/>
      <category term="compilers"/>
      <category term="Conflict Resolution"/>
      <category term="Probability"/>
      <category term="use case"/>
      <category term="competition"/>
      <category term="drools webinar"/>
      <category term="cookbook"/>
      <category term="uncertainty"/>
      <category term="aires"/>
      <category term="service repository"/>
      <category term="Simulation and Testing"/>
      <category term="Job"/>
      <category term="Testing"/>
      <category term="medical"/>
      <category term="Time-Sensitive"/>
      <category term="GSoC"/>
      <category term="AI"/>
      <category term="javapolis"/>
      <category term="video"/>
      <category term="Ad-Hoc"/>
      <category term="Expert Systems"/>
      <category term="RuleML"/>
      <category term="variables"/>
      <category term="Business Rules"/>
      <category term="Domain Specific Languages"/>
      <category term="workshop"/>
      <category term="java"/>
      <category term="infoQ"/>
      <category term="JBoss Rules"/>
      <category term="example"/>
      <category term="Mind Map"/>
      <category term="Rules Engine"/>
      <category term="BAM"/>
      <category term="DotNet"/>
      <category term="Rules"/>
      <category term="Business Rules Forum"/>
      <category term="Fuzzy"/>
      <category term="decision tables"/>
      <category term="Boot Camp"/>
      <category term="Drools Boot Camp"/>
      <category term="interview"/>
      <category term="Eclipse"/>
      <category term="MicroContainer"/>
      <category term="Stream"/>
      <category term="designer"/>
      <category term="Brazilian"/>
      <category term="upgrade tool"/>
      <category term="milestone"/>
      <category term="BOF"/>
      <category term="Seam"/>
      <category term="quote"/>
      <category term="JDT"/>
      <category term="shadow facts"/>
      <category term="event"/>
      <category term="ORF 2008"/>
      <category term="SOA"/>
      <category term="Smooks"/>
      <category term="GUI"/>
      <category term="grammar"/>
      <category term="Drools Expert"/>
      <category term="sequential"/>
      <category term="announcement"/>
      <category term="Drools"/>
      <category term="buenos"/>
      <category term="ESP"/>
      <category term="Natural Language"/>
      <category term="Camel"/>
      <category term="SSL"/>
      <category term="jBPM5"/>
      <category term="JSON"/>
      <category term="Drools Flow"/>
      <category term="RuleML 2008"/>
      <category term="Rete"/>
      <category term="Production Rules Systems"/>
      <category term="DRL"/>
      <category term="remote"/>
      <category term="brms insurance demo standalone"/>
      <category term="FactTemplate"/>
      <category term="traveling tournament"/>
      <category term="BRMS"/>
      <category term="MVEL"/>
      <category term="Rule Flow"/>
      <category term="Open Source"/>
      <category term="argentina"/>
      <category term="IKVM"/>
      <category term="BPMN"/>
      <category term="source code"/>
      <category term="standards"/>
      <category term="machine learning"/>
      <category term="image processing"/>
      <category term="Backward Chaining."/>
      <category term="Monitoring"/>
      <category term="modify block"/>
      <category term="GIS"/>
      <category term="accumulate"/>
      <category term="Drools Fusion"/>
      <category term="Codehaus"/>
      <category term="JUG"/>
      <category term="Rule Authoring"/>
      <category term="Negation"/>
      <category term="Business Rules Governance"/>
      <category term="DynaBeans"/>
      <category term="junit"/>
      <category term="JFDI"/>
      <category term="Rule Engines"/>
      <category term="KAMS"/>
      <category term="dynamically generated classes"/>
      <category term="ORF"/>
      <category term="Form Builder"/>
      <category term="syntax"/>
      <category term="shadow proxies"/>
      <category term="BRMS Guvnor Drools"/>
      <category term="ANTLR"/>
      <category term="Service Manager"/>
      <category term="FedEx"/>
      <category term="DSL"/>
      <category term="Clips"/>
      <category term="planner"/>
      <category term="traits"/>
      <category term="examination"/>
      <category term="search space"/>
      <category term="Janino"/>
      <category term="MySQL"/>
      <category term="Web Services"/>
      <category term="semantic web"/>
      <category term="jBPM"/>
      <category term="constraint programming"/>
      <category term="generated classes"/>
      <category term="Research Network"/>
      <category term="algorithm"/>
      <category term="cloud"/>
      <category term="Life Cycle"/>
      <category term="MISMO"/>
      <category term="BPEL"/>
      <category term="LDAP"/>
      <category term="jBPM5 webinar"/>
      <category term="Templates"/>
      <category term="case management"/>
      <category term="android"/>
      <category term="persistence"/>
      <category term="RIF"/>
      <category term="Logic Operators"/>
      <category term="relational programming"/>
      <category term="Debug"/>
      <category term="Jess"/>
      <category term="release"/>
      <category term="extensibility"/>
      <category term="Atom"/>
      <category term="Analytics"/>
      <category term="Portuguese"/>
      <category term="Meetups"/>
      <category term="Synasc"/>
      <category term="drools puzzle"/>
      <category term="Computer Games"/>
      <category term="Progress"/>
      <category term="JavaOne"/>
      <category term="accumulate function"/>
      <category term="Programming"/>
      <category term="Healthcare"/>
      <category term="October Rules Fest"/>
      <category term="Guvnor"/>
      <category term="SwitchYard"/>
      <category term="WordNet"/>
      <category term="SBVR"/>
      <category term="devoxx"/>
      <category term="one"/>
      <category term="Drools Chance"/>
      <category term="plug tree"/>
      <category term="Presentation"/>
      <category term="Spring"/>
      <category term="Guice"/>
      <category term="salaboy"/>
      <category term="solver"/>
      <category term="Savvion"/>
      <category term="OSGi"/>
      <category term="http://www.blogger.com/img/blank.gif"/>
      <category term="REST"/>
      <category term="DSL regexp antlr"/>
      <category term="project proposals"/>
      <category term="Forward  Chaining"/>
      <category term="declarative programming"/>
      <category term="videos"/>
      <category term="CEP"/>
      <category term="book"/>
      <category term="API"/>
      <category term="brms ajax web"/>
      <category term="combinatorial optimization"/>
      <category term="tests"/>
      <category term="computer vision"/>
      <category term="functional programming"/>
      <category term="Time"/>
      <category term="parser"/>
      <category term="droos ide update-site downloads"/>
      <category term="expressiveness"/>
      <author>
        <name>Mark Proctor</name>
        <email>noreply@blogger.com</email>
      </author>
      <link href="http://blog.athico.com/" rel="alternate" type="text/html"/>
      <link href="http://feeds.athico.com/DroolsRSS" rel="self" type="application/atom+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <subtitle>All things Artificial Intelligence related: Rules, Processes, Events, Agents, Planning, Ontologies and more :)</subtitle>
      <title>Drools &amp; jBPM</title>
      <updated>2012-02-08T23:27:11Z</updated>
    </source>
  </entry>

  <entry xml:lang="de">
    <id>http://www.saperionblog.com/?p=5651</id>
    <link href="http://www.saperionblog.com/lang/de/bpm-offensive-rhein-ruhr-hat-sich-konstituiert/5651" rel="alternate" type="text/html"/>
    <title>Saperion.com (BPM related posts): BPM Offensive Rhein.Ruhr hat sich konstituiert</title>
    <summary>Freunde des Themas Business Process Management in der Region Rhein-Rhur dürfen sich über mehr Gelegenheiten zum Erfahrungsaustausch freuen. Die Berliner Kollegen hatten schon seit Längerem Gelegenheit gehabt, bei entsprechenden Veranstaltungen der BPM Initiative Berlin teilnehmen zu können, wie auch immer wieder davon berichtet. SAPERION ist offizieller Unterstützer der BPMB. Ich selbst bin Mitgründer der neuen [...]</summary>
    <updated>2012-01-12T13:20:59Z</updated>
    <category term="deutsch"/>
    <category term="process management"/>
    <category term="BPM"/>
    <category term="BPMB"/>
    <category term="BPMRR"/>
    <category term="GPM"/>
    <author>
      <name>Dr. Martin Bartonitz</name>
    </author>
    <source>
      <id>http://www.saperionblog.com</id>
      <link href="http://www.saperionblog.com/tag/bpm/feed/" rel="self" type="application/atom+xml"/>
      <link href="http://www.saperionblog.com" rel="alternate" type="text/html"/>
      <link href="http://friendfeed.com/api/public-sup.json#ae70a1f9c8" rel="http://api.friendfeed.com/2008/03#sup" type="application/json"/>
      <subtitle>COMPLIANCE - SaaS - ECM - BPM - CMIS - SCRUM</subtitle>
      <title>SAPERION Blog » BPM</title>
      <updated>2012-02-08T11:27:11Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-8898189229306976932.post-1133118966789598694</id>
    <link href="http://bpex.blogspot.com/feeds/1133118966789598694/comments/default" rel="replies" type="application/atom+xml"/>
    <link href="http://www.blogger.com/comment.g?blogID=8898189229306976932&amp;postID=1133118966789598694" rel="replies" type="text/html"/>
    <link href="http://www.blogger.com/feeds/8898189229306976932/posts/default/1133118966789598694" rel="edit" type="application/atom+xml"/>
    <link href="http://www.blogger.com/feeds/8898189229306976932/posts/default/1133118966789598694" rel="self" type="application/atom+xml"/>
    <link href="http://bpex.blogspot.com/2012/01/bpmn-20-handbook-second-edition.html" rel="alternate" type="text/html"/>
    <title>Michele Chinosi (BPeX): BPMN 2.0 Handbook Second Edition</title>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><div style="font-family: inherit;"><span style="font-size: small;"><a href="http://4.bp.blogspot.com/-zTXYPmnxp70/Tw6cL68BqkI/AAAAAAAAAME/HDonOocbn1w/s1600/BPMN2Handbook2_frontcover.jpg" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" src="http://4.bp.blogspot.com/-zTXYPmnxp70/Tw6cL68BqkI/AAAAAAAAAME/HDonOocbn1w/s320/BPMN2Handbook2_frontcover.jpg"/></a></span></div><div style="font-family: inherit;"><span style="font-size: small;"><b><span style="color: red;">My article "Collaborative Activities Inside Pools" has been published again in this 2nd Edition! </span></b><br/> </span></div><div style="font-family: inherit;"><span style="font-size: small;">Following the ground-breaking body of work in the BPMN 2.0 Handbook First Edition in 2010, this book is greatly expanded with substantial new content and chapters updated to the latest advances in this important standard. </span> <span style="font-size: small;"><br/><br/>** Detailed Table of Contents with full abstracts of each chap</span>ter <a href="http://futstrat.com/books/book_images/BPMN20Handbook_Second_Edition_Introduction.pdf" target="_blank">here </a><span style="font-size: small;">(9 pages PDF, no registration required)** <br/><br/>Every chapter from the First Edition was closely examined by its authors and updated to the very latest information. Six completely new chapters and another 50 pages were also added. Authored by members of WfMC, OMG and other key participants in the development of BPMN 2.0, the BPMN 2.0 Handbook Second Edition assembles industry thought-leaders and international experts. </span> <span style="font-size: small;"><br/>The authors examine a variety of aspects that start with an introduction of what’s new and updated in BPMN 2.0, and look closely at interchange, best practices, analytics, conformance, optimization, choreography and more from a technical perspective. The authors also address the business imperative for widespread adoption of the standard by examining best practice guidelines, BPMN business strategy and the human interface including real-life case studies. Other critical chapters tackle the practical aspects of making a BPMN model executable and the basic timeline analysis of a BPMN model. In addition to free bonus chapters from the latest edition and extra material supplied by authors, the <a href="http://bpmnhandbook.com/" target="_blank">BPMN 2.0 Companion website</a> contains BPMN and XPDL Verification/Validation files, webinars, videos, product specs, tools, free/trial modelers etc. This gives readers exposure to a larger resource on BPMN 2.0 and XPDL than a book alone can offer. </span><span style="font-size: small;"><br/>-- mchinosi</span></div><div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/8898189229306976932-1133118966789598694?l=bpex.blogspot.com" width="1"/></div></div>
    </content>
    <updated>2012-01-12T08:55:20Z</updated>
    <published>2012-01-12T08:55:00Z</published>
    <category scheme="http://www.blogger.com/atom/ns#" term="future strategies"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="2.0"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="handbook"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="bpmn"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="business processes"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="bpex"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="workflow"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="WfMC"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="bpmn 2.0"/>
    <author>
      <name>Michele Chinosi</name>
      <email>noreply@blogger.com</email>
      <uri>http://www.blogger.com/profile/13488704941614175533</uri>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-8898189229306976932</id>
      <category term="paper"/>
      <category term="bpm"/>
      <category term="discussion"/>
      <category term="thesis"/>
      <category term="2009"/>
      <category term="contribution"/>
      <category term="research"/>
      <category term="workflow"/>
      <category term="security"/>
      <category term="uninsubria"/>
      <category term="xpdl"/>
      <category term="methodology"/>
      <category term="privacy"/>
      <category term="genesis"/>
      <category term="handbook"/>
      <category term="bpmn 2.0"/>
      <category term="sap"/>
      <category term="editor"/>
      <category term="business processes"/>
      <category term="WfMC"/>
      <category term="results"/>
      <category term="phd"/>
      <category term="Insubria"/>
      <category term="elsevier"/>
      <category term="future strategies"/>
      <category term="survey"/>
      <category term="University"/>
      <category term="comparison"/>
      <category term="2.0"/>
      <category term="journal"/>
      <category term="bpex"/>
      <category term="Process.gov"/>
      <category term="design"/>
      <category term="modeling"/>
      <category term="bpmn"/>
      <category term="wave"/>
      <category term="collaborative"/>
      <category term="PA"/>
      <category term="google"/>
      <category term="csi"/>
      <author>
        <name>Michele Chinosi</name>
        <email>noreply@blogger.com</email>
        <uri>http://www.blogger.com/profile/13488704941614175533</uri>
      </author>
      <link href="http://bpex.blogspot.com/feeds/posts/default" rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml"/>
      <link href="http://www.blogger.com/feeds/8898189229306976932/posts/default" rel="self" type="application/atom+xml"/>
      <link href="http://bpex.blogspot.com/" rel="alternate" type="text/html"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <link href="http://www.blogger.com/feeds/8898189229306976932/posts/default?start-index=26&amp;max-results=25" rel="next" type="application/atom+xml"/>
      <subtitle>All about bpmn, bpel, xpdl, editors and other useful things</subtitle>
      <title>BPeX: Business Process eXtensions</title>
      <updated>2012-01-23T10:44:59Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-8898189229306976932.post-8909862192262602817</id>
    <link href="http://bpex.blogspot.com/feeds/8909862192262602817/comments/default" rel="replies" type="application/atom+xml"/>
    <link href="http://www.blogger.com/comment.g?blogID=8898189229306976932&amp;postID=8909862192262602817" rel="replies" type="text/html"/>
    <link href="http://www.blogger.com/feeds/8898189229306976932/posts/default/8909862192262602817" rel="edit" type="application/atom+xml"/>
    <link href="http://www.blogger.com/feeds/8898189229306976932/posts/default/8909862192262602817" rel="self" type="application/atom+xml"/>
    <link href="http://bpex.blogspot.com/2012/01/bpmn-introduction-to-standard-update.html" rel="alternate" type="text/html"/>
    <title>Michele Chinosi (BPeX): BPMN: An introduction to the standard - Update</title>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">This post just to update the previous one. The article has been published in the CSI Journal. Herewith the details:<br/><br/><a href="http://www.sciencedirect.com/science/article/pii/S0920548911000766" target="_blank">BPMN: An introduction to the standard</a><br/>Computer Standards &amp; Interfaces<br/>Volume 34, Issue 1, January 2012, Pages 124–134<br/>Received 23 May 2011. Accepted 6 June 2011. Available online 13 June 2011.<br/>http://dx.doi.org/10.1016/j.csi.2011.06.002<br/><br/><a href="http://www.sciencedirect.com/science/article/pii/S0920548911000766">http://www.sciencedirect.com/science/article/pii/S0920548911000766</a><br/><br/><br/>-- mchinosi<div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/8898189229306976932-8909862192262602817?l=bpex.blogspot.com" width="1"/></div></div>
    </content>
    <updated>2012-01-12T08:53:38Z</updated>
    <published>2012-01-12T08:52:00Z</published>
    <category scheme="http://www.blogger.com/atom/ns#" term="2.0"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="csi"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="journal"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="bpmn"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="elsevier"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="business processes"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="bpex"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="workflow"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="bpmn 2.0"/>
    <author>
      <name>Michele Chinosi</name>
      <email>noreply@blogger.com</email>
      <uri>http://www.blogger.com/profile/13488704941614175533</uri>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-8898189229306976932</id>
      <category term="paper"/>
      <category term="bpm"/>
      <category term="discussion"/>
      <category term="thesis"/>
      <category term="2009"/>
      <category term="contribution"/>
      <category term="research"/>
      <category term="workflow"/>
      <category term="security"/>
      <category term="uninsubria"/>
      <category term="xpdl"/>
      <category term="methodology"/>
      <category term="privacy"/>
      <category term="genesis"/>
      <category term="handbook"/>
      <category term="bpmn 2.0"/>
      <category term="sap"/>
      <category term="editor"/>
      <category term="business processes"/>
      <category term="WfMC"/>
      <category term="results"/>
      <category term="phd"/>
      <category term="Insubria"/>
      <category term="elsevier"/>
      <category term="future strategies"/>
      <category term="survey"/>
      <category term="University"/>
      <category term="comparison"/>
      <category term="2.0"/>
      <category term="journal"/>
      <category term="bpex"/>
      <category term="Process.gov"/>
      <category term="design"/>
      <category term="modeling"/>
      <category term="bpmn"/>
      <category term="wave"/>
      <category term="collaborative"/>
      <category term="PA"/>
      <category term="google"/>
      <category term="csi"/>
      <author>
        <name>Michele Chinosi</name>
        <email>noreply@blogger.com</email>
        <uri>http://www.blogger.com/profile/13488704941614175533</uri>
      </author>
      <link href="http://bpex.blogspot.com/feeds/posts/default" rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml"/>
      <link href="http://www.blogger.com/feeds/8898189229306976932/posts/default" rel="self" type="application/atom+xml"/>
      <link href="http://bpex.blogspot.com/" rel="alternate" type="text/html"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <link href="http://www.blogger.com/feeds/8898189229306976932/posts/default?start-index=26&amp;max-results=25" rel="next" type="application/atom+xml"/>
      <subtitle>All about bpmn, bpel, xpdl, editors and other useful things</subtitle>
      <title>BPeX: Business Process eXtensions</title>
      <updated>2012-01-23T10:44:59Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-5869426.post-1592104008029465402</id>
    <link href="http://feeds.athico.com/~r/DroolsRSS/~3/6iiG-mdjVqY/jbpm-form-builder-follow-up.html" rel="alternate" type="text/html"/>
    <title>Drools &amp; JBPM: jBPM Form Builder follow-up</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">Greetings! Among the things developed over the last two weeks for the <a href="https://github.com/marianbuenosayres/jbpm/tree/master/jbpm-gwt/jbpm-gwt-form-builder">jBPM Form Builder</a>, here are the ones worth mentioning: <br/>
<br/>
<strong>Script helper refactor:</strong> Some of the classes had issues when being stored on the server side, due to dependencies with GWT client-side classes. A small refactor was made to make them GWT independent, and utilize the GWT API from a particular view object to render on screen.<br/>
<strong>User roles implemented: </strong>JAAS implementations for JBoss and Jetty are available now as stated in my <a href="http://blog.athico.com/2011/12/jbpm-form-builder-follow-up.html">last post</a>. The <a href="https://github.com/marianbuenosayres/jbpm/tree/master/jbpm-installer">jBPM Installer</a> inside my fork has the necessary implementations for JBoss, and the Jetty implementations are available to start up the project from the Debug mode in the Eclipse Plugin. Profiles are created as described previously: web designer and functional analyst. Web designer has all the functions available (can define forms, custom menu items and use any item available), while functional analyst can only define forms using the menu items authorized by the web designer.<br/>
<br/>
The whole idea behind these components will be to facilitate web designers to administrate component standarization from inside the form builder.<br/>
And here's some of the next items on the to do list:<br/>
<br/>
<strong>HTML5 templates:</strong> Current form generation templates for Freemarker work with HTML4. There will be a new set of them that will use HTML5, which will probably lead to new menu items to fully cover HTML5 components.<br/>
<strong>More script helpers:</strong> Current script helpers allow to make an easy implementation of an ajax service call, a combobox population ajax call, and to toggle visualization of  a particular component (selected by id). There will be more script helpers, focused on creating new visual components on runtime and live validation of fields. And that's where the next one falls in<br/>
<strong>More validations: </strong>We had a few simple validations to start checking where to store them and what to do with them. Now that they seem to reach a plateau where no major refactor is needed, it is a good moment to start adding a lot more validations to the ones that are already there.<br/>
<br/>
That will be all for now. Cheers!<br/>
<br/>
Mariano<div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/5869426-1592104008029465402?l=blog.athico.com" width="1"/></div><img height="1" src="http://feeds.feedburner.com/~r/DroolsRSS/~4/6iiG-mdjVqY" width="1"/></div>
    </summary>
    <updated>2012-01-10T13:55:00Z</updated><feedburner:origLink xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://blog.athico.com/2012/01/jbpm-form-builder-follow-up.html</feedburner:origLink>
    <author>
      <name>Marian Buenosayres</name>
      <email>noreply@blogger.com</email>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-5869426</id>
      <category term="Performance"/>
      <category term="compilers"/>
      <category term="Conflict Resolution"/>
      <category term="Probability"/>
      <category term="use case"/>
      <category term="competition"/>
      <category term="drools webinar"/>
      <category term="cookbook"/>
      <category term="uncertainty"/>
      <category term="aires"/>
      <category term="service repository"/>
      <category term="Simulation and Testing"/>
      <category term="Job"/>
      <category term="Testing"/>
      <category term="medical"/>
      <category term="Time-Sensitive"/>
      <category term="GSoC"/>
      <category term="AI"/>
      <category term="javapolis"/>
      <category term="video"/>
      <category term="Ad-Hoc"/>
      <category term="Expert Systems"/>
      <category term="RuleML"/>
      <category term="variables"/>
      <category term="Business Rules"/>
      <category term="Domain Specific Languages"/>
      <category term="workshop"/>
      <category term="java"/>
      <category term="infoQ"/>
      <category term="JBoss Rules"/>
      <category term="example"/>
      <category term="Mind Map"/>
      <category term="Rules Engine"/>
      <category term="BAM"/>
      <category term="DotNet"/>
      <category term="Rules"/>
      <category term="Business Rules Forum"/>
      <category term="Fuzzy"/>
      <category term="decision tables"/>
      <category term="Boot Camp"/>
      <category term="Drools Boot Camp"/>
      <category term="interview"/>
      <category term="Eclipse"/>
      <category term="MicroContainer"/>
      <category term="Stream"/>
      <category term="designer"/>
      <category term="Brazilian"/>
      <category term="upgrade tool"/>
      <category term="milestone"/>
      <category term="BOF"/>
      <category term="Seam"/>
      <category term="quote"/>
      <category term="JDT"/>
      <category term="shadow facts"/>
      <category term="event"/>
      <category term="ORF 2008"/>
      <category term="SOA"/>
      <category term="Smooks"/>
      <category term="GUI"/>
      <category term="grammar"/>
      <category term="Drools Expert"/>
      <category term="sequential"/>
      <category term="announcement"/>
      <category term="Drools"/>
      <category term="buenos"/>
      <category term="ESP"/>
      <category term="Natural Language"/>
      <category term="Camel"/>
      <category term="SSL"/>
      <category term="jBPM5"/>
      <category term="JSON"/>
      <category term="Drools Flow"/>
      <category term="RuleML 2008"/>
      <category term="Rete"/>
      <category term="Production Rules Systems"/>
      <category term="DRL"/>
      <category term="remote"/>
      <category term="brms insurance demo standalone"/>
      <category term="FactTemplate"/>
      <category term="traveling tournament"/>
      <category term="BRMS"/>
      <category term="MVEL"/>
      <category term="Rule Flow"/>
      <category term="Open Source"/>
      <category term="argentina"/>
      <category term="IKVM"/>
      <category term="BPMN"/>
      <category term="source code"/>
      <category term="standards"/>
      <category term="machine learning"/>
      <category term="image processing"/>
      <category term="Backward Chaining."/>
      <category term="Monitoring"/>
      <category term="modify block"/>
      <category term="GIS"/>
      <category term="accumulate"/>
      <category term="Drools Fusion"/>
      <category term="Codehaus"/>
      <category term="JUG"/>
      <category term="Rule Authoring"/>
      <category term="Negation"/>
      <category term="Business Rules Governance"/>
      <category term="DynaBeans"/>
      <category term="junit"/>
      <category term="JFDI"/>
      <category term="Rule Engines"/>
      <category term="KAMS"/>
      <category term="dynamically generated classes"/>
      <category term="ORF"/>
      <category term="Form Builder"/>
      <category term="syntax"/>
      <category term="shadow proxies"/>
      <category term="BRMS Guvnor Drools"/>
      <category term="ANTLR"/>
      <category term="Service Manager"/>
      <category term="FedEx"/>
      <category term="DSL"/>
      <category term="Clips"/>
      <category term="planner"/>
      <category term="traits"/>
      <category term="examination"/>
      <category term="search space"/>
      <category term="Janino"/>
      <category term="MySQL"/>
      <category term="Web Services"/>
      <category term="semantic web"/>
      <category term="jBPM"/>
      <category term="constraint programming"/>
      <category term="generated classes"/>
      <category term="Research Network"/>
      <category term="algorithm"/>
      <category term="cloud"/>
      <category term="Life Cycle"/>
      <category term="MISMO"/>
      <category term="BPEL"/>
      <category term="LDAP"/>
      <category term="jBPM5 webinar"/>
      <category term="Templates"/>
      <category term="case management"/>
      <category term="android"/>
      <category term="persistence"/>
      <category term="RIF"/>
      <category term="Logic Operators"/>
      <category term="relational programming"/>
      <category term="Debug"/>
      <category term="Jess"/>
      <category term="release"/>
      <category term="extensibility"/>
      <category term="Atom"/>
      <category term="Analytics"/>
      <category term="Portuguese"/>
      <category term="Meetups"/>
      <category term="Synasc"/>
      <category term="drools puzzle"/>
      <category term="Computer Games"/>
      <category term="Progress"/>
      <category term="JavaOne"/>
      <category term="accumulate function"/>
      <category term="Programming"/>
      <category term="Healthcare"/>
      <category term="October Rules Fest"/>
      <category term="Guvnor"/>
      <category term="SwitchYard"/>
      <category term="WordNet"/>
      <category term="SBVR"/>
      <category term="devoxx"/>
      <category term="one"/>
      <category term="Drools Chance"/>
      <category term="plug tree"/>
      <category term="Presentation"/>
      <category term="Spring"/>
      <category term="Guice"/>
      <category term="salaboy"/>
      <category term="solver"/>
      <category term="Savvion"/>
      <category term="OSGi"/>
      <category term="http://www.blogger.com/img/blank.gif"/>
      <category term="REST"/>
      <category term="DSL regexp antlr"/>
      <category term="project proposals"/>
      <category term="Forward  Chaining"/>
      <category term="declarative programming"/>
      <category term="videos"/>
      <category term="CEP"/>
      <category term="book"/>
      <category term="API"/>
      <category term="brms ajax web"/>
      <category term="combinatorial optimization"/>
      <category term="tests"/>
      <category term="computer vision"/>
      <category term="functional programming"/>
      <category term="Time"/>
      <category term="parser"/>
      <category term="droos ide update-site downloads"/>
      <category term="expressiveness"/>
      <author>
        <name>Mark Proctor</name>
        <email>noreply@blogger.com</email>
      </author>
      <link href="http://blog.athico.com/" rel="alternate" type="text/html"/>
      <link href="http://feeds.athico.com/DroolsRSS" rel="self" type="application/atom+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <subtitle>All things Artificial Intelligence related: Rules, Processes, Events, Agents, Planning, Ontologies and more :)</subtitle>
      <title>Drools &amp; jBPM</title>
      <updated>2012-02-08T23:27:11Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-5869426.post-8304835329402719800</id>
    <link href="http://feeds.athico.com/~r/DroolsRSS/~3/a3lYCPcn_jU/guided-decision-table-supports-brl.html" rel="alternate" type="text/html"/>
    <title>Drools &amp; JBPM: Guided Decision Table supports BRL columns</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">Work has been completed to allow BRL fragments to be used as both (or either) Condition and Action columns in the Guided Decision Table within Guvnor.<br/><br/>You can see the feature in action <a href="http://vimeo.com/34842725">here</a> and read more about it below.<br/><br/><span style="font-weight: bold; font-style: italic; font-size: 85%;">Adding a BRL column</span><br/><br/><a href="http://3.bp.blogspot.com/-vrqKuxyL2kU/TwyN5U4PLzI/AAAAAAAAAfA/KnT5quUcX9c/s1600/dtable-advanced-columns.png"><img alt="" border="0" id="BLOGGER_PHOTO_ID_5696083644713479986" src="http://3.bp.blogspot.com/-vrqKuxyL2kU/TwyN5U4PLzI/AAAAAAAAAfA/KnT5quUcX9c/s400/dtable-advanced-columns.png" style="cursor: pointer; cursor: hand; width: 400px; height: 189px;"/></a><br/><br/>A BRL fragment is a section of a rule created using Guvnor's (BRL) Guided Rule Editor: Condition columns permit the definition of "WHEN" sections and Action columns the definition of "THEN" sections. Fields defined therein as "Template Keys" become columns in the decision table.<br/><br/><span style="font-weight: bold; font-style: italic; font-size: 85%;">A Condition BRL fragment</span><br/><br/><a href="http://3.bp.blogspot.com/-QWjuLzpYiUc/TwyNcTk7YjI/AAAAAAAAAeo/aU3tXatA4FI/s1600/dtable-brl-condition.png"><img alt="" border="0" id="BLOGGER_PHOTO_ID_5696083146147848754" src="http://3.bp.blogspot.com/-QWjuLzpYiUc/TwyNcTk7YjI/AAAAAAAAAeo/aU3tXatA4FI/s400/dtable-brl-condition.png" style="cursor: pointer; cursor: hand; width: 400px; height: 187px;"/></a><br/><br/><span style="font-weight: bold; font-style: italic; font-size: 85%;">An Action BRL fragment</span><br/><br/><a href="http://2.bp.blogspot.com/-2EPf4u-QF1A/TwyNo-bw9aI/AAAAAAAAAe0/KHcWh7kucAA/s1600/dtable-brl-action.png"><img alt="" border="0" id="BLOGGER_PHOTO_ID_5696083363810571682" src="http://2.bp.blogspot.com/-2EPf4u-QF1A/TwyNo-bw9aI/AAAAAAAAAe0/KHcWh7kucAA/s400/dtable-brl-action.png" style="cursor: pointer; cursor: hand; width: 400px; height: 130px;"/></a><br/><br/>Consequently <span style="font-weight: bold;">any</span> rule that could be defined with the (BRL) Guided Rule Editor can now be defined with a decision table; including free-format DRL and DSL Sentences.<br/><br/>BRL fragments are fully integrated with other columns in the decision table, so that a Pattern or field defined in a regular column can be referenced in the BRL fragments and vice-versa.<br/><br/><span style="font-weight: bold; font-style: italic; font-size: 85%;">A decision table with BRL fragments and regular columns</span><span style="font-size: 85%;"><br/></span><br/><a href="http://2.bp.blogspot.com/-nQWun61E70g/TwxNvqVV4iI/AAAAAAAAAeQ/8WCH9394sOs/s1600/dtable-brl-columns.png"><img alt="" border="0" id="BLOGGER_PHOTO_ID_5696013109929828898" src="http://2.bp.blogspot.com/-nQWun61E70g/TwxNvqVV4iI/AAAAAAAAAeQ/8WCH9394sOs/s400/dtable-brl-columns.png" style="cursor: pointer; cursor: hand; width: 400px; height: 337px;"/></a><br/><br/><span style="font-weight: bold; font-style: italic; font-size: 85%;">Source from BRL fragments</span><br/><br/><a href="http://1.bp.blogspot.com/-S3GYrPfWKwY/TwxN_ggQRBI/AAAAAAAAAec/KWK69juiPGE/s1600/dtable-brl-source.png"><img alt="" border="0" id="BLOGGER_PHOTO_ID_5696013382169150482" src="http://1.bp.blogspot.com/-S3GYrPfWKwY/TwxN_ggQRBI/AAAAAAAAAec/KWK69juiPGE/s400/dtable-brl-source.png" style="cursor: pointer; cursor: hand; width: 400px; height: 242px;"/></a><div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/5869426-8304835329402719800?l=blog.athico.com" width="1"/></div><img height="1" src="http://feeds.feedburner.com/~r/DroolsRSS/~4/a3lYCPcn_jU" width="1"/></div>
    </summary>
    <updated>2012-01-10T13:49:00Z</updated>
    <category scheme="http://www.blogger.com/atom/ns#" term="decision tables"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="Guvnor"/><feedburner:origLink xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://blog.athico.com/2012/01/guided-decision-table-supports-brl.html</feedburner:origLink>
    <author>
      <name>Michael Anstis</name>
      <email>noreply@blogger.com</email>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-5869426</id>
      <category term="Performance"/>
      <category term="compilers"/>
      <category term="Conflict Resolution"/>
      <category term="Probability"/>
      <category term="use case"/>
      <category term="competition"/>
      <category term="drools webinar"/>
      <category term="cookbook"/>
      <category term="uncertainty"/>
      <category term="aires"/>
      <category term="service repository"/>
      <category term="Simulation and Testing"/>
      <category term="Job"/>
      <category term="Testing"/>
      <category term="medical"/>
      <category term="Time-Sensitive"/>
      <category term="GSoC"/>
      <category term="AI"/>
      <category term="javapolis"/>
      <category term="video"/>
      <category term="Ad-Hoc"/>
      <category term="Expert Systems"/>
      <category term="RuleML"/>
      <category term="variables"/>
      <category term="Business Rules"/>
      <category term="Domain Specific Languages"/>
      <category term="workshop"/>
      <category term="java"/>
      <category term="infoQ"/>
      <category term="JBoss Rules"/>
      <category term="example"/>
      <category term="Mind Map"/>
      <category term="Rules Engine"/>
      <category term="BAM"/>
      <category term="DotNet"/>
      <category term="Rules"/>
      <category term="Business Rules Forum"/>
      <category term="Fuzzy"/>
      <category term="decision tables"/>
      <category term="Boot Camp"/>
      <category term="Drools Boot Camp"/>
      <category term="interview"/>
      <category term="Eclipse"/>
      <category term="MicroContainer"/>
      <category term="Stream"/>
      <category term="designer"/>
      <category term="Brazilian"/>
      <category term="upgrade tool"/>
      <category term="milestone"/>
      <category term="BOF"/>
      <category term="Seam"/>
      <category term="quote"/>
      <category term="JDT"/>
      <category term="shadow facts"/>
      <category term="event"/>
      <category term="ORF 2008"/>
      <category term="SOA"/>
      <category term="Smooks"/>
      <category term="GUI"/>
      <category term="grammar"/>
      <category term="Drools Expert"/>
      <category term="sequential"/>
      <category term="announcement"/>
      <category term="Drools"/>
      <category term="buenos"/>
      <category term="ESP"/>
      <category term="Natural Language"/>
      <category term="Camel"/>
      <category term="SSL"/>
      <category term="jBPM5"/>
      <category term="JSON"/>
      <category term="Drools Flow"/>
      <category term="RuleML 2008"/>
      <category term="Rete"/>
      <category term="Production Rules Systems"/>
      <category term="DRL"/>
      <category term="remote"/>
      <category term="brms insurance demo standalone"/>
      <category term="FactTemplate"/>
      <category term="traveling tournament"/>
      <category term="BRMS"/>
      <category term="MVEL"/>
      <category term="Rule Flow"/>
      <category term="Open Source"/>
      <category term="argentina"/>
      <category term="IKVM"/>
      <category term="BPMN"/>
      <category term="source code"/>
      <category term="standards"/>
      <category term="machine learning"/>
      <category term="image processing"/>
      <category term="Backward Chaining."/>
      <category term="Monitoring"/>
      <category term="modify block"/>
      <category term="GIS"/>
      <category term="accumulate"/>
      <category term="Drools Fusion"/>
      <category term="Codehaus"/>
      <category term="JUG"/>
      <category term="Rule Authoring"/>
      <category term="Negation"/>
      <category term="Business Rules Governance"/>
      <category term="DynaBeans"/>
      <category term="junit"/>
      <category term="JFDI"/>
      <category term="Rule Engines"/>
      <category term="KAMS"/>
      <category term="dynamically generated classes"/>
      <category term="ORF"/>
      <category term="Form Builder"/>
      <category term="syntax"/>
      <category term="shadow proxies"/>
      <category term="BRMS Guvnor Drools"/>
      <category term="ANTLR"/>
      <category term="Service Manager"/>
      <category term="FedEx"/>
      <category term="DSL"/>
      <category term="Clips"/>
      <category term="planner"/>
      <category term="traits"/>
      <category term="examination"/>
      <category term="search space"/>
      <category term="Janino"/>
      <category term="MySQL"/>
      <category term="Web Services"/>
      <category term="semantic web"/>
      <category term="jBPM"/>
      <category term="constraint programming"/>
      <category term="generated classes"/>
      <category term="Research Network"/>
      <category term="algorithm"/>
      <category term="cloud"/>
      <category term="Life Cycle"/>
      <category term="MISMO"/>
      <category term="BPEL"/>
      <category term="LDAP"/>
      <category term="jBPM5 webinar"/>
      <category term="Templates"/>
      <category term="case management"/>
      <category term="android"/>
      <category term="persistence"/>
      <category term="RIF"/>
      <category term="Logic Operators"/>
      <category term="relational programming"/>
      <category term="Debug"/>
      <category term="Jess"/>
      <category term="release"/>
      <category term="extensibility"/>
      <category term="Atom"/>
      <category term="Analytics"/>
      <category term="Portuguese"/>
      <category term="Meetups"/>
      <category term="Synasc"/>
      <category term="drools puzzle"/>
      <category term="Computer Games"/>
      <category term="Progress"/>
      <category term="JavaOne"/>
      <category term="accumulate function"/>
      <category term="Programming"/>
      <category term="Healthcare"/>
      <category term="October Rules Fest"/>
      <category term="Guvnor"/>
      <category term="SwitchYard"/>
      <category term="WordNet"/>
      <category term="SBVR"/>
      <category term="devoxx"/>
      <category term="one"/>
      <category term="Drools Chance"/>
      <category term="plug tree"/>
      <category term="Presentation"/>
      <category term="Spring"/>
      <category term="Guice"/>
      <category term="salaboy"/>
      <category term="solver"/>
      <category term="Savvion"/>
      <category term="OSGi"/>
      <category term="http://www.blogger.com/img/blank.gif"/>
      <category term="REST"/>
      <category term="DSL regexp antlr"/>
      <category term="project proposals"/>
      <category term="Forward  Chaining"/>
      <category term="declarative programming"/>
      <category term="videos"/>
      <category term="CEP"/>
      <category term="book"/>
      <category term="API"/>
      <category term="brms ajax web"/>
      <category term="combinatorial optimization"/>
      <category term="tests"/>
      <category term="computer vision"/>
      <category term="functional programming"/>
      <category term="Time"/>
      <category term="parser"/>
      <category term="droos ide update-site downloads"/>
      <category term="expressiveness"/>
      <author>
        <name>Mark Proctor</name>
        <email>noreply@blogger.com</email>
      </author>
      <link href="http://blog.athico.com/" rel="alternate" type="text/html"/>
      <link href="http://feeds.athico.com/DroolsRSS" rel="self" type="application/atom+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <subtitle>All things Artificial Intelligence related: Rules, Processes, Events, Agents, Planning, Ontologies and more :)</subtitle>
      <title>Drools &amp; jBPM</title>
      <updated>2012-02-08T23:27:11Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-5869426.post-8513707393547069596</id>
    <link href="http://feeds.athico.com/~r/DroolsRSS/~3/cLdauXr3eMg/fosdem-brussels-4-february-2012-planner.html" rel="alternate" type="text/html"/>
    <title>Drools &amp; JBPM: Fosdem Brussels 4 February 2012: Planner, Guvnor and jBPM designer</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><a href="http://fosdem.org/2012/">Fosdem</a> is a free conference on Open Source in Brussels in the first weekend of February. It's a fun conference and getting quite big, filled with Open Source engineers and enthusiasts: long beards, red hats and Mozilla T-shirts are not uncommon :)<br/>
<br/>
Marco Rietveld and I will be presenting in <a href="http://fosdem.org/2012/schedule/track/jbossorg_devroom">the JBoss.org dev room</a> on Saturday:<br/>
<br/>
<ul>
<li><a href="http://fosdem.org/2012/schedule/event/drools_planner_planning_optimization_by_example">12:00 - 12:55: Drools Planner: Planning optimization by example</a></li>
<li><a href="http://fosdem.org/2012/schedule/event/managing_workflows_and_business_rules_with_guvnor_and_the_jbpm_designer">18:00 - 18:55: Guvnor/JBPM : Managing workflows and business rules with Guvnor and the jBPM designer</a></li>
</ul>
<div>
There are a lot of <a href="http://fosdem.org/2012/schedule/days">other interesting talks</a> too, such as Infinispan, Openshift, Forge, ... so if you're in the neighborhood, join us. Did I mention the entrance is free?</div><div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/5869426-8513707393547069596?l=blog.athico.com" width="1"/></div><img height="1" src="http://feeds.feedburner.com/~r/DroolsRSS/~4/cLdauXr3eMg" width="1"/></div>
    </summary>
    <updated>2012-01-10T10:01:00Z</updated>
    <category scheme="http://www.blogger.com/atom/ns#" term="event"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="BRMS Guvnor Drools"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="planner"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="jBPM"/><feedburner:origLink xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://blog.athico.com/2012/01/fosdem-brussels-4-february-2012-planner.html</feedburner:origLink>
    <author>
      <name>Geoffrey De Smet</name>
      <email>noreply@blogger.com</email>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-5869426</id>
      <category term="Performance"/>
      <category term="compilers"/>
      <category term="Conflict Resolution"/>
      <category term="Probability"/>
      <category term="use case"/>
      <category term="competition"/>
      <category term="drools webinar"/>
      <category term="cookbook"/>
      <category term="uncertainty"/>
      <category term="aires"/>
      <category term="service repository"/>
      <category term="Simulation and Testing"/>
      <category term="Job"/>
      <category term="Testing"/>
      <category term="medical"/>
      <category term="Time-Sensitive"/>
      <category term="GSoC"/>
      <category term="AI"/>
      <category term="javapolis"/>
      <category term="video"/>
      <category term="Ad-Hoc"/>
      <category term="Expert Systems"/>
      <category term="RuleML"/>
      <category term="variables"/>
      <category term="Business Rules"/>
      <category term="Domain Specific Languages"/>
      <category term="workshop"/>
      <category term="java"/>
      <category term="infoQ"/>
      <category term="JBoss Rules"/>
      <category term="example"/>
      <category term="Mind Map"/>
      <category term="Rules Engine"/>
      <category term="BAM"/>
      <category term="DotNet"/>
      <category term="Rules"/>
      <category term="Business Rules Forum"/>
      <category term="Fuzzy"/>
      <category term="decision tables"/>
      <category term="Boot Camp"/>
      <category term="Drools Boot Camp"/>
      <category term="interview"/>
      <category term="Eclipse"/>
      <category term="MicroContainer"/>
      <category term="Stream"/>
      <category term="designer"/>
      <category term="Brazilian"/>
      <category term="upgrade tool"/>
      <category term="milestone"/>
      <category term="BOF"/>
      <category term="Seam"/>
      <category term="quote"/>
      <category term="JDT"/>
      <category term="shadow facts"/>
      <category term="event"/>
      <category term="ORF 2008"/>
      <category term="SOA"/>
      <category term="Smooks"/>
      <category term="GUI"/>
      <category term="grammar"/>
      <category term="Drools Expert"/>
      <category term="sequential"/>
      <category term="announcement"/>
      <category term="Drools"/>
      <category term="buenos"/>
      <category term="ESP"/>
      <category term="Natural Language"/>
      <category term="Camel"/>
      <category term="SSL"/>
      <category term="jBPM5"/>
      <category term="JSON"/>
      <category term="Drools Flow"/>
      <category term="RuleML 2008"/>
      <category term="Rete"/>
      <category term="Production Rules Systems"/>
      <category term="DRL"/>
      <category term="remote"/>
      <category term="brms insurance demo standalone"/>
      <category term="FactTemplate"/>
      <category term="traveling tournament"/>
      <category term="BRMS"/>
      <category term="MVEL"/>
      <category term="Rule Flow"/>
      <category term="Open Source"/>
      <category term="argentina"/>
      <category term="IKVM"/>
      <category term="BPMN"/>
      <category term="source code"/>
      <category term="standards"/>
      <category term="machine learning"/>
      <category term="image processing"/>
      <category term="Backward Chaining."/>
      <category term="Monitoring"/>
      <category term="modify block"/>
      <category term="GIS"/>
      <category term="accumulate"/>
      <category term="Drools Fusion"/>
      <category term="Codehaus"/>
      <category term="JUG"/>
      <category term="Rule Authoring"/>
      <category term="Negation"/>
      <category term="Business Rules Governance"/>
      <category term="DynaBeans"/>
      <category term="junit"/>
      <category term="JFDI"/>
      <category term="Rule Engines"/>
      <category term="KAMS"/>
      <category term="dynamically generated classes"/>
      <category term="ORF"/>
      <category term="Form Builder"/>
      <category term="syntax"/>
      <category term="shadow proxies"/>
      <category term="BRMS Guvnor Drools"/>
      <category term="ANTLR"/>
      <category term="Service Manager"/>
      <category term="FedEx"/>
      <category term="DSL"/>
      <category term="Clips"/>
      <category term="planner"/>
      <category term="traits"/>
      <category term="examination"/>
      <category term="search space"/>
      <category term="Janino"/>
      <category term="MySQL"/>
      <category term="Web Services"/>
      <category term="semantic web"/>
      <category term="jBPM"/>
      <category term="constraint programming"/>
      <category term="generated classes"/>
      <category term="Research Network"/>
      <category term="algorithm"/>
      <category term="cloud"/>
      <category term="Life Cycle"/>
      <category term="MISMO"/>
      <category term="BPEL"/>
      <category term="LDAP"/>
      <category term="jBPM5 webinar"/>
      <category term="Templates"/>
      <category term="case management"/>
      <category term="android"/>
      <category term="persistence"/>
      <category term="RIF"/>
      <category term="Logic Operators"/>
      <category term="relational programming"/>
      <category term="Debug"/>
      <category term="Jess"/>
      <category term="release"/>
      <category term="extensibility"/>
      <category term="Atom"/>
      <category term="Analytics"/>
      <category term="Portuguese"/>
      <category term="Meetups"/>
      <category term="Synasc"/>
      <category term="drools puzzle"/>
      <category term="Computer Games"/>
      <category term="Progress"/>
      <category term="JavaOne"/>
      <category term="accumulate function"/>
      <category term="Programming"/>
      <category term="Healthcare"/>
      <category term="October Rules Fest"/>
      <category term="Guvnor"/>
      <category term="SwitchYard"/>
      <category term="WordNet"/>
      <category term="SBVR"/>
      <category term="devoxx"/>
      <category term="one"/>
      <category term="Drools Chance"/>
      <category term="plug tree"/>
      <category term="Presentation"/>
      <category term="Spring"/>
      <category term="Guice"/>
      <category term="salaboy"/>
      <category term="solver"/>
      <category term="Savvion"/>
      <category term="OSGi"/>
      <category term="http://www.blogger.com/img/blank.gif"/>
      <category term="REST"/>
      <category term="DSL regexp antlr"/>
      <category term="project proposals"/>
      <category term="Forward  Chaining"/>
      <category term="declarative programming"/>
      <category term="videos"/>
      <category term="CEP"/>
      <category term="book"/>
      <category term="API"/>
      <category term="brms ajax web"/>
      <category term="combinatorial optimization"/>
      <category term="tests"/>
      <category term="computer vision"/>
      <category term="functional programming"/>
      <category term="Time"/>
      <category term="parser"/>
      <category term="droos ide update-site downloads"/>
      <category term="expressiveness"/>
      <author>
        <name>Mark Proctor</name>
        <email>noreply@blogger.com</email>
      </author>
      <link href="http://blog.athico.com/" rel="alternate" type="text/html"/>
      <link href="http://feeds.athico.com/DroolsRSS" rel="self" type="application/atom+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <subtitle>All things Artificial Intelligence related: Rules, Processes, Events, Agents, Planning, Ontologies and more :)</subtitle>
      <title>Drools &amp; jBPM</title>
      <updated>2012-02-08T23:27:11Z</updated>
    </source>
  </entry>

  <entry xml:lang="de">
    <id>http://www.saperionblog.com/?p=5641</id>
    <link href="http://www.saperionblog.com/lang/de/is-the-thinking-of-business-processes-in-bpm-or-acm-only-a-battle-of-hemispheres/5641" rel="alternate" type="text/html"/>
    <title>Saperion.com (BPM related posts): Is the thinking of business processes in BPM or ACM only a battle of hemispheres?</title>
    <summary>I will invite you reading the new article of Max J. Pucher, one of our thought leader in the area of efficient business processes: ACM and BPM: A Battle of The Hemispheres? In June of 2010 I wrote the article WfMC’s Thought Leader proclaimed the next BPM revolution in Maidenhead at the end of 2009. [...]</summary>
    <updated>2012-01-09T17:36:19Z</updated>
    <category term="english"/>
    <category term="process management"/>
    <category term="ACM"/>
    <category term="BPM"/>
    <category term="Case Management"/>
    <category term="Pucher"/>
    <author>
      <name>Dr. Martin Bartonitz</name>
    </author>
    <source>
      <id>http://www.saperionblog.com</id>
      <link href="http://www.saperionblog.com/tag/bpm/feed/" rel="self" type="application/atom+xml"/>
      <link href="http://www.saperionblog.com" rel="alternate" type="text/html"/>
      <link href="http://friendfeed.com/api/public-sup.json#ae70a1f9c8" rel="http://api.friendfeed.com/2008/03#sup" type="application/json"/>
      <subtitle>COMPLIANCE - SaaS - ECM - BPM - CMIS - SCRUM</subtitle>
      <title>SAPERION Blog » BPM</title>
      <updated>2012-02-08T11:27:11Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://www.kurze-prozesse.de/?p=1730</id>
    <link href="http://www.kurze-prozesse.de/2012/01/08/buch-model-driven-soa/" rel="alternate" type="text/html"/>
    <title>Thomas Allweyer: Vorgestellt: Model Driven SOA</title>
    <summary>Um eine reale Anwendung auf Basis einer service-orientierten Architektur (SOA) zu entwickeln, sind zahlreiche Aspekte zu berücksichtigen und zu integrieren. Hierzu gehören Prozesse, Datenstrukturen, Maskenflüsse, Service-Spezifikationen und vieles mehr. Die meisten dieser Aspekte können heute mit geeigneten Notationen modelliert werden, und ein Großteil der benötigten Artefakte lässt sich aus den Modellen automatisch generieren. Die Herausforderung [...]</summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p><a href="http://www.amazon.de/gp/product/3642144691/ref=as_li_ss_tl?ie=UTF8&amp;tag=kurzproz-21&amp;linkCode=as2&amp;camp=1638&amp;creative=19454&amp;creativeASIN=3642144691" target="_blank"><img alt="Cover Model Driven SOA" class="alignnone size-full wp-image-1731" height="238" src="http://www.kurze-prozesse.de/blog/wp-content/uploads/2012/01/model-driven-soa-cover.jpg" style="float: left; margin-bottom: 10px; margin-right: 10px;" title="model-driven-soa-cover" width="150"/></a>Um eine reale Anwendung auf Basis einer service-orientierten Architektur (SOA) zu entwickeln, sind zahlreiche Aspekte zu berücksichtigen und zu integrieren. Hierzu gehören Prozesse, Datenstrukturen, Maskenflüsse, Service-Spezifikationen und vieles mehr. Die meisten dieser Aspekte können heute mit geeigneten Notationen modelliert werden, und ein Großteil der benötigten Artefakte lässt sich aus den Modellen automatisch generieren. Die Herausforderung besteht darin, die verschiedenen Aspekte zu einer sinnvollen Gesamtmethodik zu integrieren und im Rahmen einer durchgängigen Vorgehensweise anzuwenden.<span id="more-1730"/></p>
<p>“Model Driven SOA” stellt einen solchen durchgängigen Ansatz vor. Damit hebt es sich von den meisten anderen Veröffentlichungen zu diesem Themengebiet ab, denn diese behandeln oft nur einzelne Aspekte. Doch ist beispielsweise die Generierung von ausführbaren Prozessen aus fachlichen Prozessbeschreibungen nur von begrenztem Nutzen, wenn man nicht gleichzeitig klärt, wie die Fachlogik der aufzurufenden Services spezifiziert und implementiert wird. Behandelt man solche Aspekte isoliert, so wird bei größeren Anwendungen schnell das Problem auftreten, dass man nicht mehr nachvollziehen kann, wie die verschiedenen Aspekte zusammenspielen.</p>
<div style="float: right; width: 7em; border: 1px solid gray; font-size: 140%; color: darkgray; text-align: center; padding: 10px;"><strong><a href="http://www.kurze-prozesse.de/bpmbuecher/">Weitere Bücher zum Thema BPM</a></strong></div>
<p>Die im Buch dargestellte Methodik wurde aus der Praxis entwickelt. Die Autoren aus dem Hause <a href="http://www.mid.de/" target="_blank">MID</a>, dem Nürnberger Modellierungsspezialisten, nutzten ihren umfangreichen methodischen Hintergrund um ihre praktischen Erfahrungen in einen durchgängigen Ansatz zu überführen. Dieser Ansatz wird nicht nur theoretisch erläutert, sondern an dem umfassenden Beispiel eines Investionsantragsprozesses praktisch angewandt. Dieses Beispiel steht auf der <a href="http://www.mdsoa.de/" target="_blank">Website zum Buch</a> mitsamt sämtlichen benötigten Tools, Diagrammen, Quelltexten und Anleitungen zum Download zur Verfügung. Die Werkzeuge für die Implementierung und Software-Generierung sind meist Open Source. Die für die Modellierung verwendeten Tools der MID können mit der im Download enthaltenen Enterprise-Lizenz sechs Monate lang getestet werden.</p>
<p>Die angewandte Vorgehensweise umfasst vier Phasen:</p>
<ol>
<li><strong>Initiation:</strong> Hier geht es darum, die fachlichen Anforderungen zu verstehen. Im Fokus stehen die Geschäftsprozesse und die darin verwendeten Daten. Weitere Anforderungen werden in Form von Texten dokumentiert.</li>
<li><strong>System Evaluation:</strong> In dieser Phase wird die Funktionalität beschrieben und strukturiert, u. a. mit Hilfe von BPMN-Diagrammen, UML-Modellen und Maskenflüssen.</li>
<li><strong>Architecture Projection</strong>: Die Ergebnisse der System Evaluation werden in einer Softwarearchitektur umgesetzt. Dabei werden insbesondere die Komponenten und ihre Schnittstellen dargestellt sowie ggf. ein konzeptionelles Datenmodell.</li>
<li><strong>Software Construction und Deployment:</strong> Hier wird das implementierbare System entwickelt, wobei Sourcecode, Datenbank und weitere Artefakte generiert werden.</li>
</ol>
<p>Die Ergebnisse der einzelnen Phasen bauen konsequent aufeinander auf, wobei aber auch eine iterative Entwicklung möglich ist. So können in jeder Iteration die genannten Phasen für einzelne Funktionen oder Komponenten durchlaufen werden. Wichtig ist die Nachvollziehbarkeit über die verschiedenen Phasen hinweg. Die Verwaltung der entsprechenden Abhängigkeiten macht es möglich, Änderungen konsistent über alle Ebenen umzusetzen. Dies ist eine wichtige Voraussetzung für die Wartung und Weiterentwicklung der Anwendung.</p>
<p>Das Buch richtet sich an Software-Architekten und Projektleiter, die Erfahrungen in der Entwicklung größerer Softwaresysteme haben und konkrete Hinweise für den Aufbau und die Weiterentwicklung ihrer eigenen SOA-Methodik suchen. Die Darstellungen und Erläuterungen gehen oftmals bis in die Details. Damit lässt sich einerseits genau nachvollziehen, wie die vorgestellten Ansätze tatsächlich funktionieren. Andererseits macht es die Lektüre nicht ganz einfach. Für Einsteiger in die Thematik ist das Buch daher weniger geeignet.</p>
<p>Viele der erläuterten Modellierungsaspekte beziehen sich konkret auf Funktionalitäten der Tools von MID. Zwar sind die Prinzipien und Vorgehensweisen auch unabhängig von diesen Tools gültig und nützlich, doch wird der Nutzen aus dem Buch für die Leser höher sein, die selbst die MID-Tools einsetzen oder sie kennen lernen wollen. Mit der angebotenen Evaluationsversion wird dafür eine gute Möglichkeit geboten.</p>
<p>Wer wissen will, wie SOA-Entwicklung wirklich funktioniert, wird in diesem Buch fündig. Um den größtmöglichen Nutzen zu erreichen, sollte man bereit sein, einige Zeit in die Arbeit mit dem Buch und dem angebotenen Download zu stecken.</p>
<hr/>
<p>Rempp, G.; Akermann, M.; Löffler, M.; Lehmann, J.:<br/>
Model Driven SOA. Anwendungsorientierte Methodik und Vorgehen in der Praxis.<br/>
Springer Berlin Heidelberg 2011.<br/>
<a href="http://www.amazon.de/gp/product/3642144691/ref=as_li_ss_tl?ie=UTF8&amp;tag=kurzproz-21&amp;linkCode=as2&amp;camp=1638&amp;creative=19454&amp;creativeASIN=3642144691" target="_blank">Das Buch bei amazon.</a></p>
<p><a href="http://www.mdsoa.de/" target="_blank">Website zum Buch mit Downloads</a></p></div>
    </content>
    <updated>2012-01-08T19:23:35Z</updated>
    <category term="Allgemein"/>
    <category term="BPMN"/>
    <category term="Modellierung"/>
    <category term="MDA"/>
    <category term="Modellgetriebene Software-Entwicklung"/>
    <category term="SOA"/>
    <category term="Software-Entwicklung"/>
    <author>
      <name>Thomas Allweyer</name>
    </author>
    <source>
      <id>http://www.kurze-prozesse.de</id>
      <link href="http://www.kurze-prozesse.de/feed/" rel="self" type="application/atom+xml"/>
      <link href="http://www.kurze-prozesse.de" rel="alternate" type="text/html"/>
      <subtitle>Das BPM-Blog *</subtitle>
      <title>Kurze Prozesse</title>
      <updated>2012-02-07T20:27:26Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-5869426.post-54879757685892680</id>
    <link href="http://feeds.athico.com/~r/DroolsRSS/~3/d-eAJPstsgo/last-chance-drools-jbpm-at-icaart.html" rel="alternate" type="text/html"/>
    <title>Drools &amp; JBPM: Last Chance - Drools &amp; jBPM at ICAART (Portugal) 4th International Conference on Agents and Artificial Intelligence</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">The event is just one week away from being cancelled if we don't get more attendance. So if you are thinking of going, better sign up now, before it's too late.<br/><br/>Mark<br/><br/>---------------<br/><a href="http://4.bp.blogspot.com/-_b77C8kLxEk/TuDUJkn_TlI/AAAAAAAAAnY/_QPFAuMEdOo/s1600/icaart.png"><img alt="" border="0" id="BLOGGER_PHOTO_ID_5683775990656880210" src="http://4.bp.blogspot.com/-_b77C8kLxEk/TuDUJkn_TlI/AAAAAAAAAnY/_QPFAuMEdOo/s400/icaart.png" style="cursor: pointer; cursor: hand; width: 400px; height: 76px;"/></a><br/>Droosl  &amp; jBPM @ ICAART 2012 is now confirmed, and myself (Mark Proctor)  and Dr Davide Sottara will be there. If you have any interesting  research on or with Drools &amp; jBPM that you would like to present on  the day, let us konw.<br/>6-8 Febuary 2012<br/>Vilamoura, Algarve, Portugal<br/><a href="http://www.icaart.org/tutorials.asp">http://www.icaart.org/tutorials.asp</a><br/><br/>The  day is a tutorial day aimed at all levels. It will start with general  introductions to the technology but will slant off to more of our  research based projects such as Drools Semantics and Chance, as it's  part of an academic conference. We would also like to give an  opportunity for the people to present their own research, slots can be  anything from 20minutes to 60 - contact me if you are interested  mproctor at codehaus d0t org.<br/><br/>There will also be plenty of time for discussions and help with your own projects.<br/><p> <strong>Abstract</strong><br/><br/>Drools  is the leading open source, industry focused, rule engine. While   Drools started life as a Rete based forward chaining engine, it has   since transcended. It's ongoing mission is to explore declarative   paradigms from a practical and industrial perspective, to boldly go   where no engine has gone before.<br/><br/>The tutorial will start with a  gentle introduction, suitable for all  level of expertise, covering the  core language and functionality slowly  expanding into more complex  areas. The topics covered include, but are  not limited to:<br/><br/><span style="text-decoration: underline;">Basic Concepts:</span><br/></p><ul><li>Patterns, Constraints and Unification</li><li>Data Driven and Goal Oriented Inference using Forward Chaining and (Opportunistic) Backward Chaining</li><li>Truth Maintenance</li><li>Temporal Reasoning and Complex Event Processing</li><li>Functional Programming</li><li>Traits and Declarative Models</li></ul> <span style="text-decoration: underline;">Advanced Topics:</span><br/><ul><li>Decision Tables</li><li>Rule and Workflow Integration</li><li>Hybrid Rule-Based Systems</li><li>Agents and Services</li><li>Unified Testing</li></ul>     <p><strong>Brief biography of Mark Proctor</strong><br/><br/>Mark  Proctor received his B.Eng in Engineer Science and Technology and  then  his M.Sc. in Business and Information Systems; both from Brunel   University, West London. His M.Sc. thesis was in the field of Genetic   Algorithms; which is where he discovered his interest for anything AI   related.</p><p><br/>Mark became involved in the Drools expert system  project at an early  stage and soon became its project lead. Mark then  joined JBoss (later  acquired by Red Hat) as an employee when the Drools  project was federated into the JBoss middleware stack.<br/>Mark now  leads the effort at Red Hat for a unified platform for  declarative  technologies; with a focus on rules, event processing,  workflow,  semantics, distributed agents and governance.<br/><br/><strong>Brief biography of Davide Sottara</strong><br/><br/>Davide  Sottara received his Ms. Degree in Computer Science(2006) and his  Ph.D  (2010) in Computer Science, Electronics and Telecommunications  from  the University of Bologna.<br/>His research and development interests  include Artificial Intelligence  in general and Decision Support Systems  in particular, focusing on  hybrid systems combining predictive models  and rule-based systems.</p><p> Since 2006, he has been working on the  development of intelligent DSSs  in the environmental and medical field.  He is a member of the Drools  open source Community, leading a  sub-project on the extension of  production rule engines to support  hybrid and uncertain reasoning, and  he's also involved in the RuleML  rule language standardization  initiative. He is currently working on  remote health-care systems  enhanced with AI-based predictive,  diagnostic and planning features.<br/></p>   <strong>Contacts</strong><br/><br/>e-mail: <a href="mailto:icaart.secretariat@insticc.org">icaart.secretariat@insticc.org</a><div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/5869426-54879757685892680?l=blog.athico.com" width="1"/></div><img height="1" src="http://feeds.feedburner.com/~r/DroolsRSS/~4/d-eAJPstsgo" width="1"/></div>
    </summary>
    <updated>2012-01-06T16:17:00Z</updated>
    <category scheme="http://www.blogger.com/atom/ns#" term="jBPM"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="Boot Camp"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="Drools"/><feedburner:origLink xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://blog.athico.com/2012/01/last-chance-drools-jbpm-at-icaart.html</feedburner:origLink>
    <author>
      <name>Mark Proctor</name>
      <email>noreply@blogger.com</email>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-5869426</id>
      <category term="Performance"/>
      <category term="compilers"/>
      <category term="Conflict Resolution"/>
      <category term="Probability"/>
      <category term="use case"/>
      <category term="competition"/>
      <category term="drools webinar"/>
      <category term="cookbook"/>
      <category term="uncertainty"/>
      <category term="aires"/>
      <category term="service repository"/>
      <category term="Simulation and Testing"/>
      <category term="Job"/>
      <category term="Testing"/>
      <category term="medical"/>
      <category term="Time-Sensitive"/>
      <category term="GSoC"/>
      <category term="AI"/>
      <category term="javapolis"/>
      <category term="video"/>
      <category term="Ad-Hoc"/>
      <category term="Expert Systems"/>
      <category term="RuleML"/>
      <category term="variables"/>
      <category term="Business Rules"/>
      <category term="Domain Specific Languages"/>
      <category term="workshop"/>
      <category term="java"/>
      <category term="infoQ"/>
      <category term="JBoss Rules"/>
      <category term="example"/>
      <category term="Mind Map"/>
      <category term="Rules Engine"/>
      <category term="BAM"/>
      <category term="DotNet"/>
      <category term="Rules"/>
      <category term="Business Rules Forum"/>
      <category term="Fuzzy"/>
      <category term="decision tables"/>
      <category term="Boot Camp"/>
      <category term="Drools Boot Camp"/>
      <category term="interview"/>
      <category term="Eclipse"/>
      <category term="MicroContainer"/>
      <category term="Stream"/>
      <category term="designer"/>
      <category term="Brazilian"/>
      <category term="upgrade tool"/>
      <category term="milestone"/>
      <category term="BOF"/>
      <category term="Seam"/>
      <category term="quote"/>
      <category term="JDT"/>
      <category term="shadow facts"/>
      <category term="event"/>
      <category term="ORF 2008"/>
      <category term="SOA"/>
      <category term="Smooks"/>
      <category term="GUI"/>
      <category term="grammar"/>
      <category term="Drools Expert"/>
      <category term="sequential"/>
      <category term="announcement"/>
      <category term="Drools"/>
      <category term="buenos"/>
      <category term="ESP"/>
      <category term="Natural Language"/>
      <category term="Camel"/>
      <category term="SSL"/>
      <category term="jBPM5"/>
      <category term="JSON"/>
      <category term="Drools Flow"/>
      <category term="RuleML 2008"/>
      <category term="Rete"/>
      <category term="Production Rules Systems"/>
      <category term="DRL"/>
      <category term="remote"/>
      <category term="brms insurance demo standalone"/>
      <category term="FactTemplate"/>
      <category term="traveling tournament"/>
      <category term="BRMS"/>
      <category term="MVEL"/>
      <category term="Rule Flow"/>
      <category term="Open Source"/>
      <category term="argentina"/>
      <category term="IKVM"/>
      <category term="BPMN"/>
      <category term="source code"/>
      <category term="standards"/>
      <category term="machine learning"/>
      <category term="image processing"/>
      <category term="Backward Chaining."/>
      <category term="Monitoring"/>
      <category term="modify block"/>
      <category term="GIS"/>
      <category term="accumulate"/>
      <category term="Drools Fusion"/>
      <category term="Codehaus"/>
      <category term="JUG"/>
      <category term="Rule Authoring"/>
      <category term="Negation"/>
      <category term="Business Rules Governance"/>
      <category term="DynaBeans"/>
      <category term="junit"/>
      <category term="JFDI"/>
      <category term="Rule Engines"/>
      <category term="KAMS"/>
      <category term="dynamically generated classes"/>
      <category term="ORF"/>
      <category term="Form Builder"/>
      <category term="syntax"/>
      <category term="shadow proxies"/>
      <category term="BRMS Guvnor Drools"/>
      <category term="ANTLR"/>
      <category term="Service Manager"/>
      <category term="FedEx"/>
      <category term="DSL"/>
      <category term="Clips"/>
      <category term="planner"/>
      <category term="traits"/>
      <category term="examination"/>
      <category term="search space"/>
      <category term="Janino"/>
      <category term="MySQL"/>
      <category term="Web Services"/>
      <category term="semantic web"/>
      <category term="jBPM"/>
      <category term="constraint programming"/>
      <category term="generated classes"/>
      <category term="Research Network"/>
      <category term="algorithm"/>
      <category term="cloud"/>
      <category term="Life Cycle"/>
      <category term="MISMO"/>
      <category term="BPEL"/>
      <category term="LDAP"/>
      <category term="jBPM5 webinar"/>
      <category term="Templates"/>
      <category term="case management"/>
      <category term="android"/>
      <category term="persistence"/>
      <category term="RIF"/>
      <category term="Logic Operators"/>
      <category term="relational programming"/>
      <category term="Debug"/>
      <category term="Jess"/>
      <category term="release"/>
      <category term="extensibility"/>
      <category term="Atom"/>
      <category term="Analytics"/>
      <category term="Portuguese"/>
      <category term="Meetups"/>
      <category term="Synasc"/>
      <category term="drools puzzle"/>
      <category term="Computer Games"/>
      <category term="Progress"/>
      <category term="JavaOne"/>
      <category term="accumulate function"/>
      <category term="Programming"/>
      <category term="Healthcare"/>
      <category term="October Rules Fest"/>
      <category term="Guvnor"/>
      <category term="SwitchYard"/>
      <category term="WordNet"/>
      <category term="SBVR"/>
      <category term="devoxx"/>
      <category term="one"/>
      <category term="Drools Chance"/>
      <category term="plug tree"/>
      <category term="Presentation"/>
      <category term="Spring"/>
      <category term="Guice"/>
      <category term="salaboy"/>
      <category term="solver"/>
      <category term="Savvion"/>
      <category term="OSGi"/>
      <category term="http://www.blogger.com/img/blank.gif"/>
      <category term="REST"/>
      <category term="DSL regexp antlr"/>
      <category term="project proposals"/>
      <category term="Forward  Chaining"/>
      <category term="declarative programming"/>
      <category term="videos"/>
      <category term="CEP"/>
      <category term="book"/>
      <category term="API"/>
      <category term="brms ajax web"/>
      <category term="combinatorial optimization"/>
      <category term="tests"/>
      <category term="computer vision"/>
      <category term="functional programming"/>
      <category term="Time"/>
      <category term="parser"/>
      <category term="droos ide update-site downloads"/>
      <category term="expressiveness"/>
      <author>
        <name>Mark Proctor</name>
        <email>noreply@blogger.com</email>
      </author>
      <link href="http://blog.athico.com/" rel="alternate" type="text/html"/>
      <link href="http://feeds.athico.com/DroolsRSS" rel="self" type="application/atom+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <subtitle>All things Artificial Intelligence related: Rules, Processes, Events, Agents, Planning, Ontologies and more :)</subtitle>
      <title>Drools &amp; jBPM</title>
      <updated>2012-02-08T23:27:11Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-5869426.post-836586153195058163</id>
    <link href="http://feeds.athico.com/~r/DroolsRSS/~3/6TT1rYJdTP4/decision-model-ip-trap-part-drei.html" rel="alternate" type="text/html"/>
    <title>Drools &amp; JBPM: The Decision Model IP Trap - Part Drei</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><a href="http://blog.athico.com/2011/11/decision-model-ip-trap.html">part 1</a>   <a href="http://blog.athico.com/2011/12/decision-model-ip-trap-part-deux.html">part 2</a>   <a href="http://blog.athico.com/2012/01/decision-model-ip-trap-part-drei.html">part 3</a><br/><br/>Recently Mr Suleiman Shehu wrote a <a href="http://www.azintablog.com/2011/12/24/the-decision-model-ip-trap-rebuttal/">misleading rebuttal</a> on my blog posts <a href="http://blog.athico.com/2011/11/decision-model-ip-trap.html">"The Decision Model IP Trap"</a> and  <a href="http://blog.athico.com/2011/12/decision-model-ip-trap-part-deux.html">"The Decision Model IP Trap - Part Deux "</a>. He took great pains to declare that his article was balanced and impartial.<br/><br/>On a side note, interesting <a href="http://games.slashdot.org/comments.pl?sid=151312&amp;cid=12701745">post </a>by the famous John Carmack from ID Software on patents - "Yes, it is a legal tool that may help you against your competitors, but I'll have no part of it.  Its basically mugging someone." [Carmack]<br/><br/>Mr Suleiman Shehu attempts to argue that patents and open source do mix, and mix regularly, in an effort to highlight my unreasonableness for not considering TDM within Drools. He cites patents owned by Oracle for Java and the recent Oracle and Google court case of those patents as the basis for those arguments. Further he tries to explain that the KPI usage policy is perfectly acceptable for any Open Source project.<br/><br/>Each and every fact he uses to form the basis of his argument is provably incorrect and shows he has no understanding of licensing within Open Source, or the different factions in Open Source, which admittedly is not a simple topic, but that is no excuse. You cannot bundle all of Open Source under a single umbrella argument, each license has different restrictions and guarantees. Having built his rebuttal on misguided, misunderstood and false assumption (points 1 to 4) he then slides to conjecture on my beliefs and motives for which he has no evidence (points 5 to 7). This completely nullifies any claims he has for impartiality, balance or integrity.<br/><br/>I have kept an original copy of his article <a href="http://www.athico.com/TDM/tdm-rebuttal.html">here</a>. For brevity purposes I have abridged his points, in a way I feel encapsulates his intent. In the original copy I created two columns, where the first column shows the section numbers that correspond with the points in the main document, which is in the second column. This is to show the source for the abridged version in this article.<br/><br/>It was not so long ago that Open Source Systems (OSS) came with a lot of uncertainty. Providing certainty was a large part that allowed mass OSS adoption of both developers and users. Patents create legal uncertainties.<br/><br/>Licenses like (but not limited to) the GPL and Apache License bring certainty, over the years they have built up strong brand recognition that creates instantly known commodities for social charters and usage restrictions of a project. These are catalysts allowing for OSS communities of developers and users to thrive. The licenses do what they say on the tin, you don't need expensive lawyers to hunt down potential additional restrictions. As a leader of an OSS project I value the certainty these bring. I won't stand quietly by, while others seek to dilute those certainties and to muddy the water of respected OSS brands that many have worked hard to establish.<br/><br/>Bearing this in mind, here are the main points:<br/><br/><span style="font-weight: bold;">1) There is no reasonable reason why Drools cannot embrace TDM – <span style="color: rgb(255, 0, 0);">WRONG</span>.</span><br/><br/>1.1) Legally this cannot happen. The Apache license forbids contributions which are covered by patents not made available under the terms guaranteed by the Apache license. The license is crystal clear on this. The same is true for the GPL.<br/><br/>1.2) This actually rebuts his entire article, and is probably the end of the discussion. But for completeness I will falsify each and every fact that Mr Suleiman Shehu uses.<br/><br/><span style="font-weight: bold;">2) Drools is written in Java. Java is patented, your world is already using patents, so what's your problem – <span style="color: rgb(255, 0, 0);">WRONG</span>.</span><br/><br/>2.1) There are no patents for the Java language specification. The term Java is trademarked and you must pass certification to use it. Java can be used to refer to the platform, which is the language specification + libraries + virtual machine. Oracle has patents for its virtual machine, the JVM.<br/><br/>2.2) The Java language specification has no patents. It is possible to implement a VM that can execute Java which does not infringe upon Oracle's patents; see Kaffe: <a href="http://www.kaffe.org/">http://www.kaffe.org/</a>. The Java specification provides a safe buffer from possible infringement of patents, from the perspective of developers targeting the Java language.<br/><br/>2.3) This is why patenting of methodologies, specifications and business practices is actually far more dangerous that patents for implementations, where alternative implementation techniques can nearly always be found. If the Java language specification was patented, it would be impossible to do an implementation that does not infringe – in such a situation Java would not have taken off in OSS.<br/><br/>2.4) Illustrating this argument further, Drools DRL is derivative of Ilog's IRL, while IBM may hold patents for the execution of IRL, that has no bearing on our derivative implementation for the IRL language. If however IRL was patented, that would be much more chilling. So it is important to understand the difference in patenting of a specification, which is absolute, and implementationswhich can be worked around.<br/><br/><span style="font-weight: bold;">3) Oracle granted OpenJDK exceptions for those patents, as long as you obey its specification. Why is that different to KPI granting OSS exceptions. If its good enough for them (OpenJDK), why isn't it for you – <span style="color: rgb(255, 0, 0);">WRONG</span>.</span><br/><br/>3.1) When Sun placed its JVM implementation under the GPL license all its patents were also made available under terms of the GPL license. While the Apache license explicitly gives universal and perpetual usage of patented contributions, the GPL has similar implicit terminology. The patent licensing under certification is something completely different and is considered an additional guarantee.<br/><a href="http://en.swpat.org/wiki/Java_and_patents">http://en.swpat.org/wiki/Java_and_patents</a><br/><br/>"OpenJDK is has been distributed by Oracle under GPLv2.[1] GPLv2 includes two implicit patent licences, so users of OpenJDK should be safe, and modified versions of OpenJDK should also be safe (even if they're heavily modified).<br/><br/>“The protections in the GPL are unconditional. The software doesn't have to comply with any specifications in order to benefit from these protections."<br/><br/>3.2) KPI could better clarify its OSS exception. The use of the term “Open Source” creates ambiguity as each license brings different issues that need to be tackled. For this they need a better understanding of OSS licensing – GPL/MIT/BSD/ASL. As stated above for either Apache or GPL, you either provide universal and perpetual access to those patents or you don't. A project cannot be under the terms of GPL if it contains additional restrictions. If there are restrictions on usage, then it's not GPL. Also be aware that providing access to patents for GPL projects does not make them available to Apache licensed projects – see 4.<br/><br/><span style="font-weight: bold;">4) Java is patented, you are safe if you certify - see 3. Which is why Oracle is suing Google. So if those people can work with patents, why can't you – <span style="color: rgb(255, 0, 0);">WRONG</span>.</span><br/><br/>4.1) As stated in point 3, OpenJDK is not "licensing" patents under restrictive terms based on certification. Those grants are universal and perpetual within the GPL eco-system. So using 4's for the "if it's good enough for them, why isn't it for you" is broken. This is further falsified by point 2 where Drools targets a language specification that is not patent encumbered. Oracle is not suing Google for making something that executes Java like code, the Java language specification is not patented. It believes the Google VM infringes its patents. As stated in point 2 it is possible to implement Java while not infringing patents, Google certainly believes they don't infringe on those patents. Even if Google is found to infringe on some Oracle patents, that does not distract from the fact that Java, the language spec, is not patented and all OpenJDK patents are available under the terms of the GPL.<br/><br/>4.2) Google's issue is related to different OSS eco-systems, which is an entirely different subject and out of scope. In short Google's VM is licensed under the Apache License while OpenJDK is under the GPL. Those perpetual and universal grants are restricted to those eco-systems they were placed under. GPL v ASL is a subject completely out of scope. So again, it has got nothing to do with one OSS project using patents under restrictive "certification" terms, see point 3. If Google had placed its VM under the GPL, Oracle would not be able to sue them.<br/><br/>-------<br/><br/>Having shown that each and every fact he uses to support the basis of his argument is completely wrong lets now turn to the darker sides of his blog, where he  misappropriates someone's comment and slides to conjecture on my beliefs and motives, for which he has no evidence. This completely nullifies any claims he has for impartiality, balance or integrity.<br/><br/><span style="font-weight: bold;">5) Jacob Feldman, from Open Rules, as an Open Source vendor has endorsed the TDM patent position. "If KPI TDM patent usage rights statement appears to be acceptable to Jacob at OpenRules – an open source decision management company www.openrules.com ) what is there to prevent you from using TDM within Drools?"</span> - <span style="font-weight: bold; color: rgb(255, 0, 0);">MISAPPROPRIATION</span><br/><br/>5.1) Before you misquote someone whose comment was intended to be amicable simply to avoid conflict, you should probably check with them first before you use them as a full blown endorsement. I have known Jacob personally for many years and have already spoken to him on the matter. And I think I've already answered well enough, time after time, why even legally this is prevented.<br/><br/><span style="font-weight: bold;">6) "The only people who have the moral right to own patents are open source software companies who will naturally use their patents defensively."</span> - <span style="font-weight: bold; color: rgb(255, 0, 0);">CONJECTURE</span><br/><br/>6.1) That is complete conjecture with no basis of evidence. I have never and will never claim any arguments based on morality. Yes, I believe that patents hinder innovation in software. Yes, I believe that patents restrict the potential of Open Source, as it cannot license patents (as proven in points 1 to 4). This has nothing to do with morality. I am invested in Open Source, I have every right to protect my interests and my employers interests and attempt (within the law) to limit those that might negatively impact on said interests. In the same way any individual or company has every right to hold patents to protect their interest. Morality has nothing to do with it.<br/><br style="font-weight: bold;"/><span style="font-weight: bold;">7) "Mark believes that this TDM patent should be made available to the wider community on an Apache licence because I believe (but I cannot prove this belief) that Mark would have liked to integrate TDM with Drools in some way and therefore argues that an open source project should not be encumbered with any software patents."</span> <span style="font-weight: bold;"/> - <span style="font-weight: bold; color: rgb(255, 0, 0);">CONJECTURE</span><br/><br/>7.1) This is so bad in so many ways that I don't even know where to begin. It borders on being libellous. You are trying to claim that I wish to appropriate someone else's property because I wish to use their ideas.<br/><br/>7.2) I've repeatedly said, in almost every thread on this subject, that I consider the research projects Prologa and XTT2 to be far more extensive, and that I will be using those. That alone falsifies any conjecture you are trying to make. Shame on you.<br/><br/>7.3) I think I made it clear in point 6 that my motives are simply about protecting my interests. I'm invested in Open Source, I believe patents restrict the potential of Open Source and I have every right to execute in a way to negate those restrictions.<br/><br/>7.4) I have never said I believe that they "should be made available". That's a very strong statement, insinuating I believe in the appropriation of someone else's property based on arguments of morality. Larry came to me and asked if we would use TDM within Drools, I cannot legally do so under the terms of the Apache license. If they wish for Drools to incorporate TDM, they need to license it under those terms - the choice is theirs and theirs alone. "Should" doesn't come into it.<br/><br/>7.5) Patents create a ‘walled garden’, Drools cannot license those patents under restrictive terms. Thus wider adoption of TDM is not in my employer's commercial interests, as we cannot provide implementations for those potential customers who want TDM. I have every right to protect my employer's commercial interests by communicating this issue to potential TDM adopters, to ensure they do not become excluded from from Open Source.<br/><br/>Mark<br/>Disclaimer: This post is made in a personal capacity. Nothing written above should be construed as Red Hat's corporate position.<div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/5869426-836586153195058163?l=blog.athico.com" width="1"/></div><img height="1" src="http://feeds.feedburner.com/~r/DroolsRSS/~4/6TT1rYJdTP4" width="1"/></div>
    </summary>
    <updated>2012-01-04T20:35:00Z</updated>
    <category scheme="http://www.blogger.com/atom/ns#" term="standards"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="decision tables"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="Drools"/><feedburner:origLink xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://blog.athico.com/2012/01/decision-model-ip-trap-part-drei.html</feedburner:origLink>
    <author>
      <name>Mark Proctor</name>
      <email>noreply@blogger.com</email>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-5869426</id>
      <category term="Performance"/>
      <category term="compilers"/>
      <category term="Conflict Resolution"/>
      <category term="Probability"/>
      <category term="use case"/>
      <category term="competition"/>
      <category term="drools webinar"/>
      <category term="cookbook"/>
      <category term="uncertainty"/>
      <category term="aires"/>
      <category term="service repository"/>
      <category term="Simulation and Testing"/>
      <category term="Job"/>
      <category term="Testing"/>
      <category term="medical"/>
      <category term="Time-Sensitive"/>
      <category term="GSoC"/>
      <category term="AI"/>
      <category term="javapolis"/>
      <category term="video"/>
      <category term="Ad-Hoc"/>
      <category term="Expert Systems"/>
      <category term="RuleML"/>
      <category term="variables"/>
      <category term="Business Rules"/>
      <category term="Domain Specific Languages"/>
      <category term="workshop"/>
      <category term="java"/>
      <category term="infoQ"/>
      <category term="JBoss Rules"/>
      <category term="example"/>
      <category term="Mind Map"/>
      <category term="Rules Engine"/>
      <category term="BAM"/>
      <category term="DotNet"/>
      <category term="Rules"/>
      <category term="Business Rules Forum"/>
      <category term="Fuzzy"/>
      <category term="decision tables"/>
      <category term="Boot Camp"/>
      <category term="Drools Boot Camp"/>
      <category term="interview"/>
      <category term="Eclipse"/>
      <category term="MicroContainer"/>
      <category term="Stream"/>
      <category term="designer"/>
      <category term="Brazilian"/>
      <category term="upgrade tool"/>
      <category term="milestone"/>
      <category term="BOF"/>
      <category term="Seam"/>
      <category term="quote"/>
      <category term="JDT"/>
      <category term="shadow facts"/>
      <category term="event"/>
      <category term="ORF 2008"/>
      <category term="SOA"/>
      <category term="Smooks"/>
      <category term="GUI"/>
      <category term="grammar"/>
      <category term="Drools Expert"/>
      <category term="sequential"/>
      <category term="announcement"/>
      <category term="Drools"/>
      <category term="buenos"/>
      <category term="ESP"/>
      <category term="Natural Language"/>
      <category term="Camel"/>
      <category term="SSL"/>
      <category term="jBPM5"/>
      <category term="JSON"/>
      <category term="Drools Flow"/>
      <category term="RuleML 2008"/>
      <category term="Rete"/>
      <category term="Production Rules Systems"/>
      <category term="DRL"/>
      <category term="remote"/>
      <category term="brms insurance demo standalone"/>
      <category term="FactTemplate"/>
      <category term="traveling tournament"/>
      <category term="BRMS"/>
      <category term="MVEL"/>
      <category term="Rule Flow"/>
      <category term="Open Source"/>
      <category term="argentina"/>
      <category term="IKVM"/>
      <category term="BPMN"/>
      <category term="source code"/>
      <category term="standards"/>
      <category term="machine learning"/>
      <category term="image processing"/>
      <category term="Backward Chaining."/>
      <category term="Monitoring"/>
      <category term="modify block"/>
      <category term="GIS"/>
      <category term="accumulate"/>
      <category term="Drools Fusion"/>
      <category term="Codehaus"/>
      <category term="JUG"/>
      <category term="Rule Authoring"/>
      <category term="Negation"/>
      <category term="Business Rules Governance"/>
      <category term="DynaBeans"/>
      <category term="junit"/>
      <category term="JFDI"/>
      <category term="Rule Engines"/>
      <category term="KAMS"/>
      <category term="dynamically generated classes"/>
      <category term="ORF"/>
      <category term="Form Builder"/>
      <category term="syntax"/>
      <category term="shadow proxies"/>
      <category term="BRMS Guvnor Drools"/>
      <category term="ANTLR"/>
      <category term="Service Manager"/>
      <category term="FedEx"/>
      <category term="DSL"/>
      <category term="Clips"/>
      <category term="planner"/>
      <category term="traits"/>
      <category term="examination"/>
      <category term="search space"/>
      <category term="Janino"/>
      <category term="MySQL"/>
      <category term="Web Services"/>
      <category term="semantic web"/>
      <category term="jBPM"/>
      <category term="constraint programming"/>
      <category term="generated classes"/>
      <category term="Research Network"/>
      <category term="algorithm"/>
      <category term="cloud"/>
      <category term="Life Cycle"/>
      <category term="MISMO"/>
      <category term="BPEL"/>
      <category term="LDAP"/>
      <category term="jBPM5 webinar"/>
      <category term="Templates"/>
      <category term="case management"/>
      <category term="android"/>
      <category term="persistence"/>
      <category term="RIF"/>
      <category term="Logic Operators"/>
      <category term="relational programming"/>
      <category term="Debug"/>
      <category term="Jess"/>
      <category term="release"/>
      <category term="extensibility"/>
      <category term="Atom"/>
      <category term="Analytics"/>
      <category term="Portuguese"/>
      <category term="Meetups"/>
      <category term="Synasc"/>
      <category term="drools puzzle"/>
      <category term="Computer Games"/>
      <category term="Progress"/>
      <category term="JavaOne"/>
      <category term="accumulate function"/>
      <category term="Programming"/>
      <category term="Healthcare"/>
      <category term="October Rules Fest"/>
      <category term="Guvnor"/>
      <category term="SwitchYard"/>
      <category term="WordNet"/>
      <category term="SBVR"/>
      <category term="devoxx"/>
      <category term="one"/>
      <category term="Drools Chance"/>
      <category term="plug tree"/>
      <category term="Presentation"/>
      <category term="Spring"/>
      <category term="Guice"/>
      <category term="salaboy"/>
      <category term="solver"/>
      <category term="Savvion"/>
      <category term="OSGi"/>
      <category term="http://www.blogger.com/img/blank.gif"/>
      <category term="REST"/>
      <category term="DSL regexp antlr"/>
      <category term="project proposals"/>
      <category term="Forward  Chaining"/>
      <category term="declarative programming"/>
      <category term="videos"/>
      <category term="CEP"/>
      <category term="book"/>
      <category term="API"/>
      <category term="brms ajax web"/>
      <category term="combinatorial optimization"/>
      <category term="tests"/>
      <category term="computer vision"/>
      <category term="functional programming"/>
      <category term="Time"/>
      <category term="parser"/>
      <category term="droos ide update-site downloads"/>
      <category term="expressiveness"/>
      <author>
        <name>Mark Proctor</name>
        <email>noreply@blogger.com</email>
      </author>
      <link href="http://blog.athico.com/" rel="alternate" type="text/html"/>
      <link href="http://feeds.athico.com/DroolsRSS" rel="self" type="application/atom+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <subtitle>All things Artificial Intelligence related: Rules, Processes, Events, Agents, Planning, Ontologies and more :)</subtitle>
      <title>Drools &amp; jBPM</title>
      <updated>2012-02-08T23:27:11Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-5869426.post-6283478332903632747</id>
    <link href="http://feeds.athico.com/~r/DroolsRSS/~3/zVDYfR3Dbaw/less-boilerplate-in-planner-generic.html" rel="alternate" type="text/html"/>
    <title>Drools &amp; JBPM: Less boilerplate in Planner: Generic MoveFactory</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">The recently released <a href="http://www.jboss.org/drools/drools-planner">Drools Planner</a> <a href="http://www.jboss.org/drools/downloads">5.4.0.Beta1</a> includes 2 Generic MoveFactories. That means it's no longer required to implement  a <span style="font-family: 'Courier New', Courier, monospace;">MoveFactory</span> and <span style="font-family: 'Courier New', Courier, monospace;">Move</span> to use a local search optimization algorithm such as Tabu Search or Simulated Annealing.<br/>
<br/>
For example, the MachineReassignment example configures Tabu Search like this:<br/>
<br/>
<pre>  &lt;localSearch&gt;
    &lt;selector&gt;
      &lt;selector&gt;
        &lt;moveFactoryClass&gt;org.drools.planner.core.move.generic.GenericChangeMoveFactory&lt;/moveFactoryClass&gt;
      &lt;/selector&gt;
      &lt;selector&gt;
        &lt;moveFactoryClass&gt;org.drools.planner.core.move.generic.GenericSwapMoveFactory&lt;/moveFactoryClass&gt;
      &lt;/selector&gt;
    &lt;/selector&gt;
    &lt;acceptor&gt;
      &lt;propertyTabuSize&gt;5&lt;/propertyTabuSize&gt;
    &lt;/acceptor&gt;
    &lt;forager&gt;
      &lt;minimalAcceptedSelection&gt;1000&lt;/minimalAcceptedSelection&gt;
    &lt;/forager&gt;
  &lt;/localSearch&gt;</pre>
<br/>
Notice that there is no MachineReassignment specific code in there whatsoever. But if I wanted to, I could easily mix in a custom <span style="font-family: 'Courier New', Courier, monospace;">MoveFactory</span> implementation too.<br/>
<br/>
Planner comes with 2 generic move factories out of the box:<br/>
<ul>
<li><b><span style="font-family: 'Courier New', Courier, monospace;">GenericChangeMoveFactory</span></b>: A <span style="font-family: 'Courier New', Courier, monospace;">GenericChangeMove</span> changes 1 planning variable of 1 planning entity to another planning value. For example: Given course C1 in room R1 and period P1, change its room to room R2.
</li>
<li><b><span style="font-family: 'Courier New', Courier, monospace;">GenericSwapMoveFactory</span></b>: A <span style="font-family: 'Courier New', Courier, monospace;">GenericSwapMove</span> swaps all the planning variables of 2 planning entities. For example: Given course C1 in room R1 and period P1 and Course C2 in room R2 and period P2, put course C1 in room R2 and period P2 and put course C2 in room R1 and period P1.
</li>
</ul>
They are slightly slower than a custom implementation, but equally scalable.<div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/5869426-6283478332903632747?l=blog.athico.com" width="1"/></div><img height="1" src="http://feeds.feedburner.com/~r/DroolsRSS/~4/zVDYfR3Dbaw" width="1"/></div>
    </summary>
    <updated>2011-12-25T16:39:00Z</updated>
    <category scheme="http://www.blogger.com/atom/ns#" term="planner"/><feedburner:origLink xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://blog.athico.com/2011/12/less-boilerplate-in-planner-generic.html</feedburner:origLink>
    <author>
      <name>Geoffrey De Smet</name>
      <email>noreply@blogger.com</email>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-5869426</id>
      <category term="Performance"/>
      <category term="compilers"/>
      <category term="Conflict Resolution"/>
      <category term="Probability"/>
      <category term="use case"/>
      <category term="competition"/>
      <category term="drools webinar"/>
      <category term="cookbook"/>
      <category term="uncertainty"/>
      <category term="aires"/>
      <category term="service repository"/>
      <category term="Simulation and Testing"/>
      <category term="Job"/>
      <category term="Testing"/>
      <category term="medical"/>
      <category term="Time-Sensitive"/>
      <category term="GSoC"/>
      <category term="AI"/>
      <category term="javapolis"/>
      <category term="video"/>
      <category term="Ad-Hoc"/>
      <category term="Expert Systems"/>
      <category term="RuleML"/>
      <category term="variables"/>
      <category term="Business Rules"/>
      <category term="Domain Specific Languages"/>
      <category term="workshop"/>
      <category term="java"/>
      <category term="infoQ"/>
      <category term="JBoss Rules"/>
      <category term="example"/>
      <category term="Mind Map"/>
      <category term="Rules Engine"/>
      <category term="BAM"/>
      <category term="DotNet"/>
      <category term="Rules"/>
      <category term="Business Rules Forum"/>
      <category term="Fuzzy"/>
      <category term="decision tables"/>
      <category term="Boot Camp"/>
      <category term="Drools Boot Camp"/>
      <category term="interview"/>
      <category term="Eclipse"/>
      <category term="MicroContainer"/>
      <category term="Stream"/>
      <category term="designer"/>
      <category term="Brazilian"/>
      <category term="upgrade tool"/>
      <category term="milestone"/>
      <category term="BOF"/>
      <category term="Seam"/>
      <category term="quote"/>
      <category term="JDT"/>
      <category term="shadow facts"/>
      <category term="event"/>
      <category term="ORF 2008"/>
      <category term="SOA"/>
      <category term="Smooks"/>
      <category term="GUI"/>
      <category term="grammar"/>
      <category term="Drools Expert"/>
      <category term="sequential"/>
      <category term="announcement"/>
      <category term="Drools"/>
      <category term="buenos"/>
      <category term="ESP"/>
      <category term="Natural Language"/>
      <category term="Camel"/>
      <category term="SSL"/>
      <category term="jBPM5"/>
      <category term="JSON"/>
      <category term="Drools Flow"/>
      <category term="RuleML 2008"/>
      <category term="Rete"/>
      <category term="Production Rules Systems"/>
      <category term="DRL"/>
      <category term="remote"/>
      <category term="brms insurance demo standalone"/>
      <category term="FactTemplate"/>
      <category term="traveling tournament"/>
      <category term="BRMS"/>
      <category term="MVEL"/>
      <category term="Rule Flow"/>
      <category term="Open Source"/>
      <category term="argentina"/>
      <category term="IKVM"/>
      <category term="BPMN"/>
      <category term="source code"/>
      <category term="standards"/>
      <category term="machine learning"/>
      <category term="image processing"/>
      <category term="Backward Chaining."/>
      <category term="Monitoring"/>
      <category term="modify block"/>
      <category term="GIS"/>
      <category term="accumulate"/>
      <category term="Drools Fusion"/>
      <category term="Codehaus"/>
      <category term="JUG"/>
      <category term="Rule Authoring"/>
      <category term="Negation"/>
      <category term="Business Rules Governance"/>
      <category term="DynaBeans"/>
      <category term="junit"/>
      <category term="JFDI"/>
      <category term="Rule Engines"/>
      <category term="KAMS"/>
      <category term="dynamically generated classes"/>
      <category term="ORF"/>
      <category term="Form Builder"/>
      <category term="syntax"/>
      <category term="shadow proxies"/>
      <category term="BRMS Guvnor Drools"/>
      <category term="ANTLR"/>
      <category term="Service Manager"/>
      <category term="FedEx"/>
      <category term="DSL"/>
      <category term="Clips"/>
      <category term="planner"/>
      <category term="traits"/>
      <category term="examination"/>
      <category term="search space"/>
      <category term="Janino"/>
      <category term="MySQL"/>
      <category term="Web Services"/>
      <category term="semantic web"/>
      <category term="jBPM"/>
      <category term="constraint programming"/>
      <category term="generated classes"/>
      <category term="Research Network"/>
      <category term="algorithm"/>
      <category term="cloud"/>
      <category term="Life Cycle"/>
      <category term="MISMO"/>
      <category term="BPEL"/>
      <category term="LDAP"/>
      <category term="jBPM5 webinar"/>
      <category term="Templates"/>
      <category term="case management"/>
      <category term="android"/>
      <category term="persistence"/>
      <category term="RIF"/>
      <category term="Logic Operators"/>
      <category term="relational programming"/>
      <category term="Debug"/>
      <category term="Jess"/>
      <category term="release"/>
      <category term="extensibility"/>
      <category term="Atom"/>
      <category term="Analytics"/>
      <category term="Portuguese"/>
      <category term="Meetups"/>
      <category term="Synasc"/>
      <category term="drools puzzle"/>
      <category term="Computer Games"/>
      <category term="Progress"/>
      <category term="JavaOne"/>
      <category term="accumulate function"/>
      <category term="Programming"/>
      <category term="Healthcare"/>
      <category term="October Rules Fest"/>
      <category term="Guvnor"/>
      <category term="SwitchYard"/>
      <category term="WordNet"/>
      <category term="SBVR"/>
      <category term="devoxx"/>
      <category term="one"/>
      <category term="Drools Chance"/>
      <category term="plug tree"/>
      <category term="Presentation"/>
      <category term="Spring"/>
      <category term="Guice"/>
      <category term="salaboy"/>
      <category term="solver"/>
      <category term="Savvion"/>
      <category term="OSGi"/>
      <category term="http://www.blogger.com/img/blank.gif"/>
      <category term="REST"/>
      <category term="DSL regexp antlr"/>
      <category term="project proposals"/>
      <category term="Forward  Chaining"/>
      <category term="declarative programming"/>
      <category term="videos"/>
      <category term="CEP"/>
      <category term="book"/>
      <category term="API"/>
      <category term="brms ajax web"/>
      <category term="combinatorial optimization"/>
      <category term="tests"/>
      <category term="computer vision"/>
      <category term="functional programming"/>
      <category term="Time"/>
      <category term="parser"/>
      <category term="droos ide update-site downloads"/>
      <category term="expressiveness"/>
      <author>
        <name>Mark Proctor</name>
        <email>noreply@blogger.com</email>
      </author>
      <link href="http://blog.athico.com/" rel="alternate" type="text/html"/>
      <link href="http://feeds.athico.com/DroolsRSS" rel="self" type="application/atom+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <subtitle>All things Artificial Intelligence related: Rules, Processes, Events, Agents, Planning, Ontologies and more :)</subtitle>
      <title>Drools &amp; jBPM</title>
      <updated>2012-02-08T23:27:11Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-5869426.post-5929689426568616784</id>
    <link href="http://feeds.athico.com/~r/DroolsRSS/~3/UFhvl3VU7Yc/decision-model-ip-trap-part-deux.html" rel="alternate" type="text/html"/>
    <title>Drools &amp; JBPM: The Decision Model IP Trap - Part Deux</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><a href="http://blog.athico.com/2011/11/decision-model-ip-trap.html">part 1</a>   <a href="http://blog.athico.com/2011/12/decision-model-ip-trap-part-deux.html">part 2</a>   <a href="http://blog.athico.com/2012/01/decision-model-ip-trap-part-drei.html">part 3</a><br/><br/>A while back I published this article titled the “The Decision Model Trap”, <a href="http://blog.athico.com/2011/11/decision-model-ip-trap.html">http://blog.athico.com/2011/11/decision-model-ip-trap.html</a>. In short it highlighted the dangers of adopting a patented methodology and my opinion on Red Hat's stance on the matter. The patent is owned by the <a href="http://www.kpiusa.com/">Knowledge Partners International (KPI)</a> who push TDM.<br/><br/>My article was referenced in a thread, started by Jacob Feldman from Open Rules, in a linkedin group for “The Decision Model”. It's a closed group, A copy is provided online <a href="http://www.athico.com/TDM/tdm.htm">here</a>. The original link is <a href="http://www.linkedin.com/groupItem?view=&amp;gid=3394865&amp;type=member&amp;item=86029666&amp;qid=d473e78c-2266-421d-b265-24ea39e88d5b&amp;trk=group_most_popular-0-b-ttl&amp;goback=.gmp_3394865">here</a>:<br/><br/>I'll quote Jacob below:<br/><span style="font-style: italic;">“First I learned about a possible patent for The Decision Model from Mark Proctor – see http://blog.athico.com/2011/11/decision-model-ip-trap.html. But it was impossible to find any references to it on the web. Besides, neither Larry nor Barb ever mentioned anything about the patent (at least to me). So, I thought that was just a misunderstanding. </span><br/><br/><span style="font-style: italic;">However, on Dec. 6, 2011 USPTO apparently granted a patent to Larry and Barb – see http://www.freepatentsonline.com/8073801.html. I believe it would be only helpful if the Decision Model authors openly explain their position regarding this patent to all of us. Otherwise, such a “holiday present” may scare the entire decision modelling community to stay away from TDM. “</span><br/><br/>The thread turned hostile with a KPI representative demanding I clarify my motivations and then resorting to belittling me – but I'll come back to that later. The result was that eventually KPI made an announcement on their objectives and intentions with regards to the patent and TDM. The link for this is <a href="http://www.kpiusa.com/index.php?option=com_content&amp;view=article&amp;id=170&amp;Itemid=39">here</a>:<br/><br/>Lets look at this briefly:<br/>Objectives of the Patent Policy:<br/><ul><li>To ensure that we are able to evolve what we started without risking an infringement of someone else's patent.</li><li>To share the ideas behind The Decision Model in an orderly way.</li><li>To protect its rigor, hence its reputation.”</li></ul>With the current insanity of the various patent systems, having to play the patent game, just to protect yourself is a reality. However restricting 3rd party use of that patent is not necessary to achieve the later two goals. Trademark and certification is a perfectly adequate, if not far superior and more effective way to achieve those goals. Unless they have other objectives, not listed, I invite them to license their patent under terms similar to that in the Apache Software License.<br/><br/>Then lets get onto their next statement:<br/><span style="font-style: italic;">"Vendors who provide Open Source Software, and who wish to incorporate TDM can obtain a royalty-free license for Open Source software. There will be a certification fee and process for Open Source vendors who desire this optional software certification."</span><br/><br/>Talk about the classic honey trap. Ring ring, ring ring..... "hello?... Hey KPI it's 2002 calling, they want their business ideas back". For those that don't get the joke it's a play on the "hey hunny, its the 80s calling, they want their hair back" :) Seriously the world has moved on, it's clued up, they don't fall for that clap trap any more. KPI, there is an awesome website, that covered the SCO débâcle, called groklaw.net - very recommended reading. If you are an OSS vendor and take KPI up on their offer, you aren't not Open Source - end of story. Just don't do it to yourself, you deserve better, your customers deserve better.<br/><br/>It's old news now that KPI through a partner is trying to infect the OMG Decision Model and Notation standard effort, <a href="http://www.omgwiki.org/dmn-rfp/doku.php">http://www.omgwiki.org/dmn-rfp/doku.php</a>. Private emails have been sent between the various heavyweights in the OMG process. I think the general sentiment was "not a chance in hell". So that's one nail in the coffin. A proprietary and encumbered methodology will die when faced with an un-encumbered official and open standard.<br/><br/>They may however try to argue that their patent covers the resulting DMN standard, regardless of whether the DMN group accepts their proposal. The result on the industry in general could be chilling. I would urge KPI to re-read groklaw.net about what happened to SCO when they tried to enforce bogus patents. Yes that's right, “SC...Who?” - it's doubtful your reputations and company brand would survive if you became hostile on an open standard and/or an open source implementation of that standard. RIP TDM.....<br/><br/>So let's now get back to that linked in forum posting. As the thread was started by quoting my initial blog, when someone asked what impact this could have on the industry, I felt that I had every right to re-iterate a key point from the article. That while TDM continues to be patented the industry will move around and beyond it, and that the work we are doing lifting from the extensive research made available in the Prologa and XTT2 will also make it's patent irrelevant.<br/><br/>Michael Grohs, VP of Business Development @ KPI, jumped in demanding I declare my motivations – as if I was some how being underhanded. I don't think he had taken the time to read my article. I think it makes my stance and motivations very clear. But then I believe he was more interested in posturing than substance. I'll show two key points from the article, I think they show my stance and motivations pretty clearly.<br/><span style="font-style: italic;">“...snip...</span><br/><span style="font-style: italic;">Open Source and Patents do not mix. When you get software from Red Hat you are guaranteed its 100% Open Source, not maybe OS or partly OS. From top to bottom, inside and out 100% OS goodness. </span><br/><span style="font-style: italic;">...snip...</span><br/><span style="font-style: italic;">In the mean time we in the Drools team will continue to take our inspiration from the excellent and unencumbered research projects; Prologa and XTT2.</span><br/><span style="font-style: italic;">http://www.econ.kuleuven.be/prologa/</span><br/><span style="font-style: italic;">http://ai.ia.agh.edu.pl/wiki/hekate:xtt2”</span><br/><br/>The thread continued to regress into noise. With further indications that I was trying to be underhanded, by demanding I declare my motivations. It was insinuated that I don't live in the real world, that the patents I have through Red Hat make me hypercritical for demanding “special rights”:<br/><span style="font-style: italic;">“but then world is full of people who believe that they are entitled to special rights which they believe other people should not have. “</span><br/><br/>In general there seemed to be a lack of understanding on the use of defensive patents within OSS, particularly on how they have virtually no restrictions, beyond that defensive clause – as specified in the Apache Software License. There also seemed to be a lack of understanding on the walled garden patents create, shutting off the OSS research world - which is why I oppose this so vehemently.<br/><br/>Finally Michael, a VP @KPI, just decided to get full out snotty on me. I couldn't figure out if he was trying to belittle me or indicate that I was being underhanded by concealing that I work for Red Hat – or maybe both. I guess when you have nothing of substance to say, just use insults:<br/>Michael:<span style="font-style: italic;">”Mark I understand that your and Edson's patent is assigned to your employer Red Hat and not to the World, but correct me if I am wrong. So it is actually Red Hat who does the gifting. “</span><br/><br/>I apologise in advance for the slightly over pompous use of “I”. Those that know me, know that while I evangelise the technology, that I will big up the Drools community in general and it's achievements - I do not try to add grandeur directly to my personage, that actually I'm a little shy of direct attention. I believe Michael thought I was some peon of a developer, scuttling along to my masters commands. So given the circumstances, I felt that a point should be made:<br/><br/>Michael:<span style="font-style: italic;">"I understand that your and Edson's patent is assigned to your employer Red Hat and not to the World, but correct me if I am wrong. So it is actually Red Hat who does the gifting. "</span><br/><br/>mark:<span style="font-style: italic;">"I'm really not sure what point you are trying to make with this comment. When you have to reach for semantic interpretations it makes you sound bitter and doesn't become an industry professional. I'm not even sure I should dignify it with a response.... but then I wouldn't be me :) </span><br/><br/><span style="font-style: italic;">"So it is actually Red Hat who does the gifting" </span><br/><span style="font-style: italic;">I don't make it any secret that I'm employee of Red Hat, I'm very proud to work for the worlds number one Open Source company. </span><br/><br/><span style="font-style: italic;">But I don't know if that is the point you are trying to make, or if you are trying to belittle me by arguing semantics on the appropriation of the term "we". Much as Suleiman keeps trying to talk down to me by using terms like "real world" and "special rights". So I guess I should answer both possibilities, neither are becoming for you. </span><br/><br/><span style="font-style: italic;">I'm the co-founder and creator of Drools, I did this before joining JBoss. The choice to license Drools under the Apache Software License was mine and done before joining JBoss - JBoss was later acquired by Red Hat. It is this license, that I chose, that grants those free and perpetual rights. In fact it is this license that ensures that neither I nor Red Hat nor anyone else contributing to Drools project may file a patent that is not covered under this free and perpetual rights, when that patent relates to Drools. </span><br/><br/><span style="font-style: italic;">While at Red Hat it was my choice to file the patent and my choice to do the work necessary for the patent, I could have chosen not to file a patent. Edson also had those same personal choices and we did the work together. </span><br/><br/><span style="font-style: italic;">I would say considering those choices that I made I have a write to use the term "we". We as in myself, Edson and Red Hat. </span><br/><br/><span style="font-style: italic;">"and not to the World" </span><br/><span style="font-style: italic;">You are trying to argue the points of assignment and usage and gift? I'm not sure which part of the following you don't get: </span><br/><span style="font-style: italic;">"a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work" " </span><br/><br/><span style="font-style: italic;">It doesn't get more "gifting" than this. Well maybe it can. Having watched a user gorge themselves on christmas pudding, mince pies and port. I could wrap the patent in silver paper with stars on it, tie a red bow around it, put on my Red Fedora and climb down the chimney and ram it down their throats. Is that "gifty" enough for you? :) to clarify the term "their" I mean "the world". </span><br/><br/><span style="font-style: italic;">......next? “</span><br/><br/>Anyway I'm looking forward to what Jan Vanthienen, one of the decision table godfathers, has to say on the matter in the new year. I'm guessing that he's not pleased that someone took his work, changed the names used in the terminology and patented it.<br/><br/>Mark<br/>Disclaimer: This post is made in a personal capacity. Nothing written above should be construed as Red Hat's corporate position.<div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/5869426-5929689426568616784?l=blog.athico.com" width="1"/></div><img height="1" src="http://feeds.feedburner.com/~r/DroolsRSS/~4/UFhvl3VU7Yc" width="1"/></div>
    </summary>
    <updated>2011-12-23T13:41:00Z</updated>
    <category scheme="http://www.blogger.com/atom/ns#" term="standards"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="decision tables"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="Drools"/><feedburner:origLink xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://blog.athico.com/2011/12/decision-model-ip-trap-part-deux.html</feedburner:origLink>
    <author>
      <name>Mark Proctor</name>
      <email>noreply@blogger.com</email>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-5869426</id>
      <category term="Performance"/>
      <category term="compilers"/>
      <category term="Conflict Resolution"/>
      <category term="Probability"/>
      <category term="use case"/>
      <category term="competition"/>
      <category term="drools webinar"/>
      <category term="cookbook"/>
      <category term="uncertainty"/>
      <category term="aires"/>
      <category term="service repository"/>
      <category term="Simulation and Testing"/>
      <category term="Job"/>
      <category term="Testing"/>
      <category term="medical"/>
      <category term="Time-Sensitive"/>
      <category term="GSoC"/>
      <category term="AI"/>
      <category term="javapolis"/>
      <category term="video"/>
      <category term="Ad-Hoc"/>
      <category term="Expert Systems"/>
      <category term="RuleML"/>
      <category term="variables"/>
      <category term="Business Rules"/>
      <category term="Domain Specific Languages"/>
      <category term="workshop"/>
      <category term="java"/>
      <category term="infoQ"/>
      <category term="JBoss Rules"/>
      <category term="example"/>
      <category term="Mind Map"/>
      <category term="Rules Engine"/>
      <category term="BAM"/>
      <category term="DotNet"/>
      <category term="Rules"/>
      <category term="Business Rules Forum"/>
      <category term="Fuzzy"/>
      <category term="decision tables"/>
      <category term="Boot Camp"/>
      <category term="Drools Boot Camp"/>
      <category term="interview"/>
      <category term="Eclipse"/>
      <category term="MicroContainer"/>
      <category term="Stream"/>
      <category term="designer"/>
      <category term="Brazilian"/>
      <category term="upgrade tool"/>
      <category term="milestone"/>
      <category term="BOF"/>
      <category term="Seam"/>
      <category term="quote"/>
      <category term="JDT"/>
      <category term="shadow facts"/>
      <category term="event"/>
      <category term="ORF 2008"/>
      <category term="SOA"/>
      <category term="Smooks"/>
      <category term="GUI"/>
      <category term="grammar"/>
      <category term="Drools Expert"/>
      <category term="sequential"/>
      <category term="announcement"/>
      <category term="Drools"/>
      <category term="buenos"/>
      <category term="ESP"/>
      <category term="Natural Language"/>
      <category term="Camel"/>
      <category term="SSL"/>
      <category term="jBPM5"/>
      <category term="JSON"/>
      <category term="Drools Flow"/>
      <category term="RuleML 2008"/>
      <category term="Rete"/>
      <category term="Production Rules Systems"/>
      <category term="DRL"/>
      <category term="remote"/>
      <category term="brms insurance demo standalone"/>
      <category term="FactTemplate"/>
      <category term="traveling tournament"/>
      <category term="BRMS"/>
      <category term="MVEL"/>
      <category term="Rule Flow"/>
      <category term="Open Source"/>
      <category term="argentina"/>
      <category term="IKVM"/>
      <category term="BPMN"/>
      <category term="source code"/>
      <category term="standards"/>
      <category term="machine learning"/>
      <category term="image processing"/>
      <category term="Backward Chaining."/>
      <category term="Monitoring"/>
      <category term="modify block"/>
      <category term="GIS"/>
      <category term="accumulate"/>
      <category term="Drools Fusion"/>
      <category term="Codehaus"/>
      <category term="JUG"/>
      <category term="Rule Authoring"/>
      <category term="Negation"/>
      <category term="Business Rules Governance"/>
      <category term="DynaBeans"/>
      <category term="junit"/>
      <category term="JFDI"/>
      <category term="Rule Engines"/>
      <category term="KAMS"/>
      <category term="dynamically generated classes"/>
      <category term="ORF"/>
      <category term="Form Builder"/>
      <category term="syntax"/>
      <category term="shadow proxies"/>
      <category term="BRMS Guvnor Drools"/>
      <category term="ANTLR"/>
      <category term="Service Manager"/>
      <category term="FedEx"/>
      <category term="DSL"/>
      <category term="Clips"/>
      <category term="planner"/>
      <category term="traits"/>
      <category term="examination"/>
      <category term="search space"/>
      <category term="Janino"/>
      <category term="MySQL"/>
      <category term="Web Services"/>
      <category term="semantic web"/>
      <category term="jBPM"/>
      <category term="constraint programming"/>
      <category term="generated classes"/>
      <category term="Research Network"/>
      <category term="algorithm"/>
      <category term="cloud"/>
      <category term="Life Cycle"/>
      <category term="MISMO"/>
      <category term="BPEL"/>
      <category term="LDAP"/>
      <category term="jBPM5 webinar"/>
      <category term="Templates"/>
      <category term="case management"/>
      <category term="android"/>
      <category term="persistence"/>
      <category term="RIF"/>
      <category term="Logic Operators"/>
      <category term="relational programming"/>
      <category term="Debug"/>
      <category term="Jess"/>
      <category term="release"/>
      <category term="extensibility"/>
      <category term="Atom"/>
      <category term="Analytics"/>
      <category term="Portuguese"/>
      <category term="Meetups"/>
      <category term="Synasc"/>
      <category term="drools puzzle"/>
      <category term="Computer Games"/>
      <category term="Progress"/>
      <category term="JavaOne"/>
      <category term="accumulate function"/>
      <category term="Programming"/>
      <category term="Healthcare"/>
      <category term="October Rules Fest"/>
      <category term="Guvnor"/>
      <category term="SwitchYard"/>
      <category term="WordNet"/>
      <category term="SBVR"/>
      <category term="devoxx"/>
      <category term="one"/>
      <category term="Drools Chance"/>
      <category term="plug tree"/>
      <category term="Presentation"/>
      <category term="Spring"/>
      <category term="Guice"/>
      <category term="salaboy"/>
      <category term="solver"/>
      <category term="Savvion"/>
      <category term="OSGi"/>
      <category term="http://www.blogger.com/img/blank.gif"/>
      <category term="REST"/>
      <category term="DSL regexp antlr"/>
      <category term="project proposals"/>
      <category term="Forward  Chaining"/>
      <category term="declarative programming"/>
      <category term="videos"/>
      <category term="CEP"/>
      <category term="book"/>
      <category term="API"/>
      <category term="brms ajax web"/>
      <category term="combinatorial optimization"/>
      <category term="tests"/>
      <category term="computer vision"/>
      <category term="functional programming"/>
      <category term="Time"/>
      <category term="parser"/>
      <category term="droos ide update-site downloads"/>
      <category term="expressiveness"/>
      <author>
        <name>Mark Proctor</name>
        <email>noreply@blogger.com</email>
      </author>
      <link href="http://blog.athico.com/" rel="alternate" type="text/html"/>
      <link href="http://feeds.athico.com/DroolsRSS" rel="self" type="application/atom+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <subtitle>All things Artificial Intelligence related: Rules, Processes, Events, Agents, Planning, Ontologies and more :)</subtitle>
      <title>Drools &amp; jBPM</title>
      <updated>2012-02-08T23:27:12Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-5869426.post-5749999901580275175</id>
    <link href="http://feeds.athico.com/~r/DroolsRSS/~3/6zp4-SZ6pp4/drools-journey-towards-meta-framework.html" rel="alternate" type="text/html"/>
    <title>Drools &amp; JBPM: Drools : A Journey towards a Meta Framework for Hybrid Reasoning Systems</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><h2>Introduction</h2>Recent versions of Drools have started to show our direction towards a hybrid reasoning system, going beyond production rule systems. In 2011 we introduced prolog style derivation trees, with reactive materialised views, we also introduced traits. In 2012 we'll continue to build out more of the prolog like functionality and traits will expand to description logic for semantic reasoning.<br/><br/>To make further progress I feel we need to smash apart our current infrustructure that is hard coded for the rigid way PRD systems where designed 30 years ago. In that time the structure of PRD systems hasn't change that much. In essence they have an agenda + conflict resolution strategy. Simple "groups" have been added by various systems be it a single push/pop stacks or rufeflows. Further execution control has been hard coded via attributes.<br/><br/>If we could break Drools down into smaller components, each with life cycles, event models, hook points and designed for compositability - what would this look like? This would provide more of a meta framework, so the author can define how it's execution should behave and open up Drools to a wider variety of research and problem solving.<br/><br/>Existing PRD behaviour can be easily provided as an "out of the box meta configuration", however it is hoped via "macro's" power users can implement other useful types of behaviours and provide those to end users as fully encapsulated macro's.<br/><br/>By opening up the way that Drools components can be easily brought together we hope to make it easier for people to try out different research ideas - without having to develop yet another engine. This will allow ideas to go beyond that conceived by the core development team.<br/><br/>I hope the introduction of a macro concept for rules will allow for a more pattern oriented approach to rule engine development.<br/><br/>When reading this document please cast aside preconcieved ideas of what a  rule engine is or how it works. The document is conceptual in nature  and at this stage I would like conceptual input on how to progress the  ideas, and not spend 95% of the time argueing over which symbols or  keywords to use, or whether it's needed (see <a href="http://www.bikeshed.com/">http://www.bikeshed.com</a>). Expect many rough sketches, incomplete syntax etc, it is conceptual brain storming and not an implementation spec.<br/><br/>Continuous updates to this article can be found <a href="http://community.jboss.org/wiki/DroolsModule/">here</a>.<br/><h2>Module</h2>Additional ideas on modules for rules can be read as part of the research on Venus:<br/><a href="http://citeseer.ist.psu.edu/viewdoc/summary?doi=10.1.1.56.6958">Venus: An Object-Oriented Extension of Rule-Based Programming (1998) </a><br/><a href="http://citeseer.ist.psu.edu/viewdoc/similar?doi=10.1.1.21.8486&amp;type=ab">An Overview of the VenusDB Active Multidatabase System (1996) </a><br/><br/>The module concept can be introduced as generic container for rules. The module consists of a name and arguments. Parenthesis can be ommitted if no arguments are specified. There are also further member variables, internal to the module. A module supports attributes. A module can specify a single parent module, there is a MAIN module which is the default parent of all modules. A module may optional extend other modules<br/><pre class="brush:java">&lt;@attribute(....)&gt;*<br/>module &lt;module_name&gt; ( &lt;arguments&gt;*)<br/> &lt;parent module_name&gt;? <br/> &lt;extends &lt;module_name&gt;+&gt;* <br/> &lt;variables plus optional initialisation&gt;*</pre>A DRL can have multiple modules specified. Within the DRL file all rules that come after that module name are associated with the module.<br/><pre class="brush:drl">module A<br/> rule r1....<br/> end <br/><br/> rule r2...<br/> end<br/><br/>module B(String s, Person p) <br/> var Book b  <br/><br/> rule r3... <br/> end  <br/><br/> rule r4... <br/> end</pre>NOTE) Can modules span namespaces? What does a namespce mean for a module, does it live within the namespace or is it global? For now assuming scoped to namespace.:<br/><br/>A module can be called like a java Runnable, the caller's method signature must match the specified arguments or a runtime exception is thrown<br/><pre class="brush:java">Module m = kruntime.packages["org.domain"].modules["A"]<br/>ModuleHandle bhA = m.run()<br/><br/>m = kruntime.packages["org.domain"].modules["B"]<br/>ModuleHandle mhB =m.run( "S", new Person("darth") );</pre>The parameter variables are available to the rules inside of the module, in a similar manner that globals are. An array pattern referencing the arguments is injected as the root pattern to each rule. This not only makes the variables available but acts as a control object for when rules can fire with those variables. The ModuleHandle has a "stop" method that results in that array element being retracted, and thus the rule cannot fire any more for those variables. Even rules associated with that module that do not depend on those variables has the root control fact injected.<br/><pre class="brush:java">mhB.stop()</pre>Note that a module can be called multple times with different arguments, each results in a different ModuleHandle. Should a module be called with existing arguments the previous ModuleHandle is returned. So you can consider a module instance module + variables.<br/><br/>Passed module arguments may or may not be facts, if they are facts they may be modified (unlike globals) and patterns will respect and react to that change as normal. The module's called signature is updated.<br/><br/>The role of member variables is for scoped data avaliable to events, such as counters or intermediary objects.<br/><br/>(NOTE) If we want to make member variables available to rules, we will need to think carefuly about the behaviour, as they have more potentially more complications than globals. Currently they are only available as fields on events, see the activation-group variance.<br/><h2>Match</h2>A Match is the same as the traditional Activation concept in PRD systems. It has an array of FactHandle's for the matched objects. But we recognise the Match can be active or dormant, and use a boolean to represent this, and that even information on dormant matches can be useful in reasoning systems. A Match is considered active if it is ellible for for foring and has not yet done so.<br/><pre class="brush:java">Match <br/> FactHandle[] facts <br/> boolean active</pre>(NOTE) Maybe instead of "boolean active" we should have an enum, and possible also including "running" as a state. ACTIVE, RUNNING, DORMANT.<br/><br/>(NOTE) It's possible for a rule + facts to fire multiple times without relaxing (made false). We should optional keep a counter for the number of times fired, and even each execution can be time stamped.<br/><h2>Module Properties</h2><pre class="brush:java">Module Properties<br/>activeSize // number of active Matches, queries can be used for more complex cases using rule attributes<br/>dormantSize // number of dormant Matches, queries can be used for more complex cases using rule attributes<br/>activeMatches // Collection of active Matches<br/>dormantMatches // Collection of dormant Matches</pre>(NOTE) The size and and collection properties only contain relevance for eager matching algorithms that compute an entire cross product for each WME change. Future versions of Drools may optionally implement some lazy matching and in those situations the user's understanding of those properties may be a problem.<br/><h2>Module Methods</h2><pre class="brush:java">Module Methods<br/> cancel() // all active matches are made dormant<br/> cancel( Match ) // cancels a match, i.e. sets it dormant, if already dormant this method does nothing.<br/> refresh() // all dormant activates are made active, however filters such as calendars, enabled etc are still obeyed<br/> refresh( Match ) // refreshes a match, i.e. sets it active if it's dormant, if it's already active it is ignored<br/> halt() // The state of the module is preserved, but no<br/> continue() //<br/> addListener() // type inference adds the listener implementation to the correct list(s).                  <br/>               // Listener composition for  single instance is allowed, meaning it is added to multiple listener lists.<br/> start(Object[] args)<br/> stop() </pre><h2>Module Events and Lifecycle</h2>A Module has a life cycle to which listeners may be added.<br/><pre class="brush:java">Module Events<br/>onEnter // when a module is called<br/>onExit  // when a module is stopped<br/>onMatch // when a rule is matched<br/>onRematch // when a rule is matched and is matched again, without relaxing first (via update)<br/>onUnmatch // when a rule stops being matched<br/>onBeforeFire // before a rule for this module fires<br/>onAfterFire // after a rule for this module fires<br/>onHalt // tells the listener halt has been callled<br/>onResume // tells the listeners resume ahs been called<br/>onEmpty // when the size == 0, all Matches are dormant -- other potential events --<br/>onBeforeRuleEvaluation // before a wme insert/update/delete for this module<br/>onAfterRuleEvaluation// after a wme insert/update/delete for this module</pre><br/>onEmpty will only be triggered after the first rule evaluation phase. i.e. it does not fire after onEnter, before the rule evaluation phase has had a chance to execute.<br/><br/>(NOTE) Other potential events are before/after rule evaluation. Each WME insert/modify/update causes a rule evaluation, and could be listend to via onBeforeRuleEvaluation and OnAfterRuleEvaluation. This poses problems with concurrency where potentially multiple insertions/updates/modifies could be happening at the same time. So at best it's a listener scoped to a fact, we cannot guarantee the resutling matches are assocated with this event, unless serial rule evaluation is enforced - which may be a possible configuration for a module.<br/><br/>DRL will support the ability to declare literal functions attached to these listeners, the exact syntax for this is TBD. But the keyword will probaby be "on.". We will support .Net style delegate operators for = and += when adding or setting listeners.<br/><pre class="brush:java">on.Enter += {<br/>}</pre>Those listeners can also be added from java code.<br/><h2>Simulation the Agenda</h2><br/>A Module itself doesn't do anything other than obey the life cycle of the prescribed events, it doesn't even fire a rule, making it dormant. The only thing the Module does is maintain the list of active and dormant matches.<br/><br/>However this then allows a much more flexible system to which the end user can customise the behaviour. For instance the traditional agenda+conflict resolution strategy can be implemented via the onMatch/onRematch/onUnmatch listeners.<br/><pre class="brush:java">class Agenda implements onMatch, onUnmatch, onRematch { <br/> ....<br/>}</pre>The above class implements a composition of event listener interfaces, but it only needs to be added to the module once<br/><pre class="brush:java">module.addListener( new Agenda() );</pre>This means each module may have it's own conflict resolution strategy. Some may want more traditional lifo execution, but anything else is possible. Such as rule definition order, or async execution. Listeners can be combined, but that means that order IS important. Some listeners may want to preevent a rule from firing, others may want to prever other rules from firing after the current rule has fired.<br/><h2>Async rule execution</h2>Fire each match asyncronously as it matches.<br/><pre class="brush:java">onMatch + { asyncFire( match ); }<br/></pre><h2>Manual Interaction Agenda</h2>Because the listeners are now fully pluggable and whether a rule fires or does not, or is cancelled is fully pragmatic it is possible to just expose the Module via an interactive GUI and the end user can see the conflict set and specify which rule(s) to fire.<br/><br/>As WME actions occur the users GUI will be updated showing the active matches, however none will fire without user selection. This means the user can interrogate the state of each Match and the fact it contains to select whch rules to fire. The user can also see dormant matches and "refresh" them so they can become available for firing again.<br/><br/>This could be taken a step further where a user sees a dash board of modules and all are inactive and the user can manually activate modules they wish to see evaluated.<br/><h2>Simulating existing rule execution behviours</h2><h2>activation-group plus variance</h2>Other rule attribute behaviours can be implemented by combining listeners, although listener order is obviously important. For instance this listener can be added AFTER the agenda listener, and it simulates the existing "activation-group" behaviour, such that only the first activation fires for a conflict.<br/>activation-group<br/><pre class="brush:java">onMatch += { <br/> module.cancel(); // cancels all other matches<br/>}</pre>We could do a variance on this that fires the first 3 activations, and cancels the rest<br/><pre class="brush:java">onEnter += { count = 0 } // count is a module member variable<br/>onMatch += { <br/> if ( count++ == 3 ) {      <br/>      module.cancel(); // cancels all other matches    ]<br/> }<br/>}</pre><h2>ruleflow-group</h2>ruleflow-group behaviour is very simple to simulate. jBPM injects a trigger member variable, that on exit calls telling jBPM to trigger the next nodes in the flow, which may be ruleflow-group nodes or other jBPM nodes<br/><pre class="brush:java">onEmpty { module.stop() } // stopping the module causes onExit to fire<br/>onExit + {<br/> node.triggerCompleted()<br/>}<br/></pre><h2>agenda-groups </h2>agenda-groups implement a push/pop stack behaviour. Only the stack tip executes, the others are considered "halted". To acehive this the consequence of any rule needs to call the following three methods:<br/><pre class="brush:java">module1.halt();<br/>module2.onExit += { module1.resume() };<br/>module2.call();<br/></pre>So that halts the current module and executes "pushes" the next module, when that module finishes "pops" the caller is resumed.<br/><br/>Simulating agenda-filters<br/>If a match is cancelled, and made dormant it is not propagated to the next listener in the onMatch event.<br/><pre class="brush:java">onMatch += {<br/> if ( &lt;boolean expr&gt; ) {<br/>     module.cancel( match );<br/> }<br/>}</pre><h2>Events as facts</h2>Events are also inserted as facts, so can be matched in rules too. Member variables are fields on the events<br/><pre class="brush:java">rule  activationGroupVariance when <br/> m : OnMatch( count &lt; 3 )<br/>then <br/>m.count++<br/>end<br/></pre><h2>Parent Modules and Module Scoping</h2>Modules can contain sub modules, they can ony be called from within the scope of the parent module.Sub modules will have access othe parent modules member variables and parameter variables.<br/><h2>Module Reuse and Extension</h2>A module can extend other modules. The exact semantics of this will need a lot more extensive though, but i'll outline something to get started. When a module extends another module it effectively copies the definitions of all the contained rules.However those rules will match and fire completely indepedantly of the source.<br/><h2>Macro's to abstract module configuration</h2>All this manual configuration would become very cumbersome to the end user, and potentially far too complex. The idea is that all the above complexity is for power users, this is then encapsulated via macro's for end users. I don't intend to outline a Macro system for Drools yet, as that is a different subject in itself and will need a lot of though. For now I'll use &lt;macro "name"&gt;, pontentially these can be listed. But how macro's are defined and applied are completely open to debate. These macro's are then expanded at complie time to provide all the required listener behaviour:<br/><pre class="brush:java">Module xxxx <br/>macro activationGroup( "g1" )<br/><br/>module xxx <br/>macro agenda module xxx <br/>macro agenda activationGroup( "g1 )<br/><br/>module xxx <br/>macro default</pre><div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/5869426-5749999901580275175?l=blog.athico.com" width="1"/></div><img height="1" src="http://feeds.feedburner.com/~r/DroolsRSS/~4/6zp4-SZ6pp4" width="1"/></div>
    </summary>
    <updated>2011-12-20T10:40:00Z</updated>
    <category scheme="http://www.blogger.com/atom/ns#" term="Drools Expert"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="Drools"/><feedburner:origLink xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://blog.athico.com/2011/12/drools-journey-towards-meta-framework.html</feedburner:origLink>
    <author>
      <name>Mark Proctor</name>
      <email>noreply@blogger.com</email>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-5869426</id>
      <category term="Performance"/>
      <category term="compilers"/>
      <category term="Conflict Resolution"/>
      <category term="Probability"/>
      <category term="use case"/>
      <category term="competition"/>
      <category term="drools webinar"/>
      <category term="cookbook"/>
      <category term="uncertainty"/>
      <category term="aires"/>
      <category term="service repository"/>
      <category term="Simulation and Testing"/>
      <category term="Job"/>
      <category term="Testing"/>
      <category term="medical"/>
      <category term="Time-Sensitive"/>
      <category term="GSoC"/>
      <category term="AI"/>
      <category term="javapolis"/>
      <category term="video"/>
      <category term="Ad-Hoc"/>
      <category term="Expert Systems"/>
      <category term="RuleML"/>
      <category term="variables"/>
      <category term="Business Rules"/>
      <category term="Domain Specific Languages"/>
      <category term="workshop"/>
      <category term="java"/>
      <category term="infoQ"/>
      <category term="JBoss Rules"/>
      <category term="example"/>
      <category term="Mind Map"/>
      <category term="Rules Engine"/>
      <category term="BAM"/>
      <category term="DotNet"/>
      <category term="Rules"/>
      <category term="Business Rules Forum"/>
      <category term="Fuzzy"/>
      <category term="decision tables"/>
      <category term="Boot Camp"/>
      <category term="Drools Boot Camp"/>
      <category term="interview"/>
      <category term="Eclipse"/>
      <category term="MicroContainer"/>
      <category term="Stream"/>
      <category term="designer"/>
      <category term="Brazilian"/>
      <category term="upgrade tool"/>
      <category term="milestone"/>
      <category term="BOF"/>
      <category term="Seam"/>
      <category term="quote"/>
      <category term="JDT"/>
      <category term="shadow facts"/>
      <category term="event"/>
      <category term="ORF 2008"/>
      <category term="SOA"/>
      <category term="Smooks"/>
      <category term="GUI"/>
      <category term="grammar"/>
      <category term="Drools Expert"/>
      <category term="sequential"/>
      <category term="announcement"/>
      <category term="Drools"/>
      <category term="buenos"/>
      <category term="ESP"/>
      <category term="Natural Language"/>
      <category term="Camel"/>
      <category term="SSL"/>
      <category term="jBPM5"/>
      <category term="JSON"/>
      <category term="Drools Flow"/>
      <category term="RuleML 2008"/>
      <category term="Rete"/>
      <category term="Production Rules Systems"/>
      <category term="DRL"/>
      <category term="remote"/>
      <category term="brms insurance demo standalone"/>
      <category term="FactTemplate"/>
      <category term="traveling tournament"/>
      <category term="BRMS"/>
      <category term="MVEL"/>
      <category term="Rule Flow"/>
      <category term="Open Source"/>
      <category term="argentina"/>
      <category term="IKVM"/>
      <category term="BPMN"/>
      <category term="source code"/>
      <category term="standards"/>
      <category term="machine learning"/>
      <category term="image processing"/>
      <category term="Backward Chaining."/>
      <category term="Monitoring"/>
      <category term="modify block"/>
      <category term="GIS"/>
      <category term="accumulate"/>
      <category term="Drools Fusion"/>
      <category term="Codehaus"/>
      <category term="JUG"/>
      <category term="Rule Authoring"/>
      <category term="Negation"/>
      <category term="Business Rules Governance"/>
      <category term="DynaBeans"/>
      <category term="junit"/>
      <category term="JFDI"/>
      <category term="Rule Engines"/>
      <category term="KAMS"/>
      <category term="dynamically generated classes"/>
      <category term="ORF"/>
      <category term="Form Builder"/>
      <category term="syntax"/>
      <category term="shadow proxies"/>
      <category term="BRMS Guvnor Drools"/>
      <category term="ANTLR"/>
      <category term="Service Manager"/>
      <category term="FedEx"/>
      <category term="DSL"/>
      <category term="Clips"/>
      <category term="planner"/>
      <category term="traits"/>
      <category term="examination"/>
      <category term="search space"/>
      <category term="Janino"/>
      <category term="MySQL"/>
      <category term="Web Services"/>
      <category term="semantic web"/>
      <category term="jBPM"/>
      <category term="constraint programming"/>
      <category term="generated classes"/>
      <category term="Research Network"/>
      <category term="algorithm"/>
      <category term="cloud"/>
      <category term="Life Cycle"/>
      <category term="MISMO"/>
      <category term="BPEL"/>
      <category term="LDAP"/>
      <category term="jBPM5 webinar"/>
      <category term="Templates"/>
      <category term="case management"/>
      <category term="android"/>
      <category term="persistence"/>
      <category term="RIF"/>
      <category term="Logic Operators"/>
      <category term="relational programming"/>
      <category term="Debug"/>
      <category term="Jess"/>
      <category term="release"/>
      <category term="extensibility"/>
      <category term="Atom"/>
      <category term="Analytics"/>
      <category term="Portuguese"/>
      <category term="Meetups"/>
      <category term="Synasc"/>
      <category term="drools puzzle"/>
      <category term="Computer Games"/>
      <category term="Progress"/>
      <category term="JavaOne"/>
      <category term="accumulate function"/>
      <category term="Programming"/>
      <category term="Healthcare"/>
      <category term="October Rules Fest"/>
      <category term="Guvnor"/>
      <category term="SwitchYard"/>
      <category term="WordNet"/>
      <category term="SBVR"/>
      <category term="devoxx"/>
      <category term="one"/>
      <category term="Drools Chance"/>
      <category term="plug tree"/>
      <category term="Presentation"/>
      <category term="Spring"/>
      <category term="Guice"/>
      <category term="salaboy"/>
      <category term="solver"/>
      <category term="Savvion"/>
      <category term="OSGi"/>
      <category term="http://www.blogger.com/img/blank.gif"/>
      <category term="REST"/>
      <category term="DSL regexp antlr"/>
      <category term="project proposals"/>
      <category term="Forward  Chaining"/>
      <category term="declarative programming"/>
      <category term="videos"/>
      <category term="CEP"/>
      <category term="book"/>
      <category term="API"/>
      <category term="brms ajax web"/>
      <category term="combinatorial optimization"/>
      <category term="tests"/>
      <category term="computer vision"/>
      <category term="functional programming"/>
      <category term="Time"/>
      <category term="parser"/>
      <category term="droos ide update-site downloads"/>
      <category term="expressiveness"/>
      <author>
        <name>Mark Proctor</name>
        <email>noreply@blogger.com</email>
      </author>
      <link href="http://blog.athico.com/" rel="alternate" type="text/html"/>
      <link href="http://feeds.athico.com/DroolsRSS" rel="self" type="application/atom+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <subtitle>All things Artificial Intelligence related: Rules, Processes, Events, Agents, Planning, Ontologies and more :)</subtitle>
      <title>Drools &amp; jBPM</title>
      <updated>2012-02-08T23:27:11Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-5869426.post-6697995059989126343</id>
    <link href="http://feeds.athico.com/~r/DroolsRSS/~3/6isvDEYgLFY/drools-540beta1-released.html" rel="alternate" type="text/html"/>
    <title>Drools &amp; JBPM: Drools 5.4.0.Beta1 released</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">We're happy to announce the release of Drools (Expert, Fusion, Planner, Guvnor) <b>5.4.0.Beta1</b>.<br/><br/>Beta1 finally  introduces the simulation and testing work that we've been talking about for so long. This will provide a unified environment for simulation and testing over time for rules, workflow and event processing. Beta1 also demonstrates our continued effort to fully commodotise the decison table paradigm, using the excellent research provided by Jan Vanthienen's <a href="http://www.econ.kuleuven.be/prologa/">Prologa </a>project, some high lights for the decision table improvements are listed below.<br/><ul><li>Limited and Extended entry wizards</li><li>Automatic decision table generation to expanded form</li><li>Improved rule templating flexibility<br/></li><li>Work Item integration (declarative lazy environment bound functions)</li><li>Impossible Match detection</li><li>Conflict Match detection</li></ul><p>Documtation, Release Notes and Downloads are detailed below:<br/></p><ul><li>Download the zips from the bottom of <a href="http://www.jboss.org/drools/downloads">the drools download page</a>.</li><ul><li>To try out the examples, just unzip one and run a <font face="&quot;">runExamples.sh/.bat</font> script.</li></ul><ul><li>See the JBoss Maven repository for <a href="https://repository.jboss.org/nexus/index.html#nexus-search;gav%7Eorg.drools*%7E%7E5.4.0.Beta1%7E%7E">a list of all released artifacts</a>.</li><ul><li>It will be synced to <a href="http://search.maven.org/#search%7Cga%7Beta1%7Corg.drools">Maven Central</a> automatically in a couple of hours.</li></ul></ul><li><b><a href="http://docs.jboss.org/drools/release/5.4.0.Beta1/droolsjbpm-introduction-docs/html/releaseNotesBeta1.html">Read the new and noteworthy changes here.</a></b></li></ul>Try it out and give us some feed-back (<a href="http://www.jboss.org/drools/lists">user list</a>, <a href="https://issues.jboss.org/browse/JBRULES">issue tracker</a>).<div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/5869426-6697995059989126343?l=blog.athico.com" width="1"/></div><img height="1" src="http://feeds.feedburner.com/~r/DroolsRSS/~4/6isvDEYgLFY" width="1"/></div>
    </summary>
    <updated>2011-12-20T10:15:00Z</updated>
    <category scheme="http://www.blogger.com/atom/ns#" term="release"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="Drools"/><feedburner:origLink xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://blog.athico.com/2011/12/drools-540beta1-released.html</feedburner:origLink>
    <author>
      <name>Toni Rikkola</name>
      <email>noreply@blogger.com</email>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-5869426</id>
      <category term="Performance"/>
      <category term="compilers"/>
      <category term="Conflict Resolution"/>
      <category term="Probability"/>
      <category term="use case"/>
      <category term="competition"/>
      <category term="drools webinar"/>
      <category term="cookbook"/>
      <category term="uncertainty"/>
      <category term="aires"/>
      <category term="service repository"/>
      <category term="Simulation and Testing"/>
      <category term="Job"/>
      <category term="Testing"/>
      <category term="medical"/>
      <category term="Time-Sensitive"/>
      <category term="GSoC"/>
      <category term="AI"/>
      <category term="javapolis"/>
      <category term="video"/>
      <category term="Ad-Hoc"/>
      <category term="Expert Systems"/>
      <category term="RuleML"/>
      <category term="variables"/>
      <category term="Business Rules"/>
      <category term="Domain Specific Languages"/>
      <category term="workshop"/>
      <category term="java"/>
      <category term="infoQ"/>
      <category term="JBoss Rules"/>
      <category term="example"/>
      <category term="Mind Map"/>
      <category term="Rules Engine"/>
      <category term="BAM"/>
      <category term="DotNet"/>
      <category term="Rules"/>
      <category term="Business Rules Forum"/>
      <category term="Fuzzy"/>
      <category term="decision tables"/>
      <category term="Boot Camp"/>
      <category term="Drools Boot Camp"/>
      <category term="interview"/>
      <category term="Eclipse"/>
      <category term="MicroContainer"/>
      <category term="Stream"/>
      <category term="designer"/>
      <category term="Brazilian"/>
      <category term="upgrade tool"/>
      <category term="milestone"/>
      <category term="BOF"/>
      <category term="Seam"/>
      <category term="quote"/>
      <category term="JDT"/>
      <category term="shadow facts"/>
      <category term="event"/>
      <category term="ORF 2008"/>
      <category term="SOA"/>
      <category term="Smooks"/>
      <category term="GUI"/>
      <category term="grammar"/>
      <category term="Drools Expert"/>
      <category term="sequential"/>
      <category term="announcement"/>
      <category term="Drools"/>
      <category term="buenos"/>
      <category term="ESP"/>
      <category term="Natural Language"/>
      <category term="Camel"/>
      <category term="SSL"/>
      <category term="jBPM5"/>
      <category term="JSON"/>
      <category term="Drools Flow"/>
      <category term="RuleML 2008"/>
      <category term="Rete"/>
      <category term="Production Rules Systems"/>
      <category term="DRL"/>
      <category term="remote"/>
      <category term="brms insurance demo standalone"/>
      <category term="FactTemplate"/>
      <category term="traveling tournament"/>
      <category term="BRMS"/>
      <category term="MVEL"/>
      <category term="Rule Flow"/>
      <category term="Open Source"/>
      <category term="argentina"/>
      <category term="IKVM"/>
      <category term="BPMN"/>
      <category term="source code"/>
      <category term="standards"/>
      <category term="machine learning"/>
      <category term="image processing"/>
      <category term="Backward Chaining."/>
      <category term="Monitoring"/>
      <category term="modify block"/>
      <category term="GIS"/>
      <category term="accumulate"/>
      <category term="Drools Fusion"/>
      <category term="Codehaus"/>
      <category term="JUG"/>
      <category term="Rule Authoring"/>
      <category term="Negation"/>
      <category term="Business Rules Governance"/>
      <category term="DynaBeans"/>
      <category term="junit"/>
      <category term="JFDI"/>
      <category term="Rule Engines"/>
      <category term="KAMS"/>
      <category term="dynamically generated classes"/>
      <category term="ORF"/>
      <category term="Form Builder"/>
      <category term="syntax"/>
      <category term="shadow proxies"/>
      <category term="BRMS Guvnor Drools"/>
      <category term="ANTLR"/>
      <category term="Service Manager"/>
      <category term="FedEx"/>
      <category term="DSL"/>
      <category term="Clips"/>
      <category term="planner"/>
      <category term="traits"/>
      <category term="examination"/>
      <category term="search space"/>
      <category term="Janino"/>
      <category term="MySQL"/>
      <category term="Web Services"/>
      <category term="semantic web"/>
      <category term="jBPM"/>
      <category term="constraint programming"/>
      <category term="generated classes"/>
      <category term="Research Network"/>
      <category term="algorithm"/>
      <category term="cloud"/>
      <category term="Life Cycle"/>
      <category term="MISMO"/>
      <category term="BPEL"/>
      <category term="LDAP"/>
      <category term="jBPM5 webinar"/>
      <category term="Templates"/>
      <category term="case management"/>
      <category term="android"/>
      <category term="persistence"/>
      <category term="RIF"/>
      <category term="Logic Operators"/>
      <category term="relational programming"/>
      <category term="Debug"/>
      <category term="Jess"/>
      <category term="release"/>
      <category term="extensibility"/>
      <category term="Atom"/>
      <category term="Analytics"/>
      <category term="Portuguese"/>
      <category term="Meetups"/>
      <category term="Synasc"/>
      <category term="drools puzzle"/>
      <category term="Computer Games"/>
      <category term="Progress"/>
      <category term="JavaOne"/>
      <category term="accumulate function"/>
      <category term="Programming"/>
      <category term="Healthcare"/>
      <category term="October Rules Fest"/>
      <category term="Guvnor"/>
      <category term="SwitchYard"/>
      <category term="WordNet"/>
      <category term="SBVR"/>
      <category term="devoxx"/>
      <category term="one"/>
      <category term="Drools Chance"/>
      <category term="plug tree"/>
      <category term="Presentation"/>
      <category term="Spring"/>
      <category term="Guice"/>
      <category term="salaboy"/>
      <category term="solver"/>
      <category term="Savvion"/>
      <category term="OSGi"/>
      <category term="http://www.blogger.com/img/blank.gif"/>
      <category term="REST"/>
      <category term="DSL regexp antlr"/>
      <category term="project proposals"/>
      <category term="Forward  Chaining"/>
      <category term="declarative programming"/>
      <category term="videos"/>
      <category term="CEP"/>
      <category term="book"/>
      <category term="API"/>
      <category term="brms ajax web"/>
      <category term="combinatorial optimization"/>
      <category term="tests"/>
      <category term="computer vision"/>
      <category term="functional programming"/>
      <category term="Time"/>
      <category term="parser"/>
      <category term="droos ide update-site downloads"/>
      <category term="expressiveness"/>
      <author>
        <name>Mark Proctor</name>
        <email>noreply@blogger.com</email>
      </author>
      <link href="http://blog.athico.com/" rel="alternate" type="text/html"/>
      <link href="http://feeds.athico.com/DroolsRSS" rel="self" type="application/atom+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <subtitle>All things Artificial Intelligence related: Rules, Processes, Events, Agents, Planning, Ontologies and more :)</subtitle>
      <title>Drools &amp; jBPM</title>
      <updated>2012-02-08T23:27:11Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-5869426.post-5503893856765289878</id>
    <link href="http://feeds.athico.com/~r/DroolsRSS/~3/JWI88QD4SFI/dynamic-typing-in-rules-traits-part-2.html" rel="alternate" type="text/html"/>
    <title>Drools &amp; JBPM: Dynamic typing in rules : Traits (part 2)</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">In a previous post, we discussed the experimental feature called "traits", a way to combine strong and weak typing in Drools. A trait is an interface which can be attached ("donned"), even temporarily, to a fact. It is particularly suitable to model roles or temporary behaviors. Let's take, for example, the following fact model:<br/><br/><pre class="brush:drl"><br/>declare Person<br/>  @Traitable<br/>  code         : String<br/>  name         : String<br/>  address      : String<br/>  balance      : long<br/>  registerDate : Date<br/>  orders       : Collection<br/>end<br/><br/>declare OrderItem<br/>  @Traitable<br/>  itemId       : String<br/>  price        : long<br/>end<br/><br/><br/>declare HasDiscountApplied<br/>  @format(trait)<br/>  discount     : long<br/>end<br/><br/><br/>declare Customer<br/>  @format(trait)<br/>  code         : String<br/>  balance      : long<br/>  registerDate : Date<br/>  orders       : Collection<br/>end<br/><br/>declare GoldenCustomer extends Customer, HasDiscountApplied<br/>  @format(trait) <br/>  maxExpense   : long  <br/>end<br/><br/>declare SeniorCustomer extends Customer, HasDiscountApplied<br/>  @format(trait) <br/>  wasAwarded   : boolean<br/>end<br/><br/></pre><br/><br/>A shop registers visitor to prepare special dedicated offers. When a visitor makes a purchase, they become Customers. For some reasons, the shop cares about Golden customers (those who spent more than a certain amount of money over the last year) and Senior customers (those who have been loyal for a certain time).<br/>While some of the items on sale may have a discount, golden and senior customers always receive an (additional), personalized discount. Senior customers may even receive a public mention on the website, if they wish so.<br/><br/>The toy example is not accurate, but will serve to discuss some issues. Here, people and items are the only concrete domain entities: Customer, Golden and Senior are all statuses gained (or lost) by people according to some conditions. Likewise, being applied a discount is another transient property of customers and items. <br/><br/>We have seen previously that :<br/><br/><pre class="brush:drl"><br/>when<br/>  $p : Person( ... )        // some conditions apply<br/>  // exists Order( ... )<br/>then<br/>  don( $p, Customer.class ) // a Customer proxy is insert<br/>end<br/></pre><br/><br/>The proxy will allow to write rules against the fields defined by the Customer interface, but the getters/setters will be remapped internally to the concrete fields of the wrapped <span style="font-style: italic;">core</span> object (the Person, in this case). Notice that, as a side benefit, using interfaces allows to exploit multiple inheritance.<br/><br/>Now, one might wonder what happens when a core class does NOT provide the implementation for a field defined in an interface. We call <span style="font-style: italic;">hard</span> fields those trait fields which are also core fields and thus readily available, while we define <span style="font-style: italic;">soft</span> those fields which are NOT provided by the core class. <span style="font-style: italic;">Hidden</span> fields, instead, are fields in the core class not exposed by the interface.<br/>In our example, code, balance, registerDate and orders are hard fields for Customer provided by Person. GoldenCustomer adds discount (from HasDiscountApplied!) and maxExpense, which are soft fields. Eventually, name is a hidden field.<br/><br/>So, while hard field management is intuitive, there remains the problem of soft and hidden fields. The solution we have adopted is to use a two-part proxy.<br/>Internally, proxies are formed by a proper proxy and a wrapper. The former implements the interface, while the latter manages the core object fields, implementing a name/value map to supports soft fields. The proxy, then, uses both the core object and the map wrapper to implement the interface, as needed. So, you can write:<br/><br/><pre class="brush:drl"><br/>when<br/>  $sc : SeniorCustomer( $c : code, // hard getter<br/>                        $award : wasAwarded == true // soft getter<br/>                      )        <br/>then<br/>  $sc.setDiscount( ... ); // soft setter<br/>end<br/></pre><br/><br/>The wrapper itself is exposed through the <span style="font-style: italic;">fields</span> special getter available to all trait proxies. It is used to access soft fields as well as hard ones. The wrapper, in fact, mimics soft access to hard fields too, for uniformity.<br/><br/><pre class="brush:drl"><br/>  $sc : SeniorCustomer( $name : fields[ "name" ],<br/>                        $code : fields[ "code"],  <br/>                        $award : fields[ "wasAwarded" ] == true <br/>                      )        <br/></pre><br/><br/>The wrapper, then, provides a looser form of typing when writing rules. However, it has also other uses. The wrapper is specific to the object it wraps, regardless of how many traits have been attached to an object: all the proxies on the same object will share the same wrapper. Secondly, the wrapper also contains a back-reference to all proxies attached to the wrapped object, effectively allowing traits to see each other. To this end, we have provided the new isA operator:<br/><br/><pre class="brush:drl"><br/>  $sc : SeniorCustomer( wasAwarded == true, <br/>                        this isA "GoldenCustomer",<br/>                        $maxExpense : fields[ "maxExpense" ]<br/>                      )        <br/></pre><br/><br/>This rule would be triggered by a SeniorCustomer, but propagated only if the fact is "also" ( i.e. the same core object also has donned the trait of ) a GoldenCustomer. The only possible disadvantage is that this type of cross-access requires loose typing, although if an explicit join is always possible thanks to the <span style="font-style: italic;">core</span> field, again common to all traits:<br/><br/><pre class="brush:drl"><br/>  $sc : SeniorCustomer( wasAwarded == true, <br/>                        $core : core<br/>                      )        <br/>  $gc : SeniorCustomer( core == $core,<br/>                        $maxExpense : maxExpense<br/>                      )       <br/></pre> <br/><br/>Eventually, the business logic may require that a trait is removed from a wrapped object. To this end, we provide two options. The first is a "logical don", which will result in a logical insertion of the proxy resulting from the traiting operation:<br/><br/><pre class="brush:drl"><br/>then<br/>  don( $x, // core object<br/>       Customer.class, // trait class <br/>       true // optional flag for logical insertion<br/>     )<br/></pre> <br/><br/>The second is the use of the <span style="font-weight: bold;">shed</span> keyword, which causes the retraction of the proxy corresponding to the given argument type:<br/><br/><pre class="brush:drl"><br/>then<br/>  Thing t = shed( $x, GoldenCustomer.class )<br/></pre> <br/><br/>This operation returns another proxy implementing the org.drools.factmodel.traits.Thing interface, where the getFields() and getCore() methods are defined. Internally, in fact, all declared traits are generated to extend this interface (in addition to any others specified). This allows to preserve the wrapper with the soft fields which would otherwise be lost.<br/><br/>(Note: in addition to Thing, we also provide the class org.drools.factmodel.trait.Entity, an empty class with just an id and the data structures to make it @Traitable. We might rename it to Individual in the near future. And if this rings two bells to some of you, yes, the reason would be exactly that. Stay tuned.)<div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/5869426-5503893856765289878?l=blog.athico.com" width="1"/></div><img height="1" src="http://feeds.feedburner.com/~r/DroolsRSS/~4/JWI88QD4SFI" width="1"/></div>
    </summary>
    <updated>2011-12-19T01:13:00Z</updated>
    <category scheme="http://www.blogger.com/atom/ns#" term="DRL"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="traits"/><feedburner:origLink xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://blog.athico.com/2011/12/dynamic-typing-in-rules-traits-part-2.html</feedburner:origLink>
    <author>
      <name>Sotty</name>
      <email>noreply@blogger.com</email>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-5869426</id>
      <category term="Performance"/>
      <category term="compilers"/>
      <category term="Conflict Resolution"/>
      <category term="Probability"/>
      <category term="use case"/>
      <category term="competition"/>
      <category term="drools webinar"/>
      <category term="cookbook"/>
      <category term="uncertainty"/>
      <category term="aires"/>
      <category term="service repository"/>
      <category term="Simulation and Testing"/>
      <category term="Job"/>
      <category term="Testing"/>
      <category term="medical"/>
      <category term="Time-Sensitive"/>
      <category term="GSoC"/>
      <category term="AI"/>
      <category term="javapolis"/>
      <category term="video"/>
      <category term="Ad-Hoc"/>
      <category term="Expert Systems"/>
      <category term="RuleML"/>
      <category term="variables"/>
      <category term="Business Rules"/>
      <category term="Domain Specific Languages"/>
      <category term="workshop"/>
      <category term="java"/>
      <category term="infoQ"/>
      <category term="JBoss Rules"/>
      <category term="example"/>
      <category term="Mind Map"/>
      <category term="Rules Engine"/>
      <category term="BAM"/>
      <category term="DotNet"/>
      <category term="Rules"/>
      <category term="Business Rules Forum"/>
      <category term="Fuzzy"/>
      <category term="decision tables"/>
      <category term="Boot Camp"/>
      <category term="Drools Boot Camp"/>
      <category term="interview"/>
      <category term="Eclipse"/>
      <category term="MicroContainer"/>
      <category term="Stream"/>
      <category term="designer"/>
      <category term="Brazilian"/>
      <category term="upgrade tool"/>
      <category term="milestone"/>
      <category term="BOF"/>
      <category term="Seam"/>
      <category term="quote"/>
      <category term="JDT"/>
      <category term="shadow facts"/>
      <category term="event"/>
      <category term="ORF 2008"/>
      <category term="SOA"/>
      <category term="Smooks"/>
      <category term="GUI"/>
      <category term="grammar"/>
      <category term="Drools Expert"/>
      <category term="sequential"/>
      <category term="announcement"/>
      <category term="Drools"/>
      <category term="buenos"/>
      <category term="ESP"/>
      <category term="Natural Language"/>
      <category term="Camel"/>
      <category term="SSL"/>
      <category term="jBPM5"/>
      <category term="JSON"/>
      <category term="Drools Flow"/>
      <category term="RuleML 2008"/>
      <category term="Rete"/>
      <category term="Production Rules Systems"/>
      <category term="DRL"/>
      <category term="remote"/>
      <category term="brms insurance demo standalone"/>
      <category term="FactTemplate"/>
      <category term="traveling tournament"/>
      <category term="BRMS"/>
      <category term="MVEL"/>
      <category term="Rule Flow"/>
      <category term="Open Source"/>
      <category term="argentina"/>
      <category term="IKVM"/>
      <category term="BPMN"/>
      <category term="source code"/>
      <category term="standards"/>
      <category term="machine learning"/>
      <category term="image processing"/>
      <category term="Backward Chaining."/>
      <category term="Monitoring"/>
      <category term="modify block"/>
      <category term="GIS"/>
      <category term="accumulate"/>
      <category term="Drools Fusion"/>
      <category term="Codehaus"/>
      <category term="JUG"/>
      <category term="Rule Authoring"/>
      <category term="Negation"/>
      <category term="Business Rules Governance"/>
      <category term="DynaBeans"/>
      <category term="junit"/>
      <category term="JFDI"/>
      <category term="Rule Engines"/>
      <category term="KAMS"/>
      <category term="dynamically generated classes"/>
      <category term="ORF"/>
      <category term="Form Builder"/>
      <category term="syntax"/>
      <category term="shadow proxies"/>
      <category term="BRMS Guvnor Drools"/>
      <category term="ANTLR"/>
      <category term="Service Manager"/>
      <category term="FedEx"/>
      <category term="DSL"/>
      <category term="Clips"/>
      <category term="planner"/>
      <category term="traits"/>
      <category term="examination"/>
      <category term="search space"/>
      <category term="Janino"/>
      <category term="MySQL"/>
      <category term="Web Services"/>
      <category term="semantic web"/>
      <category term="jBPM"/>
      <category term="constraint programming"/>
      <category term="generated classes"/>
      <category term="Research Network"/>
      <category term="algorithm"/>
      <category term="cloud"/>
      <category term="Life Cycle"/>
      <category term="MISMO"/>
      <category term="BPEL"/>
      <category term="LDAP"/>
      <category term="jBPM5 webinar"/>
      <category term="Templates"/>
      <category term="case management"/>
      <category term="android"/>
      <category term="persistence"/>
      <category term="RIF"/>
      <category term="Logic Operators"/>
      <category term="relational programming"/>
      <category term="Debug"/>
      <category term="Jess"/>
      <category term="release"/>
      <category term="extensibility"/>
      <category term="Atom"/>
      <category term="Analytics"/>
      <category term="Portuguese"/>
      <category term="Meetups"/>
      <category term="Synasc"/>
      <category term="drools puzzle"/>
      <category term="Computer Games"/>
      <category term="Progress"/>
      <category term="JavaOne"/>
      <category term="accumulate function"/>
      <category term="Programming"/>
      <category term="Healthcare"/>
      <category term="October Rules Fest"/>
      <category term="Guvnor"/>
      <category term="SwitchYard"/>
      <category term="WordNet"/>
      <category term="SBVR"/>
      <category term="devoxx"/>
      <category term="one"/>
      <category term="Drools Chance"/>
      <category term="plug tree"/>
      <category term="Presentation"/>
      <category term="Spring"/>
      <category term="Guice"/>
      <category term="salaboy"/>
      <category term="solver"/>
      <category term="Savvion"/>
      <category term="OSGi"/>
      <category term="http://www.blogger.com/img/blank.gif"/>
      <category term="REST"/>
      <category term="DSL regexp antlr"/>
      <category term="project proposals"/>
      <category term="Forward  Chaining"/>
      <category term="declarative programming"/>
      <category term="videos"/>
      <category term="CEP"/>
      <category term="book"/>
      <category term="API"/>
      <category term="brms ajax web"/>
      <category term="combinatorial optimization"/>
      <category term="tests"/>
      <category term="computer vision"/>
      <category term="functional programming"/>
      <category term="Time"/>
      <category term="parser"/>
      <category term="droos ide update-site downloads"/>
      <category term="expressiveness"/>
      <author>
        <name>Mark Proctor</name>
        <email>noreply@blogger.com</email>
      </author>
      <link href="http://blog.athico.com/" rel="alternate" type="text/html"/>
      <link href="http://feeds.athico.com/DroolsRSS" rel="self" type="application/atom+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <subtitle>All things Artificial Intelligence related: Rules, Processes, Events, Agents, Planning, Ontologies and more :)</subtitle>
      <title>Drools &amp; jBPM</title>
      <updated>2012-02-07T20:27:21Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-5869426.post-3467668537200299668</id>
    <link href="http://feeds.athico.com/~r/DroolsRSS/~3/d5mMXVhPBnQ/new-feature-spotlight-traits-part-1.html" rel="alternate" type="text/html"/>
    <title>Drools &amp; JBPM: New feature spotlight: Traits (part 1)</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">We all know that Drools is Java-oriented, so its fact model is object-oriented, in the sense of what Java makes of classes and objects. Leaving academic discussions out, let's focus on a great advantage and disadvantage: strong typing. Patterns and constraints have to be written against available classes and fields, and the compiler can check the consistency at load time so they can be correctly evaluated at runtime.<br/><br/>All well and good, save for a limitation: a fact, being an object, can have only one type hierarchy. Imagine you're building a business management application (policies? mortgages?): you'll likely need rules for employees and customers, but what if you want to write rules for special classes of customers? A few days ago, I was discussing a data validation application: what if you wanted to "tag" some facts as "invalid" or "inaccurate" and then write specific rules for them? In another example, we had a message-driven application, where we had to apply rules to the members of an organization according to the role they had in a message: sender vs recipient vs subject etc.... Take conan's adventure game: right now he has "hero" vs "monster", but soon he'll add classes, say fighter, mage, ... vs orc, undead, ...: what if he wants a fighter/mage to face an undead orc?<br/><br/>All these applications - and many more - have a common problem: the same fact (customer, employee, data sample, character) may have multiple dynamic types which do not fit naturally in a class hierarchy. Arguably, there are many possible solutions one could adopt, including:<br/><br/><ul><br/><li> Fit all classes in a <span style="font-weight: bold;">hierarchy</span> </li><br/><li> Use labels (strings, enums, etc...) to model types </li><br/><li> Write rules using <span style="font-weight: bold;">interfaces</span> </li><br/><li> Use <span style="font-weight: bold;">proxy</span> facts </li><br/></ul><br/><br/><br/>The first method is definitely not recommended. Java does not have multiple inheritance, so fitting a complex hierarchy in a simpler one might result in unnatural "isA" relations between classes.<br/><br/><pre class="brush:drl">declare Customer<br/>// fields here<br/>end<br/><br/>declare GoldenCustomer extends Customer<br/>// more fields here<br/>end<br/></pre><br/><br/>Even then, there is another problem here: imagine you have a Customer you want to promote to GoldenCustomer (which extends Customer). Probably, you'll have to clone your existing fact into an instance of the subclass, with a considerable effort to maintain consistency.<br/><br/>It seems much easier to model roles with strings or other marker objects:<br/><br/><pre class="brush:drl">declare Customer<br/> roles : Collection<br/> // more fields here<br/>end<br/></pre><br/><br/>With this solution, one can add multiple types to a fact, but unfortunately those will just be labels, not types, so a change in type will not support a change in behavior. This means that any field which is relevant only for GoldenCustomers will have to moved up to Customer and constantly checked for consistency.<br/><br/>Roles are indeed modeled better using interfaces, which define the fields which should be visible when an object is observed from the point of view of that interface.<br/><br/><pre class="brush:drl">declare CustomerImpl implements Customer<br/> // interface impl here<br/>end<br/></pre><br/><br/>Forgetting that Drools does not support <span style="font-style: italic;">implements</span>, which makes the previous snippet illegal, the problem here is that an interface is attached to a class and not to individual objects. So, our GoldenCustomer can't be an interface unless we want either all Customers to be golden ones, or we provide an implementation class for GoldenCustomers only, effectively going back to the first solution discussed.<br/><br/>A much better solution would be the use of proxy facts:<br/><br/><pre class="brush:drl">declare GoldenCustomer<br/> customer : Customer<br/> // more fields here<br/>end<br/></pre><br/><br/>The idea is to create an additional fact, modelling the role that an object would have in the particular context. The obvious advantages of wrapping/decorating against cloning is that information is not replicated and, moreover, the role is applied to a particular fact (not to the entire class) and can be removed as needed. The price to pay is that, in order to write the rules, the user must refer explicitly the inner customer to access its fields. This also implies that the status of GoldenCustomer can be applied to instances of Customer only (think of more generic roles, which do not have a single domain, like Sender...)<br/><br/>In order to get the best of all these solutions, Drools now offers an experimental feature : <span style="font-weight: bold;">traits</span><br/><br/><span style="font-style: italic;">A trait is an interface that can be applied (and eventually removed) to an individual object at runtime.<br/></span><br/>To create a trait out of an interface, one has to add a @format(trait) annotation to its declaration in DRL:<br/><br/><pre class="brush:drl">declare GoldenCustomer<br/>  @format(trait)<br/>  // fields will map to getters/setters<br/>  code     : String<br/>  balance  : long<br/>  discount : int<br/>end<br/><br/>import LegacyInterface;<br/>declare LegacyInterface<br/>  @format(trait)<br/>end<br/></pre><br/><br/>In order to apply a trait to an object, we provide the new <span style="font-style: italic;">don</span> keyword, which can be used as simply as this:<br/><br/><pre class="brush:drl">when<br/>$c : Customer()<br/>then<br/>GoldenCustomer gc = don( $c, Customer.class );<br/>end<br/></pre><br/><br/>A few important remarks here. First of all, when a core object dons a trait, a proxy class is created on the fly (one such class will be generated lazily for each core/trait class combination). The proxy instance, which wraps the core object and implements the trait interface, is insert-ed automatically and will possibly activate other rules.<br/>An immediate advantage of declaring and using interfaces, getting the implementation proxy for free from the engine, is that multiple inheritance hierarchies can be exploited when writing rules. The core classes, however, need not implement any of those interfaces statically, also facilitating the use of legacy classes as cores.<br/>In fact, any object can don a trait. For efficiency reasons, however, one <span style="font-style: italic;">can</span> add the @Traitable annotation to a declared bean class to reduce the amount of glue code that the compiler will have to generate. This is optional and will not change the behavior of the engine:<br/><br/><pre class="brush:drl">declare Customer<br/>  @Traitable<br/>  code    : String<br/>  balance : long<br/>end<br/></pre><br/><br/>Since the only connection between core classes and trait interfaces is at the proxy level, a trait is not specifically tied to a core class. This means that the same trait can be applied to totally different objects. (The problem of filling the LHS of a donning rule will be the topic of a next post...)<br/>Notice that, for this reason, the trait does not transparently expose the fields of its core object. So, when writing a rule using a trait interface, only the fields of the interface will be available, as usual.<br/>However, any field in the interface that corresponds to a core object field, will be mapped by the proxy class.<br/><br/><pre class="brush:drl">when<br/> $o: OrderItem( $p : price, $code : custCode )<br/> $c: GoldenCustomer( code == $code, $a : balance, $d: discount )<br/>then<br/> $c.setBalance( $a - $p*$d );<br/>end<br/></pre><br/><br/>In this case, the code and balance would be read from the underlying Customer object. Likewise, the setAccount will modify the underlying object, preserving a strongly typed access to the data structures.<div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/5869426-3467668537200299668?l=blog.athico.com" width="1"/></div><img height="1" src="http://feeds.feedburner.com/~r/DroolsRSS/~4/d5mMXVhPBnQ" width="1"/></div>
    </summary>
    <updated>2011-12-18T20:37:00Z</updated>
    <category scheme="http://www.blogger.com/atom/ns#" term="DRL"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="traits"/><feedburner:origLink xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://blog.athico.com/2011/12/new-feature-spotlight-traits-part-1.html</feedburner:origLink>
    <author>
      <name>Sotty</name>
      <email>noreply@blogger.com</email>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-5869426</id>
      <category term="Performance"/>
      <category term="compilers"/>
      <category term="Conflict Resolution"/>
      <category term="Probability"/>
      <category term="use case"/>
      <category term="competition"/>
      <category term="drools webinar"/>
      <category term="cookbook"/>
      <category term="uncertainty"/>
      <category term="aires"/>
      <category term="service repository"/>
      <category term="Simulation and Testing"/>
      <category term="Job"/>
      <category term="Testing"/>
      <category term="medical"/>
      <category term="Time-Sensitive"/>
      <category term="GSoC"/>
      <category term="AI"/>
      <category term="javapolis"/>
      <category term="video"/>
      <category term="Ad-Hoc"/>
      <category term="Expert Systems"/>
      <category term="RuleML"/>
      <category term="variables"/>
      <category term="Business Rules"/>
      <category term="Domain Specific Languages"/>
      <category term="workshop"/>
      <category term="java"/>
      <category term="infoQ"/>
      <category term="JBoss Rules"/>
      <category term="example"/>
      <category term="Mind Map"/>
      <category term="Rules Engine"/>
      <category term="BAM"/>
      <category term="DotNet"/>
      <category term="Rules"/>
      <category term="Business Rules Forum"/>
      <category term="Fuzzy"/>
      <category term="decision tables"/>
      <category term="Boot Camp"/>
      <category term="Drools Boot Camp"/>
      <category term="interview"/>
      <category term="Eclipse"/>
      <category term="MicroContainer"/>
      <category term="Stream"/>
      <category term="designer"/>
      <category term="Brazilian"/>
      <category term="upgrade tool"/>
      <category term="milestone"/>
      <category term="BOF"/>
      <category term="Seam"/>
      <category term="quote"/>
      <category term="JDT"/>
      <category term="shadow facts"/>
      <category term="event"/>
      <category term="ORF 2008"/>
      <category term="SOA"/>
      <category term="Smooks"/>
      <category term="GUI"/>
      <category term="grammar"/>
      <category term="Drools Expert"/>
      <category term="sequential"/>
      <category term="announcement"/>
      <category term="Drools"/>
      <category term="buenos"/>
      <category term="ESP"/>
      <category term="Natural Language"/>
      <category term="Camel"/>
      <category term="SSL"/>
      <category term="jBPM5"/>
      <category term="JSON"/>
      <category term="Drools Flow"/>
      <category term="RuleML 2008"/>
      <category term="Rete"/>
      <category term="Production Rules Systems"/>
      <category term="DRL"/>
      <category term="remote"/>
      <category term="brms insurance demo standalone"/>
      <category term="FactTemplate"/>
      <category term="traveling tournament"/>
      <category term="BRMS"/>
      <category term="MVEL"/>
      <category term="Rule Flow"/>
      <category term="Open Source"/>
      <category term="argentina"/>
      <category term="IKVM"/>
      <category term="BPMN"/>
      <category term="source code"/>
      <category term="standards"/>
      <category term="machine learning"/>
      <category term="image processing"/>
      <category term="Backward Chaining."/>
      <category term="Monitoring"/>
      <category term="modify block"/>
      <category term="GIS"/>
      <category term="accumulate"/>
      <category term="Drools Fusion"/>
      <category term="Codehaus"/>
      <category term="JUG"/>
      <category term="Rule Authoring"/>
      <category term="Negation"/>
      <category term="Business Rules Governance"/>
      <category term="DynaBeans"/>
      <category term="junit"/>
      <category term="JFDI"/>
      <category term="Rule Engines"/>
      <category term="KAMS"/>
      <category term="dynamically generated classes"/>
      <category term="ORF"/>
      <category term="Form Builder"/>
      <category term="syntax"/>
      <category term="shadow proxies"/>
      <category term="BRMS Guvnor Drools"/>
      <category term="ANTLR"/>
      <category term="Service Manager"/>
      <category term="FedEx"/>
      <category term="DSL"/>
      <category term="Clips"/>
      <category term="planner"/>
      <category term="traits"/>
      <category term="examination"/>
      <category term="search space"/>
      <category term="Janino"/>
      <category term="MySQL"/>
      <category term="Web Services"/>
      <category term="semantic web"/>
      <category term="jBPM"/>
      <category term="constraint programming"/>
      <category term="generated classes"/>
      <category term="Research Network"/>
      <category term="algorithm"/>
      <category term="cloud"/>
      <category term="Life Cycle"/>
      <category term="MISMO"/>
      <category term="BPEL"/>
      <category term="LDAP"/>
      <category term="jBPM5 webinar"/>
      <category term="Templates"/>
      <category term="case management"/>
      <category term="android"/>
      <category term="persistence"/>
      <category term="RIF"/>
      <category term="Logic Operators"/>
      <category term="relational programming"/>
      <category term="Debug"/>
      <category term="Jess"/>
      <category term="release"/>
      <category term="extensibility"/>
      <category term="Atom"/>
      <category term="Analytics"/>
      <category term="Portuguese"/>
      <category term="Meetups"/>
      <category term="Synasc"/>
      <category term="drools puzzle"/>
      <category term="Computer Games"/>
      <category term="Progress"/>
      <category term="JavaOne"/>
      <category term="accumulate function"/>
      <category term="Programming"/>
      <category term="Healthcare"/>
      <category term="October Rules Fest"/>
      <category term="Guvnor"/>
      <category term="SwitchYard"/>
      <category term="WordNet"/>
      <category term="SBVR"/>
      <category term="devoxx"/>
      <category term="one"/>
      <category term="Drools Chance"/>
      <category term="plug tree"/>
      <category term="Presentation"/>
      <category term="Spring"/>
      <category term="Guice"/>
      <category term="salaboy"/>
      <category term="solver"/>
      <category term="Savvion"/>
      <category term="OSGi"/>
      <category term="http://www.blogger.com/img/blank.gif"/>
      <category term="REST"/>
      <category term="DSL regexp antlr"/>
      <category term="project proposals"/>
      <category term="Forward  Chaining"/>
      <category term="declarative programming"/>
      <category term="videos"/>
      <category term="CEP"/>
      <category term="book"/>
      <category term="API"/>
      <category term="brms ajax web"/>
      <category term="combinatorial optimization"/>
      <category term="tests"/>
      <category term="computer vision"/>
      <category term="functional programming"/>
      <category term="Time"/>
      <category term="parser"/>
      <category term="droos ide update-site downloads"/>
      <category term="expressiveness"/>
      <author>
        <name>Mark Proctor</name>
        <email>noreply@blogger.com</email>
      </author>
      <link href="http://blog.athico.com/" rel="alternate" type="text/html"/>
      <link href="http://feeds.athico.com/DroolsRSS" rel="self" type="application/atom+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <subtitle>All things Artificial Intelligence related: Rules, Processes, Events, Agents, Planning, Ontologies and more :)</subtitle>
      <title>Drools &amp; jBPM</title>
      <updated>2012-02-07T17:27:19Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-5869426.post-481496824865011279</id>
    <link href="http://feeds.athico.com/~r/DroolsRSS/~3/5KizAg1qEoA/why-programmers-work-at-night.html" rel="alternate" type="text/html"/>
    <title>Drools &amp; JBPM: Why programmers work at night</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><a href="http://swizec.com/blog/why-programmers-work-at-night/swizec/3198">http://swizec.com/blog/why-programmers-work-at-night/swizec/3198</a><br/><br/>"....snip...<br/><p>On the other hand you have something PG calls the maker’s schedule – a  schedule for those of us who produce stuff. Working on large abstract  systems involves fitting the whole thing into your mind – somebody once  likened this to constructing a house out of expensive <a class="zem_slink" href="http://en.wikipedia.org/wiki/Lead_glass" rel="wikipedia" title="Lead glass">crystal glass</a>and as soon as someone distracts you, it all comes barreling down and shatters into a thousand pieces.</p> <p>This is why programmers are so annoyed when you distract them.</p><p>...snip...</p><p>Keep staring at a bright source of light in the evening and your <a class="zem_slink" href="http://en.wikipedia.org/wiki/Circadian_rhythm" rel="wikipedia" title="Circadian rhythm">sleep cycle</a>gets  delayed. You forget to be tired until 3am. Then you wake up at 11am and  when the evening rolls around you simply aren’t tired because hey,  you’ve only been up since 11am!<br/></p><p>Given enough iterations this can essentially drag you into a different  timezone. What’s more interesting is that it doesn’t seem to keep  rolling, once you get into that equilibrium of going to bed between 3am  and 4am you tend to stay there."</p><p><br/></p><p><br/></p><div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/5869426-481496824865011279?l=blog.athico.com" width="1"/></div><img height="1" src="http://feeds.feedburner.com/~r/DroolsRSS/~4/5KizAg1qEoA" width="1"/></div>
    </summary>
    <updated>2011-12-16T21:34:00Z</updated>
    <category scheme="http://www.blogger.com/atom/ns#" term="Programming"/><feedburner:origLink xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://blog.athico.com/2011/12/why-programmers-work-at-night.html</feedburner:origLink>
    <author>
      <name>Mark Proctor</name>
      <email>noreply@blogger.com</email>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-5869426</id>
      <category term="Performance"/>
      <category term="compilers"/>
      <category term="Conflict Resolution"/>
      <category term="Probability"/>
      <category term="use case"/>
      <category term="competition"/>
      <category term="drools webinar"/>
      <category term="cookbook"/>
      <category term="uncertainty"/>
      <category term="aires"/>
      <category term="service repository"/>
      <category term="Simulation and Testing"/>
      <category term="Job"/>
      <category term="Testing"/>
      <category term="medical"/>
      <category term="Time-Sensitive"/>
      <category term="GSoC"/>
      <category term="AI"/>
      <category term="javapolis"/>
      <category term="video"/>
      <category term="Ad-Hoc"/>
      <category term="Expert Systems"/>
      <category term="RuleML"/>
      <category term="variables"/>
      <category term="Business Rules"/>
      <category term="Domain Specific Languages"/>
      <category term="workshop"/>
      <category term="java"/>
      <category term="infoQ"/>
      <category term="JBoss Rules"/>
      <category term="example"/>
      <category term="Mind Map"/>
      <category term="Rules Engine"/>
      <category term="BAM"/>
      <category term="DotNet"/>
      <category term="Rules"/>
      <category term="Business Rules Forum"/>
      <category term="Fuzzy"/>
      <category term="decision tables"/>
      <category term="Boot Camp"/>
      <category term="Drools Boot Camp"/>
      <category term="interview"/>
      <category term="Eclipse"/>
      <category term="MicroContainer"/>
      <category term="Stream"/>
      <category term="designer"/>
      <category term="Brazilian"/>
      <category term="upgrade tool"/>
      <category term="milestone"/>
      <category term="BOF"/>
      <category term="Seam"/>
      <category term="quote"/>
      <category term="JDT"/>
      <category term="shadow facts"/>
      <category term="event"/>
      <category term="ORF 2008"/>
      <category term="SOA"/>
      <category term="Smooks"/>
      <category term="GUI"/>
      <category term="grammar"/>
      <category term="Drools Expert"/>
      <category term="sequential"/>
      <category term="announcement"/>
      <category term="Drools"/>
      <category term="buenos"/>
      <category term="ESP"/>
      <category term="Natural Language"/>
      <category term="Camel"/>
      <category term="SSL"/>
      <category term="jBPM5"/>
      <category term="JSON"/>
      <category term="Drools Flow"/>
      <category term="RuleML 2008"/>
      <category term="Rete"/>
      <category term="Production Rules Systems"/>
      <category term="DRL"/>
      <category term="remote"/>
      <category term="brms insurance demo standalone"/>
      <category term="FactTemplate"/>
      <category term="traveling tournament"/>
      <category term="BRMS"/>
      <category term="MVEL"/>
      <category term="Rule Flow"/>
      <category term="Open Source"/>
      <category term="argentina"/>
      <category term="IKVM"/>
      <category term="BPMN"/>
      <category term="source code"/>
      <category term="standards"/>
      <category term="machine learning"/>
      <category term="image processing"/>
      <category term="Backward Chaining."/>
      <category term="Monitoring"/>
      <category term="modify block"/>
      <category term="GIS"/>
      <category term="accumulate"/>
      <category term="Drools Fusion"/>
      <category term="Codehaus"/>
      <category term="JUG"/>
      <category term="Rule Authoring"/>
      <category term="Negation"/>
      <category term="Business Rules Governance"/>
      <category term="DynaBeans"/>
      <category term="junit"/>
      <category term="JFDI"/>
      <category term="Rule Engines"/>
      <category term="KAMS"/>
      <category term="dynamically generated classes"/>
      <category term="ORF"/>
      <category term="Form Builder"/>
      <category term="syntax"/>
      <category term="shadow proxies"/>
      <category term="BRMS Guvnor Drools"/>
      <category term="ANTLR"/>
      <category term="Service Manager"/>
      <category term="FedEx"/>
      <category term="DSL"/>
      <category term="Clips"/>
      <category term="planner"/>
      <category term="traits"/>
      <category term="examination"/>
      <category term="search space"/>
      <category term="Janino"/>
      <category term="MySQL"/>
      <category term="Web Services"/>
      <category term="semantic web"/>
      <category term="jBPM"/>
      <category term="constraint programming"/>
      <category term="generated classes"/>
      <category term="Research Network"/>
      <category term="algorithm"/>
      <category term="cloud"/>
      <category term="Life Cycle"/>
      <category term="MISMO"/>
      <category term="BPEL"/>
      <category term="LDAP"/>
      <category term="jBPM5 webinar"/>
      <category term="Templates"/>
      <category term="case management"/>
      <category term="android"/>
      <category term="persistence"/>
      <category term="RIF"/>
      <category term="Logic Operators"/>
      <category term="relational programming"/>
      <category term="Debug"/>
      <category term="Jess"/>
      <category term="release"/>
      <category term="extensibility"/>
      <category term="Atom"/>
      <category term="Analytics"/>
      <category term="Portuguese"/>
      <category term="Meetups"/>
      <category term="Synasc"/>
      <category term="drools puzzle"/>
      <category term="Computer Games"/>
      <category term="Progress"/>
      <category term="JavaOne"/>
      <category term="accumulate function"/>
      <category term="Programming"/>
      <category term="Healthcare"/>
      <category term="October Rules Fest"/>
      <category term="Guvnor"/>
      <category term="SwitchYard"/>
      <category term="WordNet"/>
      <category term="SBVR"/>
      <category term="devoxx"/>
      <category term="one"/>
      <category term="Drools Chance"/>
      <category term="plug tree"/>
      <category term="Presentation"/>
      <category term="Spring"/>
      <category term="Guice"/>
      <category term="salaboy"/>
      <category term="solver"/>
      <category term="Savvion"/>
      <category term="OSGi"/>
      <category term="http://www.blogger.com/img/blank.gif"/>
      <category term="REST"/>
      <category term="DSL regexp antlr"/>
      <category term="project proposals"/>
      <category term="Forward  Chaining"/>
      <category term="declarative programming"/>
      <category term="videos"/>
      <category term="CEP"/>
      <category term="book"/>
      <category term="API"/>
      <category term="brms ajax web"/>
      <category term="combinatorial optimization"/>
      <category term="tests"/>
      <category term="computer vision"/>
      <category term="functional programming"/>
      <category term="Time"/>
      <category term="parser"/>
      <category term="droos ide update-site downloads"/>
      <category term="expressiveness"/>
      <author>
        <name>Mark Proctor</name>
        <email>noreply@blogger.com</email>
      </author>
      <link href="http://blog.athico.com/" rel="alternate" type="text/html"/>
      <link href="http://feeds.athico.com/DroolsRSS" rel="self" type="application/atom+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <subtitle>All things Artificial Intelligence related: Rules, Processes, Events, Agents, Planning, Ontologies and more :)</subtitle>
      <title>Drools &amp; jBPM</title>
      <updated>2012-02-07T11:27:11Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://www.kurze-prozesse.de/?p=1722</id>
    <link href="http://www.kurze-prozesse.de/2011/12/16/prozessmanagement-in-der-verwaltung-schweizer-online-forum/" rel="alternate" type="text/html"/>
    <title>Thomas Allweyer: Prozessmanagement in der Verwaltung – Schweizer Online-Forum</title>
    <summary>In der Schweiz gibt es eine sehr aktive Community, die das Thema Prozessmanagement als wichtige Voraussetzung für die Modernisierung der öffentlichen Verwaltung vorantreibt. Dies wurde auch kürzlich wieder auf dem BPMN Anwendertag in Luzern deutlich. Wer die Diskussion dieser Thematik verfolgen will, die nicht nur aus Schweizer Sicht interessant ist, sollte sich einmal das Forum [...]</summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p>In der Schweiz gibt es eine sehr aktive Community, die das Thema Prozessmanagement als wichtige Voraussetzung für die Modernisierung der öffentlichen Verwaltung vorantreibt. Dies wurde auch kürzlich wieder auf dem <a href="http://www.kurze-prozesse.de/2011/11/23/bpmn-luzern-anwendertag/">BPMN Anwendertag in Luzern</a> deutlich. Wer die Diskussion dieser Thematik verfolgen will, die nicht nur aus Schweizer Sicht interessant ist, sollte sich einmal das <a href="http://verwaltungsmodernisierung.ning.com/" target="_blank">Forum zur Verwaltungsmodernisierung</a> ansehen, das jüngst auf die <a href="http://de.ning.com/" target="_blank">Ning-Plattform</a> umgezogen ist. Auch ein Blick in die <a href="http://www.ech.ch/vechweb/page?p=page&amp;site=/Gremien/Fachgruppen/Geschaeftsprozesse/Dokumente" target="_blank">Dokumente der eCH-Fachgruppe Geschäftsprozesse</a> ist lohnenswert.</p></div>
    </content>
    <updated>2011-12-16T11:21:57Z</updated>
    <category term="Allgemein"/>
    <category term="BPM"/>
    <author>
      <name>Thomas Allweyer</name>
    </author>
    <source>
      <id>http://www.kurze-prozesse.de</id>
      <link href="http://www.kurze-prozesse.de/feed/" rel="self" type="application/atom+xml"/>
      <link href="http://www.kurze-prozesse.de" rel="alternate" type="text/html"/>
      <subtitle>Das BPM-Blog *</subtitle>
      <title>Kurze Prozesse</title>
      <updated>2012-02-07T20:27:26Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-5869426.post-7235140536391111089</id>
    <link href="http://feeds.athico.com/~r/DroolsRSS/~3/qcC6ctSOaig/drools-developers-get-paid-more-as.html" rel="alternate" type="text/html"/>
    <title>Drools &amp; JBPM: Drools Developers get PAID MORE as demand QUADRUPLES!!!</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">Good news for those with JBoss Drools skills, your in demand!!! Latest results in the UK from <a href="http://www.itjobswatch.co.uk/">itjobswatch.co.uk</a> shows over a three times increase in demand for Drools jobs since Dec 2010. It doesn't take much to imagine where that curve is going to be in 2014.....<br/><a href="http://3.bp.blogspot.com/-uGRBKjBQ0AA/TuqC4b2NGBI/AAAAAAAAAnk/Bf1Sv3CCGHY/s1600/drools-growth.png"><img alt="" border="0" id="BLOGGER_PHOTO_ID_5686501385568065554" src="http://3.bp.blogspot.com/-uGRBKjBQ0AA/TuqC4b2NGBI/AAAAAAAAAnk/Bf1Sv3CCGHY/s400/drools-growth.png" style="cursor: pointer; cursor: hand; width: 400px; height: 182px;"/></a><br/>The report for this information can be seen <a href="http://www.itjobswatch.co.uk/jobs/uk/drools.do">here</a>.<br/><br/>But it gets better the average salary in London over the last 3 months is £90K GBP that's around £140K USD. And note that's just the average, I know I've seen jobs over 100K GBP in London for Drools. The demand growth for Drools in London has quadrupled to a 4x increase in the same period as above:<br/><a href="http://3.bp.blogspot.com/-CdqYuOsZmEY/TuqEdKOWlRI/AAAAAAAAAnw/D4RV8QbX65I/s1600/drools-growth-london.png"><img alt="" border="0" id="BLOGGER_PHOTO_ID_5686503116004300050" src="http://3.bp.blogspot.com/-CdqYuOsZmEY/TuqEdKOWlRI/AAAAAAAAAnw/D4RV8QbX65I/s400/drools-growth-london.png" style="cursor: pointer; cursor: hand; width: 400px; height: 182px;"/></a><br/><br/>Now lets compare this to the average Java developer, the report for that is <a href="http://www.itjobswatch.co.uk/jobs/uk/java.do">here</a>. The results are much more depressing, your demand as a java developer is shrinking, with salaries averaging just 55K GBP or 88K USD for London:<br/><a href="http://1.bp.blogspot.com/-YRk6_tr6kuA/TuqGCKH8MuI/AAAAAAAAAn8/IsTu-f1trYY/s1600/java-growth.png"><img alt="" border="0" id="BLOGGER_PHOTO_ID_5686504851144192738" src="http://1.bp.blogspot.com/-YRk6_tr6kuA/TuqGCKH8MuI/AAAAAAAAAn8/IsTu-f1trYY/s400/java-growth.png" style="cursor: pointer; cursor: hand; width: 400px; height: 182px;"/></a><br/>So if you are already a fellow Drools developer, congratualations and enjoy the finer things in life. If you aren't, what are you waiting for, now is the perfect time to dip your toes in - as someone famous once said<a href="http://www.youtube.com/watch?v=W-LL9z5-nqY"> "Because your worth it"</a> :)<div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/5869426-7235140536391111089?l=blog.athico.com" width="1"/></div><img height="1" src="http://feeds.feedburner.com/~r/DroolsRSS/~4/qcC6ctSOaig" width="1"/></div>
    </summary>
    <updated>2011-12-15T23:28:00Z</updated>
    <category scheme="http://www.blogger.com/atom/ns#" term="Drools"/><feedburner:origLink xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://blog.athico.com/2011/12/drools-developers-get-paid-more-as.html</feedburner:origLink>
    <author>
      <name>Mark Proctor</name>
      <email>noreply@blogger.com</email>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-5869426</id>
      <category term="Performance"/>
      <category term="compilers"/>
      <category term="Conflict Resolution"/>
      <category term="Probability"/>
      <category term="use case"/>
      <category term="competition"/>
      <category term="drools webinar"/>
      <category term="cookbook"/>
      <category term="uncertainty"/>
      <category term="aires"/>
      <category term="service repository"/>
      <category term="Simulation and Testing"/>
      <category term="Job"/>
      <category term="Testing"/>
      <category term="medical"/>
      <category term="Time-Sensitive"/>
      <category term="GSoC"/>
      <category term="AI"/>
      <category term="javapolis"/>
      <category term="video"/>
      <category term="Ad-Hoc"/>
      <category term="Expert Systems"/>
      <category term="RuleML"/>
      <category term="variables"/>
      <category term="Business Rules"/>
      <category term="Domain Specific Languages"/>
      <category term="workshop"/>
      <category term="java"/>
      <category term="infoQ"/>
      <category term="JBoss Rules"/>
      <category term="example"/>
      <category term="Mind Map"/>
      <category term="Rules Engine"/>
      <category term="BAM"/>
      <category term="DotNet"/>
      <category term="Rules"/>
      <category term="Business Rules Forum"/>
      <category term="Fuzzy"/>
      <category term="decision tables"/>
      <category term="Boot Camp"/>
      <category term="Drools Boot Camp"/>
      <category term="interview"/>
      <category term="Eclipse"/>
      <category term="MicroContainer"/>
      <category term="Stream"/>
      <category term="designer"/>
      <category term="Brazilian"/>
      <category term="upgrade tool"/>
      <category term="milestone"/>
      <category term="BOF"/>
      <category term="Seam"/>
      <category term="quote"/>
      <category term="JDT"/>
      <category term="shadow facts"/>
      <category term="event"/>
      <category term="ORF 2008"/>
      <category term="SOA"/>
      <category term="Smooks"/>
      <category term="GUI"/>
      <category term="grammar"/>
      <category term="Drools Expert"/>
      <category term="sequential"/>
      <category term="announcement"/>
      <category term="Drools"/>
      <category term="buenos"/>
      <category term="ESP"/>
      <category term="Natural Language"/>
      <category term="Camel"/>
      <category term="SSL"/>
      <category term="jBPM5"/>
      <category term="JSON"/>
      <category term="Drools Flow"/>
      <category term="RuleML 2008"/>
      <category term="Rete"/>
      <category term="Production Rules Systems"/>
      <category term="DRL"/>
      <category term="remote"/>
      <category term="brms insurance demo standalone"/>
      <category term="FactTemplate"/>
      <category term="traveling tournament"/>
      <category term="BRMS"/>
      <category term="MVEL"/>
      <category term="Rule Flow"/>
      <category term="Open Source"/>
      <category term="argentina"/>
      <category term="IKVM"/>
      <category term="BPMN"/>
      <category term="source code"/>
      <category term="standards"/>
      <category term="machine learning"/>
      <category term="image processing"/>
      <category term="Backward Chaining."/>
      <category term="Monitoring"/>
      <category term="modify block"/>
      <category term="GIS"/>
      <category term="accumulate"/>
      <category term="Drools Fusion"/>
      <category term="Codehaus"/>
      <category term="JUG"/>
      <category term="Rule Authoring"/>
      <category term="Negation"/>
      <category term="Business Rules Governance"/>
      <category term="DynaBeans"/>
      <category term="junit"/>
      <category term="JFDI"/>
      <category term="Rule Engines"/>
      <category term="KAMS"/>
      <category term="dynamically generated classes"/>
      <category term="ORF"/>
      <category term="Form Builder"/>
      <category term="syntax"/>
      <category term="shadow proxies"/>
      <category term="BRMS Guvnor Drools"/>
      <category term="ANTLR"/>
      <category term="Service Manager"/>
      <category term="FedEx"/>
      <category term="DSL"/>
      <category term="Clips"/>
      <category term="planner"/>
      <category term="traits"/>
      <category term="examination"/>
      <category term="search space"/>
      <category term="Janino"/>
      <category term="MySQL"/>
      <category term="Web Services"/>
      <category term="semantic web"/>
      <category term="jBPM"/>
      <category term="constraint programming"/>
      <category term="generated classes"/>
      <category term="Research Network"/>
      <category term="algorithm"/>
      <category term="cloud"/>
      <category term="Life Cycle"/>
      <category term="MISMO"/>
      <category term="BPEL"/>
      <category term="LDAP"/>
      <category term="jBPM5 webinar"/>
      <category term="Templates"/>
      <category term="case management"/>
      <category term="android"/>
      <category term="persistence"/>
      <category term="RIF"/>
      <category term="Logic Operators"/>
      <category term="relational programming"/>
      <category term="Debug"/>
      <category term="Jess"/>
      <category term="release"/>
      <category term="extensibility"/>
      <category term="Atom"/>
      <category term="Analytics"/>
      <category term="Portuguese"/>
      <category term="Meetups"/>
      <category term="Synasc"/>
      <category term="drools puzzle"/>
      <category term="Computer Games"/>
      <category term="Progress"/>
      <category term="JavaOne"/>
      <category term="accumulate function"/>
      <category term="Programming"/>
      <category term="Healthcare"/>
      <category term="October Rules Fest"/>
      <category term="Guvnor"/>
      <category term="SwitchYard"/>
      <category term="WordNet"/>
      <category term="SBVR"/>
      <category term="devoxx"/>
      <category term="one"/>
      <category term="Drools Chance"/>
      <category term="plug tree"/>
      <category term="Presentation"/>
      <category term="Spring"/>
      <category term="Guice"/>
      <category term="salaboy"/>
      <category term="solver"/>
      <category term="Savvion"/>
      <category term="OSGi"/>
      <category term="http://www.blogger.com/img/blank.gif"/>
      <category term="REST"/>
      <category term="DSL regexp antlr"/>
      <category term="project proposals"/>
      <category term="Forward  Chaining"/>
      <category term="declarative programming"/>
      <category term="videos"/>
      <category term="CEP"/>
      <category term="book"/>
      <category term="API"/>
      <category term="brms ajax web"/>
      <category term="combinatorial optimization"/>
      <category term="tests"/>
      <category term="computer vision"/>
      <category term="functional programming"/>
      <category term="Time"/>
      <category term="parser"/>
      <category term="droos ide update-site downloads"/>
      <category term="expressiveness"/>
      <author>
        <name>Mark Proctor</name>
        <email>noreply@blogger.com</email>
      </author>
      <link href="http://blog.athico.com/" rel="alternate" type="text/html"/>
      <link href="http://feeds.athico.com/DroolsRSS" rel="self" type="application/atom+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <subtitle>All things Artificial Intelligence related: Rules, Processes, Events, Agents, Planning, Ontologies and more :)</subtitle>
      <title>Drools &amp; jBPM</title>
      <updated>2012-02-07T02:27:26Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-5869426.post-1182118337881205430</id>
    <link href="http://feeds.athico.com/~r/DroolsRSS/~3/HxS7Ijo8XVk/using-work-items-in-rules-consequences.html" rel="alternate" type="text/html"/>
    <title>Drools &amp; JBPM: Using Work Items in rules' consequences</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">Recently I <a href="http://blog.athico.com/2011/11/guvnor-using-jbpm-work-items-in.html">added</a> the ability to use Work Items as function calls in the guided decision table editor in Guvnor. This highlighted that Work Items have always been available as function calls in DRL but this has not been well documented; leaving users to make the connection.<br/><br/>Various Work Item handlers are available "out of the (jBPM) box" in the org.jbpm.process.workitem package that may prove useful to rule authors. In addition Work Item Handlers providing bespoke services for all domain areas can be easily authored and plugged in.<br/><br/>I have added a couple of examples to drools-examples (in the master branch on <a href="https://github.com/droolsjbpm/drools/tree/master/drools-examples/src/main/java/org/drools/examples/workitemconsequence">github</a> and to be included 5.4.0.beta1) that illustrate how to use Work Item handlers from the right-hand side of a rule: one simulates sending an email and the other provides a greeting service; the code for both residing in custom Work Item handlers.<br/><br/>I hope they provide a catalyst to encourage the use of Work Items in rules.<div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/5869426-1182118337881205430?l=blog.athico.com" width="1"/></div><img height="1" src="http://feeds.feedburner.com/~r/DroolsRSS/~4/HxS7Ijo8XVk" width="1"/></div>
    </summary>
    <updated>2011-12-15T14:02:00Z</updated>
    <category scheme="http://www.blogger.com/atom/ns#" term="jBPM5"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="Drools Expert"/><feedburner:origLink xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://blog.athico.com/2011/12/using-work-items-in-rules-consequences.html</feedburner:origLink>
    <author>
      <name>Michael Anstis</name>
      <email>noreply@blogger.com</email>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-5869426</id>
      <category term="Performance"/>
      <category term="compilers"/>
      <category term="Conflict Resolution"/>
      <category term="Probability"/>
      <category term="use case"/>
      <category term="competition"/>
      <category term="drools webinar"/>
      <category term="uncertainty"/>
      <category term="aires"/>
      <category term="service repository"/>
      <category term="Simulation and Testing"/>
      <category term="Job"/>
      <category term="Testing"/>
      <category term="medical"/>
      <category term="Time-Sensitive"/>
      <category term="GSoC"/>
      <category term="AI"/>
      <category term="javapolis"/>
      <category term="video"/>
      <category term="Ad-Hoc"/>
      <category term="Expert Systems"/>
      <category term="RuleML"/>
      <category term="variables"/>
      <category term="Business Rules"/>
      <category term="Domain Specific Languages"/>
      <category term="workshop"/>
      <category term="java"/>
      <category term="infoQ"/>
      <category term="JBoss Rules"/>
      <category term="example"/>
      <category term="Mind Map"/>
      <category term="Rules Engine"/>
      <category term="BAM"/>
      <category term="DotNet"/>
      <category term="Rules"/>
      <category term="Business Rules Forum"/>
      <category term="Fuzzy"/>
      <category term="decision tables"/>
      <category term="Boot Camp"/>
      <category term="Drools Boot Camp"/>
      <category term="interview"/>
      <category term="Eclipse"/>
      <category term="MicroContainer"/>
      <category term="Stream"/>
      <category term="designer"/>
      <category term="Brazilian"/>
      <category term="upgrade tool"/>
      <category term="milestone"/>
      <category term="BOF"/>
      <category term="Seam"/>
      <category term="quote"/>
      <category term="JDT"/>
      <category term="shadow facts"/>
      <category term="event"/>
      <category term="ORF 2008"/>
      <category term="SOA"/>
      <category term="Smooks"/>
      <category term="GUI"/>
      <category term="grammar"/>
      <category term="Drools Expert"/>
      <category term="sequential"/>
      <category term="announcement"/>
      <category term="Drools"/>
      <category term="buenos"/>
      <category term="ESP"/>
      <category term="Natural Language"/>
      <category term="Camel"/>
      <category term="SSL"/>
      <category term="jBPM5"/>
      <category term="JSON"/>
      <category term="Drools Flow"/>
      <category term="RuleML 2008"/>
      <category term="Rete"/>
      <category term="Production Rules Systems"/>
      <category term="DRL"/>
      <category term="remote"/>
      <category term="brms insurance demo standalone"/>
      <category term="FactTemplate"/>
      <category term="traveling tournament"/>
      <category term="BRMS"/>
      <category term="MVEL"/>
      <category term="Rule Flow"/>
      <category term="Open Source"/>
      <category term="argentina"/>
      <category term="IKVM"/>
      <category term="BPMN"/>
      <category term="source code"/>
      <category term="standards"/>
      <category term="machine learning"/>
      <category term="image processing"/>
      <category term="Backward Chaining."/>
      <category term="Monitoring"/>
      <category term="modify block"/>
      <category term="GIS"/>
      <category term="accumulate"/>
      <category term="Drools Fusion"/>
      <category term="Codehaus"/>
      <category term="JUG"/>
      <category term="Rule Authoring"/>
      <category term="Negation"/>
      <category term="Business Rules Governance"/>
      <category term="DynaBeans"/>
      <category term="junit"/>
      <category term="JFDI"/>
      <category term="Rule Engines"/>
      <category term="KAMS"/>
      <category term="dynamically generated classes"/>
      <category term="ORF"/>
      <category term="Form Builder"/>
      <category term="syntax"/>
      <category term="shadow proxies"/>
      <category term="BRMS Guvnor Drools"/>
      <category term="ANTLR"/>
      <category term="Service Manager"/>
      <category term="FedEx"/>
      <category term="DSL"/>
      <category term="Clips"/>
      <category term="planner"/>
      <category term="traits"/>
      <category term="examination"/>
      <category term="search space"/>
      <category term="Janino"/>
      <category term="MySQL"/>
      <category term="Web Services"/>
      <category term="semantic web"/>
      <category term="jBPM"/>
      <category term="constraint programming"/>
      <category term="generated classes"/>
      <category term="Research Network"/>
      <category term="algorithm"/>
      <category term="cloud"/>
      <category term="Life Cycle"/>
      <category term="MISMO"/>
      <category term="BPEL"/>
      <category term="LDAP"/>
      <category term="jBPM5 webinar"/>
      <category term="Templates"/>
      <category term="case management"/>
      <category term="android"/>
      <category term="persistence"/>
      <category term="RIF"/>
      <category term="Logic Operators"/>
      <category term="relational programming"/>
      <category term="Debug"/>
      <category term="Jess"/>
      <category term="release"/>
      <category term="extensibility"/>
      <category term="Atom"/>
      <category term="Analytics"/>
      <category term="Portuguese"/>
      <category term="Meetups"/>
      <category term="Synasc"/>
      <category term="drools puzzle"/>
      <category term="Computer Games"/>
      <category term="Progress"/>
      <category term="JavaOne"/>
      <category term="accumulate function"/>
      <category term="Programming"/>
      <category term="Healthcare"/>
      <category term="October Rules Fest"/>
      <category term="Guvnor"/>
      <category term="SwitchYard"/>
      <category term="WordNet"/>
      <category term="SBVR"/>
      <category term="devoxx"/>
      <category term="one"/>
      <category term="Drools Chance"/>
      <category term="plug tree"/>
      <category term="Presentation"/>
      <category term="Spring"/>
      <category term="Guice"/>
      <category term="salaboy"/>
      <category term="solver"/>
      <category term="Savvion"/>
      <category term="OSGi"/>
      <category term="http://www.blogger.com/img/blank.gif"/>
      <category term="REST"/>
      <category term="DSL regexp antlr"/>
      <category term="project proposals"/>
      <category term="Forward  Chaining"/>
      <category term="declarative programming"/>
      <category term="videos"/>
      <category term="CEP"/>
      <category term="API"/>
      <category term="brms ajax web"/>
      <category term="combinatorial optimization"/>
      <category term="tests"/>
      <category term="computer vision"/>
      <category term="functional programming"/>
      <category term="Time"/>
      <category term="parser"/>
      <category term="droos ide update-site downloads"/>
      <category term="expressiveness"/>
      <author>
        <name>Mark Proctor</name>
        <email>noreply@blogger.com</email>
      </author>
      <link href="http://blog.athico.com/" rel="alternate" type="text/html"/>
      <link href="http://feeds.athico.com/DroolsRSS" rel="self" type="application/atom+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <subtitle>All things Artificial Intelligence related: Rules, Processes, Events, Agents, Planning, Ontologies and more :)</subtitle>
      <title>Drools &amp; jBPM</title>
      <updated>2012-02-02T23:27:14Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-5869426.post-5523720838443591828</id>
    <link href="http://feeds.athico.com/~r/DroolsRSS/~3/Djx9us6FrOc/jbpm-form-builder-follow-up.html" rel="alternate" type="text/html"/>
    <title>Drools &amp; JBPM: jBPM Form Builder follow-up</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">Greetings. There are a few items I will be adding to the Form Builder in the next few weeks, including the following:

<p>
<b>Create user roles for different menu options</b><br/>
It’s important to have different roles with separate functions. Certain profiles, i.e. web designer, could edit any visual component. However, a functional analyst might need to have limited visual components, previously approved by a web designer. At first, these are the profiles in mind:
</p><ul>
<li><b>web designer:</b> Can define any customized visual component</li>
<li><b>functional analyst:</b> Can use any customized visual component</li>
</ul>
<p/>
<p>
<b>Create visual asistants for script development on visual components specific events</b><br/>
Profiles that will use the form builder, at least to begin with, shouldn’t need scripting knowledge to understand what to do on specific visual events or how to handle them. That’s why a series of visual helpers should allow a user with very few technical knowledge of scripting to define behaviour for certain visual events like onClick, onChange, and so on.
</p>
<p>
<b>Guvnor and jBPM console interaction</b><br/>
I will change current jBPM console interaction to use a specific API exposed by the form builder. Currently we publish specific FTL files in guvnor every time we save a form definition, making it unnecessary to change it. This option, however, could be improved, in order to provide different language options. Here's an example view of one of them:
<a href="http://i40.tinypic.com/2d0nc68.png"><img border="0" height="480" src="http://i40.tinypic.com/2d0nc68.png" width="640"/></a>
</p>
<p>
<b>Instalation scripts</b><br/>
Currently I’m working on expanding the jbpm installer to have the form builder included in it.
</p><br/>

Also, we expect to have this as an available module by next release (5.3) If everything goes well, everyone will have this tool pretty soon<br/>
<br/>
Cheers,<br/>
<br/>
Mariano<div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/5869426-5523720838443591828?l=blog.athico.com" width="1"/></div><img height="1" src="http://feeds.feedburner.com/~r/DroolsRSS/~4/Djx9us6FrOc" width="1"/></div>
    </summary>
    <updated>2011-12-14T20:33:00Z</updated><feedburner:origLink xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://blog.athico.com/2011/12/jbpm-form-builder-follow-up.html</feedburner:origLink>
    <author>
      <name>Marian Buenosayres</name>
      <email>noreply@blogger.com</email>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-5869426</id>
      <category term="Performance"/>
      <category term="compilers"/>
      <category term="Conflict Resolution"/>
      <category term="Probability"/>
      <category term="use case"/>
      <category term="competition"/>
      <category term="drools webinar"/>
      <category term="uncertainty"/>
      <category term="aires"/>
      <category term="service repository"/>
      <category term="Simulation and Testing"/>
      <category term="Job"/>
      <category term="Testing"/>
      <category term="medical"/>
      <category term="Time-Sensitive"/>
      <category term="GSoC"/>
      <category term="AI"/>
      <category term="javapolis"/>
      <category term="video"/>
      <category term="Ad-Hoc"/>
      <category term="Expert Systems"/>
      <category term="RuleML"/>
      <category term="variables"/>
      <category term="Business Rules"/>
      <category term="Domain Specific Languages"/>
      <category term="workshop"/>
      <category term="java"/>
      <category term="infoQ"/>
      <category term="JBoss Rules"/>
      <category term="example"/>
      <category term="Mind Map"/>
      <category term="Rules Engine"/>
      <category term="BAM"/>
      <category term="DotNet"/>
      <category term="Rules"/>
      <category term="Business Rules Forum"/>
      <category term="Fuzzy"/>
      <category term="decision tables"/>
      <category term="Boot Camp"/>
      <category term="Drools Boot Camp"/>
      <category term="interview"/>
      <category term="Eclipse"/>
      <category term="MicroContainer"/>
      <category term="Stream"/>
      <category term="designer"/>
      <category term="Brazilian"/>
      <category term="upgrade tool"/>
      <category term="milestone"/>
      <category term="BOF"/>
      <category term="Seam"/>
      <category term="quote"/>
      <category term="JDT"/>
      <category term="shadow facts"/>
      <category term="event"/>
      <category term="ORF 2008"/>
      <category term="SOA"/>
      <category term="Smooks"/>
      <category term="GUI"/>
      <category term="grammar"/>
      <category term="Drools Expert"/>
      <category term="sequential"/>
      <category term="announcement"/>
      <category term="Drools"/>
      <category term="buenos"/>
      <category term="ESP"/>
      <category term="Natural Language"/>
      <category term="Camel"/>
      <category term="SSL"/>
      <category term="jBPM5"/>
      <category term="JSON"/>
      <category term="Drools Flow"/>
      <category term="RuleML 2008"/>
      <category term="Rete"/>
      <category term="Production Rules Systems"/>
      <category term="DRL"/>
      <category term="remote"/>
      <category term="brms insurance demo standalone"/>
      <category term="FactTemplate"/>
      <category term="traveling tournament"/>
      <category term="BRMS"/>
      <category term="MVEL"/>
      <category term="Rule Flow"/>
      <category term="Open Source"/>
      <category term="argentina"/>
      <category term="IKVM"/>
      <category term="BPMN"/>
      <category term="source code"/>
      <category term="standards"/>
      <category term="machine learning"/>
      <category term="image processing"/>
      <category term="Backward Chaining."/>
      <category term="Monitoring"/>
      <category term="modify block"/>
      <category term="GIS"/>
      <category term="accumulate"/>
      <category term="Drools Fusion"/>
      <category term="Codehaus"/>
      <category term="JUG"/>
      <category term="Rule Authoring"/>
      <category term="Negation"/>
      <category term="Business Rules Governance"/>
      <category term="DynaBeans"/>
      <category term="junit"/>
      <category term="JFDI"/>
      <category term="Rule Engines"/>
      <category term="KAMS"/>
      <category term="dynamically generated classes"/>
      <category term="ORF"/>
      <category term="Form Builder"/>
      <category term="syntax"/>
      <category term="shadow proxies"/>
      <category term="BRMS Guvnor Drools"/>
      <category term="ANTLR"/>
      <category term="Service Manager"/>
      <category term="FedEx"/>
      <category term="DSL"/>
      <category term="Clips"/>
      <category term="planner"/>
      <category term="traits"/>
      <category term="examination"/>
      <category term="search space"/>
      <category term="Janino"/>
      <category term="MySQL"/>
      <category term="Web Services"/>
      <category term="semantic web"/>
      <category term="jBPM"/>
      <category term="constraint programming"/>
      <category term="generated classes"/>
      <category term="Research Network"/>
      <category term="algorithm"/>
      <category term="cloud"/>
      <category term="Life Cycle"/>
      <category term="MISMO"/>
      <category term="BPEL"/>
      <category term="LDAP"/>
      <category term="jBPM5 webinar"/>
      <category term="Templates"/>
      <category term="case management"/>
      <category term="android"/>
      <category term="persistence"/>
      <category term="RIF"/>
      <category term="Logic Operators"/>
      <category term="relational programming"/>
      <category term="Debug"/>
      <category term="Jess"/>
      <category term="release"/>
      <category term="extensibility"/>
      <category term="Atom"/>
      <category term="Analytics"/>
      <category term="Portuguese"/>
      <category term="Meetups"/>
      <category term="Synasc"/>
      <category term="drools puzzle"/>
      <category term="Computer Games"/>
      <category term="Progress"/>
      <category term="JavaOne"/>
      <category term="accumulate function"/>
      <category term="Programming"/>
      <category term="Healthcare"/>
      <category term="October Rules Fest"/>
      <category term="Guvnor"/>
      <category term="SwitchYard"/>
      <category term="WordNet"/>
      <category term="SBVR"/>
      <category term="devoxx"/>
      <category term="one"/>
      <category term="Drools Chance"/>
      <category term="plug tree"/>
      <category term="Presentation"/>
      <category term="Spring"/>
      <category term="Guice"/>
      <category term="salaboy"/>
      <category term="solver"/>
      <category term="Savvion"/>
      <category term="OSGi"/>
      <category term="http://www.blogger.com/img/blank.gif"/>
      <category term="REST"/>
      <category term="DSL regexp antlr"/>
      <category term="project proposals"/>
      <category term="Forward  Chaining"/>
      <category term="declarative programming"/>
      <category term="videos"/>
      <category term="CEP"/>
      <category term="API"/>
      <category term="brms ajax web"/>
      <category term="combinatorial optimization"/>
      <category term="tests"/>
      <category term="computer vision"/>
      <category term="functional programming"/>
      <category term="Time"/>
      <category term="parser"/>
      <category term="droos ide update-site downloads"/>
      <category term="expressiveness"/>
      <author>
        <name>Mark Proctor</name>
        <email>noreply@blogger.com</email>
      </author>
      <link href="http://blog.athico.com/" rel="alternate" type="text/html"/>
      <link href="http://feeds.athico.com/DroolsRSS" rel="self" type="application/atom+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <subtitle>All things Artificial Intelligence related: Rules, Processes, Events, Agents, Planning, Ontologies and more :)</subtitle>
      <title>Drools &amp; jBPM</title>
      <updated>2012-02-02T23:27:13Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-5869426.post-2039062002935989598</id>
    <link href="http://feeds.athico.com/~r/DroolsRSS/~3/jchzJEUbTUk/jbpm-52-released.html" rel="alternate" type="text/html"/>
    <title>Drools &amp; JBPM: jBPM 5.2 released</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><div style="text-align: justify;">The team is proud to present the next release of jBPM.  <a href="http://www.jboss.org/jbpm">jBPM</a>  is an open-source business process engine, supporting BPMN2.  I think  we have a few very nice new features in this release, with for example<br/><ul><li>the <a href="http://kverlaen.blogspot.com/2011/10/introducing-service-repository.html">domain-specific service repository</a>: import existing services from a repository (e.g. Twitter integration etc.) and start using them in your processes<br/></li><li>the <a href="http://vimeo.com/30857949">advancements on the web-based process designer</a>: support for more node types, visual validation, migration support, etc.<br/></li><li>support for the lightning-fast <a href="http://www.jboss.org/as7">JBoss AS7</a>: install your applications on AS7, which is now the default application server in the jbpm-installer<br/></li></ul>A full list of features is added below.</div><br/>You can download the artefacts <a href="https://sourceforge.net/projects/jbpm/files/jBPM%205/jbpm-5.2.0.Final/">here</a>.<br/>Documentation can be found <a href="http://docs.jboss.org/jbpm/v5.2/userguide/">here</a>.<br/><br/><div style="text-align: justify;">To get started, it is probably best to download the <a href="http://sourceforge.net/projects/jbpm/files/jBPM%205/jbpm-5.2.0.Final/jbpm-5.2.0.Final-installer-full.zip/download">full installer</a> and follow the <a href="http://docs.jboss.org/jbpm/v5.2/userguide/ch03.html">installer documentation</a>, to guide you through the tools with a simple example.  You can also import the <a href="http://sourceforge.net/projects/jbpm/files/jBPM%205/jbpm-5.2.0.Final/jbpm-5.2.0.Final-examples.zip/download">examples</a> module to have look at the numerous examples included in there.<br/><br/>We'll be updating some of the documentation and adding some quick starts and more examples in the next few weeks, so stay tuned!<br/></div><br/>Have fun!<br/><br/><br/><span style="font-weight: bold; font-size: 130%;">Release notes</span><br/><br/><span style="font-size: 85%;">On top of some optimizations, bug fixes and small improvements, these are the most important new features in jBPM 5.2.0.Final.</span><br/><br/><span style="font-size: 100%;">Core engine</span><br/><ul style="text-align: justify;"><li><span style="font-size: 85%;"><a href="http://kverlaen.blogspot.com/2011/10/introducing-service-repository.html" style="font-style: italic;">domain-specific service repository</a>: the ability to import <a href="http://docs.jboss.org/jbpm/v5.2/userguide/ch13.html">domain-specific services</a>  from a repository so you can immediately use them in your processes,  e.g. twitter integration, FTP, web or REST service, etc.  This is ideal  for non-technical users to integrate with external services<br/></span></li><li><span style="font-size: 85%;">improved <span style="font-style: italic;">persistence support</span> for multiple databases and backwards compatibility</span></li><li><span style="font-size: 85%;"><span style="font-style: italic;">jbpm-test</span>: new module that offers improved support for <a href="http://kverlaen.blogspot.com/2011/04/junit-testing-your-jbpm5-processes.html">JUnit testing of processes</a>, including the automatic setup of the necessary datasources and services on the fly<br/></span></li><li><span style="font-size: 85%;">support for <span style="font-style: italic;">Java7</span></span></li></ul><span style="font-size: 100%;"><br/>Installer</span><br/><ul style="text-align: justify;"><li><span style="font-size: 85%;">added support for JBoss AS7, which is now used as the default application server in the jbpm-installer</span></li></ul><span style="font-size: 100%;"><br/></span><span style="font-size: 100%;">Web-based designer</span><br/><ul style="text-align: justify;"><li><span style="font-size: 85%;">Integration with the domain-specific service repository</span></li><li><span style="font-size: 85%;">Visual Process Validation: new features allows users to visually validate their processes at edit time</span></li><li><span style="font-size: 85%;">Ability to view the process in ERDF, JSON, PDF, PNG, BPMN2, and SVG formats</span></li><li><span style="font-size: 85%;">New Process Information section: contains information about the process, such as name, creation date, version, etc</span></li><li><span style="font-size: 85%;">jBPM 3.2 Process Migration: new feature allows users to migrate existing jBPM 3.2-based processes to BPMN2</span></li><li><span style="font-size: 85%;">Ability to import existing bpmn2 processes straight into designer</span></li><li><span style="font-size: 85%;">Ability to create "sharable" process image, PDF, and ability to generate code for embedding designer in custom applications</span></li><li><span style="font-size: 85%;">Support four boundary events</span></li><li><span style="font-size: 85%;">Visual support for Text Annotations, Groups, and Lanes</span></li><li><span style="font-size: 85%;">Support for sub-processes</span></li><li><span style="font-size: 85%;">Update to latest Guvnor<br/></span></li></ul><span style="font-size: 100%;"><br/>Human task service<br/></span><ul style="text-align: justify;"><li><span style="font-size: 85%;">introduction of the <span style="font-style: italic;">task service interface</span>,  and interface to interact with the (default) human task service  (independent of the underlying communication pattern and technology)<br/></span></li><li><span style="font-size: 85%;"><span style="font-style: italic;">user group callback</span>:  easily integrate with your own service for user / group validation and  user-group-management (which users are part of which groups)<br/></span></li><li><span style="font-size: 85%;"><span style="font-style: italic;">local task service</span>:  a local implementation of the task service that runs locally, next to  the process engine, and (re)uses the same transaction of the core engine<br/></span></li><li><span style="font-size: 85%;"><span style="font-style: italic;">human task service war</span>: deploy the human task service as a service on your application server<br/></span></li></ul><span style="font-size: 100%;"><br/>jBPM console<br/></span><ul style="text-align: justify;"><li><span style="font-size: 85%;">updated to latest version of the JBoss BPM console</span></li><li><span style="font-size: 85%;">console synchro
