SharePoint Workflow - The Conundrum

Transcription

SharePoint Workflow ConundrumAuthor: Geoff EvelynThe SharePoint Workflow ConundrumAn examination of the workflow provisions around SharePoint, Office365, Windows Azure and whatimplications there are for organisations needing to improve business process automation, collaborationand productivity through workflow adoption. SharePoint has through most of its versions providedworkflow systems, but how do they stack up as future technologies grasp the cloud? How willorganisations benefit from the available features?1 P a g e

ContentsAnalysis .3Introduction .3Workflow - The Business Process Automated .3Developing workflows .3Types of workflow .4Serial workflow .4Parallel workflow .4Segments of the Analysis.4Options for SharePoint on-premise.5Templates .5Custom Workflows using SharePoint Designer and Microsoft Visual Studio .6Platform Type options .6Options for SharePoint Dedicated Online through Office365 .7Templates .7Custom Workflows using SharePoint Designer .7Custom Workflows using Microsoft Visual Studio .7Options for going Hybrid .7Workflow Manager .8Publish to Azure .8Tools that can be used .8Options from Third Parties .8Strengths .9Configuration of SharePoint built in Workflows .9SharePoint Designer Workflows .9Custom Code Workflows using Visual Studio .9Workflow Manager for Cloud .9Third Party Workflow products .9Other .10Weaknesses .11Guidance .12Measure the Cost versus Value in building workflows .13Evaluate development practice and review managed services .13Identify the workflow roadmap and link to IT and organizational content management strategy.13Publication Date: 01/07/2016 SharePointGeoff. All Rights Reserved.SHAREPOINTGEOFF.COMPage 2 of 13

Analysis IntroductionTotal automation of business processes is practically unachievable without considering humaninteraction. This is a factor that is tied to many aspects of process automation and integration. Humaninteraction is present in some of the most common business processes, like order approvals and humanresources management.SharePoint is by definition a collaborative platform with integration to external systems. There will beongoing requirements for that platform to provide systems (known as workflow) to solve collaborative andinformation and technical challenges around human interaction issues, and to enhance user productivity.SharePoint provides frameworks for workflow provision; present in SharePoint on-premise, SharePointOnline Dedicated and in Office365. This article will explore the main components that are present in thoseplatforms, comparisons, high level features and benefits. This article will also assess the currentperspectives around the provision of Workflow and top level impacts.Workflow - The Business Process AutomatedKey to solving collaborative and information challenges in organization is business process automation.This is the ability for the business to improve productivity of their users by providing methods to aid withday-to-day functions with little or no human intervention; in order to increase user productivity anddecrease inefficiency. Content management systems all include workflow systems and plugins, which isused to support communication between people and systems. These workflow systems generally carryout these through the automation of a business process tied to content stored in content managementsystems.To accomplish this, the workflow system will need to provide basic functions like task assignment, identitymanagement, notifications, tracking and inter-operation. SharePoint provides workflow systems to solvethese collaborative and information challenges.However, before diving into the features of workflow systems available in SharePoint on-premise,SharePoint Dedicated Online, Office365 or Windows Azure, there needs to be clarification concerning thepurpose of workflow and involvement. Additionally, there needs to be clarification on the maincomponents in the relevant workflow architecture.Developing workflowsHaving workflow features and using them correctly are two very different things. A mindset is needed toachieve successful use of workflows. This mindset would, before actually choosing any workflow solution,identify the type of workflow to use, the template to be assigned and the customization level requirements(if any), people involved, the objective, security, the various states that need to be achieved, andnotifications to inform of progress. Presumably, organisations would adopt this mindset in order to choosethe workflow solution to match their requirements. However, there are further considerations such as theflow of the business process and then mapping the relevant options within SharePoint to that flow.Publication Date: 01/07/2016 SharePointGeoff. All Rights Reserved.SHAREPOINTGEOFF.COMPage 3 of 13

