Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Workflow Foundation Christian Binder

Ähnliche Präsentationen


Präsentation zum Thema: "Workflow Foundation Christian Binder"—  Präsentation transkript:

1 Workflow Foundation Christian Binder
28/03/2017 3:56 PM Workflow Foundation Christian Binder Developer Platform & Strategy Group Microsoft Deutschland GmbH ©2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

2 Agenda Was ist die Workflow Foundation? Architektur & Kernkonzepte
28/03/2017 3:56 PM Agenda Was ist die Workflow Foundation? Architektur & Kernkonzepte Workflow Engine & Services ©2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

3 Worklfow Foundation Zentrale Workflow-Technologie für Windows
28/03/2017 3:56 PM Worklfow Foundation Windows Workflow Foundation ist Programmiermodell, Engine und Werkzeug für das einfache Erstellen Workflow-basierter Windows-Anwendungen. Zentrale Workflow-Technologie für Windows Teil des .Net Framework 3.0 Erweiterbares Programmiermodel Workflow neu definiert Workflow als Mainstream-Technologie ©2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

4 Was ist ein Workflow? Eine Zusammenstellung von Activities,
28/03/2017 3:56 PM Was ist ein Workflow? Eine Zusammenstellung von Activities, organisiert in einem Flowchart oder Statusdiagramm Beispiel Activities…. AnManagerEskalieren CheckInventory Wie ein Flowchart…. Oder einem Statusdiagramm…. ©2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

5 Workflow Scenario Spektrum
28/03/2017 3:56 PM Workflow Scenario Spektrum System Workflow Human Workflow Beteiligte: Menschen, Rollen Ablauf: Flexibel, dynamisch Daten: Unstrukturiert, Dokumente Beteiligte : Apps, Services Ablauf: Vorgeschrieben Daten: strukturiert, transaktional Business to Business Supply Chain Mgmt… Information Worker Document Review… Line of Business Apps CRM ERP IT Management .NET Developer Windows Workflow Foundation ©2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

6 Software Herausforderungen
28/03/2017 3:56 PM Software Herausforderungen “Die echte Welt” Software Herausforderung “Bestellungen müssen in 48 Stunden bestätigt und in 30 Tagen versendet sein” “Die meisten Lieferanten bestätigen unsere Bestellung, manche vergessen es …” “Was ist der Status der Bestellung? Was ist der nächste Schritt? Langlauffend und Stateful Workflows laufen bis zu 30 Tage und müssen daher State verwalten Flexible Control Flow Flexibilität in der Workflowausführung. Schritte überspringen. Transparenz Darstellung des Status innerhalb der grafischen Workflowdarstellung ©2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

7 Workflow und BizTalk Server
28/03/2017 3:56 PM Workflow und BizTalk Server BizTalk Server Premium BPM Server Server product Verwendent in B2B, EAI, BPM Szenarien Verteilebare Lösung Verwaltbarkeit, Scale-out Design Tools Accelerators Business Activity Monitor And Admin Tools Workflow Orchestration Messaging Transformation Adapters .NET FW 3.0 Windows Workflow Foundation Visual Studio Designer Workflow Foundation Bestandteil von .NET FW 3.0 Weites Einsatzgebiet Für Eigenentwicklung Ermöglicht Verwaltbarkeit und Scale-out Lösung ©2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

8 Workflow und Office 2007 Outlook: Benachrichtigungen empfangen
28/03/2017 3:56 PM Workflow und Office 2007 Outlook: Benachrichtigungen empfangen SharePoint: Workflows starten, erstellen, dran teilnehmen, anpassen Word, PowerPoint, Excel, InfoPath: SharePoint Workflow starten, dran teilnehmen SharePoint Designer 2007: Workflows anpassen und erstellen ©2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

9 Agenda Was ist die Workflow Foundation? Architektur & Kernkonzepte
28/03/2017 3:56 PM Agenda Was ist die Workflow Foundation? Architektur & Kernkonzepte Workflow Engine & Services ©2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

