<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<body link="#355491" alink="#4262a1" vlink="#355491" style="background: #e2e2e2; margin: 0; padding: 20px;">
<div>
        <table cellpadding="0" bgcolor="#FFFFFF" border="0" cellspacing="0" style="border: 1px solid #dadada; margin-bottom: 30px; width: 100%; -moz-border-radius: 6px; -webkit-border-radius: 6px;">
                <tbody>
                        <tr>
                                <td>
                                        <table border="0" cellpadding="0" cellspacing="0" bgcolor="#FFFFFF" style="border: solid 2px #ccc; background: #dadada; width: 100%; -moz-border-radius: 6px; -webkit-border-radius: 6px;">
                                                <tbody>
                                                        <tr>
                                                                <td bgcolor="#000000" valign="middle" height="58px" style="border-bottom: 1px solid #ccc; padding: 20px; -moz-border-radius-topleft: 3px; -moz-border-radius-topright: 3px; -webkit-border-top-right-radius: 5px; -webkit-border-top-left-radius: 5px;">
                                                                        <h1 style="color: #333333; font: bold 22px Arial, Helvetica, sans-serif; margin: 0; display: block !important;">
                                                                        <!-- To have a header image/logo replace the name below with your img tag -->
                                                                        <!-- Email clients will render the images when the message is read so any image -->
                                                                        <!-- must be made available on a public server, so that all recipients can load the image. -->
                                                                        <a href="http://community.jboss.org/index.jspa" style="text-decoration: none; color: #E1E1E1">JBoss Community</a></h1>
                                                                </td>
                                                        </tr>
                                                        <tr>
                                                                <td bgcolor="#FFFFFF" style="font: normal 12px Arial, Helvetica, sans-serif; color:#333333; padding: 20px; -moz-border-radius-bottomleft: 4px; -moz-border-radius-bottomright: 4px; -webkit-border-bottom-right-radius: 5px; -webkit-border-bottom-left-radius: 5px;"><h3 style="margin: 10px 0 5px; font-size: 17px; font-weight: normal;">
