SlideShare a Scribd company logo
1 of 20
Developing Workflows: Things I’ve learnt along the way Jackie Pollock j.pollock@kainos.com
Who am I? 2 Software Engineer at Kainos Software Enterprise Content Management (ECM) Technology Stack:  Autonomy Records Management ASP.NET / C# K2 Workflow NIMTUG Steering Group Member
Overview Defining a Workflow Designing Workflows Considerations while developing Long term maintenance 3
What is a Workflow? Definition: The automation of a business process, in whole or in part, during which documents, information or tasks are passed from one participant to another for action, according to a set of procedural rules. 4
Workflow Engine Products Windows Workflow Foundation (WF) K2 BlackPearl SharePoint K2 BlackPoint 5
Workflow GUI Products Custom ASP.NET sites WinForm Applications InfoPath Forms SharePoint Lists 6
Designing Workflows Thought Processes Pen & paper Visio Process Flow Keep flow generic Finishing workflow cleanly Sleeping processes 7
Designing Workflows Data Storage Application database Process fields Process database Design Patterns Independent Sequential Interdependent/Networked 8
Designing Processes- Sequential 9
Designing Processes - Interdependent 10
Developing Workflows Starting Processes Code linking into API Database Trigger ASP.NET/ WinForm Application EDRM System Scanning Release Script eg Kofax, Teleform Manual start from user 11
Developing Workflows Separation of Concerns Process code Process logic Unit Testing Setup test harness for process Unit tests on process logic Logging Always give workflow status and unique identifier Give as much information on current state as possible 12
Developing Workflows Breaking out of process blocks ,[object Object]
Use next stage variable insteadUse flags to block off functionality 13
Goto within stage - Initial Setup 14
Goto within stage- After goto fires 15
Developing Workflows Returning to Previous Stages Resetting values If statements without else statements 16
Supporting/ Maintenance Ability to recreate workflows Data and location in workflow Redeployment of code Workflow/ Logic Transferring running processes to new workflow versions Long term sleeping processes 17
Summary Easier to manage simpler processes Think about loopbacks to previous stages Data Storage Log everything about state of affairs Unit Testing Recreating workflows and redeployment of code 18
Thanks for listeningAny Questions? 19

More Related Content

What's hot

K2 for SharePoint 2013 Keynote: Cloud first, mobile first solution architecture
K2 for SharePoint 2013 Keynote: Cloud first, mobile first solution architectureK2 for SharePoint 2013 Keynote: Cloud first, mobile first solution architecture
K2 for SharePoint 2013 Keynote: Cloud first, mobile first solution architectureAdis Jugo
 
Embedding K2 smartforms
Embedding K2 smartformsEmbedding K2 smartforms
Embedding K2 smartformsGemma Adair
 
k2.net PPT
k2.net PPTk2.net PPT
k2.net PPTmadala
 
10 Best Enterprise Apps to Look for in 2015
10 Best Enterprise Apps to Look for in 201510 Best Enterprise Apps to Look for in 2015
10 Best Enterprise Apps to Look for in 2015K2
 
SharePoint 2013 Workflow from K2
SharePoint 2013 Workflow from K2SharePoint 2013 Workflow from K2
SharePoint 2013 Workflow from K2K2
 
K2 - Business Apps for SharePoint
K2 - Business Apps for SharePointK2 - Business Apps for SharePoint
K2 - Business Apps for SharePointGemma Adair
 
K2: When to use 3rd party products for SharePoint application development?
K2: When to use 3rd party products for SharePoint application development?K2: When to use 3rd party products for SharePoint application development?
K2: When to use 3rd party products for SharePoint application development?SPSSTHLM
 
Build and Run Reliable SharePoint Workflow Apps
Build and Run Reliable SharePoint Workflow AppsBuild and Run Reliable SharePoint Workflow Apps
Build and Run Reliable SharePoint Workflow AppsGemma Adair
 
Slides m365 file management and collaboration (infinys)
Slides m365 file management and collaboration (infinys)Slides m365 file management and collaboration (infinys)
Slides m365 file management and collaboration (infinys)Agusto Sipahutar
 
Share point development services case study
Share point development services case studyShare point development services case study
Share point development services case studyNandita Nityanandam
 
