Skip to main content

A Pattern Language for Process Execution and Integration Design in Service-Oriented Architectures

  • Chapter

Part of the book series: Lecture Notes in Computer Science ((TPLOP,volume 5770))

Abstract

Process-driven SOAs are using processes to orchestrate services. Designing a non-trivial process-driven SOA involves many difficult design and architectural decisions. Examples are: Different kinds of processes exist: long-running, business-oriented and short-running, technical processes. How to best integrate them and how to map them to execution platforms? A SOA has many different stakeholders, such as business analysts, management, software designers, architects, and developers, as well as many different types of models these stakeholders need to work with. How to present each of them with the best view on the models they need for their work? A realistic process-driven SOA contains many systems that need to be integrated, such as various process engines, services, and backend systems, running on heterogeneous technologies and platforms. How to perform integration in a way that is maintainable and scalable? This article introduces a pattern language that deals with process modeling, execution, and integration. Its main goal is to help solution architects, as well as process and service designers, to master the challenges in designing a stable and evolvable process-driven SOA.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  • [van der Aalst et al. 2003] van der Aalst, W.M.P., ter Hofstede, A.H.M., Kiepuszewski, B., Barros, A.P.: Workflow Patterns. Distributed and Parallel Databases 14(1), 5–51 (2003)

    Article  Google Scholar 

  • [Active Endpoints 2007] Active Endpoints. ActiveBPEL Open Source Engine (2007), http://www.active-endpoints.com/active-bpel-engine-overview.htm

  • [Barros at al. 2005] Barros, A., Dumas, M., ter Hofstede, A.H.M.: Service interaction patterns. In: van der Aalst, W.M.P., Benatallah, B., Casati, F., Curbera, F. (eds.) BPM 2005. LNCS, vol. 3649, pp. 302–318. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  • [Barry 2003] Barry, D.K.: Web Services and Service-oriented Architectures. Morgan Kaufmann Publishers, San Francisco (2003)

    Google Scholar 

  • [BPMN2BPEL 2008] bpmn2bpel. A tool for translating BPMN models into BPEL processes (2008), http://code.google.com/p/bpmn2bpel/

  • [Buschmann et al. 1996] Buschmann, F., Meunier, R., Rohnert, H., Sommerlad, P., Stal, M.: Pattern-Oriented Software Architecture - A System of Patterns. John Wiley and Sons Ltd., Chichester (1996)

    Google Scholar 

  • [Channabasavaiah 2003 et al.] Channabasavaiah, K., Holley, K., Tuggle, E.M.: Migrating to Service-oriented architecture – part 1, IBM developerWorks (2003), http://www-106.ibm.com/developerworks/webservices/library/ws-migratesoa/

  • [Dikmans 2008] Dikmans, L.: Transforming BPMN into BPEL: Why and How (2008), http://www.oracle.com/technology/pub/articles/dikmans-bpm.html

  • [D’Souza and Wills 1999] D’Souza, D., Wills, A.: Objects, Components and Frameworks with UML: The Catalysis Approach. Addison-Wesley, Reading (1999)

    Google Scholar 

  • [Emmerich 2000] Emmerich, W.: Engineering Distributed Objects. Wiley & Sons, Chichester (2000)

    Google Scholar 

  • [Enhydra 2008] Enhydra. Enhydra Shark (2008), http://www.enhydra.org/workflow/shark/index.html

  • [Evans 2004] Evans, E.: Domain-Driven Design. Addison-Wesley, Reading (2004)

    Google Scholar 

  • [Fornax 2008] Fornax Project. Sculptor (2008), http://www.fornax-platform.org/cp/display/fornax/Sculptor+CSC

  • [Gamma et al. 1994] Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley, Reading (1994)

    Google Scholar 

  • [GFT 2007] GFT. GFT Inspire Business Process Management (2007), http://www.gft.com/gft_international/en/gft_international/Leistungen_Produkte/Software/Business_Process_Managementsoftware.html

  • [Hentrich 2004] Hentrich, C.: Six patterns for process-driven architectures. In: Proceedings of the 9th Conference on Pattern Languages of Programs, EuroPLoP 2004 (2004)

    Google Scholar 

  • [Hohpe et al. 2003] Hohpe, G., Woolf, B.: Enterprise Integration Patterns. Addison-Wesley, Reading (2003)

    Google Scholar 

  • [IBM 2008] IBM, WebSphere Software (2008), http://www-01.ibm.com/software/websphere/

  • [iWay 2007a] iWay Software. iWay Adapter Technologies (2007), http://www.iwaysoftware.jp/products/integrationsolution/adapter_manager.html

  • [iWay 2007b] iWay Software. iWay Adapter Manager Technology Brief (2007), http://www.iwaysoftware.jp/products/integrationsolution/adapter_manager.html

  • [JBoss 2007] JBoss. JBoss jBPM (2007), http://www.jboss.com/products/jbpm

  • [Josuttis 2007] Josuttis, N.M.: SOA in Practice - The Art of Distributed System Design. O’Reilly, Sebastopol (2007)

    Google Scholar 

  • [Lonchamp 1998] Lonchamp, J.: Process model patterns for collaborative work. In: Proceedings of the 15th IFIP World Computer Congress. Telecooperation Conference, Telecoop. Vienna, Austria (1998)

    Google Scholar 

  • [Meszaros and Brown 1997] Meszaros, G., Brown, K.: A pattern language for workflow systems. In: Proceedings of the 4th Pattern Languages of Programming Conference. Washington University Technical Report 97-34, WUCS-97-34 (1997)

    Google Scholar 

  • [Manolescu 2004] Manolescu, D.A.: Patterns for Orchestration Environments. In: The 11th Conference on Pattern Languages of Programs (PLoP2004), Allterton Park, Monticello, Illinois, September 8 - 12 (2004)

    Google Scholar 

  • [Manolescu 2002] Manolescu, D.A.: Workflow enactment with continuation and future objects. ACM SIGPLAN Notices 37(11) (November 2002)

    Google Scholar 

  • [Manolescu 2000] Manolescu, D.A.: Micro-Workflow: A Workflow Architecture Supporting Compositional Object-Oriented Software Development. Ph.D. Thesis and Computer Science Technical Report UIUCDCS-R-2000-2186, University of Illinois at Urbana-Champaign, October 2000, Urbana, Illinois (2000)

    Google Scholar 

  • [Mellor and Balcer 2002] Mellor, S.J., Balcer, M.J.: Executable UML: A Foundation for Model Driven Architecture. Addison-Wesley, Reading (2002)

    Google Scholar 

  • [Mittal and Kanchanavally 2008] Mittal, K., Kanchanavally, S.: Introducing Java Page Flow Architecture (2008), http://www.developer.com/open/article.php/10930_3531246_1

  • [Mule 2007] Mule Project. Mule open source ESB (Enterprise Service Bus) and integration platform (2007), http://mule.mulesource.org/

  • [Novell 2008] Novell. Novell exteNd Director 5.2 (2008), http://www.novell.com/documentation/extend52/Docs/Start_Director_Help.html

  • [Riehle et al. 2001] Riehle, D., Fraleigh, S., Bucka-Lassen, D., Omorogbe, N.: The Architecture of a UML Virtual Machine. In: Proceedings of the 2001 Conference on Object-Oriented Programming Systems, Languages, and Applications (OOPSLA 2001), pp. 327–341. ACM Press, New York (2001)

    Google Scholar 

  • [Russel et al. 2006] Russell, N., van der Aalst, W.M.P., ter Hofstede, A.H.M.: Exception handling patterns in process-aware information systems. BPM Center Report BPM-06-04, BPMcenter.org (2006)

    Google Scholar 

  • [ServiceMix 2007] Apache ServiceMix Project. Apache ServiceMix (2007), http://www.servicemix.org/

  • [Schmidt et al. 2000] Schmidt, D.C., Stal, M., Rohnert, H., Buschmann, F.: Patterns for Concurrent and Distributed Objects. In: Pattern-Oriented Software Architecture. J. Wiley and Sons Ltd., Chichester (2000)

    Google Scholar 

  • [Schümmer and Lukosch 2007] Schümmer, T., Lukosch, S.: Patterns for computer-mediated interaction. Wiley & Sons, Chichester (2007)

    Google Scholar 

  • [Stahl and Völter 2006] Stahl, T., Völter, M.: Model-Driven Software Development. John Wiley & Sons, Chichester (2006)

    Google Scholar 

  • [Tran et al. 2007]Tran, H., Zdun, U., Dustdar, S.: View-based and Model-driven Approach for Reducing the Development Complexity in Process-Driven SOA. In: Proceedings of International Conference on Business Processes and Services Computing, Leipzig, Germany (September 2007)

    Google Scholar 

  • [Vogel 2001] Vogel, O.: Service abstraction layer. In: Proceedings of EuroPlop 2001, Irsee, Germany (July 2001)

    Google Scholar 

  • [webMethods 2007] webMethods. webMethods Fabric 7 (2007), http://www.webmethods.com/products/fabric

  • [Weigand et al. 2000] Weigand, H., de Moor, A., van den Heuvel, W.J.: Supporting the evolution of workflow patterns for virtual communities. Electronic Markets 10(4), 264 (2000)

    Article  Google Scholar 

  • [Workflow Patterns 2008] Workflow Patterns home page (2008), http://www.workflowpatterns.com/

  • [Zdun et al. 2006] Zdun, U., Hentrich, C., van der Aalst, W.M.P.: A Survey of Patterns for Service-Oriented Architectures. International Journal of Internet Protocol Technology 1(3), 132–143 (2006)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2009 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Hentrich, C., Zdun, U. (2009). A Pattern Language for Process Execution and Integration Design in Service-Oriented Architectures. In: Noble, J., Johnson, R. (eds) Transactions on Pattern Languages of Programming I. Lecture Notes in Computer Science, vol 5770. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-10832-7_6

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-10832-7_6

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-10831-0

  • Online ISBN: 978-3-642-10832-7

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics