skip to main content
research-article

Pattern-based design of a service-oriented middleware for remote object federations

Published:28 May 2008Publication History
Skip Abstract Section

Abstract

Service-oriented middleware architectures should enable the rapid realization of loosely coupled services. Unfortunately, existing technologies used for service-oriented middleware architectures, such as Web services, P2P systems, coordination and cooperation technologies, and spontaneous networking, do not fully support all requirements in the realm of loosely coupled business services yet. Typical problems that arise in many business domains are for instance missing central control, complex cooperation models, complex lookup models, or issues regarding dynamic deployment. We used a pattern-based approach to identify the well working solutions in the different technologies for loosely coupled services. Then we reused this design knowledge in our concept for a service-oriented middleware. This concept is centered around a controlled environment, called a federation. Each remote object (a peer service) is controlled in one or more federations, but within this environment peers can collaborate in a simple-to-use, loosely coupled, and ad hoc style of communication. A semantic lookup service is used to let the peers publish rich metadata about themselves to their fellow peers.

References

  1. Alexander, C. 1979. The Timeless Way of Building. Oxford University Press.Google ScholarGoogle Scholar
  2. Andrews, T., Curbera, F., Dholakia, H., Goland, Y., Klein, J., Leymann, F., Liu, K., Roller, D., Smith, D., Thatte, S., Trickovic, I., and Weerawarana, S. 2003. Business process execution language for web services version 1.1. http://www-106.ibm.com/developerworks/library/ws-bpel/.Google ScholarGoogle Scholar
  3. Apache Software Foundation. 2004. Apache Axis. http://ws.apache.org/axis/.Google ScholarGoogle Scholar
  4. Arnold, K., Wollrath, A., O'Sullivan, B., Scheifler, R., and Wald, J. 1999. The Jini Specification. Addison-Wesley. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Avgeriou, P. and Zdun, U. 2005. Architectural patterns revisited—A pattern language. In Proceedings of 10th European Conference on Pattern Languages of Programs (EuroPloP 2005). Irsee, Germany.Google ScholarGoogle Scholar
  6. Bass, L., Clements, P., and Kazman, R. 1998. Software Architecture in Practice. Addison-Wesley Longman, Reading, MA. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Beckett, D. 2004. Redland RDF application framework. http://www.redland.opensource.ac.uk/.Google ScholarGoogle Scholar
  8. Box, D., Ehnebuske, D., Kakivaya, G., Layman, A., Mendelsohn, N., Nielsen, H. F., Thatte, S., and Winer, D. 2000. Simple object access protocol (SOAP) 1.1. http://www.w3.org/TR/SOAP/.Google ScholarGoogle Scholar
  9. Brickley, D. and Guha, R. 2004. RDF vocabulary description language 1.0: RDF schema. http://www.w3.org/TR/2004/REC-rdf-schema-20040210/.Google ScholarGoogle Scholar
  10. Buschmann, F., Meunier, R., Rohnert, H., Sommerlad, P., and Stal, M. 1996. Pattern-Oriented Software Architecture—A System of Patterns. J. Wiley and Sons Ltd. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Carriero, N., Gelernter, D., and Zuck, L. 1995. Bauhaus Linda. In Proceedings of the ECOOP'94 Workshop on Modles and Languages for Coordination of Parallelism and Distribution, P. Ciancarini, O. Nierstrasz, and A. Yonezawa, Eds. Springer, Berlin, Germany, 66--76. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Chinnici, R., Gudgin, M., Moreau, J., Schlimmer, J., and Weerawarana, S. 2004. Web Services Description Language (WSDL) Version 2.0. http://www.w3.org/TR/wsdl20/.Google ScholarGoogle Scholar
  13. Chtcherbina, E. and Voelter, M. 2002. P2P Patterns—Results from the EuroPLoP 2002 Focus Group. In Proceedings of 7th European Conference on Pattern Languages of Programs (EuroPloP'02). Universitätsverlag Konstanz, Irsee, Germany, 195--232.Google ScholarGoogle Scholar
  14. Ciancarini, P. 1996. Coordination models and languages as software integrators. ACM Comput. Surv. 28, 2, 300--302. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Ciancarini, P., Tolksdorf, R., Vitali, F., Rossi, D., and Knoche, A. 1998. Coordinating Multiagent Applications on the WWW: A Reference Architecture. IEEE Trans. Softw. Engin. 24, 5, 362--375. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Decker, S., Erdmann, M., Fensel, D., and Studer, R. 1999. Ontobroker: Ontology based access to distributed and semi-structured information. In Proceedings of DS-8, Semantic Issues in Multimedia Systems, R. Meersman, Ed. Kluwer Academic Publish, 351--369. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Dublin Core Metadata Initiative. 2004. Dublin core. http://dublincore.org/.Google ScholarGoogle Scholar
  18. Gamma, E., Helm, R., Johnson, R., and Vlissides, J. 1994. Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Gelernter, D., Carriero, N., Chandran, S., and Chang, S. 1985. Parallel programming in Linda. In Proceedings of the International Conference on Parallel Processing. 255--263.Google ScholarGoogle Scholar
  20. Goedicke, M., Neumann, G., and Zdun, U. 2000. Object system layer. In Proceedings of 5th European Conference on Pattern Languages of Programs (EuroPlop'00). Irsee, Germany.Google ScholarGoogle Scholar
  21. HAVI. 2001. HAVI specification 1.1. http://www.havi.org.Google ScholarGoogle Scholar
  22. Hohpe, G. and Woolf, B. 2003. Enterprise Integration Patterns. Addison-Wesley. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Horrocks, I. 2001. The FaCT System. http://www.cs.man.ac.uk/~horrocks/FaCT/.Google ScholarGoogle Scholar
  24. IEEE WG 12. 2004. Learning object metadata. http://ltsc.ieee.org/wg12/.Google ScholarGoogle Scholar
  25. Kircher, M. and Jain, P. 2004. Pattern-Oriented Software Architecture. Vol. 3: Patterns for Resource Management. J. Wiley and Sons Ltd. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Kreger, H. 2001. Web service conceptual architecture. IBM Whitepaper.Google ScholarGoogle Scholar
  27. McGuinness, D. and Harmelen, F. 2004. Web ontology language (OWL). http://www.w3.org/TR/2004/REC-owl-features-20040210/.Google ScholarGoogle Scholar
  28. Microsoft. 2003. .NET framework. http://msdn.microsoft.com/netframework.Google ScholarGoogle Scholar
  29. Morris, R., Karger, D., Kaashoek, F., and Balakrishnan, H. 2001. Chord: A Scalable Peer-to-Peer Lookup Service for Internet Applications. In Proceedings of the ACM SIGCOMM. San Diego, CA. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. Neumann, G. and Zdun, U. 2000. XOTcl, an object-oriented scripting language. In Proceedings of the 7th USENIX Tcl/Tk Conference. Austin, TX, 163--174. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. OASIS. 2004. UDDI. http://www.uddi.org/.Google ScholarGoogle Scholar
  32. Object Management Group. 2004. Common Object Request Broker Architecture (CORBA/IIOP). http://www.omg.org/technology.Google ScholarGoogle Scholar
  33. Rowstron, A. and Druschel, P. 2001. Pastry: Scalable, distributed object location and routing for large-scale peer-to-peer systems. In IFIP/ACM International Conference on Distributed Systems Platforms (Middleware'01). 329--350. Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. Schmidt, D. and Buschmann, F. 2003. Patterns, frameworks, and middleware: Their synergistic relationships. In 25th International Conference on Software Engineering. 694--704. Google ScholarGoogle ScholarDigital LibraryDigital Library
  35. Schmidt, D., Stal, M., Rohnert, H., and Buschmann, F. 2000. Patterns for Concurrent and Distributed Objects. Pattern-Oriented Software Architecture. J. Wiley and Sons Ltd. Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. Shaw, M. and Clements, P. C. 1997. A field guide to Boxology: Preliminary classification of architectural styles for software systems. In Proceedings of the 21st International Computer Software and Applications Conference (COMPSAC '97). IEEE Computer Society, 6--13. Google ScholarGoogle ScholarDigital LibraryDigital Library
  37. Shaw, M. and Garlan, D. 1996. Software Architecture: Perspectives on an Emerging Discipline. Addison-Wesley. Google ScholarGoogle ScholarDigital LibraryDigital Library
  38. Sintek, M. and Decker, S. 2002. TRIPLE--A query, inference, and transformation language for the Semantic Web. In Proceedings of the 1st International Semantic Web Conference (ISWC). Sardinia, Italy. Google ScholarGoogle ScholarDigital LibraryDigital Library
  39. Voelter, M., Kircher, M., and Zdun, U. 2004. Remoting Patterns. Pattern Series. John Wiley and Sons.Google ScholarGoogle Scholar
  40. W3C. 2004. Resource Description Framework (RDF). http://www.w3.org/RDF/.Google ScholarGoogle Scholar
  41. W3C. 2006. Web Services Choreography Description Language Version 1.0. http://www.w3.org/TR/ws-cdl-10/.Google ScholarGoogle Scholar
  42. Zdun, U. 2003. Patterns of tracing software structures and dependencies. In Proceedings of 8th European Conference on Pattern Languages of Programs (EuroPLoP'03). Irsee, Germany, 581--616.Google ScholarGoogle Scholar
  43. Zdun, U. 2004a. Pattern language for the design of aspect languages and aspect composition frameworks. IEE Proceedings Software 151, 2, 67--83.Google ScholarGoogle ScholarCross RefCross Ref
  44. Zdun, U. 2004b. Some patterns of component and language integration. In Proceedings of 9th European Conference on Pattern Languages of Programs (EuroPLoP'04). Irsee, Germany.Google ScholarGoogle Scholar
  45. Zdun, U. 2005a. Leela. http://leela.sourceforge.net/.Google ScholarGoogle Scholar
  46. Zdun, U. 2005b. Semantic lookup in service-oriented architectures. In Engineering Advanced Web Applications, M. Matera and S. Comai, Eds. Rinton Press, Princeton, NJ, 124--135.Google ScholarGoogle Scholar
  47. Zdun, U. 2006. Patterns of component and language integration. In Pattern Languages of Program Design 5, D. Manolescu, M. Voelter, and J. Noble, Eds. Addison-Wesley, Reading, MA, 357--400.Google ScholarGoogle Scholar
  48. Zdun, U. and Avgeriou, P. 2005. Modeling architectural patterns using architectural primitives. In Proceedings of the 20th ACM Conference on Object-Oriented Programming, Systems, Languages & Applications (OOPSLA'05), San Diego, CA, 133--146. Google ScholarGoogle ScholarDigital LibraryDigital Library
  49. Zdun, U., Hentrich, C., and van der Aalst, W. 2006. A survey of patterns for service-oriented architectures. Int. J. Inter. Protocol Tech. 1, 3, 132--143. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Pattern-based design of a service-oriented middleware for remote object federations

            Recommendations

            Comments

            Login options

            Check if you have access through your login credentials or your institution to get full access on this article.

            Sign in

            Full Access

            • Published in

              cover image ACM Transactions on Internet Technology
              ACM Transactions on Internet Technology  Volume 8, Issue 3
              May 2008
              127 pages
              ISSN:1533-5399
              EISSN:1557-6051
              DOI:10.1145/1361186
              Issue’s Table of Contents

              Copyright © 2008 ACM

              Publisher

              Association for Computing Machinery

              New York, NY, United States

              Publication History

              • Published: 28 May 2008
              • Accepted: 1 December 2006
              • Revised: 1 May 2006
              • Received: 1 November 2005
              Published in toit Volume 8, Issue 3

              Permissions

              Request permissions about this article.

              Request Permissions

              Check for updates

              Qualifiers

              • research-article
              • Research
              • Refereed

            PDF Format

            View or Download as a PDF file.

            PDF

            eReader

            View online with eReader.

            eReader
            About Cookies On This Site

            We use cookies to ensure that we give you the best experience on our website.

            Learn more

            Got it!