emediaIT - Sharepoint 2010 and K2 Breakfast - 2010.04.22
emediaIT - Sharepoint 2010 and K2 Breakfast - 2010.04.22emediaIT - Sharepoint 2010 and K2 Breakfast - 2010.04.22
emediaIT - Sharepoint 2010 and K2 Breakfast - 2010.04.22Venketash (Pat) Ramadass
 
InfoPath alternatives and the potential of PowerApps
InfoPath alternatives and the potential of PowerAppsInfoPath alternatives and the potential of PowerApps
InfoPath alternatives and the potential of PowerAppsMaarten Visser
 
Extending SharePoint 2010 To Line of Business Integration A
Extending SharePoint 2010 To Line of Business Integration AExtending SharePoint 2010 To Line of Business Integration A
Extending SharePoint 2010 To Line of Business Integration Aridwansassman
 
Intro to SharePoint for Developers
Intro to SharePoint for DevelopersIntro to SharePoint for Developers
Intro to SharePoint for DevelopersRob Wilson
 
InfoPath alternatives and the PowerApps potential
InfoPath alternatives and the PowerApps potentialInfoPath alternatives and the PowerApps potential
InfoPath alternatives and the PowerApps potentialMaarten Visser
 
Ridwan sassman Sharepoint Saturday Sharepoint 2013 Workflows
Ridwan sassman Sharepoint Saturday Sharepoint 2013 WorkflowsRidwan sassman Sharepoint Saturday Sharepoint 2013 Workflows
Ridwan sassman Sharepoint Saturday Sharepoint 2013 Workflowsridwansassman
 
K2 for SharePoint Brochure
K2 for SharePoint BrochureK2 for SharePoint Brochure
K2 for SharePoint BrochureGemma Adair
 
Tech Ed 2010 Attended Sessions
Tech Ed 2010 Attended SessionsTech Ed 2010 Attended Sessions
Tech Ed 2010 Attended Sessionsridwansassman
 
Office 365 Deployment Strategies
Office 365 Deployment StrategiesOffice 365 Deployment Strategies
Office 365 Deployment StrategiesBert Johnson
 
Overview: Creating Workflows with Visio, InfoPath and SharePoint Designer 2010
Overview: Creating Workflows with Visio, InfoPath and SharePoint Designer 2010Overview: Creating Workflows with Visio, InfoPath and SharePoint Designer 2010
Overview: Creating Workflows with Visio, InfoPath and SharePoint Designer 2010ridwansassman
 

What's hot (20)

K2 for SharePoint 2013 Keynote: Cloud first, mobile first solution architecture
K2 for SharePoint 2013 Keynote: Cloud first, mobile first solution architectureK2 for SharePoint 2013 Keynote: Cloud first, mobile first solution architecture
K2 for SharePoint 2013 Keynote: Cloud first, mobile first solution architecture
 
Embedding K2 smartforms
Embedding K2 smartformsEmbedding K2 smartforms
Embedding K2 smartforms
 
k2.net PPT
k2.net PPTk2.net PPT
k2.net PPT
 
10 Best Enterprise Apps to Look for in 2015
10 Best Enterprise Apps to Look for in 201510 Best Enterprise Apps to Look for in 2015
10 Best Enterprise Apps to Look for in 2015
 
SharePoint 2013 Workflow from K2
SharePoint 2013 Workflow from K2SharePoint 2013 Workflow from K2
SharePoint 2013 Workflow from K2
 
K2 - Business Apps for SharePoint
K2 - Business Apps for SharePointK2 - Business Apps for SharePoint
K2 - Business Apps for SharePoint
 
K2: When to use 3rd party products for SharePoint application development?
K2: When to use 3rd party products for SharePoint application development?K2: When to use 3rd party products for SharePoint application development?
K2: When to use 3rd party products for SharePoint application development?
 
Build and Run Reliable SharePoint Workflow Apps
Build and Run Reliable SharePoint Workflow AppsBuild and Run Reliable SharePoint Workflow Apps
Build and Run Reliable SharePoint Workflow Apps
 
Slides m365 file management and collaboration (infinys)
Slides m365 file management and collaboration (infinys)Slides m365 file management and collaboration (infinys)
Slides m365 file management and collaboration (infinys)
 
Share point development services case study
Share point development services case studyShare point development services case study
Share point development services case study
 
