Community mailing list archives
Re: Thoughts about future of workflows. >> Was - Re: Community >> Was Quick Dirty - Important Question about Workflow and Process.
Re: Thoughts about future of workflows. >> Was - Re: Community >> Was Quick Dirty - Important Question about Workflow and Process.by
Akretion, Raphael Valyi
just some comments:
1) I totally understand your concern and have the same feeling. These sort of things are important enough to have some roadmap about their evolution.
2) Let's not forget that workflows are slow: as they are coded today and probably for a long time yet, they kill the nice theoretical batch orientation of OpenERP/Odoo ORM just as the on_change used to kill it (a bit less today with new on_change API calling into computed fields). Being slow, I'm for instance happy that we don't have workflows for stock.move or account.incoive.line, but only have them for high level business objects. And even at high level, in some business like high volume ecommerce it can still easily be an issue. So while we need to keep a state machine concept, there are reasons not to put it everywhere.
3) The choice shouldn't be between invented OpenERP SA Workflow Engine TM and Corporate Heavyweight Bonitasoft TM that can stop developing just the same because it kind of suffer the same enterprisey pitfalls.
I'll again, do the heresy to compare with how it is outside of Python TM-please-never-look-elsewhere, so for instance in the Ruby world, sophisticated Enterpise applications use to delegate their workflow to a simple library "state_machine", that acts as a POO level and just do well with the existing persistence layer, unlike Bonitasoft which has its own extra persistence (data duplication, connectors etc...).
I fundamentally don't think all language are equal as soon as they are Turing complete and dynamically typed. I think here Ruby is taking full advantage of its module concept (inheriting implementations but not properties), but who knows may be something similar exist in Python or is at the fingertips and I'm just not aware of it. But I can just draw the same conclusion with authentication and many other infrastructure layers that use to have an invasive persistence layer in Python instead as far as I'm aware.
So an other world is possible: https://github.com/pluginaweek/state_machine
Used by Spree commerce for instance https://github.com/spree/spree/blob/master/core/spree_core.gemspec#L38
On Mon, Sep 29, 2014 at 7:32 AM, Nhomar Hernández <email@example.com> wrote:
2014-09-29 2:55 GMT-04:30 Alexandre Fayolle <firstname.lastname@example.org>:+1 for some documentation about workflows. The current state is abysmal. And the total lack of debugging help lead me to avoid workflows in my custom modules as much as I could (and I guess the new api wrappers will not improve the experience of walking through a workflow in the debugger...) Having at least some logging level (disabled by default) enabling to track workflows evaluation would be a first step (wkf_logs.py only track the state changes, which does not help in finding why a transition is not triggered). Getting views for the administrator of the workflows instances would be great too.
My point is: (And I really hope fp@odoo/al@odoo can be more explicit on his PoV).Historically thinking has been -1.- Odoo stop/slow use some feature (no explanation).2.- We support and pivote on that feature because we think it is cool/good/necesary to increase capabilities in our customers.3.- Odoo brings to almost 0 documentation of those features.4.- Odoo simply remove the feature.It is happening today with workflows, as concept (I know that technically may be it is not good implemented) but as "concept" workflows are -mandatory- for any system of world quality, even biggest companies have workflows behind its developments, google, spotify, facebook and so on..... but then with workflow I feel the starts again on point 1 (with the new wms) there are A LOT of things that are not related at all to workflows and simply the workflow is used only for compatibility and not as "conceptual programming".The same is happening with E-Commerce, I can not understand how a BIG or even a serious medium and little store can think on it business process "without" processes behind it, it helps a LOT in terms of ensure the correct mixtures of elements.Just making a simple number:Today we have with 100% of installed modules only 18 workflows:
But as you can see, no relation with critical elements like:- Bank statements.- Import statements.- stock moves?- procurements?- Events?- E-commerce?.........The good news is that there is A LOT of new tests which will ensure mantain compatibles and tested the main core features of workflows.Then.I understand perfectly it was a huge move forward, but I felt like technically speaking we gave an step back here (even if we give several step forwards on functionalities).Then, what will be the Future, based on my analysis?Workflow WILL die, and we will left the way open to bonita soft?We were too close to have a cool and functional BPMS inside odoo and it was one of the features I showed with more proud to our customers.And we used them a lot to improve process, now I need to read, and understand a process use PDB :-(-Well now we have a cool system without Functional documentation, without workflows but it does 100% of things differently (may be better) but different, the learning curve will be HUGE.Then I have big doubts.Do we dedicate again to re-write our localizations without wkf?Do we dedicate to improve workflow behaviors?I feel a little missing here..... we will stay with bonita giving more power to java :-(@fp @al Thoughts? (sorry for my really bad english)----------------------
Thoughts about future of workflows. >> Was - Re: Community >> Was Quick Dirty - Important Question about Workflow and Process.byNhomar Hernandez