Subflow ist ein Produkt der Firma Intersult zur Steuerung von Geschäftsprozessen und im engeren Sinn Workflows.

Was ist Subflow?#

Subflow ist eine Web-Anwendung, die entweder auf einem eigenen Server installiert oder als Dienstleistung genutzt werden kann. Es ist ein verteiltes System zur Kommunikation, Dokumentation, Steuerung, Überwachung und Sicherung von Workflows.

Das Dashboard#

Es enthält eine Übersicht der Aktivitäten auf Subflow. Die Einträge enthalten einige Details und sind auf den eingeloggten Benutzer zugeschnitten.

Durch Klick ins Dashboard, die Suche, andere Links oder Bookmarks kommt man auf die Details eines Prozesses:

Die Suche enthält einen Content-Assist, der schon während der Eingabe Vorschläge liefert. Diese Vorschläge brauchen nur noch mit Tab oder Return bestätigt werden:

Da Subflow unterschiedliche Einstellungen unterstützt, sogenannte Themes, wird die Workflow Konfiguration in einer anderen Farbe angezeigt:

Technisch gesehen#

Es handelt sich um eine Web-Anwendung, die mit dem Browser aus dem Intra- oder Internet zugreifbar ist (je nach Sicherheits-Einstellungen).

Der Kern von Subflow ist eine Steuerungseinheit für Workflows mit der vor allem sogenannte Transaktionen durchgeführt werden können. Die Steuerungseinheit bietet eine API (Advanced Programmers Interface) und ein Plugin-Interface an, mit denen eine Einbindung in andere Systeme erfolgen kann.

Prozesse können Tickets, Zahlungen oder andere, unternehmensspezifische Workflows haben. Ein Prozess gehört immer zu einen Projekt und kann einzelnen Benutzern oder Rollen-Gruppen zugeordnet werden. Dies können Mitarbeiter sein, die im Unternehmen bestimmte Aufgaben erledigen oder Kunden, die über einzelne Schritte benachrichtigt oder zur Aktion aufgefordert werden.

Prozesse#

Subflow unterstützt Prozesse, die unterschiedliche Workflows haben können. Häufig genutzt ist ein sogenanntes Service Ticket:

Schlagwörter#

Subflow unterstützt sie bei der Kollaboration von Fillialen, anderen Unternehmen und beim Einhalten von Service Level Agreements. Subflow vermeidet Dead Ends in Workflows durch Eskalationsstrategien.

Noch technischer...#

Subflow basiert auf Java und implementiert Servlets, sowie Rest und Web-Services.

Bestandteile#

  • Frontend: Subflow umfasst ein Frontend zur Verwaltung von Benutzern, Workflows und Prozessen.
  • Service: Subflow enthält eine Service-Schnittstelle, welche die Transporte SOAP, HTTP-GET und HTTP-POST unterstützt.
  • Apps: Subflow kann für den Aufruf von Web-Apps konfiguriert werden, die über SOAP, HTTP-GET und HTTP-POST aufgerufen werden können.
  • Kollaboration: Subflow unterstützt Subflows, die über Server oder Unternehmen hinweg verteilt sind.

Damit ist Subflow auf Google-App-Engine oder anderen Application-Servern lauffähig.

Builds#

Die Builds von Subflow im Intersult Maven Repository sind als Thin WAR konfiguriert. Diese enthalten anstelle von JARs eine Maven pom.xml in /META-INF/pom.xml zur Spezifikation der Abhängigkeiten. Thin WARs können zum Beispiel auf Tomcat deployed werden, wenn die Erweiterung Maven Loader installiert ist.

Configuration#

Subflow hat ein paar wenige Parameter für die Konfiguration. Bei Tomcat können diese in die catalina.properties geschrieben werden:
subflow.site=https://www.<your-domain>.com/subflow
subflow.database.url=jdbc:mysql://localhost:3306/subflow
subflow.database.driver=com.mysql.jdbc.Driver
subflow.database.username=subflow
subflow.database.password=<password>
subflow.database.dialect=org.hibernate.dialect.MySQLDialect
subflow.mail.process=true
subflow.mail.host=localhost
subflow.mail.username=system@<your-domain>
subflow.mail.password=<password>
subflow.mail.sender=system@<your-domain>.com
subflow.crypt_key=<your-key>
subflow.row_count=10
subflow.plugins.default=com.intersult.subflow.plugin.EmailPlugin