emediaIT - Sharepoint 2010 and K2 Breakfast - 2010.04.22
emediaIT - Sharepoint 2010 and K2 Breakfast - 2010.04.22emediaIT - Sharepoint 2010 and K2 Breakfast - 2010.04.22
emediaIT - Sharepoint 2010 and K2 Breakfast - 2010.04.22
 
InfoPath alternatives and the potential of PowerApps
InfoPath alternatives and the potential of PowerAppsInfoPath alternatives and the potential of PowerApps
InfoPath alternatives and the potential of PowerApps
 
Extending SharePoint 2010 To Line of Business Integration A
Extending SharePoint 2010 To Line of Business Integration AExtending SharePoint 2010 To Line of Business Integration A
Extending SharePoint 2010 To Line of Business Integration A
 
Intro to SharePoint for Developers
Intro to SharePoint for DevelopersIntro to SharePoint for Developers
Intro to SharePoint for Developers
 
InfoPath alternatives and the PowerApps potential
InfoPath alternatives and the PowerApps potentialInfoPath alternatives and the PowerApps potential
InfoPath alternatives and the PowerApps potential
 
Ridwan sassman Sharepoint Saturday Sharepoint 2013 Workflows
Ridwan sassman Sharepoint Saturday Sharepoint 2013 WorkflowsRidwan sassman Sharepoint Saturday Sharepoint 2013 Workflows
Ridwan sassman Sharepoint Saturday Sharepoint 2013 Workflows
 
K2 for SharePoint Brochure
K2 for SharePoint BrochureK2 for SharePoint Brochure
K2 for SharePoint Brochure
 
Tech Ed 2010 Attended Sessions
Tech Ed 2010 Attended SessionsTech Ed 2010 Attended Sessions
Tech Ed 2010 Attended Sessions
 
Office 365 Deployment Strategies
Office 365 Deployment StrategiesOffice 365 Deployment Strategies
Office 365 Deployment Strategies
 
Overview: Creating Workflows with Visio, InfoPath and SharePoint Designer 2010
Overview: Creating Workflows with Visio, InfoPath and SharePoint Designer 2010Overview: Creating Workflows with Visio, InfoPath and SharePoint Designer 2010
Overview: Creating Workflows with Visio, InfoPath and SharePoint Designer 2010
 

Similar to Developing Workflows: Things I've learnt along the way

Practical automation for beginners
Practical automation for beginnersPractical automation for beginners
Practical automation for beginnersSeoweon Yoo
 
Microsoft Office SharePoint Server 2007 - Overview
Microsoft Office SharePoint Server 2007 - OverviewMicrosoft Office SharePoint Server 2007 - Overview
Microsoft Office SharePoint Server 2007 - OverviewAbhishek Bhowmick
 
SharePoint 2013 Dev Features
SharePoint 2013 Dev FeaturesSharePoint 2013 Dev Features
SharePoint 2013 Dev FeaturesRicardo Wilkins
 
Electronic Document Management Case Study
Electronic Document Management Case StudyElectronic Document Management Case Study
Electronic Document Management Case StudyDougWinning
 
UiPath Document Understanding Framework: A Crash Course
UiPath Document Understanding Framework: A Crash CourseUiPath Document Understanding Framework: A Crash Course
UiPath Document Understanding Framework: A Crash CourseUiPathCommunity
 
Oracle data integrator training from hyderabad
Oracle data integrator training from hyderabadOracle data integrator training from hyderabad
Oracle data integrator training from hyderabadFuturePoint Technologies
 
Aiim Seminar - SharePoint Crossroads May 23 - Bending but Not Breaking - Spea...
Aiim Seminar - SharePoint Crossroads May 23 - Bending but Not Breaking - Spea...Aiim Seminar - SharePoint Crossroads May 23 - Bending but Not Breaking - Spea...
Aiim Seminar - SharePoint Crossroads May 23 - Bending but Not Breaking - Spea...Bill England
 
Building Workflow Applications Through the Web
Building Workflow Applications Through the WebBuilding Workflow Applications Through the Web
Building Workflow Applications Through the WebT. Kim Nguyen
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Introduction to Windows Workflow Foundation
Introduction to Windows Workflow FoundationIntroduction to Windows Workflow Foundation
Introduction to Windows Workflow FoundationAndrei Oros
 