Types of workflowThe aspect of the business process to automate is defined as a workflow. A workflow is a template, whichcontains task components. Tasks are the main communication unit between business processes andpeople. Typically, a task is assigned to a user who needs to perform a related action. Normally a user hasto perform a series of tasks that a grouped semantically. As part of the business process, the task isassigned to a group of users acting on the same task. The workflow system (which utilizes a keycomponent known as the task management service), manages the business process to get the statusupdate of the task.To understand more about the task management service in the context of workflow, and circumstances inwhich they are used, we need to examine two types of workflow solution - Serial, and Parallel.Serial workflowThe serial (also known as sequential) workflow represents a scenario in which a task must be completedby a set of users. This solution has interactions: Interact with the task management service to configure tasks and set appropriate rules Define the sequence of users that should act on the task First user will claim the task, and upon completion the task management service will route the taskto the next user in the groupParallel workflowA parallel workflow represents the scenario in which a task must be completed by different users at thesame time. Each approver can add comments and attachments that are independent of the others. Forimplementation this has interactions: Interact with the task management service to configure tasks and set appropriate rules Define the sequence of users that should act on the task The task management service routes the task to all relevant users The task management service will complete only when all users are finished acting on the taskSegments of the AnalysisOrganisations will need to consider the following and the segments of the analysis are therefore: Options for SharePoint on-premise available templates options for customizing workflows the platform type options associated with the various SharePoint versionsOptions for SharePoint Dedicated through Office365 available templatesPublication Date: 01/07/2016 SharePointGeoff. All Rights Reserved.SHAREPOINTGEOFF.COMPage 4 of 13

options for customizing workflows Options for hybrid Workflow Manager The various tools used to create workflowsOptions for SharePoint on-premiseIn SharePoint 2003, there was no workflow platform. This changed when SharePoint 2007 came onto thehorizon, with the addition of the Windows Workflow Foundation platform. This is a development platformthat allows the provisioned workflow templates in SharePoint to be extended and customized. WhenSharePoint 2010 arrived, so did improvements to the workflow system. This included improvements toworkflow design with the arrival of Microsoft Visual Studio including 'workflow projects' so that developerscould directly create workflows for deployment. SharePoint Designer 2010 came on steam around thesame time providing a workflow design, and the ability to edit SharePoint 2010 workflows. SharePoint2013 workflow architecture was redesigned to meet performance, availability and flexibility of workflowson the platform. This workflow architecture, now known as Windows Workflow Foundation 4, is availablewith SharePoint Server 2013.SharePoint carries workflow features that are generally based around specific documents or list items,however, they can represent larger human-based processes and actions through customization anddevelopment. Specifically: SharePoint workflows are specific to users defined against the SharePoint platform. Workflowsrequire users or groups for specific activities and tasks are created for those users. SharePoint workflows are serial or parallel by nature; that is, the ability for users to participate oneat a time, or multiple users at a given stage and in an undefined order. SharePoint workflows are varied in nature and templates are provided that can be configured tosuit the organizational process, and they can be associated directly to document libraries or lists.Workflow templates include common activities related to content approval, feedback or collectingsignatures. SharePoint workflows can be created using a number of tools such as Microsoft Visio, MicrosoftVisual Studio, or SharePoint Designer. Note that Microsoft Infopath, used for forms development inSharePoint 2010 and prior, is being phased out. Suggested route for forms development usingMicrosoft tools is Microsoft Visio (or development through Microsoft Visual Studio).The following section goes describes the objectives the available workflow templates and options inbuilding workflows.TemplatesThe following describes a list of templates available in SharePoint on-premise.Collect Feedback Examine interpretations on documents. Reviewers can provide feedback, which is compiled andsent to the document owner when the workflow has completed.Publication Date: 01/07/2016 SharePointGeoff. All Rights Reserved.SHAREPOINTGEOFF.COMPage 5 of 13

