Pros
- visualized in IDE, easy to understand the whole workflow picture
- function embedded or generated automatically by drag and drop
- UI generated, although not beautiful
Cons
- Performance
- Scalability
- How to work with version control?
- How to work with continues build?
- transaction control
- i18n problem – In my project, it needs both English and French, but French does not work perfectly.
- not open source and very limited document can be found on internet
- Obvious bugs – in both studio and web admin console, I used to deployed one application and never can un-deploy it. I tried everything, the engine was restarted, the weblgoic server was restarted, it just cannot be un-deployed.
- learning curve – because of lacking document, the learning curve is definitely long
Another question here is “When do we need a workflow engine?”
My answer may not be correct. I think if your work need different roles to contribute, for example, normal employee, account, HR, manager… and a lot of other roles and the flow may have a lot of different routes base on users different contribution, workflow engine may brings some benefit.
I reviewed our project. Hmm…. it only has two roles… moreover 90% activities are on one role. Hmm… .do we really need workflow engine??? It does have many activities but can we use Camel + JMS Queue or rule engine to implement it?
No comments:
Post a Comment