jBPM4 Productization Requirements
</h3>
<span style="margin-bottom: 10px;">
modified by <a href="http://community.jboss.org/people/admin">Administrator Administrator</a> in <i>jBPM</i> - <a href="http://community.jboss.org/docs/DOC-13680">View the full document</a>
</span>
<hr style="margin: 20px 0; border: none; background-color: #dadada; height: 1px;">
<div class="jive-rendered-content"><h1>Realized productization<br/></h1><h4>Features</h4><ul><li> jPDL</li><ul><li>Control flow activities: start, state, decision, fork, join, end, task, sub-process, custom</li><li>Automatic activities: java, script, hql, sql, mail<br/></li><li>Timers</li><li>Asynchronous continuations</li></ul><li>JBoss integration</li><ul><li>Deployment as a service archive</li><li>ProcessEngine in JNDI</li></ul></ul><h4>QA</h4><ul><li>Integration test suite is formed by modules examples and the test-db</li><li>Module examples contains tests that are explained in the user guide.  Aka public test suite.  The examples are also included as a project in the distribution.    </li><li>Module test-db contains tests that verify all aspects of functionality using public API.  Aka private test suite.<br/></li><li>Both modules examples and test-db only make use of public API.</li><li>CI is set up for the matrix {jdks}x{jboss's}x{databases}.  See job jbpm4-jboss: <a class="jive-link-external-small" href="http://hudson.qa.jboss.com/hudson/view/JBPM4/">http://hudson.qa.jboss.com/hudson/view/JBPM4/</a></li></ul><h4>Engine</h4><ul><li>A release is only done if the continuous integration runs OK.</li><li>Clear, minimal session facade API<br/></li><li>XSD Schema for the jPDL language</li><ul><li><a class="jive-link-external-small" href="http://docs.jboss.org/jbpm/v4.0/schemadocs/">http://docs.jboss.org/jbpm/v4.0/schemadocs/</a></li></ul><li>Automatic installer for installing jBPM into JBoss</li><ul><li>Parameters: jboss version, database, jdbc parameters, identity component</li><li>Support is only given on these automated installations</li></ul></ul><h4>Documentation</h4><ul><li>A userguide documents all the features and functionalities that are supported. </li><ul><li>Each functionality must be illustrated with an example</li><li>Each functionality must have sufficient test coverage in the extended test suite (test-db)</li><li><a class="jive-link-external-small" href="http://docs.jboss.org/jbpm/v4.0/userguide/html_single/">http://docs.jboss.org/jbpm/v4.0/userguide/html_single/</a></li></ul><li>Javadocs for the API</li><ul><li><a class="jive-link-external-small" href="http://docs.jboss.org/jbpm/v4.0/javadocs/">http://docs.jboss.org/jbpm/v4.0/javadocs/</a></li></ul></ul><h4>Designer</h4><ul><li>Each piece of supported functionality in the jPDL language must be supported by the designer</li><li>Designer plugins included in JBossTools/JBDS</li></ul><h4>Migration</h4><ul><li>jBPM 3 should be able to run side by side with jBPM 4</li></ul><h1>Roadmap and prioritization</h1><h4>Work in progress<br/></h4><ul><li>Integration with JBoss IDM (Jeff Yu is working on this)</li><li>Process conversion tool (Jim Ma is working on this)</li><li>Controlled minimal tests for concurrent DB access: SOSE's (Joram Barrez)</li><li>Designer support for older versions (Koen Aers)</li><ul><li>Support for multiple, configurable runtimes</li></ul></ul><h4>Prioritization of new productization requirements<br/></h4><ul><li>Clustering</li><li>Automated QA for console and/or documentation of manual test procedures<br/></li><li>Automated QA for designer and/or documentation of manual test procedures</li><li>SEAM integration</li><ul><li>Pageflow <br/></li><li>Pageflow designer</li></ul><li>JMS support (and/or JCA inflow support) for asynchronous messaging</li><li>ProcessInstance migration in case of new process definition deployment</li><li>jBPM-ESB integration</li><ul><li>Locate services through the registry<br/></li><li>Invoke services without regard to their underlying implementation</li><li>Support synchronous or asynchronous calls</li><li>Make invocation layer pluggable so that third-party ESBs can be integrated as well</li></ul><ul><li>Part of community download ?    </li></ul><li>Putting script code in privileged blocks to allow security mgr to control authorization inside scripts. (Marc Schoenefeld)</li></ul><h1>Process</h1><ul><li>jBPM is consumed by EAP and SOA-P</li><li>EAP and SOA-P can create issues in JBPM's bug tracker: <a class="jive-link-external-small" href="https://jira.jboss.org/jira/browse/JBPM">https://jira.jboss.org/jira/browse/JBPM</a></li><ul><li>Platform people are responsible for creating platform issues and linking them to project issues.</li><li>jBPM bug tracker will have releases defined corresponding the platform releases.  E.g. SOA 4.3 CP02, EAP 5.0</li><li>The jBPM team will discuss these issues with the platform team</li><li>The jBPM team will assign product related issues into a platform release and the responsible team member</li></ul><li>Each jBPM community release can be identified as a product version.</li><ul><li>A product branch is created in the project</li><li>Only productization issues (bug fixes) are committed to that branch</li><li>The platforms consume that product branch in their build</li></ul><li>The jBPM team will commit issues before the platform code freeze date</li><li>The platform teams are responsible for creating the platform tags that are based on the platform branches</li></ul></div>
<div style="background-color: #f4f4f4; padding: 10px; margin-top: 20px;">
<p style="margin: 0;">Comment by <a href="http://community.jboss.org/docs/DOC-13680">going to Community</a></p>
        <p style="margin: 0;">Create a new document in jBPM at <a href="http://community.jboss.org/choose-container!input.jspa?contentType=102&containerType=14&container=2034">Community</a></p>
</div></td>
</tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</table>
</div>
</body>
</html>