skip to main content
research-article

A tag-based approach for the design and composition of information processing applications

Published:19 October 2008Publication History
Skip Abstract Section

Abstract

In the realm of component-based software systems, pursuers of the holy grail of automated application composition face many significant challenges. In this paper we argue that, while the general problem of automated composition in response to high-level goal statements is indeed very difficult to solve, we can realize composition in a restricted context, supporting varying degrees of manual to automated assembly for specific types of applications. We propose a novel paradigm for composition in flow-based information processing systems, where application design and component development are facilitated by the pervasive use of faceted, tag-based descriptions of processing goals, of component capabilities, and of structural patterns of families of application. The facets and tags represent different dimensions of both data and processing, where each facet is modeled as a finite set of tags that are defined in a controlled folksonomy. All data flowing through the system, as well as the functional capabilities of components are described using tags. A customized AI planner is used to automatically build an application, in the form of a flow of components, given a high-level goal specification in the form of a set of tags. End-users use an automatically populated faceted search and navigation mechanism to construct these high-level goals. We also propose a novel software engineering methodology to design and develop a set of reusable, well-described components that can be assembled into a variety of applications. With examples from a case study in the Financial Services domain, we demonstrate that composition using a faceted, tag-based application design is not only possible, but also extremely useful in helping end-users create situational applications from a wide variety of available components.

