320 likes | 497 Views
SharePoint 2013 Workflows A rchitecture. Presented by Srini Sistla @srinisistla. Thank you. CAPAREA SPONSORS AUDIENCE. Sources. Samples and screen shots are from Ignite SPC 2012. About me. AUTHOR Pro SharePoint 2010 Business Intelligence ( Apress )
E N D
SharePoint 2013Workflows Architecture Presented by Srini Sistla @srinisistla
Thank you • CAPAREA • SPONSORS • AUDIENCE
Sources • Samples and screen shots are from • Ignite • SPC 2012
About me • AUTHOR • Pro SharePoint 2010 Business Intelligence (Apress) • Pro SharePoint Migration (Apress) • SharePoint 2013 Development Machine ** (Self Published) • SPEAKER • INETA, SharePoint Saturday, CAPAREA.NET, SUGDC • BLOGGER • SHAREPOINT 2010 ARCHITECT / CONSULTANT / SME
agenda • ARCHITECTURE • DETAILS • YOUR DEVELOPMENT MACHINE FOR WORKFLOWS
2010 vs. 2013 • SharePoint 2010 hosted the Workflow Foundation (WF) workflow runtime • Tightly coupled workflow to SharePoint 2010 • Workflow data kept in SharePoint content databases • Challenges: • Designed for on-premise deployments (scale) • In SharePoint, extending WF meant you had to be a box admin • Analytics on current/previous workflow instances hard to acquire • Executed in the context of SharePoint as super user • Workflow now treated as a service in SharePoint 2013 • Moved to Windows Azure Workflow • No longer runs in the content farm • No longer runs on SharePoint WFE / App servers • Harnesses the latest workflow technology from Microsoft • Windows Azure Workflow available for on-prem deployments • Improves stability, scalability & transparency
SharePoint Designer Visual Studio SharePoint architecture Events Content People Sharing 2010 WF Access Control OAuth Instances Interop _API (REST OM) Workflow Manager Deployment Messaging Workflow Services Manager WF Service Application Proxy Service Bus Workflow Client
SharePoint 2013 and Workflow Service Access Control SharePoint Designer Visual Studio SharePoint Events Content People Sharing 2010 WF OAuth _API (REST OM) Workflow Manager Workflow Services Manager Instances Interop Service Bus Workflow Client Deployment Messaging WF Service Application Proxy
IMPROVEMENTS Do “App-Level” operations with App Step NEARLY 50 NEW/IMPROVED FEATURES AND ACTIONS THIS RELEASE!!!! Rapid design with the Visual and Text-Based Designers Copy & Paste in the Text-Based Designer New “Assign A Task” & “Start a Task Process” actions Enhanced parallel blocks Stages! Looping! Enhanced portability & packaging through WSP and VSDX files Full integration with Project Server workflows Leverage web services(HTTP/REST) Complex data types with ‘Dictionary’ variables Support classic 2010 workflow type and interoperability
IMPROVEMENTS Rapid design with the Visual and Text-Based Designers Copy & Paste in the Text-Based Designer New “Assign A Task” & “Start a Task Process” actions Do “App-Level” operations with App Step NEARLY 50 NEW/IMPROVED FEATURES AND ACTIONS THIS RELEASE!!!! Stages! Looping! Enhanced portability & packaging through WSP and VSDX files Enhanced parallel blocks Leverage web services(HTTP/REST) Complex data types with ‘Dictionary’ variables Support classic 2010 workflow type and interoperability Full integration with Project Server workflows
IMPROVEMENTS Rapid design with the Visual and Text-Based Designers Copy & Paste in the Text-Based Designer New “Assign A Task” & “Start a Task Process” actions Do “App-Level” operations with App Step NEARLY 50 NEW/IMPROVED FEATURES AND ACTIONS THIS RELEASE!!!! Stages! Looping! Enhanced portability & packaging through WSP and VSDX files Enhanced parallel blocks Leverage web services(HTTP/REST) Complex data types with ‘Dictionary’ variables Support classic 2010 workflow type and interoperability Full integration with Project Server workflows
IMPROVEMENTS • Introducing “Stages” • Provides support for repeating & skipping workflow steps • Declarative workflows have loops • Loop # times / with condition / with expression • Declarative workflows can call REST/SOAP services • SharePoint 2010 required developers when: • Call SharePoint API • Connect & query databases • Consume feeds (ATOM / REST) • Call Web Services / REST • SharePoint 2013 enables workflow authors to do all this declaratively
Workflows in designer • Improved visual designer • Integrated the Visio designer into SharePoint • Can switch between visual designer & sentence-style • Editable properties helper • Stages & Loops • Calling REST Web Services • Designer supports cut / copy / paste / undo / redo / select-all • Improved email editor (rich formatting) • Each stage has an entry point & gate • Gate: conditional transition point where workflow exits • Underlying core in WF4 flow step in a flowchart • Can contain multiple steps • Mitigates SharePoint Designer loop limitations
Workflows in visual studio • Can create WF 3.5 or WF 4 workflows • For WF 4, Azure Workflow required • For WF 3.5, see Workflow Interop Bridge… • Focus is around declarative workflows • Push custom code logic to Web services • Programmatic workflows still possible, but only in Windows Azure Workflow • Workflow tools: SharePoint Designer & Visual Studio
Interop bridge • Enables SharePoint 2010 workflows to work in 2013 • Execution engine hosted in SharePoint 2013 • Interop bridge: • Negotiates between two execution engines (SP2010 & SP2013) • Delegates SP2010 workflows to SharePoint from WAWS • Invoke SP2010 workflow action from WAWS with InvokeSharePointWorkflow action
Processing Workflow Backend SharePoint Assign Task _API Lookup User Reserve Task Id Site Users Tasks Create Task GET POST POST GET /…/web/siteuserinfolist/items?$filter=id eq{0} 3 1 2 POST /…/web/lists(guid'{0}')/reservelistitemid Service Bus POST /…/web/lists(guid'{0}')/items Persist • REST/OData message format • Retry on failure • Repeatable (idempotent) Create, Read, Update and Delete • Merge update with conflict resolution (HTTP ETag) Instances
Processing Workflow Backend SharePoint Workflow Frontend Assign Task (cont) _API Register Interest Wait For Notification Site Users Tasks … Service Bus Receive & Persist Messages Instances
Farm Node WF Manager WF Manager WF Manager SharePoint SharePoint SharePoint Farm Node Database load balancer Farm Node Collocated Topology
SP Farm 1 Workflow Client Workflow Cluster load balancer SP Farm 2 • Each SP farm targets a different Workflow Manager scope • Independent security realms Workflow Client Federated Topology
Configure Register-SPWorkflowService –SPSite “http://sp/sites/awfs” –WorkflowHostUri “http://sp:12291” –AllowOAuthHttp
Contact • @srinisistla • blog.srinisistla.com
USEFUL DOWNLOADS / links SharePoint Designer 2013 – http://www.microsoft.com/en-us/download/details.aspx?id=35491 What's new in WF in 2013 – http://technet.microsoft.com/en-us/library/jj219638.aspx Getting Started - http://technet.microsoft.com/en-us/library/jj227177.aspx Develop using VS 2012 - http://technet.microsoft.com/en-us/library/jj163199.aspx Setup configure WF Manger - http://technet.microsoft.com/en-us/library/jj163276.aspx Workflow Manager 1.0 - http://technet.microsoft.com/en-us/library/jj193528.aspx