Collect Signatures Sign off document or requestWorks with Microsoft Applications onlyUtilises Digital SignaturesApproval Obtain approvals on documents from colleagues or superiorsAssign for approval document marked pending until approvedTransition Management Task management concerning the translation of documents and content into other languages.Manages document translation by creating copies of the document to be translated and assigningtranslation tasks to translators. Is not available for SharePoint 2013Disposition Approval Manages document expiration and retention by allowing participants to decide whether to retainor delete expired documents.Three State Track the status of a list item through three states (phases). It can be used to manage businessprocesses that require organisations to track a high volume of issues or items, such as customersupport issues, sales leads, or project tasks. For example, the three states for a project taskcould be, Not Started, In Progress, and FinishedCustom Workflows using SharePoint Designer and Microsoft Visual StudioWorkflows can be created and edited in SharePoint Designer 2013. Additionally, if there are legacySharePoint 2010 workflows that are needed to be reused in SharePoint 2013, the SharePoint WorkflowInterop functionality can be utilized. This enables SharePoint 2010 workflows to work with the SharePoint2013 workflow engine based on Windows Workflow Foundation 4.Platform Type options SharePoint 2010 workflow requires Windows Workflow Foundation 3o Workflows are installed automatically with SharePoint 2013SharePoint 2013 workflow requires Windows Workflow Foundation 4o SharePoint 2013 must be installed, Workflow Manager is not installed automatically andmust be in order for SharePoint 2013 workflows to be availableSharePoint 2013 with Project Server requires Windows Workflow Foundation 4o Must be used with SharePoint 2013, Workflow Manager and Project Server 2013. Projectserver workflows will not function without these in placeSharePoint 2013 with SAP requires Windows Workflow Foundation 4o Must be used with SharePoint 2013, Workflow Manager and SAP. SharePoint 2013 SAPworkflows will not function without these in placePublication Date: 01/07/2016 SharePointGeoff. All Rights Reserved.SHAREPOINTGEOFF.COMPage 6 of 13

Options for SharePoint Dedicated Online through Office365With SharePoint Server 2010, and with SharePoint Online for Office 365 for enterprises, all five of thefollowing workflow types are included. With SharePoint Online for Office 365 for small businesses andprofessionals, however, only the Three-state workflow type is included.TemplatesIn Office365, templates from SharePoint On-Premise are available, but when activated are shown asSharePoint 2010 workflows or will only be available if Microsoft Project Server is implemented. SharePoint 2010 'displayed'o Built in workflow core groupo Aggregated set of out-of-box workflow features provided by SharePoint; Approval, CollectFeedback and Collect Signatureso These workflows defined as SharePoint 2010 WorkflowsDisposition Approvalo Built in workflow that manages document expiration and retention by allowing participantsto decide whether to retain or delete expired documents.Three-stateo Same as the Three State on-premise SharePoint workflow templatePublishing Approvalo Built in workflow that routes a page for approval. Approvers can approve or reject thepage, reassign the approval task, or request changes to the page. This workflow can beedited in SharePoint Designer.Sample Proposal - Project Server Onlyo A special type of workflow only available for Project Server and bound to the ProjectServer Approval Content Typeo Project Server Approval Content Type feature - content type is used by the ProjectServer Approval workflow.SharePoint 2007 Workflowso Aggregated set of out-of-box workflow features provided by SharePoint 2007 forbackward compatibilityo Requires extra configuration work to be visible to end usersCustom Workflows using SharePoint DesignerCan be created but workflows will be displayed as SharePoint 2010 compliant. Can only be deployed as asandbox solution, not as an AppCustom Workflows using Microsoft Visual StudioCan be used in combination with workflows implemented in Office365 or created as an AppOptions for going HybridOptions for Hybrid concerns workflows which covers the boundary of SharePoint 2013 on-premise toMicrosoft Windows Azure which can then be utilized in Office365. As mentioned in the 'Options forSharePoint on-premise' section, the Workflow Manager is an Windows Azure-based component, a multitenant host for running and managing workflows, supporting high scale and high density execution. Theservice builds on the workflow programming model, runtime and activity library in the .NET frameworkPublication Date: 01/07/2016 SharePointGeoff. All Rights Reserved.SHAREPOINTGEOFF.COMPage 7 of 13

