The Benefit of Extending IBM BPM with Brazos UI Toolkit
As BPM expands and increasingly goes mainstream, we’re finding recurring themes of debate as mainstream views are challenged by the encroachment of process-thinking and BPM.
Of particular interest to us is the idea that using a UI Toolkit could render a project “stuck” on that toolkit once they’ve built things with it. This question was asked in a session on building coach views with UI Toolkits, with the pejorative of getting “stuck” on someone else’s code (or UI Toolkit in particular).
- “Stuck” is a pejorative. It’s negative. The statement could have been made substituting the word “enabled”. As in, “we’re still enabled by that UI Toolkit”
- This isn’t a UI-specific problem. IBM should be applauded for opening up the UI framework to welcome the kind of innovation that BP3, Apex, Emericon, and others have contributed to the BPM community. And the community should be applauded for making these assets together under various commercial terms. The leveraging of the Coach View framework is no different than leveraging IBM’s REST API’s and other application programmer interfaces. They’re supported, they’re long-lived, and their well-worn paths into functionality in the products.
- We all depend on someone else’s code. None of us is going to start a BPM project by first writing a compiler for a language we’re going to invent to describe the problem. We’re going to start with “someone else’s code”. We stand on the shoulders of others to build our towers of IT.
- UI toolkits use product features upon which the products’ coach views also depend. IBM has previously made statements that they will make sure that properly built coach view toolkits will work from one version to the next. All BPM UI’s depend upon this functionality
- UI’s and code in general don’t last forever. 10 years from now, maybe everything we’re doing will be obsolete. But we can’t know the future. Our job as technologists and practitioners is to solve for the now and the near future. We can’t accurately project further than that.
In the case of BP3’s Brazos UI Toolkit, “someone else’s code” means using a toolkit that uses completely production-ready, productized APIs and patterns in IBM BPM, and combining them with publicly available open source libraries like Bootstrap and Angular and JQuery. It also means adding our own “glue” to make it all work. And all of this code is delivered into the process designer – in other words, someone using the Brazos UI Toolkit can see every line of code and can even extend and edit that code (note: there is a prescribed method for editing any toolkit – you never edit the third party toolkit, you copy the edited component to a new toolkit for editing purposes). On top of all that, Brazos UI Toolkit is free, thought we offer optional support packages.
I think when someone has this kind of concern about using third party extensions of a core product, one has to ask “compared to what?”
If the choices are:
- use the third party extension
- write your own extension
- live without the functionality offered in the extension
Option 1 is what we’re focused on in the discussion above. But option 2 is there – has all of the downsides of Option 1, with the additional downsides of :
- The cost of writing it from scratch
- Failing to benefit from the critical mass and community around the third party extension
- Failing to get any bug fix or update that you don’t write yourself
- No one to go to for help when your extension fails to work.
- Need to maintain the expertise required to build and maintain this extension.
Sounds great. Option 3 may be better or worse. The advantage: no cost, no risk of getting “stuck”. The downside: no benefit, no ROI. Will your users engage if your UI isn’t appealing? If they don’t engage in your process, will that hurt your ROI? Are you as productive without the extensions as you are with them?
I think IBM will quickly address some of these concerns by making Brazos UI Toolkit “certified”. But in the meantime, there’s no reason to defer improving your BPM results with Brazos – we’ll be here to back up the product. And the bigger concern should be creating value with the software you’ve purchased – that’s what third party extensions like Brazos are all about.