Thursday, January 08, 2009  
Google
Web pcquest.com

CIOL Network sites

Search by Issue | CD Search | Sitemap | Advanced Search

• Ad:Discover Green Intelligence, make your business strong • Ad :- Is your career a part of $12 Trillion global spend?
   
 Home > Developer > In Depth

Bring order to the workplace

Continued from page: 2

Wednesday, February 22, 2006

Implementing Bonita
An Open Source workflow system

Bonita is a J2EE-based Open Source workflow system application, which allows you to execute, monitor and coordinate the flow of work in an organization. It is completely browser based and can be installed on both Linux and Windows. Bonita can be used for mainly two kinds of processes. One for controlling and automating processes to make sure that appropriate policies are enforced for software delivery. Second, to review production processes, which helps users in doing their day to day work on time.

Requirements
We simply installed Bonita on a Windows XP machine. You'll first need to download the JOnAS Application Server (JOnAS4.6.3-Tomcat5.5.12). This can be downloaded from http://forge.objectweb.org/project/download.php?group_id=5&file_id=5017. Next you need JDK version 1.4, which can be downloaded from http://java.sun.com/. Then you need a database to save your workflow process data. Bonita supports databases like mysql, postgres and Oracle, but if you don't have one, then JOnAS Application server has an embedded database called hsqldb. Using Bonita with this database doesn't require any configuration. You'll also need Apache ANT, which is a JAVA based that can be downloaded from http://ant.apache.org/index.html. Lastly you need Bonita, which can be downloaded from http://bonita.objectweb.org/html/Download/index.html. We also gave a copy of it on our last month's CD.

Installation

Design workflow on Bonita by selecting the 'Original process instance' under the 'Project Manager' Window

First install JDK 1.4 and set its environment variable to JAVA_HOME = (eg: c:\jdk1.4\). Next unzip Apache ANT file, apache-ant-1.6.5-bin.zip and copy the unzipped folder to c:\  and set an environment variable ANT_HOME=(eg: c:\apache-ant-1.6\). Next run the JOnAS installer on your machine, which will automatically detect your JDK path and ANT path and will install the Application server on your machine. Then create another environment variable JONAS_ROOT and set its value to (c:\JONAS_4_6_3\). Finally, install Bontia. Unzip the Bonita workflow system and copy the unzipped folder to c:\ and set its environment variable to BONITA_HOME - your Bonita home install directory.

Configuration
First you need to configure Bonita with the JOnAS application server. To do this, open a command prompt window and go to the Bonita home directory. Here open the .ant.properties file and set the value of your hostname and web port on which you want to host the Bonita workflow system. Then on same directory issue this command “Ant config”. This will configure basic stuff for Bonita on the JOnAS application server. After this you have to configure the database of Bonita. If you are using the JOnAS embedded database then you don't have to do any thing. Otherwise for other databases, you have open the c:\JONAS_4_6_3\conf folder. Here open the config files for your favorite database (Name_of_Database.properties) file. Open this file in Notepad and fill the data source configuration according to your setup. Then you have to copy the database driver jar file to the c:\JONAS_4_6_3\lib\ext folder. You can get the latest database jar driver from your database vendor's site. Then you have to configure it on your application server with your database. Open the c:\JONAS_4_6_3\conf folder and open “jonas.properties” file. Add the bonita datasource name: jonas.service.dbm.datasources

Then in the same folder open another file c: \JONAS_4_6_3\conf\a3servers.xml and set the hostname value (localhost by default) at line: server id="0" name="S0" hostname="localhost". This value must be the same as what you've defined in BONITA_HOME\.ant.properties. Next open JONAS_4_6_3\conf\carol.properties file and set the value of jrmp URL: “carol.jrmp.url=rmi://localhost:1099”. Make sure that the host name and port name values must be the same as what you've defined in $BONITA_HOME\.ant.properties file for "bonita.host" and "jrmp.port" properties. Then open JONAS_4_6_3\conf\ jaas.config file and add the following lines

bonita {
   
// Use the resource dsrlm_1
   
org.objectweb.jonas.security.auth.spi.JResourceLoginModule required
   
resourceName="dsrlm_1";
   
// Use the login module to propagate security to the JOnAS server
   
org.objectweb.jonas.security.auth.spi.ClientLoginModule  required ;
};
bonita-policy {
   
org.objectweb.jonas.security.auth.spi.JResourceLoginModule required
   
resourceName="dsrlm_1";
   
// Use the login module to propagate security to the JOnAS server
   
org.objectweb.jonas.security.auth.spi.ClientLoginModule  required;
};

With this your configuration is over. Now you have to compile Bonita so that it gets integrated with the JOnAS application server. For this open a command prompt and go to Bonita home directory and issue the 'ant' command. This will compile Bonita with JOnAS.  Now it's time to start Bonita with the application server. For this, click Start>Programs> JOnAS>Start JOnAS (back Ground). Then open a command prompt and go the Bonita home directory and issue the 'ant initDB' command. This will initialize the Bonita environment. To access the Bonita workflow system, open a web browser and type the URL http://localhot:9011/bonita.  On the Web page, you'll see a list of all the project's processes and their status. To see the detailed activity, click the project that you want to look for and you will be asked for a username and password. The default user name and password for administrator is 'Admin' and 'toto', respectively.

