Thursday, August 20, 2009

Workflow Managment Software Components - Part 2

Part 2

Process Activity and Process Implementation

Now that we have reviewed some of the basics in your workflow management software, we need to continue with process modeling implementation. This is where a good business process management suite will make your life easier. This part of the business process implementation requires some coding, sometimes. You will need to create your logic at this point, both for the people and the computers and programs that will be involved in the process or procedures. You need to take you model and make it into an executable process by the people or machines doing them. This involves both the execution flow, triggers and data flows as well as the specific instructions that need to be programmed into the applications involved.

The development of your process code and flow can be a manual process. I would not recommend this though, unless you only have a limited amount of budget or processes to develop. We're not even going to go there because the focus of this article is the software components and how it related to bigger business transactions and processes. This part of the process can be time consuming for some people if you need to input a lot of custom coding and programming to support your business calculations, application software, database communications and data entry. If you are in a position where you can be more flexible in your computer application implementation, you can make more use of the vendors integration tools. These integration tools are your development environment to go from a process model to an executable process. How you develop the process is varied by vendor and usually involves some sort of graphical interface to a coding environment. Most workflow and business process management software developers try to make it as easy as they possibly can for any user to create the end process through their software. Most will use common IDE ( Interface Development Environment ) that ties closely into the modeling tools used in the previous steps. These tools are designed to speed up the implementation stage by generating the code for you.

The software packages available today usually integrate well into existing business applications and tools that as used throughout the world. The problems crop up when you or your company are using proprietary software, code and software. Or you have some old application that some guy you hired 15 years ago programmed for you and did not document it or use any standard interfaces. This is when you need some computer expertise in your quest to implement any process flow and you want or need to maintain that old application code.

The new way of doing things usually involves commonly used API's and web services that let you design your own forms, fields and data inputs in standard formats. This is when your flexibility with external software and systems will be considered. When I mean flexibility, I mean that if the vendor offers a fully integrated package with pre-built components that can replace or improve other areas and you can easily implement them. It is usually safer to go with a full, out of the box, setup. You can avoid costly time required to shoe-horn a software package into a tight environment by simply replacing more components at the same time.

Ok, I think I went a little off tangent there... and I am not sure that makes a lot of sense yet... lets move on anyways.

Basically, the steps involved at this stage will convert your pictures of the process ( the model ) into something you can use. As an example, a simple purchase process. You can initiate the process through your tracking software and that will start the flow... all the communication and interaction within that item purchase can be tracked, followed, reported on and completed with ease... which is the next stage, process execution.

Business Process Execution


This is where the work gets done, execution stage. The process engine, or software that executes the process is varied between vendors. Lets look at it as it's own piece or component, it is basically your interface to the process, like you have a button on your desk to click and it starts something up. The software or management facility used for execution is typically not the sole service involved and usually requires some support and services itself, such as computer hardware, software and administration. These support facilities are provided by the vendor or will work with existing or recommended services and applications.

When the process is executed, you can follow 2 paths. One path you have a single owner who is responsible for the interaction between components, the information passed, stored and direction to each stage of the process. This is more of an orchestrated approached. Another path that some vendors follow is a more coordinated flow, where the interaction between internal, external or both parties can be done independently and each participant has some ownership to the process.

In either case, the job should get done at this stage and your end result will be the same, no matter what methodology it takes.

No comments:

Post a Comment