<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Bonita open source BPM community blog &#187; Tutorial</title>
	<atom:link href="http://www.bonitasoft.org/blog/category/tutorial/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.bonitasoft.org/blog</link>
	<description>Just another WordPress weblog</description>
	<lastBuildDate>Fri, 03 Feb 2012 10:23:27 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.4</generator>
		<item>
		<title>How to populate a select box field from a database using Groovy</title>
		<link>http://www.bonitasoft.org/blog/tutorial/how-to-populate-a-select-box-field-from-a-database-using-groovy/</link>
		<comments>http://www.bonitasoft.org/blog/tutorial/how-to-populate-a-select-box-field-from-a-database-using-groovy/#comments</comments>
		<pubDate>Fri, 03 Feb 2012 10:23:27 +0000</pubDate>
		<dc:creator>frederic.bouquet</dc:creator>
				<category><![CDATA[Tip of the Week]]></category>
		<category><![CDATA[Tutorial]]></category>

		<guid isPermaLink="false">http://www.bonitasoft.org/blog/?p=5057</guid>
		<description><![CDATA[A good practice while developing processes is to store business data in an external business database and retrieve them only when needed. A good question is: How do I retrieve this information from my forms? Here&#8217;s a quick tutorial which explains how to retrieve the information from an external database, and display it as the [...]]]></description>
			<content:encoded><![CDATA[<p>A good practice while developing processes is to store business data in an external business database and retrieve them only when needed. A good question is: <em>How do I retrieve this information from my forms?</em></p>
<p>Here&#8217;s a quick tutorial which explains how to retrieve the information from an external database, and display it as the initial value of a select box field in a form. You can find the process used as an example <a title="here" href="http://www.bonitasoft.org/exchange/extension_view.php?eid=288" target="_blank">here</a>.</p>
<p>Create a process with a human task and one form to interact with.</p>
<p>﻿<a href="http://www.bonitasoft.org/blog/wp-content/uploads/2012/02/DrawOSD_2012-02-02_16-12-00.png"><img class="alignnone size-full wp-image-5058" title="Example process" src="http://www.bonitasoft.org/blog/wp-content/uploads/2012/02/DrawOSD_2012-02-02_16-12-00.png" alt="" width="256" height="103" /></a></p>
<p>Add an <strong>entry pageflow</strong> form on the task <em>Display data</em>.</p>
<p><a href="http://www.bonitasoft.org/blog/wp-content/uploads/2012/02/form.png"><img class="alignnone size-full wp-image-5059" title="Add a form to the human task" src="http://www.bonitasoft.org/blog/wp-content/uploads/2012/02/form.png" alt="" width="504" height="200" /></a></p>
<p>In this form, use a widget to add a select box field.</p>
<p><a href="http://www.bonitasoft.org/blog/wp-content/uploads/2012/02/select.png"><img class="alignnone size-full wp-image-5060" title="Add a select widget" src="http://www.bonitasoft.org/blog/wp-content/uploads/2012/02/select.png" alt="" width="479" height="361" /></a></p>
<p>Click on the select box widget, then on the General tab and Data pane.  In the available value field, use this script:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:620px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">import groovy.sql.Sql;<br />
def result = []<br />
Sql sql = providedscripts.BonitaSql.newInstance(url,username,password,new org.h2.Driver())<br />
sql.eachRow 'select * from USERS;', { result += it.name }<br />
sql.close()<br />
result</div></div>
<p>This script will create a list to store the usernames that are returned. Then, it opens the SQL connection to query the table and add each name to the list. Finally, it returns the result.</p>
<p>At the execution, you&#8217;ll get this:</p>
<p><a href="http://www.bonitasoft.org/blog/wp-content/uploads/2012/02/execution.png"><img class="alignnone size-full wp-image-5061" title="execution" src="http://www.bonitasoft.org/blog/wp-content/uploads/2012/02/execution.png" alt="" width="512" height="257" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.bonitasoft.org/blog/tutorial/how-to-populate-a-select-box-field-from-a-database-using-groovy/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Use recorders to track Bonita Execution Engine events</title>
		<link>http://www.bonitasoft.org/blog/tutorial/use-recorders-to-track-engine-events/</link>
		<comments>http://www.bonitasoft.org/blog/tutorial/use-recorders-to-track-engine-events/#comments</comments>
		<pubDate>Mon, 19 Dec 2011 10:03:26 +0000</pubDate>
		<dc:creator>nigel.gray</dc:creator>
				<category><![CDATA[Tip of the Week]]></category>
		<category><![CDATA[Tutorial]]></category>

		<guid isPermaLink="false">http://www.bonitasoft.org/blog/?p=4708</guid>
		<description><![CDATA[A very useful engine capability in Bonita Open Solution, is a recorder. This feature is in fact installed by default, but is may not be widely known. A recorder listens to the different events taking place in the Bonita Execution Engine and records them all to a log. The online BonitaSoft Documentation system now documents recorders. So, [...]]]></description>
			<content:encoded><![CDATA[<p>A very useful engine capability in Bonita Open Solution, is a <strong>recorder</strong>. This feature is in fact installed by default, but is may not be widely known.</p>
<p>A recorder listens to the different <strong>events </strong>taking place in the <strong>Bonita Execution Engine</strong> and records them all to a log.</p>
<p>The <a href="http://www.bonitasoft.com/resources/documentation/index.php" target="_blank">online BonitaSoft Documentation</a> system now documents recorders. So, there are basically <strong>two steps</strong> to follow to configure and create a recorder. Click <a href="http://www.bonitasoft.com/resources/documentation/bos-56/development/use-recorders-track-engine-events" target="_blank">here</a> to go straight to the tutorial which provides the code you will need to create a recorder and set it up.</p>
<p>Thanks to Philippe Ozil from the Services team for this tip, which was recently used extensively for a BOS installation.</p>
<p>Have fun with Bonita!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.bonitasoft.org/blog/tutorial/use-recorders-to-track-engine-events/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Design collaboration and sharing repositories</title>
		<link>http://www.bonitasoft.org/blog/video/design-collaboration-and-sharing-repositories/</link>
		<comments>http://www.bonitasoft.org/blog/video/design-collaboration-and-sharing-repositories/#comments</comments>
		<pubDate>Fri, 16 Dec 2011 16:46:01 +0000</pubDate>
		<dc:creator>nigel.gray</dc:creator>
				<category><![CDATA[Features]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[Video]]></category>

		<guid isPermaLink="false">http://www.bonitasoft.org/blog/?p=4712</guid>
		<description><![CDATA[Working as a team requires information to be shared around safely and in real time. The Documentation team has just finished updating tutorials and videos explaining the collaboration features in the Bonita Open Solution Subscription Pack. The includes a repository management feature which allows processes and artifacts to be made accessible, to be synchronized and edited [...]]]></description>
			<content:encoded><![CDATA[<p>Working as a team requires information to be shared around safely and in real time.</p>
<p>The Documentation team has just finished updating tutorials and videos explaining the <a href="http://www.bonitasoft.com/resources/documentation/bos-56/process-design/design-collaboration-sp" target="_blank">collaboration features</a> in the Bonita Open Solution Subscription Pack.</p>
<p>The includes a <strong>repository management</strong> feature which allows processes and artifacts to be made accessible, to be synchronized and edited in real time on a shared SVN server.</p>
<p>Special features such as automatic synchronizing, locking processes in use or reverting to previous versions, are quick and easy to use.</p>
<p>All you need is a <strong>SVN repository</strong> to be set up and configured beforehand, and an internet connection.  All features are accessible from the <strong>Repository menu</strong> in Bonita Studio.</p>
<div id="attachment_4714" class="wp-caption alignnone" style="width: 520px"><a rel="attachment wp-att-4714" href="http://www.bonitasoft.org/blog/video/design-collaboration-and-sharing-repositories/attachment/all-menus/"><img class="size-full wp-image-4714  " title="Design collaboration menus" src="http://www.bonitasoft.org/blog/wp-content/uploads/2011/12/all-menus.png" alt="" width="510" height="185" /></a><p class="wp-caption-text">Design collaboration features</p></div>
<p>A series of videos briefly and concisely explains the different functions which are very useful in teamwork.</p>
<p>Check them out in the BonitaSoft documentation <a href="http://www.bonitasoft.com/resources/documentation/index.php" target="_blank"></a><a href="http://www.bonitasoft.com/resources/documentation/video-library" target="_blank">video library</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.bonitasoft.org/blog/video/design-collaboration-and-sharing-repositories/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Define contexts and use them in a connector</title>
		<link>http://www.bonitasoft.org/blog/video/define-contexts-and-use-them-in-a-connector/</link>
		<comments>http://www.bonitasoft.org/blog/video/define-contexts-and-use-them-in-a-connector/#comments</comments>
		<pubDate>Thu, 15 Dec 2011 13:52:33 +0000</pubDate>
		<dc:creator>mickey.farrance</dc:creator>
				<category><![CDATA[Features]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[Video]]></category>

		<guid isPermaLink="false">http://www.bonitasoft.org/blog/?p=4697</guid>
		<description><![CDATA[One of the added-values included in the Bonita Open Solution Subscription Pack is the contexts feature. Contexts are useful to handle different “environments/status/contexts” of a process. For example, by defining a “test context” and a “production context” and associating different variables to each context, there is no need to change variable values in connectors, forms, [...]]]></description>
			<content:encoded><![CDATA[<p>One of the added-values included in the Bonita Open Solution Subscription Pack is the <strong><em>contexts </em></strong>feature.  Contexts are useful to handle different “environments/status/contexts” of a process.</p>
<p>For example, by defining a “test context” and a “production context” and associating different variables to each context, there is no need to change variable values in connectors, forms, or other places where variables necessarily differ in different environments.</p>
<p>A <em>context </em>is a set of key-value pairings. <em>Context keys </em>(which will be replaced by a predefined value) can be used as input in most text variables.</p>
<p><span id="more-4697"></span></p>
<p>When a process is associated with a context and then run, the context keys are replaced by the associated values defined for that context.</p>
<p>The online <a href="http://www.bonitasoft.com/resources/documentation/index.php" target="_blank">BonitaSoft documentation system</a> includes both open source and Subscription Pack features, so we’ve added a <a href="http://www.bonitasoft.com/resources/documentation/video-library" target="_blank">new video tutorial</a> in the online BonitaSoft documentation system that <a href="http://www.bonitasoft.com/resources/documentation/bos-56/process-design/contexts-sp/define-context-keys" target="_blank">shows how to define contexts and associate a key-value pair with each one</a>.  (Note that videos are found at the end of a feature documentation page.)</p>
<p>There’s also a video tutorial that shows an example of <a href="http://www.bonitasoft.com/resources/documentation/bos-56/form-field-design/define-data-handling/define-initial-value/associate-data-context-sp" target="_blank">how to use contexts in the configuration of an email connector</a>.</p>
<p><em>Is there a video tutorial you’d like to see?  Let us know via reply to this post.</em></p>
]]></content:encoded>
			<wfw:commentRss>http://www.bonitasoft.org/blog/video/define-contexts-and-use-them-in-a-connector/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>It&#8217;s almost like a real Table of Contents!</title>
		<link>http://www.bonitasoft.org/blog/tutorial/its-almost-like-a-real-table-of-contents/</link>
		<comments>http://www.bonitasoft.org/blog/tutorial/its-almost-like-a-real-table-of-contents/#comments</comments>
		<pubDate>Mon, 12 Dec 2011 14:32:15 +0000</pubDate>
		<dc:creator>mickey.farrance</dc:creator>
				<category><![CDATA[Tutorial]]></category>

		<guid isPermaLink="false">http://www.bonitasoft.org/blog/?p=4546</guid>
		<description><![CDATA[As we apply continous improvement to Bonita documentation online, you’ll see new things appearing now and then. For example, we’ve just added a sitemap to make the full contents of the documentation more visible, and (we hope) easier to navigate. You’ll find the sitemap link at the bottom of the navigation menu on the left. [...]]]></description>
			<content:encoded><![CDATA[<p>As we apply continous improvement to <a href="http://www.bonitasoft.com/resources/documentation/index.php" target="_blank">Bonita documentation online</a>, you’ll see new things appearing now and then.</p>
<p>For example, we’ve just added a <a href="http://www.bonitasoft.com/resources/documentation/sitemap" target="_blank">sitemap</a> to make the full contents of the documentation more visible, and (we hope) easier to navigate.</p>
<p>You’ll find the sitemap link at the bottom of the navigation menu on the left.</p>
<p><a href="http://www.bonitasoft.org/blog/wp-content/uploads/2011/12/find-the-sitemap.png"><img class="alignnone size-full wp-image-4551" title="find the sitemap" src="http://www.bonitasoft.org/blog/wp-content/uploads/2011/12/find-the-sitemap.png" alt="" width="566" height="426" /></a></p>
<p>The sitemap tree, or table of contents, may be fully collapsed on arrival.  Click on the <strong>+</strong> icon to unroll it, or click on <em><strong>Expand All</strong></em>.</p>
<p>The top level of this sitemap / Table of Contents matches the navigation on the left.</p>
<p><a href="http://www.bonitasoft.org/blog/wp-content/uploads/2011/12/Bonita-docs-sitemap.png"><img class="alignnone size-full wp-image-4556" title="Bonita docs sitemap" src="http://www.bonitasoft.org/blog/wp-content/uploads/2011/12/Bonita-docs-sitemap.png" alt="" width="392" height="502" /></a></p>
<p>But now, if you click to <em><strong>Expand All</strong></em>, you’ll be able to see the contents titles at <strong>all levels</strong> in the Table of Contents hierarchy.</p>
<p><a href="http://www.bonitasoft.org/blog/wp-content/uploads/2011/12/expand-to-see-the-TOC.png"><img class="alignnone size-large wp-image-4558" title="expand to see the TOC" src="http://www.bonitasoft.org/blog/wp-content/uploads/2011/12/expand-to-see-the-TOC-1024x760.png" alt="" width="614" height="456" /></a></p>
<p>You can also <em><strong>Collapse All </strong></em>and expand just a single chapter.</p>
<p>This is especially useful to see the contents of a chapter containing many levels that are otherwise not so easy to find quickly…for example, in <strong>Process Design</strong>, which contains a lot of information about using Bonita Studio.</p>
<p>There should be some useful stuff down there in the sub-sub-sub chapters&#8230;</p>
<p><a href="http://www.bonitasoft.org/blog/wp-content/uploads/2011/12/full-expand-a-chapter-to-see-all-levels.png"><img class="alignnone size-full wp-image-4557" title="full expand a chapter to see all levels" src="http://www.bonitasoft.org/blog/wp-content/uploads/2011/12/full-expand-a-chapter-to-see-all-levels.png" alt="" width="254" height="374" /></a></p>
<p>Click on any title to jump directly to its page in the documentation.</p>
<p>(If you have trouble collapsing and expanding, refresh the sitemap page.)</p>
<p><em>Have fun with Bonita open source documentation!  (And as always, <a href="http://www.bonitasoft.org/bugs/bug_report_advanced_page.php" target="_blank">your feedback </a>is welcome.)<br />
</em></p>
]]></content:encoded>
			<wfw:commentRss>http://www.bonitasoft.org/blog/tutorial/its-almost-like-a-real-table-of-contents/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Process simulation documentation &#8211; now available online</title>
		<link>http://www.bonitasoft.org/blog/video/process-simulation-documentation-now-available-online/</link>
		<comments>http://www.bonitasoft.org/blog/video/process-simulation-documentation-now-available-online/#comments</comments>
		<pubDate>Fri, 09 Dec 2011 13:39:42 +0000</pubDate>
		<dc:creator>mickey.farrance</dc:creator>
				<category><![CDATA[Features]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[Video]]></category>

		<guid isPermaLink="false">http://www.bonitasoft.org/blog/?p=4569</guid>
		<description><![CDATA[We’ve just finished migrating the Bonita Open Solution Simulation Guide from its ancient PDF format into the new online documentation system. This should make it a bit easier to find the bit of information you need as you configure simulation. You can use simulation in Bonita Open Solution to evaluate the way a process runs [...]]]></description>
			<content:encoded><![CDATA[<p>We’ve just finished migrating the Bonita Open Solution Simulation Guide from its ancient PDF format into the <a href="http://www.bonitasoft.com/resources/documentation/index.php" target="_blank">new online documentation system</a>.</p>
<p>This should make it a bit easier to find the bit of information you need as you configure simulation.</p>
<p>You can use simulation in Bonita Open Solution to evaluate the way a process runs in multiple iterations, under different resource availabilities and different load profiles.</p>
<p>A simulation runs a <a href="http://www.bonitasoft.com/resources/documentation/bos-56/process-simulation/configure-simulation-parameters/define-simulation-load-profiles" target="_blank">specified number of iterations </a>over a specified period of time, using either <a href="http://www.bonitasoft.com/resources/documentation/bos-56/process-simulation/configure-simulation-parameters/define-simulation-data/define-simulation" target="_blank">simulated data or assigned probabilities</a>, and the cumulated result of all iterations is shown in a <a href="http://www.bonitasoft.com/resources/documentation/bos-56/process-simulation/create-and-save-simulation-reports/create-simulation-reports" target="_blank">report</a>.</p>
<p>At the process level, you’ll need to define resources needed needed at various steps in the process.</p>
<p>You can choose to define simulation parameters on individual tasks (e.g., data to fill variables, resources needed to complete a task, and more) and transitions (e.g., <a href="http://www.bonitasoft.com/resources/documentation/bos-56/process-simulation/configure-simulation-parameters/define-simulation-conditions-transitions" target="_blank">conditions </a>using simulation variables, or <a href="http://www.bonitasoft.com/resources/documentation/bos-56/process-simulation/configure-simulation-parameters/define-simulation-conditions-transitions" target="_blank">probabilities</a> that the process will take one path or another.)</p>
<p>And again at the process level, <a href="http://www.bonitasoft.com/resources/documentation/bos-56/process-simulation/configure-simulation-parameters/define-simulation-load-profiles" target="_blank">define a load profile </a>which will be used to characterize the iterations of the process to be run in the simulation.</p>
<p>Running a simulation produces and exports a report which details what happened at the process and task level in the simulation.</p>
<p>Inside the documentation, there is a how-to tutorial for each of the simulation parameters that you might want to define (see below).  There is also a <a href="http://www.bonitasoft.com/resources/documentation/video-library" target="_blank">new video available</a>, <em><strong>Overview of Simulation Feature</strong></em> (thanks to <a href="http://www.bonitasoft.org/forum/profile.php?id=3646" target="_blank">Frederic Bouquet</a>), that shows where to find the various places to configure simulation parameters and characteristics.</p>
<p><a href="http://www.bonitasoft.org/blog/wp-content/uploads/2011/12/How-to-in-BonitaDocSystem.png"><img class="alignnone size-full wp-image-4574" title="'How to' in BonitaDocSystem" src="http://www.bonitasoft.org/blog/wp-content/uploads/2011/12/How-to-in-BonitaDocSystem.png" alt="" width="609" height="256" /></a><em><strong> </strong></em></p>
<p><em><strong>Overview of Simulation Feature </strong></em>is also available from the video library:</p>
<p><a href="http://www.bonitasoft.org/blog/wp-content/uploads/2011/12/video-library-with-Overview-of-Simulation-Feature-video.png"><img class="alignnone size-full wp-image-4578" title="video library with Overview of Simulation Feature video" src="http://www.bonitasoft.org/blog/wp-content/uploads/2011/12/video-library-with-Overview-of-Simulation-Feature-video.png" alt="" width="280" height="198" /></a></p>
<p>BOS 5.6 includes an example process called <em><strong>Delivery-Simulation</strong></em>, which illustrates how to configure a very simple simulation, using two processes with the same steps but slightly different flows. Try running both to see and compare the simulation reports.  You can find this example from the Welcome page of Bonita Studio:</p>
<p><a href="http://www.bonitasoft.org/blog/wp-content/uploads/2011/12/Example-simulation-process-available-here.png"><img class="alignnone size-large wp-image-4577" title="Example simulation process available here" src="http://www.bonitasoft.org/blog/wp-content/uploads/2011/12/Example-simulation-process-available-here-1024x653.png" alt="" width="614" height="392" /></a></p>
<p>More improvements are on the way.  Stay tuned!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.bonitasoft.org/blog/video/process-simulation-documentation-now-available-online/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to add a category label to a process</title>
		<link>http://www.bonitasoft.org/blog/tutorial/how-to-add-a-category-label-to-a-process/</link>
		<comments>http://www.bonitasoft.org/blog/tutorial/how-to-add-a-category-label-to-a-process/#comments</comments>
		<pubDate>Wed, 30 Nov 2011 11:56:50 +0000</pubDate>
		<dc:creator>mickey.farrance</dc:creator>
				<category><![CDATA[Tutorial]]></category>

		<guid isPermaLink="false">http://www.bonitasoft.org/blog/?p=4418</guid>
		<description><![CDATA[There’s another new video tutorial now available in BonitaSoft documentation: How to add a category label to a process. Category labels can be added during the process model phase by the process designer. After the process is deployed into production, the assigned label will show up on the case in the end user’s inbox each [...]]]></description>
			<content:encoded><![CDATA[<p>There’s another new video tutorial now available in BonitaSoft documentation:  <a href="http://www.bonitasoft.com/resources/documentation/bos-56/process-design/working-bonita-studio/other-element-details/add-category-label-process-sp" target="_blank"><em>How to add a category label to a proces</em>s</a>.</p>
<p>Category labels can be added during the process model phase by the process designer.  After the process is deployed into production, the assigned label will show up on the case in the end user’s inbox each time a case is run.</p>
<p>It’s a neat way to add a category identifier, or a unique identifier to your various processes.  And it can be changed or colored later, if need be, only by the process administrator even after the process is deployed into production.</p>
<p><em>Is there a video tutorial you’d like to see?  Let us know via reply to this post.</em></p>
]]></content:encoded>
			<wfw:commentRss>http://www.bonitasoft.org/blog/tutorial/how-to-add-a-category-label-to-a-process/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to multi-instantiate a task &#8211; now on video</title>
		<link>http://www.bonitasoft.org/blog/tutorial/how-to-multi-instantiate-a-task-now-on-video/</link>
		<comments>http://www.bonitasoft.org/blog/tutorial/how-to-multi-instantiate-a-task-now-on-video/#comments</comments>
		<pubDate>Mon, 28 Nov 2011 16:10:03 +0000</pubDate>
		<dc:creator>mickey.farrance</dc:creator>
				<category><![CDATA[Tutorial]]></category>

		<guid isPermaLink="false">http://www.bonitasoft.org/blog/?p=4406</guid>
		<description><![CDATA[There’s another new video tutorial now available in BonitaSoft documentation: How to Multi-Instantiate a Task. It shows an example of a simple one-step approval, where 2 of 3 second-level managers must approve a reimbursement request for over 5K. Three instances of the same “Approve request” task are created, one for each of the three identified [...]]]></description>
			<content:encoded><![CDATA[<p>There’s another new video tutorial now available in BonitaSoft documentation:<a href="ttp://www.bonitasoft.com/resources/documentation/bos-56/process-design/multi-instantiation/multi-instantiate-task" target="_blank"> <em> </em></a><a href="http://www.bonitasoft.com/resources/documentation/bos-56/process-design/multi-instantiation/multi-instantiate-task" target="_blank"><em>How to Multi-Instantiate a Task</em>.</a></p>
<p>It shows an example of a simple one-step approval, where 2 of 3 second-level managers must approve a reimbursement request for over 5K.</p>
<p>Three instances of the same “Approve request” task are created, one for each of the three identified managers – this is configured in the <em>instantiator</em>.</p>
<p>A <em>join checker </em>is configured to check the condition that determines whether this task is completed &#8211; that is, when the specified number of instances of this task have been completed by the end users. In this example, the task will complete when any 2 managers (from the instantiator  list) have approved the request.</p>
<p>After configuring the instantiator and join checker, the last step is to <em>filter </em>the actors list of 3 managers so that each manager sees only a single instantiation of the task as a step in his Bonita User Experience.</p>
<p><a href="http://www.bonitasoft.com/resources/documentation/bos-56/process-design/multi-instantiation/multi-instantiate-task" target="_blank">This video</a> shows how this step is presented via a web form to each of the candidate managers, and shows that the third instance is cancelled once the step has been completed.  (You can see the entire history of the case in the process administrator’s User Experience inbox, administration view.)</p>
<p><em>Is there a particular video tutorial you’d like to see us produce?  Let us know via reply to this post.</em></p>
]]></content:encoded>
			<wfw:commentRss>http://www.bonitasoft.org/blog/tutorial/how-to-multi-instantiate-a-task-now-on-video/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Find a video tutorial for a Bonita Open Solution feature</title>
		<link>http://www.bonitasoft.org/blog/tutorial/find-a-video-tutorial-for-a-bonita-open-solution-feature/</link>
		<comments>http://www.bonitasoft.org/blog/tutorial/find-a-video-tutorial-for-a-bonita-open-solution-feature/#comments</comments>
		<pubDate>Wed, 23 Nov 2011 12:03:23 +0000</pubDate>
		<dc:creator>mickey.farrance</dc:creator>
				<category><![CDATA[Tutorial]]></category>

		<guid isPermaLink="false">http://www.bonitasoft.org/blog/?p=4341</guid>
		<description><![CDATA[There are some new videos now available in the BonitaSoft documentation system. Check out How to add a category label to a process, among others… There are two ways to find a video in the documentation. 1) Go to any page in the system and use the search (for example, for &#8220;category label&#8221;): The documentation [...]]]></description>
			<content:encoded><![CDATA[<p>There are some new videos now available in the BonitaSoft documentation system.  Check out <em><strong>How to add a category label to a process</strong></em>, among others…</p>
<p>There are two ways to find a video in the documentation.</p>
<p style="padding-left: 30px;">1) Go to any page in the system and use the search (for example, for &#8220;category label&#8221;):</p>
<p><span id="more-4341"></span></p>
<p style="padding-left: 30px;"><a rel="attachment wp-att-4355" href="http://www.bonitasoft.org/blog/tutorial/find-a-video-tutorial-for-a-bonita-open-solution-feature/attachment/search/"><img class="alignnone size-large wp-image-4355" title="search" src="http://www.bonitasoft.org/blog/wp-content/uploads/2011/11/search-1024x514.png" alt="" width="502" height="252" /></a></p>
<p style="padding-left: 30px;">The documentation for this feature should show up in the search results.</p>
<p style="padding-left: 30px;"><a rel="attachment wp-att-4356" href="http://www.bonitasoft.org/blog/tutorial/find-a-video-tutorial-for-a-bonita-open-solution-feature/attachment/search-results/"><img class="alignnone size-full wp-image-4356" title="search results" src="http://www.bonitasoft.org/blog/wp-content/uploads/2011/11/search-results.png" alt="" width="486" height="224" /></a></p>
<p style="padding-left: 30px;">Click on the feature (in this example, &#8220;Add a category label to a process&#8221;). The documentation page for this feature contains a tutorial section  (&#8220;How to add a category label to a process&#8221;).  Scroll to the bottom of the page&#8230;if it has a tutorial video, you&#8217;ll see it here.</p>
<p style="padding-left: 30px;"><a rel="attachment wp-att-4359" href="http://www.bonitasoft.org/blog/tutorial/find-a-video-tutorial-for-a-bonita-open-solution-feature/attachment/video-tutorial/"><img class="alignnone size-full wp-image-4359" title="video tutorial" src="http://www.bonitasoft.org/blog/wp-content/uploads/2011/11/video-tutorial.png" alt="" width="528" height="735" /></a></p>
<p style="padding-left: 30px;">Click on this link to see the video directly.</p>
<p style="padding-left: 30px;">
<p>Or…</p>
<p style="padding-left: 30px;">2) Jump directly to the video library by clicking on <em><strong>Video Library </strong></em>in the table of contents to the left.</p>
<p style="padding-left: 30px;"><a rel="attachment wp-att-4360" href="http://www.bonitasoft.org/blog/tutorial/find-a-video-tutorial-for-a-bonita-open-solution-feature/attachment/video-library/"><img class="alignnone size-large wp-image-4360" title="video library" src="http://www.bonitasoft.org/blog/wp-content/uploads/2011/11/video-library-1024x713.png" alt="" width="491" height="342" /></a></p>
<p>This may be quicker – but as we haven’t got the search function up here yet, you’ll need to scan around a bit to see what&#8217;s in there.</p>
<p>Stay tuned – more tutorial videos are on the way!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.bonitasoft.org/blog/tutorial/find-a-video-tutorial-for-a-bonita-open-solution-feature/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to get faster Selenium test cases execution</title>
		<link>http://www.bonitasoft.org/blog/tutorial/how-to-get-faster-selenium-test-cases-execution/</link>
		<comments>http://www.bonitasoft.org/blog/tutorial/how-to-get-faster-selenium-test-cases-execution/#comments</comments>
		<pubDate>Fri, 14 Oct 2011 13:59:34 +0000</pubDate>
		<dc:creator>Aurelien Pupier</dc:creator>
				<category><![CDATA[Tutorial]]></category>

		<guid isPermaLink="false">http://www.bonitasoft.org/blog/?p=4178</guid>
		<description><![CDATA[Recently, I went to China to work with the BonitaSoft Quality Assurance (QA) team. We spent some time to improve Selenium execution speed. I will share the QA team knowledge on this, and give two tips. Just by using these two tips, we improved Selenium speed &#8211; 5 times fast on IE8 (from 8 hours [...]]]></description>
			<content:encoded><![CDATA[<p>Recently, I went to China to work with the BonitaSoft Quality Assurance (QA) team. We spent some time to improve <a href="http://seleniumhq.org/" target="_blank">Selenium </a>execution speed.  I will share the QA team knowledge on this, and give two tips. Just by using these two tips, we improved Selenium speed &#8211; 5 times fast on <a href="http://windows.microsoft.com/en-US/internet-explorer/downloads/ie-8" target="_blank">IE8</a> (from 8 hours to 1h30min) and 3 times faster on <a href="http://www.mozilla.org/fr/firefox/new/" target="_blank">Firefox3</a> (from 3 hours to 1 hour). Check it graphically: <a href="http://www.bonitasoft.org/blog/wp-content/uploads/2011/10/IE8-Firefox3-selenium.png"><img class="aligncenter size-medium wp-image-4181" src="http://www.bonitasoft.org/blog/wp-content/uploads/2011/10/IE8-Firefox3-selenium-300x180.png" alt="" width="300" height="180" /></a> OK, so here are the tips:</p>
<h2>Tip 1: Use the Cybozu library to execute tests on IE</h2>
<p style="text-align: left">Selenium provides this library. You can find the reference in the <a href="http://selenium.googlecode.com/svn/trunk/docs/api/java/index.html" target="_blank">documentation</a>: <a href="http://www.bonitasoft.org/blog/wp-content/uploads/2011/10/xpathLibraryJavadoc.png"><img class="aligncenter size-full wp-image-4183" style="border: 1px solid black" src="http://www.bonitasoft.org/blog/wp-content/uploads/2011/10/xpathLibraryJavadoc.png" alt="" width="578" height="196" /></a></p>
<p>You need to add few more lines of code. Here is a java snippet:</p>
<p style="text-align: center"><a href="http://www.bonitasoft.org/blog/wp-content/uploads/2011/10/setAnotherXPath.png"><img class="aligncenter size-full wp-image-4184" src="http://www.bonitasoft.org/blog/wp-content/uploads/2011/10/setAnotherXPath.png" alt="Selenium selenium = getSelenium(); if(selenium.getEval(&quot;navigator.userAgent&quot;).contains(&quot;IE&quot;)){ selenium.useXpathLibrary(&quot;javascript-xpath&quot;); }" width="477" height="68" /></a></p>
<p>And why IE but not on Firefox? Simply because Firefox  provides<a href="http://www.ivaturi.org/home/hackingseleniumtoimproveitsperformanceonie" target="_blank"> </a>a great XPath parser <a href="http://www.ivaturi.org/home/hackingseleniumtoimproveitsperformanceonie" target="_blank">natively</a>.</p>
<h2>Tip 2: Use setSpeed carefully</h2>
<p style="text-align: left"><a href="http://release.seleniumhq.org/selenium-remote-control/0.9.0/doc/java/com/thoughtworks/selenium/DefaultSelenium.html#setSpeed(java.lang.String)" target="_blank">setSpeed </a>allows you to configure a wait time between each execution of a Selenium request. See for yourself in the <a href="http://selenium.googlecode.com/svn/trunk/docs/api/java/index.html" target="_blank">javadoc</a>: <a href="http://www.bonitasoft.org/blog/wp-content/uploads/2011/10/setSpeedJavadoc.png"><img class="aligncenter size-full wp-image-4195" style="border: 1px solid black" src="http://www.bonitasoft.org/blog/wp-content/uploads/2011/10/setSpeedJavadoc.png" alt="" width="771" height="164" /></a> I recommend using <a href="http://release.seleniumhq.org/selenium-remote-control/0.9.0/doc/java/com/thoughtworks/selenium/DefaultSelenium.html#waitForCondition(java.lang.String, java.lang.String)" target="_blank">waitPageForCondition </a>or <a href="http://release.seleniumhq.org/selenium-remote-control/0.9.0/doc/java/com/thoughtworks/selenium/DefaultSelenium.html#waitForPageToLoad(java.lang.String)" target="_blank">waitPageForLoad </a>instead. This way, the Selenium code executes as soon as the page is loaded instead of waiting.  So, instead of waiting a pre-defined time, during which the application is doing nothing and the developer just hopes that the required element has loaded completely, the test continues.</p>
<p style="text-align: left">Ok, sometimes we found it necessary to use setSpeed. In this case, we changed setSpeed for a (little) part of the code,  If you do this, don’t forget to set it back to its default value 0.</p>
<p>We also found that using a higher setSpeed value when debugging might let the developer to see easily what is happening &#8211; you  might try this.  I personally love setSpeed for debug mode.</p>
<h2>Do you want more?</h2>
<p>So do we. We still have some avenues to explore:</p>
<ul>
<li>Evaluate <a href="http://selenium-grid.seleniumhq.org/" target="_blank">Selenium Grid</a> (and perhaps also <a href="http://saucelabs.com/" target="_blank">Saucelabs</a>).</li>
<li>Move to Selenium 2 and use the new<a href="http://seleniumhq.org/projects/webdriver/" target="_blank"> WebDriver API</a>.</li>
<li>Open all tests in the same browser (without exceeding its memory) in order to not lose time launching new browsers.</li>
</ul>
<p>And you? Which tricks are you using? Do you have some suggestions for us? Some feedback from your own tests?</p>
<p>We will be happy to learn from your experience.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.bonitasoft.org/blog/tutorial/how-to-get-faster-selenium-test-cases-execution/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>