Scaling PHP Applications with Zend Platform
Scaling PHP Applications with Zend PlatformScaling PHP Applications with Zend Platform
Scaling PHP Applications with Zend PlatformShahar Evron
 
Case Study: Experiences Using IBM Rational Method Composer to Deliver a BPM I...
Case Study: Experiences Using IBM Rational Method Composer to Deliver a BPM I...Case Study: Experiences Using IBM Rational Method Composer to Deliver a BPM I...
Case Study: Experiences Using IBM Rational Method Composer to Deliver a BPM I...ghodgkinson
 

Similar to Developing Workflows: Things I've learnt along the way (20)

Activity Management, SaaS, Cloud Computing
Activity Management, SaaS, Cloud ComputingActivity Management, SaaS, Cloud Computing
Activity Management, SaaS, Cloud Computing
 
Task Complexity Metrics - Ben Colborn
Task Complexity Metrics - Ben ColbornTask Complexity Metrics - Ben Colborn
Task Complexity Metrics - Ben Colborn
 
Practical automation for beginners
Practical automation for beginnersPractical automation for beginners
Practical automation for beginners
 
Microsoft Office SharePoint Server 2007 - Overview
Microsoft Office SharePoint Server 2007 - OverviewMicrosoft Office SharePoint Server 2007 - Overview
Microsoft Office SharePoint Server 2007 - Overview
 
SharePoint 2013 Dev Features
SharePoint 2013 Dev FeaturesSharePoint 2013 Dev Features
SharePoint 2013 Dev Features
 
Electronic Document Management Case Study
Electronic Document Management Case StudyElectronic Document Management Case Study
Electronic Document Management Case Study
 
UiPath Document Understanding Framework: A Crash Course
UiPath Document Understanding Framework: A Crash CourseUiPath Document Understanding Framework: A Crash Course
UiPath Document Understanding Framework: A Crash Course
 
Oracle data integrator odi training
Oracle data integrator odi trainingOracle data integrator odi training
Oracle data integrator odi training
 
Oracle data integrator training from hyderabad
Oracle data integrator training from hyderabadOracle data integrator training from hyderabad
Oracle data integrator training from hyderabad
 
Aiim Seminar - SharePoint Crossroads May 23 - Bending but Not Breaking - Spea...
Aiim Seminar - SharePoint Crossroads May 23 - Bending but Not Breaking - Spea...Aiim Seminar - SharePoint Crossroads May 23 - Bending but Not Breaking - Spea...
Aiim Seminar - SharePoint Crossroads May 23 - Bending but Not Breaking - Spea...
 
Building Workflow Applications Through the Web
Building Workflow Applications Through the WebBuilding Workflow Applications Through the Web
Building Workflow Applications Through the Web
 
PRUEXX - It's coming
PRUEXX - It's comingPRUEXX - It's coming
PRUEXX - It's coming
 
Presentation
PresentationPresentation
Presentation
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Resume_Bhabani_Prasad_Mohanty
Resume_Bhabani_Prasad_MohantyResume_Bhabani_Prasad_Mohanty
Resume_Bhabani_Prasad_Mohanty
 
Introduction to Windows Workflow Foundation
Introduction to Windows Workflow FoundationIntroduction to Windows Workflow Foundation
Introduction to Windows Workflow Foundation
 
Scaling PHP Applications with Zend Platform
Scaling PHP Applications with Zend PlatformScaling PHP Applications with Zend Platform
Scaling PHP Applications with Zend Platform
 
Hands-on Microsoft Flow
Hands-on Microsoft FlowHands-on Microsoft Flow
Hands-on Microsoft Flow
 
Desktop integration & ECM
Desktop integration & ECMDesktop integration & ECM
Desktop integration & ECM
 
Case Study: Experiences Using IBM Rational Method Composer to Deliver a BPM I...
Case Study: Experiences Using IBM Rational Method Composer to Deliver a BPM I...Case Study: Experiences Using IBM Rational Method Composer to Deliver a BPM I...
Case Study: Experiences Using IBM Rational Method Composer to Deliver a BPM I...
 

Recently uploaded

ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Victor Rentea
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...apidays
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Victor Rentea
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusZilliz
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityWSO2
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...apidays
 

Recently uploaded (20)

ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 

