Abstract
Over the past few years, mashup development has been made more accessible with tools such as Yahoo! Pipes that help in making the development task simpler through simplifying technologies. However, mashup development is still a difficult task that requires knowledge about the functionality of web APIs, parameter settings, data mappings, among other development efforts. In this work, we aim at assisting users in the mashup process by recommending development knowledge that comes in the form of reusable composition knowledge. This composition knowledge is harvested from a repository of existing mashup models by mining a set of composition patterns, which are then used for interactively providing composition recommendations while developing the mashup. When the user accepts a recommendation, it is automatically woven into the partial mashup model by applying modeling actions as if they were performed by the user. In order to demonstrate our approach we have implemented Baya, a Firefox plugin for Yahoo! Pipes that shows that it is indeed possible to harvest useful composition patterns from existing mashups, and that we are able to provide complex recommendations that can be automatically woven inside Yahoo! Pipes’ web-based mashup editor.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsNotes
- 1.
We use the term attribute to denote data attributes produced as output by a component or flowing through a data flow connector and the term parameter to denote input parameters of a component.
- 2.
To keep models and algorithms simple, we opt for a self-describing instance model for components, which presents both type and instance properties.
- 3.
We use a dot notation to refer to sub-elements of structured elements; \(ctype.type\) therefore refers to the \(type\) attribute of the component type \(ctype\).
- 4.
The identifier \(c.id=0\) does not represent recurrent information. Identifiers in patterns rather represent internal, system-generated information that is necessary to correctly maintain the structure of patterns. When mining patterns, the actual identifiers are lost; when weaving patterns, they need to be re-generated in the target mashup model.
- 5.
We highlight identifier place holders (variables) that can only be resolved when executing the operation with a “$” prefix.
References
Beauche, S., Poizat, P.: Automated service composition with adaptive planning. In: ICSOC’08, pp. 530–537. Springer (2008). doi:10.1007/978-3-540-89652-4_42
Carlson, M.P., Ngu, A.H., Podorozhny, R., Zeng, L.: Automatic mash up of composite applications. In: ICSOC’08, pp. 317–330, Springer (2008). doi:10.1007/978-1-4614-7518-7_25
Chen, H., Lu, B., Ni, Y., Xie, G., Zhou, C., Mi, J., Wu, Z.: Mashup by surfing a web of data apis. In: VLDB’09, vol. 2, pp. 1602–1605 (2009). http://portal.acm.org/citation.cfm?id=1687553.1687602
De Angeli, A., Battocchi, A., Roy Chowdhury, S., Rodríguez, C., Daniel, F., Casati, F.: End-user requirements for wisdom-aware eud. In: IS-EUD’11. Springer (2011)
Elmeleegy, H., Ivan, A., Akkiraju, R., Goodwin, R.: Mashup advisor: A recommendation tool for mashup development. In: ICWS’08, pp. 337–344. IEEE Computer Society (2008). doi:10.1109/ICWS.2008.128. http://portal.acm.org/citation.cfm?id=1474549.1474748
Greenshpan, O., Milo, T., Polyzotis, N.: Autocompletion for mashups. In: VLDB’09, vol. 2, pp. 538–549 (2009). http://portal.acm.org/citation.cfm?id=1687627.1687689
Gschwind, T., Koehler, J., Wong, J.: Applying patterns during business process modeling. In: BPM’08, pp. 4–19. Springer (2008). doi:10.1007/978-1-4614-7518-7_4
Hornung, T., Koschmider, A., Lausen, G.: Recommendation based process modeling support: method and user experience. In: ER’08, pp. 265–278. Springer (2008)
Riabov, A.V., Boillet, E., Feblowitz, M.D., Liu, Z., Ranganathan, A.: Wishful search: interactive composition of data mashups. In: WWW’08, pp. 775–784. ACM (2008). doi:10.1145/1367497.1367602
Roy Chowdhury, S., Daniel, F., Casati, F.: Efficient, interactive recommendation of mashup composition knowledge. In: ICSOC’11, pp. 374–388. Springer (2011)
Roy Chowdhury, S., Rodríguez, C., Daniel, F., Casati, F.: Baya: assisted mashup development as a service. In: WWW’12 (2012)
Smirnov, S., Weidlich, M., Mendling, J., Weske, M.: Action patterns in business process models. In: ICSOC-ServiceWave’09, pp. 115–129. Springer (2009). doi:10.1007/978-1-4614-7518-7_8
Tan, P., Steinbach, M., Kumar, V.: Introduction to Data Mining. Addison-Wesley, Boston (2005)
Van Der Aalst, W.M.P., Ter Hofstede, A.H.M., Kiepuszewski, B., Barros, A.P.: Workflow patterns. Distrib. Parallel Databases 14, 5–51 (2003)
Acknowledgments
This work was supported by the European Commission (project OMELETTE, contract 257635).
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2014 Springer Science+Business Media New York
About this chapter
Cite this chapter
Rodríguez, C., Chowdhury, S.R., Daniel, F., Nezhad, H.R.M., Casati, F. (2014). Assisted Mashup Development: On the Discovery and Recommendation of Mashup Composition Knowledge. In: Bouguettaya, A., Sheng, Q., Daniel, F. (eds) Web Services Foundations. Springer, New York, NY. https://doi.org/10.1007/978-1-4614-7518-7_27
Download citation
DOI: https://doi.org/10.1007/978-1-4614-7518-7_27
Published:
Publisher Name: Springer, New York, NY
Print ISBN: 978-1-4614-7517-0
Online ISBN: 978-1-4614-7518-7
eBook Packages: Computer ScienceComputer Science (R0)