Workflow ManagerWorkflows that are harvested in Workflow Manager do not have to run in the SharePoint 2013 farm.Separated servers can be used and this allows Workflow Manager to support multiple platforms suchOffice365, SharePoint 2013, SharePoint Dedicated Online and Windows Azure. Workflow Manager canbe co-located with SharePoint, or provisioned on its own server group. This product is backwardcompatible with SharePoint 2010 workflows.Publish to AzureWorkflows created using Windows Workflow Foundation 4 can be hosted in Windows Azure in one ofthree roles; a Web Role, Worker Role and a Hybrid Role. To do this, Microsoft Visual Studio 2013 CloudProjects would have to be created with a service web role associated to the workflow project. Once done,the workflow can be published to Azure. Note that a hybrid approach will utilize on-premise componentssuch as services (SharePoint and other), data stores and business processes.Tools that can be used SharePoint Designer 2013Microsoft Visio 2013Microsoft Visual Studio 2013Options from Third PartiesAs the organization engages with SharePoint, there will be For example, a person in charge of an ITuniversity department has not handed expenses in for six months. To solve this, he would need to find away to submit those expenses, get the head of department to approve them, and then HR receives theapproval, and then Finance pays the expenses. There are several people who would need to approve /reject - additionally, this process would have to deal with the outcomes of approval or rejection. Thedepartment does not have in place a development team. Clearly, the built-in options are not applicableneither is the option to custom develop a workflow.Nintex and K2, two leading workflow solutions, addresses the need for the information worker to craftworkflow solutions without having to be a developer. Users can create their own template or add toexisting templates. There is a workflow designer that allows the users to drag and drop workflowcomponents negating the requirement for writing code. K2 additionally provides Forms builder to createassociated form entry dialogs, whereas Nintex comes standard only with Workflow; there is a formsbuilder but that must be purchased separately.Both products are available for SharePoint 2010, 2013 on-premise as well as an App for Office365 andmobile devices.Nintex and K2 comes packaged with many standard templates. For Nintex, for example, there are fivecategories covering Business Management / Finance, Human Resources, Operations and IT, ProjectTracking / Product Management and Sales / Marketing.Additionally, integration with other components integrated into SharePoint is important. For example,Nintex workflow has components to connect into a variety of third party tools, such as Co-Sign digitalPublication Date: 01/07/2016 SharePointGeoff. All Rights Reserved.SHAREPOINTGEOFF.COMPage 8 of 13

signatures and PDF ShareForm form designer. They both also integrate with other content systems; suchas Microsoft Dynamics CRM or SAP.With any third party functionality, key aspects concerning performance, support, sustainability andavailability of the third party company comes into question, including relationships and the popularity ofthe workflow tool.Strengths Based on the analysis section, the following are strengths of SharePoint workflow taking intoconsiderations all version of SharePoint including third party workflow solutions that work withSharePoint.Configuration of SharePoint built in Workflows Easy to implementBusiness users can setup their own basic workflowsWorkflows can be associated with web sites (Site Workflow)SharePoint Designer Workflows Basic workflows can be implemented by trained power usersRelatively quick to implement for low complexity workflowsCustom Code Workflows using Visual Studio Based on Windows Workflow FoundationSupports sequential and state machine workflowsWorkflow forms can be generated using Microsoft Visual StudioDeployable to different environments using SharePoint solution and feature frameworkFully customizableHybrid workflows can be monitored using IIS DashboardWorkflow Manager for Cloud Ability to scale the SharePoint farm without impact to the Workflow Management systemAbility to connect to other systems and data sourcesAbility to connect to Windows Azure and Office365Separated business continuity and disaster recoveryThird Party Workflow products Requires minimal effort to implementProvides publishing new version of workflows whilst earlier versions continue to operateAllows cleaner auditing without relying on SharePoint built-in timerUser experienced enhanced and closer to information worker realisationRe-use of components and easier to deploy across team sitesSavings in support, maintenance and enhancementsWorkflow products available in Office365 and for mobile devicesLittle need to develop the underlying network infrastructurePublication Date: 01/07/2016 SharePointGeoff. All Rights Reserved.SHAREPOINTGEOFF.COMPage 9 of 13

Readily expandable to meet immediate business requirementsOther Workflows forms can be developed using Microsoft VisioPublication Date: 01/07/2016 SharePointGeoff. All Rights Reserved.SHAREPOINTGEOFF.COMPage 10 of 13

WeaknessesBased on the analysis section, the following are strengths of SharePoint workflow taking intoconsiderations all version of SharePoint including third party workflow solutions that work withSharePoint.Configuration of built in Workflows Limited configuration options Basic workflows available User experience is limitedSharePoint Designer Workflows No source control Deployment to other environments difficult Sequential workflows onlyCustom Code Workflows Steep learning curve Lack of good documentation and tools for debugging and diagnostics Package needs to be created for workflow changes High implementation and maintenance costs Hybrid workflows will be more complex and will incur bandwidth costsWorkflow Manager Infrastructure costs to provide platform Skills required to implement and supportThird Party No standards yet developed specifically for third party workflow developmentPublication Date: 01/07/2016 SharePointGeoff. All Rights Reserved.SHAREPOINTGEOFF.COMPage 11 of 13