References

  1. Yahoo pipes. Martin Abadi and Luca Cardelli. A Theory of Objects. Springer-Verlag New York, Inc., Secaucus, NJ, USA, 1996. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Mehmet Altinel, Paul Brown, Susan Cline, Rajesh Kartha, Eric Louie, Volker Markl, Louis Mau, Yip-Hing Ng, David Simmen, and Ashutosh Singh. Damia: a data mashup fabric for intranet applications. In VLDB '07: Proceedings of the 33rd international conference on Very large data bases, pages 1370--1373. VLDB Endowment, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. T. Bylander. The computational complexity of propositional STRIPS planning. Artificial Intelligence, 69(1--2):165--204, 1994. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. L Chen, N.R. Shadbolt, C. Goble, F. Tao, S.J. Cox, C. puleston, and P. Smart. Towards a knowledge-based approach to semantic service composition. In The Second International Semantic Web Conference (ISWC2003), 2003.Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Luba Cherbakov, Andy J. F. Bravery, and Aroop Pandya. SOA meets situational applications, 2007.Google ScholarGoogle Scholar
  6. Juntao Cui, Jiamao Liu, Yujin Wu, and Ning Gu. An ontology modeling method in semantic composition of web services. In CEC-EAST '04: Proceedings of the E-Commerce Technology for Dynamic E-Business, IEEE International Conference, pages 270--273, Washington, DC, USA, 2004. IEEE Computer Society. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. IBM. Project zero. http://www.projectzero.org/.Google ScholarGoogle Scholar
  8. Navendu Jain, Lisa Amini, Henrique Andrade, Richard King, Yoonho Park, Philippe Selo, and Chitra Venkatramani. Design, implementation, and evaluation of the linear road benchmark on the stream processing core. In SIGMOD '06: Proceedings of the 2006 ACM SIGMOD international conference on Management of data, pages 431--442, New York, NY, USA, 2006. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. In-Gyu Kim, Doo-Hwan Bae, and Jang-Eui Hong. A component composition model providing dynamic, flexible, and hierarchical composition of components for supporting software evolution. J. Syst. Softw., 80(11):1797--1816, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Julio Leite, Yijun Yu, Lin Liu, Eric Yu, and John Mylopoulos. Quality-based software reuse. Lecture Notes in Computer Science, 3520:535--550, January 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Zhen Liu, Anand Ranganathan, and Anton Riabov. A planning approach for message--oriented semantic web service composition. In AAAI, pages 1389--1394. AAAI Press, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Tiziana Margaria and Bernhard Steffen. Ltl guided planning: Revisiting automatic tool composition in eti. In SEW '07: Proceedings of the 31st IEEE Software Engineering Workshop, pages 214--226, Washington, DC, USA, 2007. IEEE Computer Society. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. D. Mennie and B. Pagurek. An architecture to support dynamic composition of service components. 2000.Google ScholarGoogle Scholar
  14. Rym Mili, Ali Mili, and Roland T. Mittermeir. Storing and retrieving software components: A refinement based system. IEEE Trans. Softw. Eng., 23(7):445--460, 1997. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. J. Paul Morrison. Data responsive modular, interleaved task programming system. IBM Technical Disclosure Bulletin, 13(8):2425--2426, January 1971.Google ScholarGoogle Scholar
  16. NOAA. Acronyms and abbreviations used by the statistical modeling branch, 2008.Google ScholarGoogle Scholar
  17. Andreas L. Opdahl and Guttorm Sindre. Facet models for problem analysis. In CAiSe '95: Proceedings of the 7th International Conference on Advanced Information Systems Engineering, pages 54--67, London, UK, 1995. Springer-Verlag. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Ruben Prieto-Diaz. Implementing faceted classification for software reuse. Commun. ACM, 34(5):88--97, 1991. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Ken Pu, Vagelis Hristidis, and Nick Koudas. Syntactic rule based approach to web service composition. In ICDE '06: Proceedings of the 22nd International Conference on Data Engineering, page 31, Washington, DC, USA, 2006. IEEE Computer Society. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Lirong Qiu, Fen Lin, Changlin Wan, and Zhongzhi Shi. Semantic web services composition using ai planning of description logics. In APSCC '06: Proceedings of the 2006 IEEE Asia-Pacific Conference on Services Computing, pages 340--347, Washington, DC, USA, 2006. IEEE Computer Society. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. S R Ranganathan. Colon Classification. Asia Publishing House, Bombay, India, 1933.Google ScholarGoogle Scholar
  22. Alastair Reid, Matthew Flatt, Leigh Stoller, Jay Lepreau, and Eric Eide. Knit: Component composition for systems software. In Proc. of the 4th Operating Systems Design and Implementation (OSDI), pages 347--360, 2000. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. A. Riabov and Z. Liu. Planning for stream processing systems. In AAAI, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Anton V. Riabov, Eric Bouillet, Mark D. Feblowitz, Zhen Liu, and Anand Ranganathan. Wishful search: Interactive composition of data mashups. In WWW, April 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Dennis Ritchie. The evolution of the unix time-sharing system. In Proceedings of a Symposium on Language Design and Programming Methodology, pages 25--36, London, UK, 1980. Springer-Verlag. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Mithun Sheshagiri, Marie des Jardins, and Tim Finin. A Planner for Composing Services Described in DAML-S. In Proceedings of the AAMAS Workshop on Web Services and Agent-based Engineering, June 2003.Google ScholarGoogle Scholar
  27. Kaarthik Sivashanmugam, John A. Miller, Amit P. Sheth, and Kunal Verma. Framework for semantic web process composition. Int. J. Electron. Commerce, 9(2):71--106, 2003. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Maxym Sjachyn and Ljerka Beus-Dukic. Semantic component selection -- SemaCS. In ICCBSS '06: Proceedings of the Fifth International Conference on Commercial-off-the-Shelf (COTS)-Based Software Systems, page 83, Washington, DC, USA, 2006. IEEE Computer Society. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. David Skogan, Roy Gronmo, and Ida Solheim. Web service composition in uml. In EDOC '04: Proceedings of the Enterprise Distributed Object Computing Conference, Eighth IEEE International, pages 47--57, Washington, DC, USA, 2004. IEEE Computer Society. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. Renata Slota, Joanna Zieba, Bartosz Kryza, and Jacek Kitowski. Knowledge evolution supporting automatic workflow composition. In E-SCIENCE '06: Proceedings of the Second IEEE International Conference on e-Science and Grid Computing, page 37, Washington, DC, USA, 2006. IEEE Computer Society. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. Vijayan Sugumaran and Veda C. Storey. A semantic-based approach to component retrieval. SIGMIS Database, 34(3):8--24, 2003. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. Axel van Lamsweerde, Anne Dardenne, B. Delcourt, and F. Dubisy. The kaos project: Knowledge acquisition in automated specification of software. In Proceedings of the AAAI Spring Symposium Series, pages 59--62, Stanford University, Stanford, CA, 1991. American Association for Artificial Intelligence'.Google ScholarGoogle Scholar
  33. Jian Yang, Mike P. Papazoglou, Bart Orri¨ens, and Willem-Jan van Heuvel. A rule based approach to the service composition life-cycle. In WISE '03: Proceedings of the Fourth International Conference on Web Information Systems Engineering, page 295, Washington, DC, USA, 2003. IEEE Computer Society. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. A tag-based approach for the design and composition of information processing applications

      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

      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!