Transcript Tvorba workflow pomocí Visual Studio 2010
Petr Puš Software Architect Unicorn Systems a.s.
Modelování procesů pomocí workflow
Agenda
• • • • • Základní principy workflow Novinky ve WWF 4.0
Tvorba workflow pomocí Visual Studio 2010 Tvorba vlastních aktivit Integrace s WCF
Agenda
• • • • •
Základní principy workflow
Novinky ve WWF 4.0
Tvorba workflow pomocí Visual Studio 2010 Tvorba vlastních aktivit Integrace s WCF
K čemu workflow?
• • • V aplikacích jsou často implementovány procesy – Obchodní či systémové – Např. Schválení půjčky, Alokace zdrojů Přenos složitějších procesů do kódu může být problematický – – Výsledkem často těžko pochopitelný kód Vyšší náchylnost k chybám při změně Pomocí workflow lze procesy efektivně modelovat – – Větší korelace se zadáním Podpora vizuálního návrhu – Efektivnější vývoj
Windows Workflow Foundation
• • • •
Programovací model, engine a nástroje pro efektivní tvorbu Windows aplikací založených na workflow
Jednotná worfklow technologie na platformě Windows – – – – Framework pro tvorbu workflow Součást .NET Framework od verze 3.0
Jedna technologie pro obchodní i technická workflow Použitelné na řadu scénářů – Využito například v produktech SharePoint a BizTalk Deklarativní tvorba workflow – Jednoduché použití Rozšiřitelný framework
Architektura
• •
Klíčové koncepty
– Workflow je složeno z aktivit – – Workflow běží v rámci hostitelského procesu • Jakákoli aplikace či server Vývojáři mohou tvořit vlastní knihovny aktivit
Komponenty
– Base Activity Library: Out-of-box aktivity a základ pro tvorbu vlastních aktivit – – Runtime Engine: Zajištění běhu workflow a řízení stavu Runtime Services: Flexibilita hostitelského prostředí a komunikace s okolím – Visual Designer: Grafická tvorba workflow
Aktivity: Koncept rozšiřitelnosti
Base Activity Library Custom Activity Libraries Domain-Specific Workflow Packages
Out-of-Box Activities
Compose activities Extend activity Author new activity
Compliance CRM DMS IT Mgmt
Agenda
• • • • • Základní principy workflow
Novinky ve WWF 4.0
Tvorba workflow pomocí Visual Studio 2010 Tvorba vlastních aktivit Integrace s WCF
Nedostatky WWF 3.X
• • • • • Omezená podpora pro „XAML-only“ workflow Problematické verzování Omezená základní knihovna aktivit Tvorba vlastních aktivit je obtížná Obtížné řízení toku dat
Hlavní novinky ve WWF 4.0
XAML-only model Rozšíření základní knihovny aktivit Jednodušší tvorba vlastních aktivit Jednodušší tok dat Vylepšení runtime/designeru
Výhody deklarativního workflow
•
Definice programu jsou pouze data
– – – Typicky soubor XML, který je jednoduché zpracovat Jednodušší podpora v nástrojích a designérech Může být uloženo kdekoliv (soubor, DB, cloud, …)
Rozšířená knihovna aktivit
• WWF 4.0 přináší několik nových/rozšířených aktivit Flow Control Flowchart ForEach Parallel ParallelForEach DoWhile Pick … Collection AddToCollection RemoveFromCollection ExistsInCollection ClearCollection ...
Další Assign InvokeMethod Persist TryCatch CompensableActivity Interop ...
WWF 4.0 Runtime
10-100x Zvýšení výkonu Plná kontrola perzistence Flow-in Transactions
Přechod na WWF 4.0
• • Workflow vytvořená pro verzi 3.x nadále fungují – Běží v runtime WWF 3.x
Aktivity z verze 3.x lze použít ve workflow 4.0
– Aktivita Interop
Agenda
• • • • • Základní principy workflow Novinky ve WWF 4.0
Tvorba workflow pomocí Visual Studio 2010
Tvorba vlastních aktivit Integrace s WCF
DEMO Tvorba WWF 4.0 Workflow ve Visual Studio 2010
Agenda
• • • • • Základní principy workflow Novinky ve WWF 4.0
Tvorba workflow pomocí Visual Studio 2010
Tvorba vlastních aktivit
Integrace s WCF
Tvorba vlastních aktivit
• Nový programovací model pro tvorbu vlastních aktivit Activity CodeActivity AsyncCodeActivity CodeActivity
DEMO Tvorba vlastních aktivit ve WWF 4.0
Agenda
• • • • • Základní principy workflow Novinky ve WWF 4.0
Tvorba workflow pomocí Visual Studio 2010 Tvorba vlastních aktivit
Integrace s WCF
WCF Workflow Services
WCF Service WF Workflow WCF endpoint Client WCF endpoint External Service External Service
Workflow Services
• • • • Nové aktivity pro zasílání zpráv (messaging) Add service reference (Visual Studio) Tvorba v XAML (contracts, bindings, atd.) Workflow service host
WCF Aktivity v .NET 4.0
• WWF 4.0 přináší nové a vylepšené WCF aktivity .NET 3.5
Send Receive .NET 4.0
Send Receive SendAndReceiveReply ReceiveAndSendReply
Agenda
• • • • • Základní principy workflow Novinky ve WWF 4.0
Tvorba workflow pomocí Visual Studio 2010 Tvorba vlastních aktivit Integrace s WCF
Zdroje
• • • • Video k WWF 4.0 na Channel 9 – http://channel9.msdn.com/shows/10-4/10-4-Episode-16-Windows Workflow-4/ WCF and WF Services in the .NET Framework 4.0 and "Dublin" – http://msdn.microsoft.com/en-us/magazine/2009.01.net40.aspx The Workflow Way (new whitepaper) – http://msdn.microsoft.com/wf/future Screencasts o WCF/WF 4.0: – http://www.pluralsight.com/main/screencasts/