Srinivas Reddy’s Weblog

My Tech Rants

Process Technology

leave a comment »

Off late I am trying to understand process technology and the changes its going through. I would like to share my current understanding.  Historically process automation has been at the heart of most information systems (enterprise systems in particular).  In early times, application infrastructures included ‘workflow engines’ which ensured ‘work flowed’ digitally between human user and system as efficiently as possible. Example: when a new employee is hired a series of workflow instances are started like for allotting equipment, training, salary payment… The system ensured that the work is pushed to the right person and the process gets completed.  With the increasing digital nature of work (ex: connecting with vendor systems, employee self services…) more process steps get automated. Process technology which existed in a single component system (ERP systems for example) increasingly needed to interact with multiple internal and external systems. 

While one aspect of process technology needed to interface with human users the other needed exchanging messages with other systems  On one hand ‘task management engines’ where built which are a kind of abstraction on top of different ‘process/workflow engines’ and provide a ‘universal work inbox’ to human end users. On the other hand we see many ‘messaging middleware / enterprise service bus’ addressing process automation across component systems. Two recent developments of particular interest here are ‘Service oriented architecture (SOA)’ and business process standards such as ‘Business process execution language (BPEL)’.  SOA ensures that component systems expose functionality as (web) services. This is a precondition to compose composite services/process in a flexible way.  BPEL and related standards helps to standardize the way we model business process and the related execution runtime.

The next generation business processes are about adaptive systems. How do we design adaptive systems?  It has a lot to do about having a process technology, which enables flexible ‘model driven’ service/process composition. As we transition from ‘component based’  to ‘service based’ systems its important to understand that both technologies are complementary. What’s new is the need to create dynamic business process, which are designed collaboratively and leverage the predictive capabilities of the huge data warehouses we are building.  The four key building blocks for this as I see are ‘process engine’, ‘analytical engine’ and ‘transactional engine’ and ‘collaboration engine’. I see here the role of process engine to leverage the other three engines to create the next generation ‘process technology’.  This process technology will come in different flavors ( be it Workflow foundation as Microsoft would call it or many flavors of  Event driven middleware),  but at the end its about how ‘well designed’ the different components work together. If there is one thing consumer apps can learn from enterprise apps it’s about better using process technology. Hopefully we will see more in this space in the near future.

Written by srinivasreddy

October 31, 2007 at 4:07 pm

Posted in 1

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: