Abstract
With this article, we give an answer to one of the open problems of mashup development that users may face when operating a model-driven mashup tool, namely the lack of modeling expertise. Although commonly considered simple applications, mashups can also be complex software artifacts depending on the number and types of Web resources (the components) they integrate. Mashup tools have undoubtedly simplified mashup development, yet the problem is still generally nontrivial and requires intimate knowledge of the components provided by the mashup tool, its underlying mashup paradigm, and of how to apply such to the integration of the components. This knowledge is generally neither intuitive nor standardized across different mashup tools and the consequent lack of modeling expertise affects both skilled programmers and end-user programmers alike.
In this article, we show how to effectively assist the users of mashup tools with contextual, interactive recommendations of composition knowledge in the form of reusable mashup model patterns. We design and study three different recommendation algorithms and describe a pattern weaving approach for the one-click reuse of composition knowledge. We report on the implementation of three pattern recommender plugins for different mashup tools and demonstrate via user studies that recommending and weaving contextual mashup model patterns significantly reduces development times in all three cases.
Supplemental Material
Available for Download
Supplemental movie, appendix, image and software files for, Recommendation and Weaving of Reusable Mashup Model Patterns for Assisted Development
- M. W. Berry, S. Dumais, G. O'brien, M. W. Berry, S. T. Dumais, and Gavin. 1995. Using linear algebra for intelligent information retrieval. SIAM Rev. 37, 573--595. Google Scholar
Digital Library
- C. Cappiello, F. Daniel, A. Koschmider, M. Matera, and M. Picozzi, 2011. A quality model for mashups. In Proceedings of the 11th International Conference on Web Engineering (ICWE'11). 137--151. Google Scholar
Digital Library
- C. Cappiello, F. Daniel, and M. Matera, 2009. A quality model for mashup components. In Proceedings of the 9th International Conference on Web Engineering (ICWE'09). 236--250. Google Scholar
Digital Library
- C. Cappiello, M. Matera, M. Picozzi, F. Daniel, and A. Fernandez 2012. Quality-aware mashup composition: Issues, techniques and tools. In Proceedings of the 8th International Conference on the Quality of Information and Communications Technology (QUATIC'12). 10--19. Google Scholar
Digital Library
- L. Chen, J. Wu, H. Jian, H. Deng, and Z. Wu 2013. Instant recommendation for web services composition. IEEE Trans. Services Comput. 99, 1.Google Scholar
- A. Cypher, D. C. Halbert, D. Kurlander, H. Lieberman, D. Maulsby, B. A. Myers, and A. Turransky, EDS. 1993. Watch What I Do: Programming by Demonstration. MIT Press. Google Scholar
Digital Library
- F. Daniel, F. Casati, B. Benatallah, and M.-C. Shan 2009. Hosted universal composition: Models, languages and infrastructure in mashart. In Proceedings of the 28th International Conference on Conceptual Modeling (ER'09). Springer, 428--443. Google Scholar
Digital Library
- A. De Angeli, A. Battocchi, S. Roy Chowdhury, C. Rodriguez, F. Daniel, and F. Casati 2011. End-user requirements for wisdom-aware eud. In Proceedings of the 3rd International Conference on End-User Development (IS-EUD'11). 245--250. Google Scholar
Digital Library
- D. Deutch, O. Greenshpan, and T. Milo 2010. Navigating in complex mashed-up applications. Proc. VLDB Endow. 3, 1--2, 320--329. Google Scholar
Digital Library
- H. Elmeleegy, A. Ivan, R. Akkiraju, and R. Goodwin 2008. Mashup advisor: A recommendation tool for mashup development. In Proceedings of the IEEE International Conference on Web Services (ICWS'08). IEEE Computer Society, 337--344. Google Scholar
Digital Library
- T. Gschwind, J. Koehler, and J. Wong 2008. Applying patterns during business process modeling. In Proceedings of the 6th International Conference on Business Process Management (BPM'08). Springer, 4--19. Google Scholar
Digital Library
- J. E. Hirsch 2005. An index to quantify an individual's scientific research output. Proc. Nat. Acad. Sci. 102, 46.Google Scholar
Cross Ref
- Y. Hu, Y. Koren, and C. Volinsky 2008. Collaborative filtering for implicit feedback datasets. In Proceedings of the 8th IEEE International Conference on Data Mining (ICDM'08). IEEE Computer Society, 263--272. Google Scholar
Digital Library
- J. Johnson 2010. Designing with the Mind in Mind: Simple Guide to Understanding User Interface Design Rules. Morgan Kaufmann, San Fransisco. Google Scholar
Digital Library
- C. Klinkmuller, I. Weber, J. Mendling, H. Leopold, and A. Ludwig 2013. Increasing recall of process model matching by improved activity label matching. In Proceedings of the 11th International Conference on Business Process Management (BPM'13). 211--218. Google Scholar
Digital Library
- Y. Koren, R. Bell, and C. Volinsky 2009. Matrix factorization techniques for recommender systems. Comput. 42, 8, 30--37. Google Scholar
Digital Library
- D. Lin, C. Shi, and T. Ishida 2012. Dynamic service selection based on context-aware qos. In Proceedings of the 9th IEEE International Conference on Services Computing (SCC'12). IEEE Computer Society, 641--648. Google Scholar
Digital Library
- A. Ngu, M. Carlson, Q. Sheng, and AIK, H. Young 2010. Semantic-based mashup of composite applications. IEEE Trans. Services Comput. 3, 1, 2--15. Google Scholar
Digital Library
- M. Ogrinz 2009. Mashup Patterns: Designs and Examples for the Modern Enterprise. Addison-Wesley. Google Scholar
Digital Library
- Omelette Consortium. 2013. D7.4: Evaluation of demonstrators report. Project deliverable. http://www.ict-omelette.eu/public_deliverables.Google Scholar
- S. Pietschmann, M. Voigt, A. Rumpel, and K. Meissner 2009. CRUISe: Composition of rich user interface services. In Proceedings of the 9th International Conference on Web Engineering (ICWE'09). Springer, 473--476. Google Scholar
Digital Library
- A. V. Riabov, E. Boillet, M. D. Feblowitz, Z. Liu, and A. Ranganathan 2008. Wishful search: Interactive composition of data mashups. In Proceedings of the 17th International Conference on World Wide Web (WWW'08). ACM Press, New York, 775--784. Google Scholar
Digital Library
- C. Rodriguez, F. Daniel, and F. Casati 2014a. Crowd-based mining of reusable process model patterns. In Proceedings of the 12th International Conference on Business Process Management (BPM'14). 51--66.Google Scholar
Cross Ref
- C. Rodriguez, S. Roy Chowdhury, F. Daniel, H. R. Motahari Nezhad, and F. Casati 2014b. Assisted mashup development: On the discovery and recommendation of mashup composition knowledge. In Web Services Foundations. Springer, 683--708.Google Scholar
- S. Roy Chowdhury, A. Birukou, F. Daniel, and F. Casati 2011a. Composition patterns in data flow based mashups. In Proceedings of the 16th European Conference on Pattern Languages of Programs (EuroPLoP'11). 27--28.Google Scholar
- S. Roy Chowdhury, F. Daniel, and F. Casati 2011b. Efficient, interactive recommendation of mashup composition knowledge. In Proceedings of the 9th International Conference on Service- Oriented Computing (ICSOC'11). 374--388. Google Scholar
Digital Library
- S. Roy Chowdhury, C. Rodriguez, F. Daniel, and F. Casati 2012. Baya: Assisted mashup development as a service. In Proceedings of the 21st International Conference on World Wide Web Companion (WWW'12). ACM Press, New York, 409--412. Google Scholar
Digital Library
- B. Sarwar, G. Karypis, J. Konstan, and J. Riedl 2002. Incremental singular value decomposition algorithms for highly scalable recommender systems. In Proceedings of the 5th International Conference on Computer and Information Science (ICCIT'02). 27--28.Google Scholar
- B. M. Sarwar, G. Karypis, J. A. Konstan, and J. T. Riedl 2000. Application of dimensionality reduction in recommender system -- A case study. In Proceedings of the ACM WEBKDD Workshop.Google Scholar
Cross Ref
- G. Shani and A. Gunawardana 2011. Evaluating recommendation systems. In Recommender Systems Handbook. Springer, 257--297.Google Scholar
- K. T. Stolee and S. Elbaum 2010. Exploring the use of crowdsourcing to support empirical studies in software engineering. In Proceedings of the ACM-IEEE International Symposium on Empirical Software Engineering and Measurement (ESEM'10). ACM Press, New York, 35:1--35:4. Google Scholar
Digital Library
- X. Su and T. M. Khoshgoftaar 2009. A survey of collaborative filtering techniques. Adv. Artif. Intell. 2009, 4:2--4:2. Google Scholar
Digital Library
- W. M. P. Van Der Aalst, A. H. M. Ter Hofstede, B. Kiepuszewski, and A. P. Barros 2003. Workflow patterns. Distrib. Parallel Databases 14, 5--51. Google Scholar
Digital Library
- S. Wilson, F. Daniel, U. Jugel, and S. Soi 2011. Orchestrated user interface mashups using w3c widgets. In Proceedings of the 11th International Conference on Current Trends in Web Engineering (ICWE'11). Springer, 49--61. Google Scholar
Digital Library
- J. Wong and J. I. Hong 2007. Making mashups with marmite: Towards end-user programming for the web. In Proceedings of the SIGCHI Conference on Human Factors in Computing Systems (CHI'07). 1435--1444. Google Scholar
Digital Library
- J. Yu, B. Benatallah, F. Casati, and F. Daniel 2008. Understanding mashup development. IEEE Internet Comput. 12, 5, 44--52. Google Scholar
Digital Library
- Y. Zhou, D. Wilkinson, R. Schreiber, and R. Pan 2008. Large-scale parallel collaborative filtering for the netflix prize. In Proceedings of the 4th International Conference on Algorithmic Aspects in Information and Management (AAIM'08). Springer, 337--348. Google Scholar
Digital Library
Index Terms
Recommendation and Weaving of Reusable Mashup Model Patterns for Assisted Development
Recommendations
Understanding Mashup Development
Web mashups are Web applications developed using contents and services available online. Despite rapidly increasing interest in mashups over the past two years, comprehensive development tools and frameworks are lacking, and in most cases mashing up a ...
Discovery and reuse of composition knowledge for assisted mashup development
WWW '12 Companion: Proceedings of the 21st International Conference on World Wide WebDespite the emergence of mashup tools like Yahoo! Pipes or JackBe Presto Wires, developing mashups is still non-trivial and requires intimate knowledge about the functionality of web APIs and services, their interfaces, parameter settings, data mappings,...
A customizable recommender system for mashup platforms
iiWAS '17: Proceedings of the 19th International Conference on Information Integration and Web-based Applications & ServicesWhen developing composite web applications, non-programmers have to be assisted by recommendations. In the light of ad-hoc mashup development, users' heterogeneous skills and approaches, as well as different focus of mashup platforms, a variety of ...






Comments