Developing Workflows: Things I've learnt along the way

  • 1. Developing Workflows: Things I’ve learnt along the way Jackie Pollock j.pollock@kainos.com
  • 2. Who am I? 2 Software Engineer at Kainos Software Enterprise Content Management (ECM) Technology Stack: Autonomy Records Management ASP.NET / C# K2 Workflow NIMTUG Steering Group Member
  • 3. Overview Defining a Workflow Designing Workflows Considerations while developing Long term maintenance 3
  • 4. What is a Workflow? Definition: The automation of a business process, in whole or in part, during which documents, information or tasks are passed from one participant to another for action, according to a set of procedural rules. 4
  • 5. Workflow Engine Products Windows Workflow Foundation (WF) K2 BlackPearl SharePoint K2 BlackPoint 5
  • 6. Workflow GUI Products Custom ASP.NET sites WinForm Applications InfoPath Forms SharePoint Lists 6
  • 7. Designing Workflows Thought Processes Pen & paper Visio Process Flow Keep flow generic Finishing workflow cleanly Sleeping processes 7
  • 8. Designing Workflows Data Storage Application database Process fields Process database Design Patterns Independent Sequential Interdependent/Networked 8
  • 10. Designing Processes - Interdependent 10
  • 11. Developing Workflows Starting Processes Code linking into API Database Trigger ASP.NET/ WinForm Application EDRM System Scanning Release Script eg Kofax, Teleform Manual start from user 11
  • 12. Developing Workflows Separation of Concerns Process code Process logic Unit Testing Setup test harness for process Unit tests on process logic Logging Always give workflow status and unique identifier Give as much information on current state as possible 12
  • 13.
  • 14. Use next stage variable insteadUse flags to block off functionality 13
  • 15. Goto within stage - Initial Setup 14
  • 16. Goto within stage- After goto fires 15
  • 17. Developing Workflows Returning to Previous Stages Resetting values If statements without else statements 16
  • 18. Supporting/ Maintenance Ability to recreate workflows Data and location in workflow Redeployment of code Workflow/ Logic Transferring running processes to new workflow versions Long term sleeping processes 17
  • 19. Summary Easier to manage simpler processes Think about loopbacks to previous stages Data Storage Log everything about state of affairs Unit Testing Recreating workflows and redeployment of code 18
  • 20. Thanks for listeningAny Questions? 19
  • 21. Developing Workflows: Things I’ve learnt along the way Jackie Pollock j.pollock@kainos.com

Editor's Notes

  1. Kainos HQ Belfast: Other locations- Dublin, London, PolandECM- Document management- paperless offices, workflow processesAlso mention nwtug- Alan Bradley
  2. A workflow management system is a computer system that manages and defines a series of tasks within an organisation to produce a final outcome or outcomes…At each stage in the workflow, one individual or group is responsible for a specific task. Once the task is complete, the workflow software ensures that the individuals responsible for the next task are notified and receive the data they need to execute their stage of the process. Workflow management systems also automate redundant tasks and ensure uncompleted tasks are followed up.
  3. Independent/Pooledwhere each component of the work is completed independent of each other component and no component has a specific dependency on any other component. An example would be where staff are serving at a counter - Raoul can serve a customer in his queue without waiting for Jamie to serve a customer in his queue.Sequentialwhere each component of the work is dependent on the preceding component. In this case the preceding component controls the advancement of the workflow through subsequent components. An example would be on a production line - Betty cannot affix the radiator cap to the Model T Ford until Veronica has put the radiator in place.Interdependent/Networkedwhere each component of the work is dependent on one or a number of other components being completed. In this case the preceding components control the workflow through subsequent components. An example would be a project team - Sarah must wait for several tasks to be completed by Kevin and George before she can execute her task.
  4. Sequentialwhere each component of the work is dependent on the preceding component. In this case the preceding component controls the advancement of the workflow through subsequent components. An example would be on a production line - Betty cannot affix the radiator cap to the Model T Ford until Veronica has put the radiator in place.Interdependent/Networkedwhere each component of the work is dependent on one or a number of other components being completed. In this case the preceding components control the workflow through subsequent components. An example would be a project team - Sarah must wait for several tasks to be completed by Kevin and George before she can execute her task.
  5. Interdependent/Networkedwhere each component of the work is dependent on one or a number of other components being completed. In this case the preceding components control the workflow through subsequent components. An example would be a project team - Sarah must wait for several tasks to be completed by Kevin and George before she can execute her task.