ExsoFlow

Workflow- & IntegrationServer

Die Schaffung einer einheitlichen, einfach zu
verwaltenden Lösung für die verschi...
ExsoFlow-Server bietet mit dem Statistik-Modul daher eine
optionale Funktionalität an, um die Vorgangsdaten auf SQLDatenba...
Senden an den Server und Job-Engine

Domänen

Wird ein Vorgang an ExsoFlow versendet, so wird zunächst einmal
die Vorgangs...
Entwicklungsumgebung bietet, insbesondere kann auf alle
Klassenbibliotheken zugegriffen werden die für die Umsetzung einer...
Nächste SlideShare
Wird geladen in …5
×

ExsoFlow Workflow & IntegrationServer technische Information

430 Aufrufe

Veröffentlicht am

Technische Informationsbroschüre zum ExsoFlow-Server Stand Januar 2014

Veröffentlicht in: Technologie
0 Kommentare
0 Gefällt mir
Statistik
Notizen
  • Als Erste(r) kommentieren

  • Gehören Sie zu den Ersten, denen das gefällt!

Keine Downloads
Aufrufe
Aufrufe insgesamt
430
Auf SlideShare
0
Aus Einbettungen
0
Anzahl an Einbettungen
4
Aktionen
Geteilt
0
Downloads
2
Kommentare
0
Gefällt mir
0
Einbettungen 0
Keine Einbettungen

Keine Notizen für die Folie

