web-dev-qa-db-fra.com

bonitasoft bpm vs jBPM vs Activiti

J'évalue les offres de BPM à utiliser dans notre application. Je voulais savoir

  1. les différences entre Bonitasoft/jBPM et Activiti
  2. Certains de ces produits offrent des capacités de génération de formulaires. Sont-ils utiles? Voulez-vous l'utiliser à la place de formulaires Web personnalisés ou en plus de formulaires Web personnalisés?

Merci

34
shikarishambu

jetez un coup d’œil au livre d’activiti in action de la revue manning . C’est toujours dans l’édition MEAP pour que vous puissiez télécharger le chapitre de démonstration.

Commencez à lire à partir de la section "ACTIVITI AND JBPM". Il compare également Activiti et Bonitasoft.

http://www.manning.com/rademakers2/ActivitiMEAPch01.pdf

J'espère que cela t'aides.

15
Ayusman

J'ai fait une telle recherche, aussi. Voici les points clés pertinents pour notre cas d'utilisation concret:

1. Bonita:

Bonita utilise une approche de codage zéro, ce qui signifie qu’il fournit un IDE facile à utiliser pour créer vos processus sans codage. Pour y parvenir, Bonita utilise le concept de connecteurs. Par exemple, si vous souhaitez utiliser un service Web, ils vous fournissent un wizzard graphique. L'inconvénient est que vous devez écrire manuellement l'enveloppe XML SOAP et la copier dans une zone de texte graphique. Le problème avec cette approche est que vous ne pouvez réaliser que les cas d'utilisation prévus par Bonita. Si vous souhaitez intégrer un système pour lequel Bonita n'a pas développé de connecteur, vous devez coder vous-même un tel connecteur, ce qui est très pénible. Par exemple, Bonita propose un connecteur SOAP pour utiliser les services Web SOAP. Ce connecteur ne fonctionne qu'avec SOAP 1.2, mais pas pour SOAP 1.1 ( http://community.bonitasoft.com/answers/consume-soap-11-webservices-bonita-secure-web- connecteur de service ). Si vous avez une application héritée avec SOAP 1.1, vous ne pouvez pas intégrer facilement ce système dans votre processus. La même chose est vraie pour les bases de données. Il existe peu de connecteurs de base de données pour les versions de base de données dédiées. Si vous avez une version ne correspondant pas à un connecteur, vous devez la coder vous-même.

En outre, Bonita ne prend pas en charge LDAP ou Active Directory Sync dans l’édition gratuite de la communauté, ce qui est tout à fait remarquable pour un environnement de production. Une autre chose à considérer est que Bonita est sous licence GPL/LGPL, ce qui peut poser problème lorsque vous souhaitez intégrer Bonita à une autre application d'entreprise. De plus, le soutien de la communauté est très faible. Il y a plusieurs messages qui ont plus de 2 ans et on ne répond toujours pas à ces messages.

Un autre élément important est Business-IT-Alignment. La modélisation des processus est une discipline collaborative dans laquelle l'informatique ET les analystes métier sont impliqués. C'est pourquoi vous avez besoin d'outils adéquats pour les deux groupes d'utilisateurs (par exemple, un plug-in Eclipse pour les développeurs et un modélisateur Web facile à utiliser pour les gens d'affaires). Bonita ne propose que Bonita Studio, qui doit être installé sur votre ordinateur. Ce IDE est assez technique et ne convient pas aux utilisateurs professionnels. Par conséquent, il est très difficile de réaliser un alignement Business-IT avec Bonita.

Bonita est un outil de BPM pour des processus très simples et faciles. En raison de l’approche zéro-codage, la courbe de lerning est très basse et vous pouvez commencer à modéliser très rapidement. Vous avez besoin de moins de compétences en programmation et vous êtes capable de réaliser vos processus sans avoir besoin de codage. Mais dès que vos processus deviennent très complexes, Bonita n'est peut-être pas la meilleure solution en raison du manque de flexibilité. Vous ne pouvez réaliser que les cas d'utilisation prévus par Bonita. 

jBPM:

jBPM est un moteur de BPM Open Source très puissant, doté de nombreuses fonctionnalités. Le modélisateur Web prend même en charge les modèles préfabriqués de certains modèles de flux de travail de van der Aalst} _ (workflowpatterns.com). Business-IT-Alignment est réalisable car jBPM offre une intégration Eclipse ainsi qu'un modélisateur basé sur le Web. Ce qui est un peu délicat, c'est que vous pouvez uniquement définir des formulaires dans le modélisateur Web, mais pas dans le plug-in Eclipse, à ma connaissance. En résumé, jBPM est un bon candidat pour une utilisation en entreprise. Notre succès a été l'évolutivité. jBPM est basé sur le moteur de règles Drools. Cela entraîne le fait que des instances de processus entières sont conservées en tant que BLOBS dans la base de données. C’est un échec critique lorsque l’on envisage la recherche et l’évolutivité.

