In IBM BPM v. 8.5.5 IBM introduced Client-Side Human Services (CSHS). The IBM Knowledge Center articles cover the basic feature comparison but guides the choice between CSHS and Heritage Human Services (HHS) towards using CSHS unless you have a reason not to. While it is generally a good idea to begin transitioning to the latest features, use of HHS may remain a valid choice for other reasons.
CSHS advantages
- As their name implies CSHS run scripts (formerly Server Scripts) client side. This is a nice performance improvement when using boundary events.
- Since scripts are run client side, browser console outputs can help with debugging during development.
- CSHS give a more interactive preview in the coach designer.
- For certain features like case management, you can only use CSHS.
HHS advantages
- Being established and embedded in the desktop application, HHS are less prone to new bugs or browser quirks.
- HHS allow nesting of other HHS while HHS may not be nested in CSHS.
- HHS allow for easy copy and paste in the coach designer. This is less of a differentiator in the newer cumulative fix packs of v. 8.5.7 as copy-paste can be accomplished in the CSHS WebPD with nodes in diagrams and controls in coaches using keyboard-based shortcuts, e.g. control-c and control-v.
Other considerations
- CSHS performance is tied to the client's web browser, so best performance for the end user may only be experienced newer browsers. However, IE9 is supported for HHS in 8.5.6 but IBM warns that IE10 and IE11 are noted to have possible layout or style issues when displaying HHS.
- CSHS editing requires using the browser-based editor. While similar, there may be minor differences that might trip up designers when having to switch between editor types (such as lack of mouse-based copy and paste). Performance of the editor is also tied to the web browser.
- It may not be an effective use of time to recreate existing HHS as CSHS which is why IBM generally advises the continued use of HHS for pre-8.0 designs. The ability to open and edit HHS in the Web Process Designer along with being able to copy HHS coach layouts into CSHS coaches in v. 8.5.7 CF 2017.03 lowers this barrier somewhat, but it is still necessary to recreate variables, convert copied HHS scripts to CSHS syntax, and rewire the diagram flow.
- The v. 8.5.6 CSHSs don't have a supported coach validation framework. This has been addressed starting in v. 8.5.7 but there are differences in how this is implemented so be sure to review instructions for how to validate CSHS in the latest versions.
- The available error handling framework is different between HHS and CSHS (see links below).
Additional reading:
IBM:
Which artifacts should I use?
Difference between heritage human services and client-side human services
Handling errors in client-side human services
Re-creating heritage human services as client-side human services in the web Process Designer
BP3:
Error Handling Options for Client-Side Scripts in Client-Side Human Services
Comments
5 comments
Maybe you can gain some performance with CSHS but the web designer does not feel mature enough to work with. Much more time consuming and the missing copy/paste is annoying. So I would stick to HHS a little longer.
I've just completed a CSHS-intensive proof of concept for a customer on 8.5.7 and have updated feedback to share about working with CSHS:
PROS:
1 ) Define on variable defaults (which I feel is a bad practice because you're bound to forget to clear these later).
2) Mark the service as nested and build a test harness CSHS around it - this creates another asset just to test, though, which is a bit annoying.
3) My favorite thus far, which is to just add a script block named "DEMO" or whatever to the beginning of the coach service which inits all variables as needed for testing. It can just be disconnected from flow when done testing.
CONS:
Another note is that while in the past I worked with a client where we decided against CSHS due to difficulty with exception handling, now that CSHS nesting is supported, a client-side equivalent to GEX could be built. It's not out there yet as far as I know, but this would be a really useful asset.
Hope this helps someone, feel free to reach out to me directly if you have additional questions: dwilliams@bp-3.com
Thanks -Don
Updated article to properly reference the added coach validation framework available for CSHS starting in v. 8.5.7.
Updated article to reference availability of copy-paste in the WebP and CSHS error validation differences in v. 8.5.7. Also updated links section and pointed IBM links to 8.5.7 versions of their documentation.
Updated article to reference improved HHS to CSHS conversion experience using the Web PD in v. 8.5.7 CF2017.03. Included link to IBM KB article on the same.
Please sign in to leave a comment.