Science China Information Sciences

, Volume 56, Issue 8, pp 1–16 | Cite as

Data-driven synthesis of multiple recommendation patterns to create situational Web mashups

  • Yun Ma
  • Xuan Lu
  • XuanZhe Liu
  • XuDong Wang
  • M. Brian Blake
Research Paper Special Focus


As a typical situational application, Web mashup reflects and accommodates some key features of Internetware paradigm. Mashup provides a development fashion that integrates data, computation and UI elements from multiple resources into a single Web application, and promises the quick rollout of creating potential new functionalities opportunistically. This paper focuses on the problem of recommending useful suggestions for developing data-driven mashups by synthesis of multiple patterns. We present a rapid and intuitive system called iMashupAdvisor, for aiding mashup development based on a novel automated suggestion mechanism. The key observation guiding the development of iMashupAdvisor is that mashups developed by different users might share some common patterns, for instance, selecting similar mashup components for similar goals, and gluing them in a similar manner. Such patterns could reside in multiple sources, e.g., the data dependency between mashup components, the interaction between users and mashup components, or the collective intelligence from existing applications created and maintained by programmers, etc. iMashupAdvisor leverages the synthesis of these patterns to recommend useful suggestions for a partial mashup, such as the missing components, connections between them, or potentially relevant options, to assist mashup completion. This paper presents the data model and ranking metrics of the synthesis process, and introduces efficient algorithms for the retrieval of recommendations. We also experimentally demonstrate the efficiency of our approach for benefiting the proposed rapid mashup development.


mashup Internetware recommendation data-driven model situational 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Yang F Q, Lu J, Mei H. Technical framework for internetware: an architecture centric approach. Sci China Ser F-Inf Sci, 2008, 51: 610–622CrossRefGoogle Scholar
  2. 2.
    Mei H, Huang G, Xie T. Internetware: a software paradigm for internet computing. IEEE Comput, 2012, 45: 26–31CrossRefGoogle Scholar
  3. 3.
    Lu J, Ma X X, Tao X P, et al. Research and progress on Internetware (in Chinese). Sci China Ser E-Tech Sci, 2006, 36: 1037–1080Google Scholar
  4. 4.
    Jazayeri M. Some trends in Web application development. In: Proceedings of Future of Software Engineering, Minneapolis, 2007. 199–213CrossRefGoogle Scholar
  5. 5.
    Balasubramaniam S, Lewis G, Simanta S, et al. Situated software: concepts, motivation, technology, and the future. IEEE Softw, 2008, 25: 50–56CrossRefGoogle Scholar
  6. 6.
    Liu X Z, Huang G, Zhao Q, et al. iMashup: a mashup-based framework for service composition. Sci China Inf Sci, 2013, 56, doi: 10.1007/s11432-013-4782-0Google Scholar
  7. 7.
    Hoyer V, Fischer M. Market overview of enterprise mashup tools. In: Proceedings of 6th International Conference on Services Oriented Computing. Berilin/Heidelberg: Springer-Verlag, 2008. 708–721Google Scholar
  8. 8.
    Liu X Z, Zhao Q, Huang G, et al. imashup: assisting end-user programming for the service-oriented Web. In: Proceedings of 25th IEEE/ACM International Conference on Automated Software Engineering, Antwerp, 2010. 285–288Google Scholar
  9. 9.
    Greenshpan O, Milo T, Polyzotis N. Auto-completion for mashups. In: Proceedings of 35th International Conference on Very Large Data Base, Lyon, 2009. 538–549Google Scholar
  10. 10.
    Blake M B, Nowlan M F. Knowledge discovery in services (KDS): aggregating software services to discover enterprise mashups. IEEE Trans Knowl Data Eng, 2011 23: 889–901CrossRefGoogle Scholar
  11. 11.
    Liu X Z, Huang G, Mei H. Discovering homogeneous Web services community in the user-centric Web environment. IEEE Trans Serv Comput, 2009, 2: 167–181CrossRefGoogle Scholar
  12. 12.
    Chowdhury S R. Assisting end-user development in browser-based mashup tools. In: Proceedings of 34th International Conference on Software Engineering, Zurich, 2012. 1625–1627Google Scholar
  13. 13.
    Chowdhury S R, Daniel F, Casati F. Efficient, interactive recommendation of mashup composition knowledge. In: Proceedings of 9th International Conference on Service Oriented Computing, Paphos, 2011. 374–388Google Scholar
  14. 14.
    Wong J, Hong J I. Making mashups with marmite: towards end-user programming for the Web. In: Proceedings of the SIGCHI Conference on Human Factors in Computing Systems. New York: ACM, 2007. 1435–1444CrossRefGoogle Scholar
  15. 15.
    Bouillet E, Feblowitz M, Liu Z, et al. A tag-based approach for the design and composition of information processing applications. ACM SIGPLAN Notices, 2008, 43: 585–602CrossRefGoogle Scholar
  16. 16.
    Stolee K T, Elbaum S G. Refactoring pipe-like mashups for end-user programmers. In: Proceedings of the 33rd International Conference on Software Engineering. New York: ACM, 2011. 81–90Google Scholar

Copyright information

© Science China Press and Springer-Verlag Berlin Heidelberg 2013

Authors and Affiliations

  • Yun Ma
    • 1
  • Xuan Lu
    • 1
  • XuanZhe Liu
    • 1
  • XuDong Wang
    • 1
  • M. Brian Blake
    • 2
  1. 1.Ministry of EducationKey Laboratory of High Confidence Software Technologies (Peking University)BeijingChina
  2. 2.University of MiamiCoral GablesUSA

Personalised recommendations