En outre, la courbe d'apprentissage est très élevée en raison de la complexité. jBPM n'offre pas de tâche de service comme le suggère le standard BPMN. Par contre, vous devez définir vos propres tâches de service Java et les enregistrer manuellement dans le moteur, ce qui permet une programmation de niveau assez bas.

Activiti:

En fin de compte, nous avons opté pour Activiti car il s’agit d’un moteur très simple à utiliser. Il propose un plugin Eclipse ainsi qu'un modélisateur Web AngularJS moderne. De cette façon, vous pouvez réaliser Business-IT-Alignment. L'API REST est sécurisée par Spring Security, ce qui signifie que vous pouvez étendre le moteur très facilement avec les fonctionnalités d'authentification unique. En raison de la licence Apache 2.0, il n’existe aucun copyleft, ce qui signifie que vous êtes totalement libre d’utilisation et d’extensibilité, ce qui est très important dans un environnement productif.

De plus, la couverture BPMN est très bonne. Tous les éléments BPMN ne sont pas réalisés, mais je ne connais aucun moteur capable de le faire.Activiti Explorer est une interface de démonstration qui montre l'utilisation des API Activiti. Puisque cette interface est basée sur VAADIN, elle peut être étendue très facilement. La communauté est très active, ce qui signifie que vous pouvez obtenir de l'aide très rapidement en cas de problème.

Activiti offre de bons points d'intégration pour les technologies de formulaire externes, ce qui est très important pour un usage productif. Les technologies de forme de tous les candidats sont très restrictives. Par conséquent, il est logique d'utiliser une technologie de formulaire standard telle que XForms en combinaison avec le moteur. Même de telles choses plus complexes sont réalisables via l'attribut formKey. 

Activiti ne suit pas l'approche de codage zéro, ce qui signifie que vous aurez besoin d'un peu de codage si vous souhaitez orchestrer des services. Mais même la communication avec les services SOAP peut être réalisée en utilisant une tâche de service Java et Apache CXF. L'effort de codage est faible. 

J'espère que mes points clés peuvent aider en prenant une décision. Pour être clair, il ne s’agit pas d’une publicité pour Activiti. Le bon choix de produit dépend des cas d'utilisation concrets. Je veux seulement souligner les points les plus importants de notre projet. 

Cordialement Ben 

Best regardsBen

35
Ben

J'avais aussi la même confusion à propos de la sélection du BPM. Maintenant, j'en ai terminé avec mes recherches et mon départ avec Activiti.

Points clés:

  • C'est vraiment facile de commencer à travailler dessus. Il peut être déployé sur le serveur Apache Tomcat le plus utilisé.
  • Il fournit des fichiers de couple ou de guerre tels que activiti-Explorer et activiti-rest pour le déploiement. REST APIs sont clairs et ciblés. Vous pouvez télécharger le même depuis download activiti .
  • Il fournit des plugins pour Eclipse IDE pour dessiner un diagramme de processus.
  • Les membres principaux de développement de Activiti proviennent du même projet que jBPM.

Lors de l'utilisation de jBPM, le concepteur et bave ne sont parfois pas correctement synchronisés. Même les API REST ne sont pas aussi descriptifs et clairs. 

BonitaSoft, en tant que source ouverte, manque de nombreuses fonctionnalités importantes. C'est bien si vous optez pour une version sous licence de celui-ci.

17
Madhusudan Joshi

Je voudrais répondre à la réponse précédente fournie par @BenSchnarr. Par souci de transparence, je dois dire que je travaille pour Bonitasoft.

Je ne commenterai pas les logiciels de nos concurrents, mais je voudrais corriger certaines déclarations faites sur Bonita BPM et fournir quelques informations supplémentaires.

Approche zéro code