Security and rigid processes may be an issue Skills required to implement and support are high Requires good third party support availability Clarity required on the Workflow engine being used requires addressingGuidanceWorkflow involves the various tasks that employees must complete on a business activity, and thesetasks often occur in a specific order. A workflow could be something completely non-technical, such asfeeding a horse; however, it usually involves some level of interaction with technology mixed with humanactivity.Whilst SharePoint workflows are based on content (for example, a document), it is important to rememberthat the actual document may be representative of a larger human based process, such as applying for ajob, or requesting vacation time.Hence, delivery of a SharePoint workflow solution is based on the imperative of the user productivity - tofulfil a discreet challenge; to automate a process within a specific business function or unit. To informationworkers, whether this is surfaced in SharePoint on-premise, or SharePoint dedicated, is irrelevant sinceto them, their content automation is important, irrespective of the solution provisioned.And this is where the conundrum lies. Due to the emergence of Office365, and the lowered aspects ofcontrol from Infrastructure teams when dealing with Office365, combined with the reality that developertools are needed to create workflows beyond the built-in basic workflows in Office365, deciding whatworkflow solution is best will vex decision makers and solution architects. Additionally, other contentmanagement systems, open source provisioned, already have workflow plugins – that affects thebusiness perception of what is available, how quickly, and gives pause-for-thought concerning cost.For those organisations already using Nintex or K2 for SharePoint on-premise, the availability of theseproducts within Office365 as subscribed 'apps' makes things easier when coming to the decision of howto utilize workflows in Office365 without having to content with user experience issues, for example. Thatsaid, the organization would still be locked into a vendor, which needs to be reviewed concerningsupportability, availability and cost.Due to the varied options presented in this analysis, there is no single best workflow feature that shouldbe adopted, as the best feature depends very much on the actual business requirement. The featuresprovided through using built-in, custom or third party support have varying levels of structure, support,and infrastructure requirements. The culture of the organization concerning configuration management,rigidity, budget and work processes is also a major factor.In any case, key guidance points for organisations based on the analysis are:Publication Date: 01/07/2016 SharePointGeoff. All Rights Reserved.SHAREPOINTGEOFF.COMPage 12 of 13

Measure the Cost versus Value in building workflowsOrganisations need to factor in the required resources both human and technical, man-hours includingstartup and ongoing costs. This needs to be value-managed against what kind of workflow solution isgoing to be created, the life-time of that product including ongoing support requirements.Evaluate development practice and review managed servicesThe organization needs to ensure that lifecycle services for custom workflow development is in place,particularly for using the Microsoft technologies such as Microsoft Visual Studio, Microsoft Visio andSharePoint Designer. This needs to be consistent and continually map into manageable solutions for allcustom development requirements. If custom development is required and the cost is justified, considerbringing in a third party development group. This group needs to work as an extension to your existingdevelopment team or as a dedicated Microsoft Technologies expert. Be aware of cost, time-constraints,and project management constraints.Identify the workflow roadmap and link to IT and organizational contentmanagement strategyA quote from Bill Gates - “The first rule of any technology used in a business is that automation applied toan efficient operation will magnify the efficiency. The second is that automation applied to an inefficientoperation will magnify the inefficiency". Any workflow solution requires a full identification of theorganization’s requirements that map into the workflow solution which includes all configurationmanagement tasks. There needs to be a roadmap which links the workflow to associated processes,rules and governance. Organisations must provide detailed planning and estimations on any and allcustom applications that are needed. This is to ensure that the workflow maps to the organisations needs,and that the workflow solution is both cost effective and robust.Publication Date: 01/07/2016 SharePointGeoff. All Rights Reserved.SHAREPOINTGEOFF.COMPage 13 of 13

The SharePoint Workflow Conundrum An examination of the workflow provisions around SharePoint, Office365, Windows Azure and what implications there are for organisations needing to improve business process automation, collaboration and productivity through workflow adoption. SharePoint has through most of its versions provided