340 likes | 585 Views
SharePoint 2013 Workflows A rchitecture. Presented by Srini Sistla @srinisistla. Thank you. MICROSOFT MANIACS USER GROUP SPONSOR(S) AUDIENCE. About me. AUTHOR Pro SharePoint 2013 Business Intelligence ( Apress ) Pro SharePoint 2010 Business Intelligence ( Apress )
E N D
SharePoint 2013Workflows Architecture Presented by Srini Sistla @srinisistla
Thank you MICROSOFT MANIACS USER GROUP SPONSOR(S) AUDIENCE
About me • AUTHOR • Pro SharePoint 2013 Business Intelligence (Apress) • 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 DEMO
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 SharePoint Visual Studio 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
demo how-to?
business requirement A very famous actor, and producer wants to direct movie. He wants to engage, collaborate and send information to his cast and crew in timely fashion. His tech Manager delivers views in Visio diagram. Requirements at high level are – Need a very quick solution Find the actor information from local first and additional information from IMDB Send financial information to the producer Monitor if the finance statement is approved Send daily schedule and notes to the actors Learn if the actors have any schedule conflicts or questions on the notes and are reviewed and approved Maintain all the notes and finance statements in one website and invite the producer, actors and crew to collaborate on the overall progress . Use the provided Visio if possible to build the workflow
actors Will Leo Ann Jenny Actor, Director SP Role: Site Owner, Approver Actor, Producer SP Role: Designer, Visio Expert Actress, Producer SP Role: Content Owner, Reviewer Actress SP Role: Content Owner, Approver
Solution • Leverage SharePoint 2013 out of the box features as much as possible for • Quick and Rapid App Development and delivery • Use SharePoint Designer 2013 workflows and in specific • HTTP/REST Web Services • Use Dictionary Variables • Assign A Task • Stages • Demonstrate on the list what stage of the workflow currently the status is in • Use new Email features • Use the provided Visio diagram
Migrating from 2010 to 2013 2013 is based on new architecture – Workflow Manager Runs on Workflow Foundation 4 Declarative and is in XAML Format 2010 workflows run as-is on 2013 platform Recreate them if you need to use them Use workflow interop – allows 2010 workflows to run within 2013.
questions, thank you and my contact @srinisistla http://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