Übersicht Dieses Whitepaper beschreibt den Einsatz von flowguide im Unternehmen. Es behandelt technische, organisatorische und personelle Aspekte, die für eine produktive Einbindung von flowguide in die Unternehmensprozesse relevant sind. Im CAE-Umfeld werden komplexe Anforderungen an das Datenhandling gestellt. Daten müssen vor der Rechnung zur Verfügung gestellt, auf Konsistenz geprüft und zur Berechnung auf Computeservern bereitgestellt werden. Fast immer sind in diesen Prozessen mehrere Rechner mit meist verschiedenen Betriebssystemen beteiligt. Das händische Ausführen dieser Prozesse ist zeitaufwändig und fehlerträchtig. Mit flowguide automatisieren Sie diese Abläufe und haben trotzdem gleichzeitig die volle Kontrolle darüber. Dadurch können Sie die Entwicklung beschleunigen und die Häufigkeit von Fehlern reduzieren. flowguide definiert klare Schnittstellen für Berechnungsabläufe. Die Software eignet sich deshalb auch ideal für die Anbindung der Prozesse an übergeordnete Programme wie Optimierer oder Business-Workflow-Software. Der Einsatz von flowguide ist überall dort vorteilhaft, wo komplexe Berechnungsprozesse wiederholt durchgeführt werden oder eine klare Schnittstelle zu ihnen notwendig ist. Dieses Whitepaper richtet sich an IT-Manager und Prozessverantwortliche im CAD/CAE Umfeld, die den Einsatz von flowguide planen. science+computing ag 2 / 7
Aufgaben von flowguide Die Kernfunktionalität von flowguide besteht in der Automatisierung von Berechnungsprozessen des CAE-Ingenieurs. Typische Einzelschritte sind z. B. Daten aus Archiven holen, Preprocessing, Auflösen von Include-Files, Berechnung auf Compute-Servern, Postprocessing, Datenarchivierung etc. Ein flowguide-administrator beschreibt diese Schritte in flowguide mittels der Beschreibungssprache flowscript. Einzelne Elemente eines Ablaufes werden in separaten Workflows definiert, die zu komplexeren Workflows zusammegefasst werden können. Der Ingenieur kontrolliert mit flowguide den Ablauf dieser bausteinartig zusammengesetzten Prozesse: Er stößt die Berechnungen an, kann sie wiederholen oder abbrechen. Zudem kann er auf Wunsch auch Teile separat laufen lassen wie zum Beispiel die Erstellung eines Filmes nach einer Berechnung. Über das eingebaute Monitoring überwacht der Benutzer den Ablauf der Workflows. Dadurch erkennt er die aktiven oder bereits abgearbeiteten Teilprozesse und deren Status. Auch kann beispielsweise die Standard-Ausgabe der Berechnungsprogramme umgelenkt werden, um so den Ingenieur schon während der Berechnung über den Stand zu informieren. Für applikationsspezifische Monitoring- und Kontrollfunktionen bietet flowguide die Möglichkeit, PlugIns einzubinden. Dadurch können diese Funktionen in einem eigenen GUI dem Benutzer zur Verfügung gestellt werden. Beispiele hierfür sind der Upload eines Abort- oder Control-Files oder das Zusammenfügen und Auswerten von Zwischenergebnis-Files bei parallelen Berechnungen. flowguide verwendet bislang ein Ein-Benutzer-Konzept. Das heißt, dass innerhalb einer Berechnung alle Teile des Workflows von einem Nutzer ausgeführt werden. Für zukünftige Versionen ist ein Mehr-Benutzer-Konzept geplant. Verschiede Nutzer können dann unterschiedliche Teile einer Berechnung durchführen und auf die dafür notwendigen Rechenergebnisse eines anderen Nutzers zugreifen. science+computing ag 3 / 7
Schnittstellen zu Unternehmensprozessen Die Definition des Begriffes "Workflow" ist sehr umfassend. Die Workflow Management Coalition (WfMC) versteht unter einem Workflow die "teilweise oder vollständige Automatisierung eines Geschäftsprozesses, wobei Dokumente, Informationen oder Aufgaben zur Bearbeitung von einem Teilnehmer zum nächsten gemäß bestimmter Verfahrensregeln weitergereicht werden. Teilnehmer können sowohl Menschen als auch technische Ressourcen sein. flowguide ist kein Allzweck-Workflow-Tool, sondern konzentriert sich auf einen speziellen Bereich von Workflows, der von anderen Tools nicht abgedeckt wird: Die Ausführung von Berechnungsprozessen im CAE-Umfeld. Die 'Dokumente' gemäß obiger Definition sind in diesem Fall meist große Dateien, die 'Aufgaben' entsprechen den Berechnungsprozessen, und die 'Teilnehmer' sind die Computeserver. Für die im CAE anfallenden Aufgaben bietet flowguide spezialisierte Möglichkeiten. Große Dateien können betriebssystem-übergreifend als Referenzen behandelt werden. Auch komplexeste Aufgaben können problemangepasst in flowscript oder in Python definiert werden. Für typische Aufgaben stehen vorgefertigte Lösungen zur Verfügung wie zum Beispiel für das Auflösen von Abhängigkeiten in Include-Files, welche als Eingabe für Berechnungsprogramme verwendet werden. Das Konzept der Execution-Strategies ermöglicht die flexible Auswahl der 'Teilnehmer', also zum Beispiel die Delegation einer Berechnung über ein Load-Sharing-System auf Rechencluster, auf denen selbst kein flowguide installiert sein muss. Durch Monitoring und Controlling können die teilweise sehr kostspieligen Rechungen noch während des Berechnungslaufes überwacht und falls nötig beeinflusst werden. Berechnungsabläufe sind innerhalb eines Unternehmens keine isolierten Prozesse. Die mit flow- Guide realisierten technischen Workflows haben klar definierte Schnittstellen. Dadurch ist die Software ideal geeignet als ausführende Instanz für komplexe Berechnungen in Compute-Grids oder in klassischen Workflow-Systemen. Auch lässt sie sich problemlos an andere Tools oder übergeordnete Software anbinden. So können Anwendungen wie Optimierungs-Software, Web- Portale, übergeordnete PDM-Systeme oder unternehmensübergreifendene Compute-Grids komplexe Berechnungsprozesse automatisiert aufrufen. science+computing ag 4 / 7
Rollenverteilung In flowguide wurde ein Rollenkonzept realisiert, das im Wesentlichen eine Trennung zwischen den Personen vorsieht, die Workflows benutzen und denen, die Workflows zur Verfügung stellen. Im Folgenden sind die typischen Rollen mit ihren Aufgaben und Anforderungen beschrieben. Es ist nicht ungewöhnlich, dass eine Person gleichzeitig mehrere dieser Rollen inne hat. Workflow-User Der Workflow-User benutzt flowguide zum Ausführen seiner Berechnungen. Er kommt nur mit wenigen, intuitiv zu bedienenden Elementen wie zum Beispiel dem Quick-GUI in Kontakt. Er muss die Berechnungsprozesse verstehen, benötigt jedoch keine großen Kenntnisse zu flow- Guide. Eine Schulung ist für ihn nicht notwendig. Eine kurze Einweisung durch einen erfahreneren Nutzer oder Workflow-Administrator ist ausreichend. Power-User oder Verantwortlicher für den Berechnungsprozess Der Power-User definiert den Berechnungsprozess, also zum Beispiel dessen Ablauf, die verwendeten Programme, Voraussetzungen, Abhängigkeiten etc. Diese Vorgaben werden dann vom Workflow-Administrator benutzt, um den Workflow mit flowguide zu implementieren. Workflow-Administrator Er ist für die Konfiguration von flowguide sowie die Erstellung und Konfiguration von Workflows zuständig. Als Voraussetzung für die Entwicklung von Jobflows wird einerseits ein guter Überblick über die Infrastruktur des High-Performance-Computing und die CAE-Entwicklungsabläufe gesehen, andererseits sind Programmiererfahrung (elementare Pythonkenntnisse) erforderlich. Außerdem sollte der Entwickler eine flowguide-schulung besucht haben, um die flowguide-interna kennenzulernen und um eine Einführung in flowscript zu bekommen. Diese Rolle ähnelt dem in vielen Firmen bekannten Methodenentwickler. science+computing bietet an, diese Rolle kosteneffizient zu übernehmen. Systemadministrator Der Systemadministrator spielt im flowguide-rollenkonzept keine besondere Rolle. Er benötigt keine speziellen flowguide-kenntnisse. Seine Aufgabe ist es, die Software zu installieren und dem Workflow-Administrator die Möglichkeit zu ihrer Konfiguration zu geben, indem er zum Beispiel einen speziellen User-Account dafür einrichtet. Der Systemadministrator ist die einzige Rolle, die privilegierte Systemrechte (Root-Account) benötigt. science+computing ag 5 / 7
flowguide im Netzwerk Empfohlene Mindestbandbreiten für die Netzwerk-Infrastruktur Bei CAE-Anwendungen sind große Files die Regel. Daher ist flowguide konsequent darauf ausgelegt. Der Transport von großen Dateien kann vermieden werden, indem Dateien in Workflows als Referenzen behandelt werden, statt direkt die Dateien selbst zu transportieren. flowguide bietet Mechanismen, mit denen solche Referenzen auch über Betriebssystemsgrenzen Gültigkeit behalten (Unix/Linux/Windows). Dadurch erfordert die Kommunikation zwischen flowguide-server und -Client bzw. Web-GUI nur kleine Bandbreiten. Eine ISDN-Verbindung beispielsweise reicht dafür aus. Die benötigten Bandbreiten zwischen flowguide-server und Compute- bzw. File-Server hängen spezifisch von den Workflows und den dabei transportierten Datenmengen ab. Bei gut entworfenen Workflows müssen nur direkt zwischen Compute-Server und File-Server große Datenmengen übertragen werden. In der flowguide Stand-Alone-Version sind flowguide-server und -Client in einer Applikation integriert. In diesem Fall gelten für den Client Netzwerkanforderungen wie für den Server. science+computing ag 6 / 7
Über science + computing Die science + computing ag (s+c) ist ein unabhängiges IT- Service- und Softwarehaus für technisch-wissenschaftliche Konstruktions- und Simulationsumgebungen (CAD/CAE/CAT). s+c konzentriert sich auf die optimale Gestaltung von offenen und verteilten Rechnersystemen und hat jahrelange Erfahrung in Betrieb und Administration komplexer Unix-, Linux- und Windows-Umgebungen sowie in der Softwareentwicklung für diese Systeme. Derzeit arbeiten 180 Mitarbeiter an den vier Standorten Tübingen, München, Duisburg und Berlin. Kunden von s+c sind beispielsweise Audi, BMW, Bosch, DaimlerChrysler, Porsche oder Infineon Technologies. Das Unternehmen kooperiert mit Vertriebspartnern in Frankreich, Italien, Japan, Schweden und USA. science+computing ag 7 / 7