10 Windows Workflow Foundation
28/03/2017 3:56 PM Windows Workflow Foundation Visual Designer Kernkonzepte Workflows sind ein Set von Activities Workflow Workflows laufen in einem Host Process Entwickler können eigene Activity-Bibliotheken erstellen Activity Komponenten Activity Library Base Activity Library: Out-of-box Activities und Basis für eigene Activities Workflow Foundation Base Activity Library Runtime Engine: Workflow Execution und State Management WF Runtime Engine Runtime Services: Hosting Flexibilität und Kommunikation Runtime Services Visual Designer Host ©2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

11 Workflow Basics Ein Workflow ist eine Klasse
28/03/2017 3:56 PM Workflow Basics Ein Workflow ist eine Klasse using System.Workflow.Activities; public class Workflow1 : SequentialWorkflow { } Ein Workflow kann in XML beschrieben werden <?Mapping XmlNamespace="Activities" ClrNamespace="System.Workflow.Activities" Assembly="System.Workflow.Activities" ?> <SequentialWorkflow x:Class="MyWorkflow" xmlns="Activities" xmlns:x="Definition"> </SequentialWorkflow> ©2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

12 Workflow Basics Workflow Constructor konfiguriert Activities
28/03/2017 3:56 PM Workflow Basics Workflow Constructor konfiguriert Activities public partial class Workflow1 : SequentialWorkflow { public Workflow1() { InitializeComponent(); } public sealed partial class Workflow1 : SequentialWorkflow { private Delay delay1; private void InitializeComponent() this.delay1 = new System.Workflow.Activities.Delay(); this.delay1.ID = “delay1"; this.delay1.TimeoutDuration = System.TimeSpan.Parse("00:00:05"); this.Activities.Add(this.delay1); this.ID = "Workflow1"; ©2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

13 Workflow Erstellungsoptionen
28/03/2017 3:56 PM Workflow Erstellungsoptionen .NET assembly ctor definiert Workflow Markup Only “Deklarativ” XOML Markup und Code C#/VB Nur Code Generiert von Anwendung XML defines workflow structure logic and data flow workflow Code-beside defines extra logic Code creates in constructor App erstellt Activity Tree und serialisiert Workflow Compiler wfc.exe C#/VB Compiler ©2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

14 State Machine Designer
28/03/2017 3:56 PM Visual Designer Activity Designer Sequential Designer State Machine Designer Workflow Designers Workflows erstellen Visuelle und Code basierende Programmierung Visuelles Debugging Themes support Designer re-hosting Activity Designer Neue Activities erstellen Visuell und Code basierende Programmierung Ableiten von der Activity Basis- klasse oder ganz neu anfangen  ©2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

15 Workflows erstellen 28/03/2017 3:56 PM
©2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

16 Was sind Activities? Ein Activity ist ein Schritt im Workflow
28/03/2017 3:56 PM Was sind Activities? Ein Activity ist ein Schritt im Workflow Hat Properties und Events, die im Workflow –Code programmierbar sind Hat Methoden, die nur die Workflow Runtime aufruft Vergleichbar mit Forms & Controls Activity == Control Workflow == Form Activities fallen unter zwei Kategorien Basic Composite ©2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

17 Activities – Erweiterbarer Ansatz
28/03/2017 3:56 PM Activities – Erweiterbarer Ansatz Domain-spezifische Workflow Pakete Base Activity Library Benutzerdefinierte Activity-Libraries Compliance Compose Activities CRM Erweit. Activity RosettaNet IT Mgmt Base Activity Library Eigene Activity ©2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

18 Flexible Control Flow Sequential Workflow State Machine Workflow
28/03/2017 3:56 PM Flexible Control Flow Sequential Workflow Step1 Step2 Sequentielle Struktur beschreibt Ausführungs- reihenfolge Vorhersehbar, formal Automatisierung Flowchart Metaphor State Machine Workflow State2 State1 Event Externe Events steuern die Ausführungs-reihenfolge Reaktiv, Event-gesteuert Überspringen/Wiederholen Graphen Metaphor Regel-gesteuerte Activities Step2 Step1 Rule1 Rule2 Data Regeln und Status der Daten bestimmen die Reihenfolge Daten-gesteuert Einfache Abfragen, komplexe Regeln Abhängige Activity-Gruppen ©2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

19 Activities verwenden und erstellen
28/03/2017 3:56 PM Activities verwenden und erstellen ©2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

20 Workflow Lifecycle Gesteuert via WorkflowInstanz Objekt
28/03/2017 3:56 PM Workflow Lifecycle Gesteuert via WorkflowInstanz Objekt Lifecycle und Persistenz Operationen Abort, Terminate, Suspend, Resume Load, Unload Operationen erzeugen zugerhörige Workflow Events private void TerminateButton_Click(object sender, EventArgs e) { WorkflowInstance workflowInstance = workflowRuntime.GetWorkflow(Program.workflowInstanceId); workflowInstance.Terminate("Terminating Case, Problem was resolved"); } ©2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

21 Workflow Runtime Events
28/03/2017 3:56 PM Workflow Runtime Events Workflow Instanz Events Bietet die Möglichkeit Informationen über den Workflow-Lifecycle der Instanz zu erhalten z.B.: Aborted, Terminated, Started, Completed, usw. EventArgs enthält die InstanzID der zugehörigen Workflow Instanz Erzeugt durch Workflow-Instanz Operationen oder während der Ausführung z.B.: Die Ausführung der Terminate Activity erzeugt das WorkflowRuntime.WorkflowTerminated Event Workflow Runtime Events Bietet die Möglichkeit Informationen über die Workflow-Runtime zu erhalten Started, Stopped ©2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

22 Workflow Events (I) 28/03/2017 3:56 PM Workflow Event Handlers
Description Event Arguments ExceptionNotHandled Thrown when the workflow instance doesn’t handle the internal exception ExceptionNotHandledEventArgs Started Thrown when the workflow runtime is started WorkflowRuntimeEventArgs Stopped Thrown when the workflow runtime is stopped WorkflowAborted Thrown when the workflow instance is aborted WorkflowEventArgs WorkflowCompleted Thrown when the workflow instance is completed WorkflowCompletedEventArgs WorkflowCreated Thrown when the workflow instance is created WorkflowIdled Thrown when the workflow instance is idle (ex. Delay or EventSink) WorkflowLoaded Thrown when the workflow instance is loaded into memory (i.e. re-hydrated) ©2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

23 Workflow Events (II) 28/03/2017 3:56 PM Workflow Event Handlers
Description Event Arguments WorkflowPersisted Thrown when the workflow instance is persisted WorkflowEventArgs WorkflowResumed Thrown when the workflow instance is resumed after being suspended. WorkflowShutdown Thrown when the workflow runtime is shutdown WorkflowSuspended Thrown when the workflow instance is suspended by the runtime WorkflowSuspendedEventArgs WorkflowTerminated Thrown when the workflow instance is terminated by the runtime or internally WorkflowTerminatedEventArgs WorkflowUnloaded Thrown when the workflow instance is un-loaded from memory (i.e. Hydrated) ©2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

24 28/03/2017 3:56 PM Workflow Events ©2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

25 Workflow und Host Kommunikation
Kommunikation zwischen Workflow und Host basiert auf Messaging mit Methoden und Events

26 Workflow und Host Kommunikation (II)
28/03/2017 3:56 PM Workflow und Host Kommunikation (II) [ExternalDataExchange] public interface IApprovalService { void ManualApproval(int amount); event EventHandler<ExternalDataEventArgs> ApprovedProposal; event EventHandler<ExternalDataEventArgs> RejectedProposal; } class ApprovalService : IApprovalService {} //ExternalDataExchangeService in der Runtime registrieren WorkflowRuntime workflowRuntime = new WorkflowRuntime() ExternalDataExchangeService externalService = new ExternalDataExchangeService(); workflowRuntime.AddService(externalService); externalService.AddService(new ApprovalService()); ©2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

27 Workflow Host Kommunikation
28/03/2017 3:56 PM Workflow Host Kommunikation ©2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

28 Agenda Was ist die Workflow Foundation? Architektur & Kernkonzepte
28/03/2017 3:56 PM Agenda Was ist die Workflow Foundation? Architektur & Kernkonzepte Workflow Engine & Services ©2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

29 Runtime Services Host Application WF Runtime
28/03/2017 3:56 PM Runtime Services Host Application PersistenceService lädt und speichert den Status der Instanz WF Runtime Out of Box Services unterstützen SQL Server/MSDE Services PersistenceService TrackingService verwaltet Profile und speichert Tracking-Informationen TrackingService SchedulerService CommitWorkBatch Service Verwaltung von Threading und Transaktionen ©2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

30 Übersicht Persistence
28/03/2017 3:56 PM Übersicht Persistence Persistieren der Status und Timer Information einer Workflow Instanz Instanzen bleiben so lange Zeit verfügbar und belegen kein Speicher Instanzen sind auch nach einem System Restart verfügbar Unload Persist Workflow Instance Persistence Service Load Host Application ©2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

31 Workflow Persistence aktivieren
28/03/2017 3:56 PM Workflow Persistence aktivieren Persistence Support für Workflow Instanzen Workflow Runtime erstellen Connection String definieren SqlPersistenceService in Runtime registrieren Workflow starten Laden und Entladen mit StatePersistenceService private void StartCaseManagementProcess() { WorkflowRuntime wr = new WorkflowRuntime(); string connectionstring = "Initial Catalog=Persistence;DataSource=localhost;Integrated Security=SSPI;"; wr.AddService(new SqlWorkflowPersistenceService(connectionstring)); WorkflowInstance instance = wr.CreateWorkflow(typeof(ManageCaseCreation)); instance.Start(); } %windir%\Microsoft.NET\Framework\v3.0\Windows Workflow Foundation\SQL ©2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

32 Workflow Persistence 28/03/2017 3:56 PM
©2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

33 28/03/2017 3:56 PM Übersicht Tracking Nachhalten aller Statusänderungen und Daten im Workflow Profile API’s für die Erstellung XML legt fest, was nachgehalten wird Includes und Excludes, State Changes, Data Context, … Tracking Information Tracking Service Write ? Activities Profile Workflow Instance Host Application Query ©2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

34 Workflow Tracking aktivieren
28/03/2017 3:56 PM Workflow Tracking aktivieren Tracking Unterstützung für Workflow Instanzen Tracking Profil(e) erstellen Workflow Runtime erstellen Connection String festlegen Ein oder mehrere Tracking-Services bei der Engine registrieren Workflow erstellen und ausführen Tracking Datenbank abfragen – Instanz und Activity Information private void StartCaseManagementProcess() { WorkflowRuntime wr = new WorkflowRuntime(); string connectionstring = "Initial Catalog=Persistence;DataSource=localhost;Integrated Security=SSPI;"; wr.AddService(new SqlTrackingService(connectionstring)); WorkflowInstance instance = wr.CreateWorkflow(typeof(ManageCaseCreation)); instance.Start(); } ©2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

35 Workflow Tracking 28/03/2017 3:56 PM
©2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

36 Agenda Was ist die Workflow Foundation? Architektur & Kernkonzepte
28/03/2017 3:56 PM Agenda Was ist die Workflow Foundation? Architektur & Kernkonzepte Workflow Engine & Services ©2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

37 Zusammenfassung Zentrale Workflow-Technologie für Windows
28/03/2017 3:56 PM Zusammenfassung Zentrale Workflow-Technologie für Windows Teil des .Net Framework 3.0 Erweiterbares Programmiermodel BizTalk Server, Office 2007, MBS & andere Microsoft Client/Server Produkte, werden auf WF basieren Workflow neu definiert Technolgie für System & Human Workflow zentrische Anwendungen Sequentieller oder „State machine“ Worklfow Workflow als Mainstream-Technologie Erweiterbare Plattform für ISVs ©2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

38 Weitere Informationen
28/03/2017 3:56 PM Weitere Informationen MSDN® Workflow Page Microsoft® Visual Studio® Extensions Download 12 Hands-on Labs Community Site RSS Feeds für News & Updates Beispiele, Tools und Runtime-Servicekomponenten Foren ©2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

39 Fragen und Antworten Vielen Dank! Christian Binder
28/03/2017 3:56 PM Fragen und Antworten Vielen Dank! Christian Binder ©2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.


Herunterladen ppt "Workflow Foundation Christian Binder"

Ähnliche Präsentationen


Google-Anzeigen