Automate Your Office Yourself with ProcessMaker, Part 1

Automation rocks, dude

This article covers the basic setup and how to get started with ProcessMaker, an open source workflow automation software. This should interest small and medium enterprises, startups or any other organisation in need of workflow automation.

With a number of startups coming up these days, I suppose this is the era of dreams, and the courage to live those dreams — feels good to see people not afraid of executing their ideas anymore. But a common problem faced by startups is to have a well-defined process-flow for various activities — they often end up with either too many or too few processes, and as we know, neither is desired.

This article explains how to use ProcessMaker to automate your office just as you want it, and that too, with total ease.

Setting things up

First, download the software. Since it is a Web-based application, it doesn’t matter what server OS you are using — you get both Linux and Windows builds. The setup bundles all software you would need for ProcessMaker to run — including Apache and MySQL — ensuring users needn’t break their head over what all they need to install in order to have it running successfully.

There is a catch though: port 80 of your server will now be used by this installed (bundled) Apache Web server; so it’s better to remove any previous Apache installations, or if you know what you’re doing, change the default listening port in the httpd.conf file.

Getting Started

Once installed, just go to http://localhost and you’ll see the ProcessMaker login page. The default credentials are admin, admin. Don’t forget to change them after the first login.

As an admin, there is a list of function you can perform. The most important among them is the defining of process. After login, you will find a tab called Processes on your home page. Go to that tab, and the fun begins. There are three options here: New, Import and Browse Library.

New is probably what you should use if you are new to this; however, before taking the plunge, I would suggest you check the library process available. This will give you a good idea of what ProcessMaker is all about.

Processes are actually flowcharts of a real-world process, with each block being a task. So, processes are a sequence of tasks, with each task equivalent to a real work action.

The tasks can be assigned to different users registered with ProcessMaker; you can even assign the tasks to groups of users. You can create and edit the tasks under the users tab (Users –> Groups). Then, while assigning tasks, you can assign them to users as well as groups. If the task is assigned to a group, you can even decide how the tasks will be assigned to users in that group — in a round-robin fashion, randomly, or many more alternatives.

Besides groups, there is one more method of segregating users, by assigning them to departments (Users –> Departments). This can be useful for maintaining your office sturucture in ProcessMaker.

Now, let’s go to another feature: Roles. Yes, in real life, you can assign users the same roles here. Each user in ProcessMaker should have one role assigned. There are three default roles already present, but you can create lots more in the roles tab (Users –> Roles).

I hope you didn’t note… but we drifted from the process to users. Actually, this was important, as once you are done creating users, you need to divide them into groups and departments, and assign roles to them; only then can we proceed with creating processes.

When you go to the New tab under Processes, you will find a blank sketch board waiting. Here you can draw your process (yes, like a flowchart). Right-click on the blank area and add a new task, then select the green balloon in the upper left corner of the blank area, drag and drip it on the task you just created. This defines the starting task, and without this, your process won’t work. Right-click on the task, go to Users and Groups, and assign the task to the person you want to. Then select Properties and rename the task. Your task is now ready.

To move from this first task to the next in the process, you have a list of options available. The transition can be sequential, parallel, or based on some evaluation — for example, if the amount requested is more than 5,000, it will go to a senior manager, otherwise to a manager.

After adding tasks one by one, at the end, you have to again mark the end of a process just like for the start, but this time use the orange bubble. Thus, you can create the whole process using this wizard.

Now what? Once your process is defined, and each task is allotted to at least one user, you can see that the user assigned with the first task will get the option to initiate a new case of that process (here, case and process are related in exactly the same way as object and class in Java) under the Cases tab.

Once a case of the particular process is started, users assigned with the currently executing task will get that task in their inbox. When they complete the task, it goes to the inbox of the next assigned user. For admins, there is the Dashboard tab, where you can see what processes are pending with which user, and for how long, apart from other reports.

Missing something?

Seems easy, right? It is easy, but it takes some time though. But as we all know, good things test your patience.

Till now, it was a cake-walk, but what if you have specific requirements like taking a user input in some task, inserting your own piece of PHP instead of ProcessMaker’s forms, or executing some query to the database before actual insertion of data, or any other action. Is ProcessMaker capable of handling these actions?

Yes, it is. It is a highly customisable application. Just play on with it, and you will realise that.

In the next article we will discuss the concepts of dynaforms, triggers, and input/output documents, which will help you get the implementation just like you want it.

All published articles are released under Creative Commons Attribution-NonCommercial 3.0 Unported License, unless otherwise noted.
Open Source For You is powered by WordPress, which gladly sits on top of a CentOS-based LEMP stack.

Creative Commons License.