Workflow pattern: Difference between revisions

Content deleted Content added
m + Link(s)
GreenC bot (talk | contribs)
Reformat 1 archive link. Wayback Medic 2.5 per WP:URLREQ#citeftp
 
(19 intermediate revisions by 17 users not shown)
Line 1:
A '''workflow pattern''' is a specialized form of a [[design pattern]] as defined in the area of [[software engineering]] or [[business process engineering]] respectively. Workflow patterns refer specifically to recurrent problems and proven solutions related to the development of [[workflow]] applications in particular, and more broadly, ''process-oriented applications''.
 
== Concept ==
Workflow patterns are concepts of economised development. Their usage should follow strategies of simplifying maintenance and reducing modelingmodelling work.
Workflow is performed in real time. The mechanisms of control must support the typical pace of work. Design patterns must delay execution of workflow.
 
Line 9:
 
=== Application ===
Workflow patterns can be applied in various context, hence the conditions for use must be explicitly defined and shown in order to prevent misinterpretation.<ref>http://ceiton.com/CMS/EN/workflow/system-centric-bpms.html#Classification</ref>
 
== Van der Aalst classification <ref>{{cite web|url=http://www.workflowpatterns.com |title=Workflow Patterns Home Page |publisher=Workflowpatterns.com |date= |accessdate=2021-11-26}}</ref> ==
 
A well-known collection of workflow patterns is that proposed by [[Wil van der Aalst]] et al. (2003) in their paper ''Workflow Patterns''.<ref>[[Wil van Der Aalst]], [[Arthur H.M. Hofstede]], Bartek Kiepuszewski, and Alistair P. Barros (2003). [httphttps://wwwpure.headlessbricktue.orgnl/mediawiki2ws/imagesportalfiles/4portal/482053121/WorkflowPatterns-van_der-Aalst-2003613310.pdf "Workflow Patterns"]. In: ''Distributed and Parallel Databases'' 14 (1): pp. 5--51. {{doi|10.1023/A:1022883727209}}.</ref> with earlier versions published in 2000-022000–02. This collection of patterns focuses on one specific aspect of process-oriented application development, namely the description of [[control flow]] dependencies between activities in a workflow/process. These patterns are divided into the following categories:
 
=== Basic Control Patterns ===
Line 24:
* Terminate - terminate execution of activities upon defined event or status change
 
=== Advanced Branching and Synchronization Patterns ===
 
* Multiple Choice - choose several execution paths from many alternatives
Line 72:
 
== Other perspectives ==
The workflow patterns are not limited to control-flow.<ref>N. Russell, A.H.M. ter Hofstede, W.M.P. van der Aalst, and N. Mulyar. ''Workflow Control-Flow Patterns: A Revised View.'' BPM Center Report BPM-06-22 , BPMcenter.org, 2006.</ref>
Other (workflow) pattern collections include:
* resource patterns,<ref>N. Russell, [[Wil van der Aalst|W.M.P.van der Aalst]], A.H.M. ter Hofstede, and D. Edmond. "Workflow Resource Patterns: Identification, Representation and Tool Support". In O. Pastor and J. Falcao e Cunha, editors, ''Proceedings of the 17th Conference on Advanced Information Systems Engineering (CAiSE'05), volume 3520 of [[Lecture Notes in Computer Science]]'', pages 216-232. Springer-Verlag, Berlin, 2005.</ref>
* data patterns,<ref>N. Russell, A.H.M. ter Hofstede, D. Edmond, and [[Wil van der Aalst|W.M.P.van der Aalst]]. "Workflow Data Patterns: Identification, Representation and Tool Support". In L. Delcambre, C. Kop, H.C. Mayr, [[John Mylopoulos|J. Mylopoulos]], and O. Pastor, editors, ''24th International Conference on Conceptual Modeling (ER 2005), volume 3716 of Lecture Notes in Computer Science'', pages 353-368. Springer-Verlag, Berlin, 2005.</ref><ref>N. Trcka, [[Wil van der Aalst|W.M.P.van der Aalst]], and N. Sidorova. "Data-Flow Anti-Patterns: Discovering Data-Flow Errors in Workflows". In P. van Eck, J. Gordijn, , and R. Wieringa, editors, ''Advanced Information Systems Engineering, Proceedings of the 21st International Conference on Advanced Information Systems Engineering (CAiSE'09), volume 5565 of Lecture Notes in Computer Science'', pages 425-439. Springer-Verlag, Berlin, 2009.</ref>
* exception patterns,<ref>N. Russell, [[Wil van der Aalst|W.M.P.van der Aalst]], and A.H.M. ter Hofstede. "Workflow Exception Patterns". In E. Dubois and K. Pohl, editors, ''Proceedings of the 18th International Conference on Advanced Information Systems Engineering (CAiSE'06), volume 4001 of Lecture Notes in Computer Science'', pages 288-302. Springer-Verlag, Berlin, 2006.
</ref>
Line 81:
* parallelism and pipelining patterns.<ref>C. Pautasso, G. Alonso. [http://www.jopera.org/node/7 "Parallel Computing Patterns for Grid Workflows"], In Proc. of the HPDC2006 Workshop on Workflows in Support of Large-Scale Science (WORKS06), Paris, France, June 2006.</ref>
 
These patterns collections have been used to evaluate a variety of workflow processes, both commercial (Websphere, Oracle BPEL, Staffware, SAP workflow, Windows Workflow Foundation, etc.) and open source.<ref>P. Wohed, N.C. Russell, A.H.M. ter Hofstede, B. Andersson, and [[Wil van der Aalst|W.M.P.van der Aalst]]. "Patterns-based Evaluation of Open Source BPM Systems: The Cases of jBPM, [[OpenWFE]], and Enhydra Shark". In: ''Information and Software Technology'', 51(8):1187-1216, 2009.</ref>
 
==Workflow systems implementing patterns ==
*[http://www.tavaxy.org Tavaxy] <ref>{{citeCite journal doi| last1 = Abouelhoda | first1 = M. | last2 = Issa | first2 = S. | last3 = Ghanem | first3 = M. | title = Tavaxy: Integrating Taverna and Galaxy workflows with cloud computing support | doi = 10.1186/1471-2105-13-77 | journal = BMC Bioinformatics | volume = 13 | page = 77 | year = 2012 | pmid = 22559942| pmc =3583125 | doi-access = free }}</ref> is a cloud-based workflow system that implements a pattern-based approach for enabling interoperability between Galaxy and Taverna, two workflow engines popular in the bioinformatics ___domain,<ref>{{Cite book | last1 = Abouelhoda | first1 = M. | last2 = Alaa | first2 = S. | last3 = Ghanem | first3 = M. | doi = 10.1145/1833398.1833400 | chapter = Meta-workflows | title = Proceedings of the 1st International Workshop on Workflow Approaches to New Data-centric Science - Wands '10 | page = 1 | year = 2010 | isbn = 9781450301886 | s2cid = 17343728 }}</ref>
*[[YAWL]], Yet An OtherAnother Workflow Language,
.,<ref>{{cite doi|10.1145/1833398.1833400}}</ref>
*[[YAWL]], Yet An Other Workflow Language,
*[[Cameleon (programming language)]], Workflow based graphical language for functional programming.
 
Line 94 ⟶ 93:
 
== Further reading ==
* [[Marlon Dumas]], [[Wil van der Aalst]] and [[Arthur H.M. ter Hofstede]] ed. (2005). ''Process-Aware Information Systems''. John Wiley and Sons. {{ISBN |0-471-66306-9}}.
* Volker Kramberg (2006) [ftp://ftp.informatik.uni-stuttgart.de/pub/library/medoc.ustuttgart_fi/STUD-2052/STUD-2052.pdf Pattern-based Evaluation of IBM WebSphere BPEL]{{dead link|date=May 2025|bot=medic}}{{cbignore|bot=medic}}: Evaluation of IBM's WebSphere Integration Developer based on Workflow Patterns.
 
== External links ==