Thursday 22 March 2012

Challenge in BPM Design and Development

I am using Cordys as a development tool. I found it’s a challenge to understand a business scenario and design the business process accordingly. I am working as a senior developer in my team and most of the time have to cater with the development stuff which is related to the BPM tool know-hows and the way of coding and customizing the process model in line with the business requirements. Based on various learning experiences, I got to know that designing a business process model is very difficult. Of course, the actual design of a business oriented process is most crucial and difficult to do, but for a developer I think there are other challenges as well:
  • The BPM domain is not as enriched with lots of online materials as some of the other communities like Web applications etc.
  • Dependence on services makes the development process slower and I think it may put a road block in the overall application response time
  • Learning is difficult as not much resources are available
  • Limited level of reach to write complex and business oriented code
  • Not possible to compare Business Models using any file comparison tool
According to you: which is the most critical/challenging and must-know part in BPM; that means designing a process model without getting into the coding stuff or needing in-depth knowledge about how to code and customize the business process model with a specific tool?
Your comments are welcome!

BPM and Case Management

A lot of discussion can be done on Case Management. For me, Case Management is the dynamics of the system which let the flow go on at run-time. It’s about higher-level coordination, which cannot simply be tracked by a single process instance. Focus remains on guiding decisions, in order to reach the goal of the case.
Modeling of the case is not about the structure of the activities and none where it relates with the order of the activities. It’s about the evolution at run-time. Focus remains on the work to be done and not the process to support it. Case Management is not concerned with laying out sequences of activities in predefined manner. It is rather concerned with constraining the choices that can be made with respect to the work to be done, and with respect to how the case evolves.
Case Management is the coordination of multiple tasks towards a concrete goal. Examples of cases are:
  • Claims process in Insurance.
  • Retirement benefits not matching as per the employee expectation and the calculation in Pension administration.
  • Special situations as per the customer loyalty and goodwill.
  • Loan applications in Banking.
  • Additional benefits to customer as per the negotiations.
Some comparisons:
  1. BPM is Workflow driven while Case Management is data driven.
  2. BPM is structural while Case Management is contextual.
  3. Activity sequence is crucial in BPM while in Case Management it’s about the run time situation and paths may vary case to case.
  4. BPM is predictable while Case Management may be unpredictable.

Case Management is highly challenging
As it’s very much dynamic so lots of challenge associated:
  • A case may live longer time than expected.
  • Cases must interact with each other during their lifetime.
  • A case may re-open another case.
  • Case instances may evolve over a period of time.

Ease Case Management and get benefits
Certainly automation is the key to resemble Case Management towards smoothness. Use of BPM and Case Management automation goes hand in hand as BPM works as the carrier and the case as the driver of the flow. Integration with existing processes makes Case Management easier instead of creating a new one for recurring instances. The case is the primary business object which drives the process. With the automation knowledge workers become more knowledgeable and become more responsible. Automation makes lots of workers taking care of the same case so collaboration increases.