Envisioning BPM Integration Capabilities For Reuse

If BPM is part of your technology landscape then it sure can be leveraged for success with systematic reuse. Given that objective, what capabilities should the BPM layer provide? I am not talking about the BPM engine’s core capabilities. I am referring to capabilities that will enable the BPM assets be integrated with your applications, services, and even batch processes. Here is my list. It should:

  • Provide a foundation for hosting business processes that are critical for both revenue generation and operational excellenceworkflow
  • Provide a modeling and execution environment for designing and implementing business processes. The modeling environment should facilitate easy integration of existing assets.
  • Provide a reusable data structure for initializing, manipulating, and enriching business process state. This data structure should also facilitate simpler data transformation when dealing with entity services. See my earlier post for more on this recommendation.
  • Provide meaningful APIs that ease developer learning curve when interacting with the business process layer. The real value add here could be to seamlessly integrate your BPM API alongside your other reusable assets. E.g. state management, metrics, logging, and other domain-relevant capabilities are all relevant here.
  • Offer simple APIs to initiate business processes, create/assign tasks, check status of a long running process from a variety of applications. You can certainly service-enable your business processes so this can be accomplished.
  • Provide the ability to access and orchestrate activities requiring interaction with entity services, business services, and business rules.
  • Reduce application to application coupling by publishing standard set of business events from various milestones in the business process. Interested subscribers can react to the same event differently. New subscribers can be added via configuration as well.
  • Ensure business processes can map back to domain entities, events, and relationships
  • Reduce time to market for developing new processes as well as implementing changes to existing processes. Likewise, it should reduce learning curve for developers to identify, reuse, and orchestrate business processes from a library of processes components. This library shouldn’t be BPM-specific and needs to be integrated with the other reusable software assets.

This isn’t all encompassing by any means. What can be added or changed to this list?

Like this post? Subscribe to RSS feed or get blog updates via email.

tweet this add to del.icio.us post to facebook

Advertisements

4 Responses to Envisioning BPM Integration Capabilities For Reuse

  1. […] Envisioning BPM Integration Capabilities For Reuse « Art of Software Reuse artofsoftwarereuse.com/2009/10/12/envisioning-bpm-integration-capabilities-for-reuse – view page – cached If BPM is part of your technology landscape then it sure can be leveraged for success with systematic reuse. Given that objective, what capabilities should the BPM layer provide? I am not talking… (Read more)If BPM is part of your technology landscape then it sure can be leveraged for success with systematic reuse. Given that objective, what capabilities should the BPM layer provide? I am not talking about the BPM engine’s core capabilities. I am referring to capabilities that will enable the BPM assets be integrated with your applications, services, and even batch processes. (Read less) — From the page […]

  2. […] Envisioning BPM Integration Capabilities For Reuse « Art of Software Reuse Good post on what your BPMS needs to have in order to integrate well with all sorts of other apps that you may have in your computing environment. (tags: bpm soa) […]

  3. […] Recent Comments Create interfaces from a product line context « Art of Software Reuse on Systematic Reuse Success Factor #3 – Capture Domain VariationsCreate interfaces from a product line context « Art of Software Reuse on Think products instead of applicationsPimpThisBlog.com on Building Reusable Assets With Agile PracticesKey Differences between Vertical and Horizontal Reuse « Art of Software Reuse on Horizontal and Vertical Software AssetsColumn 2 : links for 2009-10-14 on Envisioning BPM Integration Capabilities For Reuse […]

  4. […] API standardizes access to BPM capabilities and reduces the possibility of competing integration mechanisms across development efforts. If one […]

Leave a Reply

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

WordPress.com Logo

You are commenting using your WordPress.com 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: