The intention of this post is to serve as a “heads up” for Bonita BPM creators.
But since this is a space for answers, here I ask: When will the questions below be addressed/corrected/resolved and features recreated?
The new UI Designer may be paradise for programmers (which I doubt), but it is surely hell for users involved in creating process automation.
From AIIM (Association for Information and Image Management) what I’ve heard is that users want PRODUCTS, not PROJECTS, and that large organizations are tired of spending significant resources on customization. BonitaSoft seems to be going in the exact opposite way.
What was mainly about building a form using an intelligent, USER-friendly design tool, now has turned into development and test cycles.
For those who are not understanding, let me explain.
a) Begining with the “lacks of”, or “user’s, developer’s and administrator’s” perspective:
a.1) There is no ctrl-Z, no undo or redo, in the UI Designer editor (tested on IE and Chrome). If you delete a widget, it’s gone.
a.2) A developer must rely on his memory to remember what business data model properties are to be used on form fields properties.
There is, of course, the “context” variable, but - as far as I understood - it demands the process to be run until the specific step in order to obtain a link, then to be run again to obtain the content of the link, then you need a notepad to write it down.
Imagine a 10 human steps process and the fact that you’ll have to run it 20 times to get the context in order to prepare the forms (because contracts can be different). In the previos interface all you had to do was to click on a combo box.
a.3) Process variables simply do not exist for the new UI Designer. It only “sees” what is in the Contract, and the Contract knows no Process Variable.
a.4) The pre-built field validators and the possibility to use a Groovy Script on it no longer exist. You ought to do some coding to have it.
a.5) Error message exibition (derived from fields) on form submition, which was automatic in the previous versions, now must be custom maded, and also added and placed form by form, field by field.
a.6) The following Bonita 6 widgets disappeared (and most of them will be missed): duration, password, list, rich text area, editable grid, hidden, iFrame, html widget.
a.7) Forms of all processes appear as a single list (no folders, no process separation). Imagine now a hundred processes with 10-20 forms and pages each. In my case, when I deletes processes, the forms did not go with them, they stayed. It is administration hell.
a.8) Custom widgets seem to belong to the Studio/UI Designer installation, not to a company wide repository. Since Studio is not a client-server application, but a standalone one, the more you create, more differences will appear between departments using their own copies of Studio.
Widgets are all stored in the same place, just like forms. In a large company, you’ll soon have widget hell in hands.
a.9) Whenever you click in “new Form” one is created and saved. It does not matter if you do not click on “save” in the UI Designer. The result is that you may accidentally create a vast list of “newForm” named forms.
a.10) You cannot delete any form from within the task’s Execution tab. You have to call UI Designer from its button on the Studio top menu. And since the Designer accepts more than one form with the same name, you may have to play “eeny, meeny, miny, moe” to find the right one.
a.11) Each and every form created for a specific process appears on the forms list of all processes. And to get things worse, since we can have identical names, “James” may play havoc with “John’s” form.
a.12) If you delete a process in Studio, its forms remain - they are not deleted with it. Once again you must appeal to the UI Designer button (cannot call it from within a task “Execute” tab).
b) Now from the “buyer’s” and “manager’s” perspective:
b.1) There were transient process variables, now form variables came to the spotlight, so we have business data objects, process variables (transient and non-transient), contract variables and form variables to deal with while trying to document the process (and form variables certainly won’t appear on automatically generated process documentation, since they are decoupled from the BPM engine).
b.2) Not to mention that in a large company, with many sites and local IT departments, it will be extremely hard to keep track and standards of all the forms produced with this new UI Designer.
b.3) Some training on AngularJS and BootStrap seems to be needed for the person in charge of the design, who must be a programmer.
Regards.
Ricardo