<!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="https://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;">
BPM Console Proposed Components
</h3>
<span style="margin-bottom: 10px;">
modified by <a href="https://community.jboss.org/people/salaboy21">Mauricio Salatino</a> in <i>jBPM</i> - <a href="https://community.jboss.org/docs/DOC-18742">View the full document</a>
</span>
<hr style="margin: 20px 0; border: none; background-color: #dadada; height: 1px;">
<div class="jive-rendered-content"><p>This document a set of decoupled documents to provide the functionality that is already provided by the bpm-console</p><p>The main focus is to keep all the components as decoupled as possible using a central bus of communication to share information between them.</p><p style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><p><div class="toc" style="border: 1px dashed black; padding: 10px;"><ul><li>
<a class="jive-link-anchor-small" href="#Process_Components">Process Components</a>
</li>
<ul><li>
<a class="jive-link-anchor-small" href="#1_Process_Definitions_List">1) Process Definitions List</a>
</li>
<li>
<a class="jive-link-anchor-small" href="#2_Process_Definition_Details">2) Process Definition Details</a>
</li>
<li>
<a class="jive-link-anchor-small" href="#3_Process_Instances_List">3) Process Instances List</a>
</li>
<li>
<a class="jive-link-anchor-small" href="#4_Process_Instance_Details">4) Process Instance Details</a>
</li>
</ul><li>
<a class="jive-link-anchor-small" href="#Global_Requirements">Global Requirements</a>
</li>
</ul></div></p><p style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><h1 id="Process_Components">Process Components</h1><p>This section describe all the component related to Business Processes. This is how the jbpm-console looks right now:</p><p><a href="https://community.jboss.org/servlet/JiveServlet/showImage/102-18742-3-19004/Screen+Shot+2012-07-14+at+11.22.57+AM.png"><span> https://community.jboss.org/servlet/JiveServlet/downloadImage/102-18742-3-19004/450-254/Screen+Shot+2012-07-14+at+11.22.57+AM.png </span></a></p><p>This functionality will be decoupled in the following components</p><h2 id="1_Process_Definitions_List">1) Process Definitions List</h2><p><a href="https://community.jboss.org/servlet/JiveServlet/showImage/102-18742-3-19005/Screen+Shot+2012-07-14+at+11.27.19+AM.png"><span> https://community.jboss.org/servlet/JiveServlet/downloadImage/102-18742-3-19005/261-578/Screen+Shot+2012-07-14+at+11.27.19+AM.png </span></a></p><p>Requirements for this component:</p><ul><li>Query Process Definitions<ul><li>Use the Rest Implementation</li><li>Provide a pluggable way to hook any runtime (basically using an interface)</li><li>Add filter option by process definition name</li><li>Pagination</li><li>Filter by type of definition</li><li>Refresh</li><li>Double clicking in one of the rows of the list must open the Process Definition Details component</li></ul></li></ul><p>We should have a local implementation to not depend on the jbpm-console server.. </p><p style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><p>@TODO: analyze how the current rest implementation is returning the process definitions. We should list all the process definitions from the VFS, does it have ways of filtering things?</p><p>If it does, let's create a local implementation of this service inside the process definitions list widget to avoid using an external component and speed testing.</p><p style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><p style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><h2 id="2_Process_Definition_Details">2) Process Definition Details</h2><p>I'm not sure if this was included in the jbpm-console. We should provide a detailed view about the process which should allow us to see the process diagram and the BPMN XML text.</p><p>It should also contain a link to edit the process using the process designer which should be provided as a separate component. </p><p style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><p>@Toni: can we get reuse the code for displaying the diagram of the process here from the old console? or is it in someway using something that we will not have available here?</p><p style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><p style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><p style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><h2 id="3_Process_Instances_List">3) Process Instances List</h2><p><a href="https://community.jboss.org/servlet/JiveServlet/showImage/102-18742-3-19006/Screen+Shot+2012-07-14+at+11.27.30+AM.png"><span> https://community.jboss.org/servlet/JiveServlet/downloadImage/102-18742-3-19006/450-240/Screen+Shot+2012-07-14+at+11.27.30+AM.png </span></a></p><p>Requirments for this component: </p><ul><li>Filters (by process definition, started date, state, etc)</li><li>Pagination</li><li>Refresh</li><li>Perspectives (show and hide colums, but we should be able to show all of them from the begining)</li><li>build a local implementations and see if we can use the Rest Services for this. A local service which give us the information required for this shouldn't be difficult to create.</li></ul><p><span style="color: #ff0000;">We must avoid for the first version the buttons to create,delete and signal the process instances. That should not be responsability of the process instances list component, see Process Instance Details Component </span></p><p style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><h2 id="4_Process_Instance_Details">4) Process Instance Details</h2><p>The process instance detail component should be in charge of showing us the current status of a process instance along with the process information and the controls to interact with that specific instance.</p><p><a href="https://community.jboss.org/servlet/JiveServlet/showImage/102-18742-3-19007/Screen+Shot+2012-07-14+at+11.27.40+AM.png"><span> https://community.jboss.org/servlet/JiveServlet/downloadImage/102-18742-3-19007/450-77/Screen+Shot+2012-07-14+at+11.27.40+AM.png </span></a></p><p><a href="https://community.jboss.org/servlet/JiveServlet/showImage/102-18742-3-19008/Screen+Shot+2012-07-14+at+11.45.12+AM.png"><span> https://community.jboss.org/servlet/JiveServlet/downloadImage/102-18742-3-19008/450-142/Screen+Shot+2012-07-14+at+11.45.12+AM.png </span></a></p><p><a href="https://community.jboss.org/servlet/JiveServlet/showImage/102-18742-3-19009/Screen+Shot+2012-07-14+at+11.45.20+AM.png"><span> https://community.jboss.org/servlet/JiveServlet/downloadImage/102-18742-3-19009/450-46/Screen+Shot+2012-07-14+at+11.45.20+AM.png </span></a></p><p><a href="https://community.jboss.org/servlet/JiveServlet/showImage/102-18742-3-19010/Screen+Shot+2012-07-14+at+11.51.27+AM.png"><span> https://community.jboss.org/servlet/JiveServlet/downloadImage/102-18742-3-19010/215-35/Screen+Shot+2012-07-14+at+11.51.27+AM.png </span></a></p><p>@TODO add all the actions and parameters for each action. </p><p style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><p style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><h1 id="Global_Requirements">Global Requirements</h1><p>For the BPM components perspective we will not deal with authentication or authorizations, that must be provided by the application that is using the components. But there are some basic things</p><p>that our components will be waiting in order to decide how to render themselves.</p><p style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><p>There should be an Administrator Role and also we can create an Owner role that can be mapped to different groups or users. </p><p>All the components should recieve and use the role provided by the containing applicaiton.</p></div>
<div style="background-color: #f4f4f4; padding: 10px; margin-top: 20px;">
<p style="margin: 0;">Comment by <a href="https://community.jboss.org/docs/DOC-18742">going to Community</a></p>
        <p style="margin: 0;">Create a new document in jBPM at <a href="https://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>