Below is my take on various aspects of end-to-end BPM solution development in IBM BPM vs PEGA PRPC.
My observations are primarily centered around ground realities in terms of industry adoption. The strengths indicated below are relative to each other.
Sections of the blog meant for Business Leaders and Decision makers - [TTM and TCO for the solution], [Market presence, Sustainability and Delivery risk], Future trends
Sections of the blog meant for Architects and Techies - Tool features [Inception/Elaboration/Construction/Transition]
Going forward in this note, my reference to IBM and PEGA would be to IBM BPM 8.1 Advanced and PRPC 6.2 SP2 respectively. Also, i will be talking only about OOTB features and will not touch upon customization aspects as they can be pretty context sensitive.
TTM and TCO for the solution
PRPC can be looked upon as "BPM in a box". It provides BPMS along with necessary ancillaries like BRMS(Very strong), Case Management(Very strong), BAM(Strong), EAI(light), CEP (Very light) in a single runtime environment(and license). We will be needing CDM for full-blown predictive analytics separately.
To achieve the same feature offerings in IBM BPM, we will be needing the following licensed products around the core offering - WODM (Strong BRMS and Very Strong CEP), IBM Case Manager (Very Strong), Websphere Business Monitor (Strong BAM), EAI (Very strong built-in ESB OOTB with Advanced flavour of the BPM product). We will be needing COGNOS for full-blown predictive analytics separately.
The industry BPM frameworks provides by PEGA seem to have a strong edge over IBM.
With the above details in place, we can think of the efforts needed to deliver an IBM BPM equivalent solution by integrating different products(expensive IBM services is a must to get the landscape up and running), application maintenance/support and inter-twined product version upgrade costs.
PRPC is touted to be very expensive (relatively), but i feel that the cost would be justified in terms of ROI delivered to the business by quicker TTM and lower TCO.
Market presence, Sustainability and Delivery risk
Looking at the product evolution path, PEGA tracks back to rules whereas IBM to integration-centric workflows.
Lombardi (human-centric BPM side of IBM story) is an acquisition by IBM to fill in the space that integration-centric WPS is struggling with. Both the tools rank similarly in terms of their market presence and maturity in the BPM space. PEGA has always been business-centric whereas IBM is quickly catching up on that front with Lombardi and ILog (rules) acquisitions.
Coming to sustainability and risk of solution delivery factors, IBM ranks higher due to its humungous base of distributed thought leaders and knowledge base.
Tool Features (OOTB)
One major advantage i can think of for PEGA is that it can run on any J2EE compliant appserver like Tomcat, JBoss, Weblogic, Websphere, etc. The customers will have more choice and need not get locked into a single vendor.
I would like to broadly categorize the tool feature comparison into Inception, Elaboration, Construction and Transition phases of typical BPM application development roadmap.
Inception and Elaboration
- Requirements Capture - There is no built-in requirements capture tool in IBM similar to DCO in PEGA. Requirements traceability is a big known problem in IBM
- Base Platform Code generation facilities - There is no tool similar to PEGA's application accelerator in IBM
- Channels for application development - Web is the defacto interface for building a PEGA application. IBM has both web (cloud-based BlueWorksLive) and eclipse-based desktop rich client called Process Designer (aka Authoring Environment)
- Code reuse - PEGA is truly object oriented when compared to IBM. Let me take some examples to explain this interesting aspect. While both the tools offer reusable service development using toolkits/RuleSets, PEGA provides class inheritance, polymorphism (circumstancing), composition, overriding and similar OO application development features.
- ORM - PEGA provides OOTB ORM features for the application-specific data. There is no such feature available in IBM
- Reporting features - Lots of OOTB reports are available in PEGA which are extremely easy to customize. There is a little set of similar features available in IBM via Tracking definitions, Cognos and Business Space gadgets. PEGA has a definite w"edge" (i meant a huge edge :-)) here in terms of the available spread of features and ease of use alongside report optimization features for better performance
- Code versioning - PEGA offers fine grained control with strong checkin/checkout built-in features. There is no checkin/checkout concept in IBM (via ProcessCenter). While IBM tool aids a true distributed collaborative development (where every developer can access others' saved changes in realtime seamlessly) it lacks the feature of change-by-change level tracking.
- Process administration and Debugging - Both the tools seem to fare equally on this front.
- Ease of deployment - IBM has centralized and strongly governed deployment model where unit tested code can be deployed to any of the target runtime environments (QA/UAT/STAGE/PROD).
Integration with social networking sites - PEGA has integration with Twitter and facebook.
Mobile enablement - PEGA has OOTB support for mobile. IBM has come up with a platform named "WorkLite" for mobile integration needs
Cloud BYOL, PAYG models - IBM has a pretty strong cloud coverage that supports public/private/hybrid cloud models.