Chez Bonitasoft, nous ne croyons pas en une approche "code zéro". Bonita BPM fournit des outils prêts à l'emploi que vous pouvez rapidement utiliser tout en ayant plusieurs points d'extension à votre disposition, tels que:

  • Connecteurs personnalisés pour interagir avec des systèmes tiers
  • Widgets personnalisés pour la création de votre interface utilisateur (formulaires de processus et vues d'entreprise)
  • Extensions d'API REST personnalisées

Avec ces points d'extension, vous n'êtes jamais bloqué. Vous pouvez toujours mettre en œuvre vos propres artefacts pour personnaliser le produit en fonction de vos besoins et les échanger avec notre communauté .

LDAP/AD Sync

Bonita BPM fournit un outil pour synchroniser son organisation avec un annuaire LDAP ou AD dans le cadre des éditions Subscription . Notez que si vous ne souhaitez pas acheter une édition Subscription, vous êtes libre de -implémenter un tel outil avec les mêmes API.

L'objectif des éditions d'abonnement est clairement d'aider nos clients à passer plus rapidement à la production avec des fonctionnalités telles que:

  • Synchronisation d'organisation
  • Capacités de mise à jour en direct
  • Cluster haute disponibilité

Business-IT-Alignment

Bonita BPM Studio (notre IDE) peut être adapté à tous types de profils. Parce que nous ne prévoyons certainement pas que Business Analyst implémente pleinement les processus, nous proposons différents choix de profil utilisateur au démarrage. Notre profil "Business Analyst" affiche uniquement nos vues de modélisation BPMN et cache davantage d'options techniques.

Licence Bonita BPM Engine

Le moteur d’exécution de BPM de Bonita est licencié sous LGPL. Cela vous permet de l'intégrer librement à d'autres logiciels sans aucun risque juridique.

Complexité des projets que Bonita BPM peut gérer

Les clients de Bonita BPM et moi-même ne seront pas d’accord sur cette citation:

Bonita est un outil de BPM pour des processus très simples et faciles.

Les projets de BPM complexes, à grande échelle et critiques peuvent clairement être gérés avec notre solution conformément à nos exemples de réussite .

Génération de formulaire

Notre dernière version, Bonita BPM 7, est entièrement axée sur les interfaces utilisateur personnalisées . Nous fournissons un outil intuitif basé sur un navigateur appelé UI Designer AngularJS et Bootstrap.

Les interfaces utilisateur créées avec notre outil sont à la fois rapides (traitement côté client par opposition à Vaadin) et adaptées à différents types de supports (téléphone, table, ordinateur portable et ordinateur de bureau).

Nous fournissons également des options de personnalisation complètes telles que:

  • La création d'un widget personnalisé pour s'attaquer à des interfaces riches
  • La création et l'utilisation de thèmes Bootstrap
  • La création de mises en page d'applications personnalisées
11
POZ

l’avantage de jBPM5 est qu’il est complètement intégré à Drools et Drools Fusion, ce qui vous permet de modéliser et d’exécuter des scénarios commerciaux complexes. Au moins dans mon expérience, une fois que vous avez obtenu le moteur de processus, l'étape suivante consiste à l'intégrer à un moteur de règles et probablement à des fonctionnalités de traitement des événements complexes. jBPM fournit tout cela prêt à l'emploi et l'avantage est que vous n'avez pas besoin d'apprendre différentes API pour utiliser toutes les fonctionnalités. 

Vous devez également évaluer l'outil qui, dans jBPM5, prend en charge le cycle de vie complet en vous fournissant des outils pour la création de vos processus et règles et un référentiel pour gérer et stocker vos processus. 

Une autre bonne chose est la communauté jBPM5, il y a beaucoup de gens qui ont adopté le projet et un livre sortira avant la fin de l'année.

J'espère que ça aide

8
salaboy

Vous pouvez également consulter Eclipse Stardust , un BPMS open source complet et évolué sous licence publique Ecl (Ecl).

Dans cette réponse , j’ai écrit quelques commentaires le comparant à Activiti.

3
RobE

Si vous examinez spécifiquement les formulaires Web et les données de canalisation, les fournisseurs de formulaires tels que Typeform, Wufoo, etc. conviendraient mieux. Vous pouvez utiliser Zapier pour transférer des données vers d'autres applications à partir des soumissions de formulaire. 

Voici un aperçu de fonctionnalités plus génériques BPM et un guide de BPM . Vous devez vraiment prioriser l'application elle-même pour les utilisateurs finaux, l'expérience utilisateur. 

0
Amit Kothari