2016-05-06 14 views
0

Ich wurde gebeten, ein Activiti-Tool für eine Client-Demo zu testen. Die Demo wird auch JBoss Drools enthalten, mit denen die Activiti integriert wird. Ich bin neu in diesen beiden Tools und Geschäftsprozesswelt, also entschuldigen Sie mich, wenn die Frage dumm ist.Activiti and Drools ... ist einer genug?

Die Frage ist, warum brauchen Sie Drools? Ist Aktivität nicht genug für den Job? Beide haben konditionelle Elemente, warum brauchen Sie also aktiv Drogen?

+0

Jede Programmiersprache hat "bedingte Elemente". Es muss noch etwas anderes geben. Das Lesen der Dokumentation für ein paar Wochen sollte Ihnen alles erzählen, was Sie wissen müssen. – laune

+0

@laune, du hast Recht. Aber das Problem ist hier etwas anderes. Ich habe nicht genug Zeit zum Lesen. Ich soll die POC bis Donnerstag nächste Woche vorstellen. Also wollte ich eine Expertenmeinung dazu haben. – hanumant

+1

Sie könnten Ihren Hinweis darauf hinweisen, dass Sie von jemandem gewarnt wurden, der mit Drools vertraut ist, dass eine POC-Demo bis "nächsten Donnerstag" eine sehr hohe Rechnung für s.o. ohne vorherige Erfahrung damit. Und nicht zu wissen, was der Klient wirklich braucht, ist überhaupt nicht hilfreich. – laune

Antwort

4

Diese Frage passt nicht ganz zum Zweck von StackOverflow, also seien Sie nicht überrascht, wenn Sie ein paar Flaggen bekommen. Aber ich werde versuchen, eine kurze Antwort zu geben.

Aktivität ist eine Workflow-Engine, Drools ist eine Geschäftsregel-Engine. Sie dienen zwei verschiedenen Zwecken.

  • Workflow-Engines sind nützlich, wenn Sie einen Ablauf von Aktionen verschiedener Akteure haben, die programmgesteuert gesteuert werden müssen.

  • Regel-Engines sind nützlich, wenn Sie Geschäftsregeln für die automatische Ausführung bestimmter Aufgaben haben, die deklarativ beschrieben werden sollen.

  • Beide Zwecke sind orthogonal zueinander, was bedeutet, dass das zu lösende Problem keines, nur eines oder beide erfordern kann.

    Stellen Sie sich einen Workflow vor, bei dem ein Kunde einen Vorfall meldet, einige Experten daran arbeiten müssen und schließlich eine Rechnung erstellt wird, aber keine schweren Algorithmen hinter diesen Aufgaben stehen. Dies könnte von einer Workflow-Engine ohne eine Rules-Engine unterstützt werden.

    Stellen Sie sich ein komplexes Preismodell für ein Produkt vor, wie Autos mit allen möglichen Sonderfunktionen, die bestellt werden können. (Hifi-Lautsprecher kosten 400 €, außer wenn die Executive-Version des Autos bestellt wird, wo sie nur 200 € kostet, wenn sie in Kombination mit Smartphone-Adapter bestellt wird ...) Hier könnte eine Regel-Engine nützlich sein, obwohl niemand über einen Workflow gesprochen hat, Daher wird keine Workflow-Engine benötigt.

    Stellen Sie sich das erste Beispiel (Incident Workflow) zusammen mit einem komplexen Abrechnungsschema vor. Hier können beide Werkzeuge verwendet werden.

    Ich frage mich, warum diese beiden Arten von Werkzeugen an einigen Stellen als perfekt zusammenpassen beschrieben. (Vielleicht hat diese Art von Anspruch Ihre Frage motiviert.) Sie dienen zwei verschiedenen Zwecken, und ob Sie beide benötigen, hängt von dem Problem ab, das Sie lösen müssen.

    +0

    Danke @TAM, jetzt werde ich etwas zu meiner Führung als Grund haben, warum wir beide brauchen und was Geschäftsprozess ist. – hanumant