ExsoFlow Workflow & IntegrationServer technische Information

  1. 1. ExsoFlow Workflow- & IntegrationServer Die Schaffung einer einheitlichen, einfach zu verwaltenden Lösung für die verschiedensten Integrationsaufgaben in und zwischen Unternehmen war unser zweiter Anspruch bei der Entwicklung von ExsoFlow. Der erste: eine leistungsstarke Datenhaltungs- und Workflow-Instanz für ExsoForm-Vorgänge anzubieten. Konzept der ExsoForm-Vorgänge ExsoForm ist eine Workflow-Lösung. Sie basiert auf XMLDatensätzen, die zur Darstellung auf dem Bildschirm mit einem XSL-Formular verknüpft werden. Durch dieses flexible Mapping steht bei ExsoForm der Datensatz oder der „Vorgang“ im Mittelpunkt, nicht (nur) das Formular. Was dem Anwender gleichgültig sein mag ist für die Integration in eine neue oder bestehende Softwarelandschaft essentiell: zum einen kann ExsoForm nicht nur eigens für die Lösung erstellte Daten anzeigen sondern eben XML-Dateien aus beliebigen Quellen. Und diese Daten kann ExsoForm natürlich auch wieder an andere Systeme weitergeben. ExsoForm ist dokumentenzentriert. Ähnlich einer Tabellenkalkulation oder einer Textverarbeitungslösung werden Dateien also geöffnet und gespeichert - mit dem Unterschied, dass das Speichern nicht notwendig in eine Datei erfolgt sondern einen Sendevorgang an den ExsoFlow-Server darstellt. ExsoForm bettet die Vorgangsdaten in ein XML-Dateiformat ein, dass zusätzlich Anlagen und Metadaten enthält - und: eine Abb.: Das ExsoForm-Datenmodell komplette Versionierung. Damit ist aus der Vorgangsdatei selbst jede signierte Vorgangsversion jederzeit ersichtlich. Gegenüber einem System, das als Browserversion angeboten wird oder im Client-Server-Betrieb arbeitet bietet das zwei Vorteile: zum einen kann ein ExsoForm-Vorgang ohne weiteres ohne Internet-Verbindung - zum Beispiel auf Notebooks - bearbeitet werden. Sogar ganze Listen von Vorgängen können ausgecheckt, offline bearbeitet und wieder eingecheckt werden. Das macht ExsoForm besonders für Einsatzgebiete interessant, bei denen eine durchgängige Internet-Verbindung nicht oder nur mit geringer Bandbreite zur Verfügung steht. Das ist beileibe nicht nur bei Baustellen von Eisenbahntunneln der Fall sondern häufig im Service- oder Vertriebs-Außendienst. Oder beim Einsatz in Produktionsstätten. Hier sind WLAN und WiFi oftmals durch elektrische Felder gestört, die von Maschinen erzeugt werden oder Internet-Verbindungen sind für Außenstehende schlichtweg nicht erlaubt um Geschäftsgeheimnisse zu schützen. Wenn Sie sich in Zukunft noch einmal über Leute wundern sollten, die auf dem Parkplatz von Fastfood-Ketten im Auto sitzen und mit ihren Notebooks arbeiten ohne etwas zu essen: sie nutzen deren kostenfreies WLAN für den Zugriff auf ihre Firmendaten und erfassen dort nach, was sie beim Besuch ihrer Kunden provisorisch notiert haben. Mit ExsoForm stellen Sie Ihre Dokumente einfach in die Sendewarteschlange. Datenhaltung mit dem ExsoFlow-Server Ab einer bestimmten Größenordnung bekommt die Datenhaltung der Vorgangsdateien zunehmende Bedeutung. Dabei geht es um die klassischen zwei Bereiche OnlineTransaktion (also das Verarbeiten von Daten zur Ausführung von Geschäftsprozessen) und Online-Analyse (oder klassisch: Statistiken). Dass die Datenmodelle in ExsoForm flexibel und vor allem leicht erweiterbar sind sprach im Bereich Speichern und Auffinden von Vorgängen gegen den Einsatz einer klassischen Datenhaltung auf SQL-Basis. Ebenso, dass Anlagen zu Vorgängen leicht einige Megabyte groß sein können - etwa eingescannte Rechnungen, PDF-Dateien oder Bilder. Eine Ablage im klassischen Dateisystem stellte vor dem Hintergrund einer einfachen und sicheren Datensicherung keine Alternative dar. Die Wahl fiel daher auf die moderne NoSQL-Datenbank MongoDB, die sich in diversen Großprojekten bis hin zum Internet-Shop eines großen deutschen Bekleidungs-Versenders oder diversen Immobilien-Portalen bewährt hat. Dass diese Lösung zusätzlich hochverfügbar konfiguriert werden kann, stellte einen weiteren Pluspunkt dar. Für die Datenanalyse hingegen ist eine NoSQL-Datenbank eher ungeeignet. Hier wird für die Vorbereitung der Analysedimensionen üblicherweise mit SQL gearbeitet. Der
  2. 2. ExsoFlow-Server bietet mit dem Statistik-Modul daher eine optionale Funktionalität an, um die Vorgangsdaten auf SQLDatenbanken zu transferieren, wobei die Tabellenschemata anhand des Datenmodells automatisch gepflegt werden und Master-DetailVerbindungen über Primär- und Fremdschlüssel sauber abgebildet werden. Auf diesem Ordner aufbauend können Sichten definiert werden, die den Ordnerinhalt nach verschiedenen Kriterien filtern. Solche Kriterien können sein der aktuelle Arbeitsschritt, der Status eines Dokuments, beliebige Feldinhalte, der letzte oder aktuelle Bearbeiter etc. Workflow-Modell ExsoForm/ExsoFlow bieten ein linearen Workflow mit Sprungmöglichkeiten an. Ein Vorgang durchläuft also das Workflow-Modell schrittweise, wobei einzelne Schritte übersprungen oder wiederholt werden können. Wenn ein Vorgang in einen anderen Schritt weitergeleitet wird geschieht dies durch eine Statuszuweisung mit digitaler Signatur. In welche Schritte ein Vorgang weitergeleitet werden kann richtet sich nach dem aktuellen Zustand, nach der Berechtigung des Anwenders sowie nach festzulegenden Feldinhalten, die auch mit Werten des Anwenders abgeglichen werden können (Beispiel: Freizeichung einer Eingangsrechnung nur, wenn dem Anwender eine Berechtigung Abb: Konfigurieren privater Sicht-Ordner Diese Filter können zum Teil auch dynamisch eingesetzt werden wie zum Beispiel eine Einschränkung auf Vorgänge des „aktuellen Benutzers“ oder Vorgänge mit Felddatum „größer 1 Monat“ etc. Der Zugriff auf diese Sicht-Ordner kann auf bestimmte Benutzergruppen/Abteilungen eingeschränkt werden, so dass beinahe alle Berechtigungskonzepte abbildbar sind. Zusätzlich können Anwender private Sicht-Ordner anlegen um ihre Arbeitsaufgaben nach Wunsch zu organisieren. Datumsfelder aus dem Datenmodell können dazu verwendet werden, Vorgänge in einer Planungstafel zum entsprechenden Ordner darzustellen (z.B. alle nicht erledigten Supporteinsätze eines Tages). Internet,WebServices, Cloud-Computing Abb: Workflow-Modell in ExsoForm mindestens in Höhe des Rechnungsbetrags zugewiesen ist). Die bewusst einfach gehaltene Workflow-Systematik bringt in der Praxis zwei Vorteile: ? sind die Sachbearbeiter in der Lage, den Workflow zum einen grob komplett zu beherrschen und jedenfalls den letzten und den nächsten Schritt eines von ihnen bearbeiteten Vorgangs zu kennen. ? zum anderen verleitet die Systematik nicht zu unüberschaubaren Gestaltungen in der Planungsphase. Durch die Möglichkeit, Schritte zu überspringen lassen sich Verzweigungen wie zusätzliche Genehmigungen etc. ohne weiteres abbilden. Die Kommunikation zwischen ExsoForm und dem ExsoFlowServer sowie zwischen ExsoFlow-Servern findet über WebServices mit dem HTTP- bzw. HTTPs-Protokoll statt - also über dasselbe Protokoll, das auch ein Web-Browser verwendet. Im Grunde stellt ExsoForm einen auf einen speziellen Zweck hin entwickelten WebBrowser dar - mit leistungsfähigen Erweiterungen. Der ExsoFlow-Server kann auch als Internet-Service gehostet werden - stellt also eine „Cloud-Lösung“ dar. So kann ExsoFlow alternativ zu einer lokalen Installation bei einem externen CloudAnbieter laufen und über verschiedene Abrechnungsmodelle gemietet werden. ExsoFlow fügt sich dabei beispielsweise hervorragend in die Serverstruktur von Microsoft Azure ein. DocumentWriterService (parallele Pipelines) Index-Prozessor erstellt IndexObject FolderReaderService ReaderService (parallele Pipelines) Folder-Manager Template-Library Job-Prozessor Status/Step startet Job Template-Folder-Mapper Folders & Queries Ordnerstruktur ExsoForm bietet für die Vorgänge eine verwaltbare Ordnerstruktur an. Dabei existiert jeweils ein Grundordner, der einen oder mehrere Vorgangstypen beinhalten kann (z.B. Montagebericht und telefonischer Support, die sich nur marginal unterscheiden). Organisationsmanagement (Rechteverwaltung) Dokumenten-Datenbank (MongoDB) Schematischer Aufbau des ExsoFlow Vorgangs- und Stammdatenprozessors Abb:Vorgangs- und Stammdatenprozessor in ExsoFlow
  3. 3. Senden an den Server und Job-Engine Domänen Wird ein Vorgang an ExsoFlow versendet, so wird zunächst einmal die Vorgangsdatei einfach in der Vorgangsdatenbank abgespeichert, In der heutigen Unternehmenspraxis sind „einfache“ Unternehmen (d.h. solche die nur eine rechtliche Gesellschaft darstellen und einen homogenen Unternehmensgegenstand haben) kaum noch als Regelfall anzusehen: eine Aufteilung in Produktions- und Vertriebsgesellschaft ist in der Fertigung üblich, darüber hinaus gibt es eine Reihe von Unternehmensverbänden mit wechselseitigen Beteiligungen oftmals in völlig unterschiedlichen Branchen. Gleichwohl sind gerade die Verbindungen zwischen den Unternehmen wichtig und es gibt immer wieder Personen an bestimmten Stellen, die auf die Daten mehrerer Teilstrukturen dieser Unternehmensverbände zugreifen müssen. Wollte man diese Strukturen mit einem einzigen Datenpool versorgen, so ergäben sich mannigfaltige Berechtigungsprobleme. Schon das Speichern in derselben Datenbank oder auf demselben Server scheint problematisch, wenn beispielsweise bei einem JointVenture die Vertragspartner in anderen Gebieten zugleich Wettbewerber sind. Um solche Strukturen abbilden zu können verfügt ExsoFlow über ein Domänenkonzept: ein Anwender kann in seinem ExsoFormFrontend völlig getrennte Instanzen von ExsoFlow einhängen und mit unterschiedlichen Berechtigungen (abgebildet über X509Zertifikate) auf die Vorgänge mehrerer Domänen zugreifen. So kann der Vertriebsmitarbeiter, der für mehrere Unternehmen arbeitet, unterschiedliche Vorgangstypen seiner Auftraggeber im gleichen Frontend abbilden und über den ExsoFlow-Server gegebenenfalls sogar unternehmens- bzw. instanzübergreifende Vorgänge auslösen. Gleichzeitig hat er alle aktuellen Themen im Blick ohne sich ständig an unterschiedliche Systeme anmelden zu müssen. Plug-Ins Eine mächtige Erweiterungsfunktionalität bietet ExsoFlow durch die Plug-In-Technologie. ExsoForm und ExsoFlow sind komplett in Java entwickelt. Aus einer frei verfügbaren Java-Basisklasse können nun beliebige Java-Entwicklungen abgeleitet werden. Diese können ihrerseits Jobs mit entsprechenden Verwaltungs-Oberflächen sowie WebServices bereitstellen, die innerhalb des ExsoFlow-Servers laufen. Darüber hinaus sind alle Möglichkeiten denkbar, die Java als ExsoForm andere ExsoFlow-Domäne Scheduler Built-In Dokumenten-Datenbank (NoSQL, MongoDB) Plug-In 1 Plug-In n Job- und Temp-Datenbank (SQL, Apache Derby) = Webservice via HTTP(S) Abb: Aufbau des ExsoFlow-Servers Schematischer Aufbau des ExsoFlow Servers WebService Job-Prozessor JDBC Watcher (FileSystem, eMail, DB) Vorgangs-/StammdatenProzessor eMail die Mehrbenutzersperre für diesen Vorgang aufgehoben und ein Indexobjekt anhand der im Datenmodell gekennzeichneten Indexfelder erstellt. Damit lassen sich in ExsoFlow die Anforderungen der GoBS abbilden. Zusätzlich prüft das System, ob aufgrund des Status und/oder des Arbeitsschrittes des Vorgangs weitere Aktionen erforderlich sind. Ist dies der Fall, d.h. ist ein entsprechender Job konfiguriert, wird dieser Job ausgeführt. ExsoFlow bietet dazu eine Reihe von Standard-Jobs an. Darunter sind Jobs zum Abspeichern der XML-Daten in einer SQLDatenbank, das Verschicken von Vorgängen oder daraus generierter pdf-Dateien per eMail, das Auslesen eines eMail-Postfachs, das Starten von Anwendungen etc. Verschiedene Jobs können dabei nacheinander ausgeführt werden. Damit ist es beispielsweise möglich, einen eingegangenen ExsoForm-Vorgang zunächst in eine Datenbankstruktur zu schreiben, diese dann auszulesen und die Daten an ein ERP-System zu übergeben. Damit kann aus einem ExsoForm-Montagebericht sofort ein Auftrag in einem ERP-System generiert werden. Diese Job-Bundles können auch zeitgesteuert ausgeführt werden und so beispielsweise ein eMail-Postfach mit Eingangsrechnungen auslesen, daraus automatisch ExsoForm-Vorgänge generieren und in den Workflow einstellen. Eine dritte Auslösemöglichkeit stellen sogenannte „Watcher“ dar, die zum Beispiel ein Windows-Dateisystem überwachen und Jobs ausführen sobald eine Datei in ein bestimmtes Verzeichnis gestellt wird. Damit können beispielsweise Auftragsanlagen aus XMLDateien oder einfach Umwandlungen von XML-Formaten ausgelöst werden. Mit dem ExsoFlow-JobEngine sind also diverse Integrationsaufgaben auch über den Einsatz mit ExsoForm hinaus möglich, man kann ExsoFlow auch komplett ohne ExsoForm als zentrale Schnittstellenlösung einsetzen. File (OS, FTP, WebDAV) Abb: Definition eines ExsoFlow Job-Bundles
  4. 4. Entwicklungsumgebung bietet, insbesondere kann auf alle Klassenbibliotheken zugegriffen werden die für die Umsetzung einer Aufgabe erforderlich sind. Anders als bei herkömmlichen Applikationsservern sind zentrale Funktionalitäten des Servers auch vom Plug-In nutzbar, Integration in Verzeichnisdienste Gerade in größeren Unternehmen stellt die Integration einer Workflow-Lösung in Anwender-Verwaltungssysteme oft eine Herausforderung dar: während einige Unternehmen gern komplett in homogenen Lösungen wie Microsoft ActiveDirectory arbeiten haben andere gar keine Windows-Server und können - oder wollen - solche Integrationen daher nicht nutzen. Darüber hinaus darf die Integration des Verzeichnisdienstes nicht zu Problemen bei Backup oder Recovery führen und sollte auch nicht zu Einschränkungen in der Funktionalität der Lösungen führen. Ein häufig beschrittener Weg, den wir auch in ExsoFlow gehen, ist es, keine Vollintegration in einen Verzeichnisdienst durchzuführen sondern die eigene Anwenderstruktur regelmäßig mit einem Verzeichnisdienst (LDAP) abzugleichen. So kommen neu angelegte Netzwerk-Accounts in ExsoFlow an und können dort weiter bearbeitet werden. Fast noch wichtiger ist es, dass gesperrte Accounts dann auch in ExsoFlow gesperrt werden. Unabhängig davon können die Einzelberechtigungen in ExsoFlow verwaltet werden oder - falls andere zentrale Verwaltungstools eingesetzt werden - über eine Anbindung zu diesen Tools. Abb: Jobsteuerung und Protokoll in der ExsoFlow ManagementConsole beispielsweise die Protokollierung oder die Verwaltung von SQLVerbindungen, die einfach über die ExsoFlow-Console administrierbar sind. Durch die Kombinationsmöglichkeiten im Job-Engine stehen nun praktisch alle Möglichkeiten offen: seien es Zugriffe auf ein ERPAPI bei Empfang eines ExsoFlow-Montageberichtes, das Eintragen oder Auslesen eines Termins in einem CRM-System, das Versenden einer Mahnung per eMail, Lagerbestands-Auskünfte als Plug-InWebservice für eine Website etc. Und das mit einem Entwicklungsaufwand, der kaum zu unterbieten sein dürfte. Im Minimalfall reicht es aus, zwei Klassen zu programmieren und in ExsoFlow einzuhängen um einen kompletten Webservice anbieten zu können. ExsoFlow Workflow- & IntegrationServer Verwaltung Ihr zertifizierter ExsoForm-Partner: Mit der ExsoFlow ManagementConsole bietet ExsoFlow ein professionelles Verwaltungswerkzeug an, das mit dem ExsoFlowServer über WebServices verbunden ist. EXSO. business solutions GmbH Sternstraße 9-11 · 40479 Düsseldorf · Germany Telefon +49 211 6000 10-3 · Telefax +49 211 6000 10-40 eMail vertrieb@exso.de www.exsoform.com Abb: Rechteverwaltung in der ExsoFlow ManagementConsole Stand Januar 2014 Verwendete Unternehmens- und Produktnamen können eingetragene Marken der jeweiligen Unternehmen sein. Der Funktionsumfang kann landesspezifisch variieren, Änderungen des Funktionsumfangs können ohne Vorankündigung erfolgen. Irrtümer und Druckfehler vorbehalten. © 2014 EXSO. business solutions GmbH. Alle Rechte vorbehalten.

×