Working model of sample workflow process implemented on Bonita

Using Bonita workflow
To understand and design workflow in Bonita, you need a JAVA developer because you have to do a bit of coding.  Bonita is divided in two parts. Working on the workflow process is totally browser based, but managing or creating a workflow process is done using Java applets. The applet allows you to design the process in a graphical way unlike some other workflow designers. Let's see how to design a process. From its Web interface, click on 'Manager' link. This will launch a manager applet , asking you for admin user name and password. After authentication, you can create new projects for your process. On this GUI applet, you have three sections projects, To-do lists, and activity. In project, you will be shown a list of projects represented as a tree. The tree shows the detailed project instances in which users are taking part (only for administrative project). Plus you can do operations like Active/Hide, terminate, instantiate or clone of existing project.  The To-do list shows ready and anticipated activity of current project with associate users, who are working on the project.

The activity in the to-do list is shown in two colors-yellow and green. Yellow shows activity in ready state and green shows activity in anticipated state. Coming to the activity section, it shows executing and anticipated activity of current selected project. To try this out create new project and instance. After creating the new project, you have to create instances. Instances are basically processes running under a project. This allows you to define small pieces of workflow process and then interlink them together in the project. On double-clicking the instance, the manager will launch a graphical tool to draw a business process model. On the graph-editor, down left corner, you will have three objects, which allow you to draw process activities. Plus the user can identify the workflow execution by means of the activity's color changes. Here only you can integrate routing of activities to other users or processes, if the activity is pending or not done. At this you can add users to the process and assign them roles. Activity can also be hooked to a subprocess or different processes under the same project using Java syntax. This can also be used to write code for Bonita runtime to associate process to activities.

Once you're through with the design part, you need to instantiate the instances to start off. For this, select the project you have created and right-click on it. Now from the context menu, click 'Instantiate Project'. To use the created workflow system, just open the browser and type in http://localhot:9011/bonita. You will be shown the list of projects that you have created. Select the project that the user is associated with and it will be ask you to enter the associated username and password who is authorized to access it.

 

OmniFlow
An enterprise workflow solution that integrates with your existing enterprise applications and provides a graphical tool for creating and modifying business processes

The Omniflow Process Modeller and the Configuration Server Console show the status of the running process

This is not just a workflow automation solution, but a complete BPM  solution. The product let's you create and modify business processes without any programming efforts. Designing business processes is very easy. While drawing your business logic, it rapidly automates the process, thereby reducing the deployment time. You can design your own custom forms to fetch you business data and circulate according to business rules in form format only. Plus, it also has a document management system that runs parallel to the workflow system, which allows you to have a document-based workflow system in place. The software's installation depends upon the type of organization for which it's being deployed. We had a chance to check out a basic implementation of the same on a Windows 2003 Server with SQL Server 2000 as the backend database. 

Server setup
In order to use OmniFlow, you need a server at least a dual CPU machine with 2 GB RAM, and the storage depends upon the amount of data being worked upon. It runs on Windows 2000 Server or above, and you also need Microsoft SQL Server 2000 with service pack 3 for the database. It can also work with Oracle and DB2. The software can also be configured as a multi-threaded server, which can manage multiple instances of applications, such as a separate Omniflow system if running in your organization. It also provides the flexibility of starting and stopping registered applications, depending on the workload. Its installation is fast and easy, but its configuration takes same time, because you have to register each and every component of Omniflow with its application server. However, you need to do this only once. After the deployment, you don't have to do any more configurations.

In the User Mapping section of the User Management tab, you can map roles in your workflow process to users in Shark

Designing a process
OmniFlow has a graphical tool to design business processes. Drafting a process is done in a chart fashion with clear indication of task queues, conditions and sequences in which tasks must be performed from initiation to completion. A process manager can design the workflow processes with steps in series or in parallel. Plus from here only, you can define all activities in a process, the various processing rules, actions, work to be performed, relationship, etc. With in this interface, you can view compiled reports on business definitions in order to check the correctness of definition.

OmniFlow Process Manager
OmniFlow has an in-depth process monitoring system, which gives you a user-friendly desktop for administration and monitoring of all business processes from a centralized place. From here only an administrator can control and refine its business process. In addition you can generate various levels, which helps you evaluate the level of performance of each and every component of the process.

Process client and WorkDesk
In order to user the workflow, users can access the workflow from a Web browser only.

It allows users to log-in to their respective queues, based on assigned rights, and process the pending work-items in the selected queue. It provides some standard tools like Check-Lists, Exceptions, Form View, Document View, Actions, etc. These allow the user to process the work-items more resourcefully.  To remind users about work-items that need to be completed in a day, it has to-do lists. These notify users about their pending work-item for a particular day.

Page(s)   1  2  3  4  

I am interested in more information about this product
I am interested in buying this product


Untitled 1


Does your business have Green Intelligence


Before you press ctrl+p, get innovative


   
 


 
 

Magazine Subscription | RQS | Contact Us | Team PCQuest