Towards a Generic Model for Web Services Mashups Using the Spreadsheet Paradigm
Total Page:16
File Type:pdf, Size:1020Kb
Towards a Generic Model for Web Services Mashups using the Spreadsheet Paradigm Dat Dac Hoang Dissertation submitted in fulfillment of the requirements for the degree of Doctor of Philosophy School of Computer Science and Engineering University of New South Wales Sydney, NSW 2052, Australia September 2011 Supervisor: Dr. Hye-Young Paik 2 i Originality Statement \I hereby declare that this submission is my own work and to the best of my knowl- edge it contains no materials previously published or written by another person, or substantial proportions of material which have been accepted for the award of any other degree or diploma at UNSW or any other educational institution, except where due acknowledgment is made in the thesis. Any contribution made to the research by others, with whom I have worked at UNSW or elsewhere, is explicitly acknowledged in the thesis. I also declare that the intellectual content of this thesis is the product of my own work, except to the extent that assistance from others in the project's design and conception or in style, presentation and linguistic expression is acknowledged." Signed: Name: Dat Dac Hoang Date: ............................... ii Copyright Statement \I hereby grant the University of New South Wales or its agents the right to archive and to make available my thesis or dissertation in whole or part in the University libraries in all forms of media, now or here after known, subject to the provisions of the Copyright Act 1968. I retain all proprietary rights, such as patent rights. I also retain the right to use in future works (such as articles or books) all or part of this thesis or dissertation. I also authorize University Microfilms to use the 350 word abstract of my thesis in Dissertation Abstract International (this is applicable to doctoral theses only). I have either used no substantial portions of copyright material in my thesis or I have obtained permission to use copyright material; where permission has not been granted I have applied/will apply for a partial restriction of the digital copy of my thesis or dissertation." Signed: ............................... Date: ............................... Authenticity Statement \I certify that the Library deposit digital copy is a direct equivalent of the final officially approved version of my thesis. No emendation of content has occurred and if there are any minor variations in formatting, they are the result of the conversion to digital format." Signed: ............................... Date: ............................... iii To my parents, my brother, my wife Hang-Thu, and our son Quang-Minh, who made all of this possible, for their endless love, encouragement and patience iv Acknowledgements This dissertation would not have been possible without the supports of many people. First and foremost, I wish to express my gratitude to my supervisor Dr. Hye- Young (Helen) Paik for her great support and guidance through my PhD candida- ture. I would like to thank her for accepting me to be one of her research students in the School of Computer Science and Engineering, the University of New South Wales. Working with Helen has been a continuous learning experience and I am grateful to her for invaluable advices and kind encouragements when I was lost. I thank her for trusting me to explore freely on my own when I found my direction. Without her support I would not have achieved what I have done in this dissertation. I gratefully thank Prof. Boualem Benatallah for his guidance and support. Boualem is an excellent, passionate, world-class scientist. He introduced me to the research field and taught me how to do research. I would like to acknowledge the Vietnamese Government (through Vietnamese Scholarship Overseas Program), the University of New South Wales, School of Com- puter Science and Engineering, Prof. Boualem Benatallah and Dr. Hye-Young Paik for providing me with the financial supports. I also would like to thank the School of Computer Science and Engineering for the great research environment and facilities they provide. I also sincerely thank A/Prof. Fethi Rabhi for his kindly support in providing access to the ADAGE project. The presentations and discussions in the group meetings were really valuable for my research. Over the years, I enjoyed to be a member of Service Oriented Computing research group and loved the conversations with people regarding my research. I would like to thank all members of the SOC group for the time we spent together, for their friendliness and support. In particular, I thank Dr. Regis Saint-Paul, Dr. Hamid v Motahari, Dr. Hakim Hacid, Dr. Sherif Sakr, Dr. Adnene Guabtni, Dr. Srikumar Venugopal, Dr. Van Munin Chhieng, Dr. Woralak Kongdenfha, Dr. Giusy Di Lorenzo, Dr. Ingo Weber, Seung Ryu, Van Hai Ho, Jae Choi, Hung Vu, Seyed Beheshti, Kwok Chung Yew, Kiet Vo, Vincent Zhao, and Sung Wook Kim. I would also like to thank students who worked with me in their theses: Mei Kee Hung and Jeffrey Dong. My friends have made my time in Sydney memorable. I would like to thank all of them who keep me sane and make Sydney as my home for years. My special thanks go to my parents and brother, who taught me to believe that I really could do anything I wanted to do. I am deeply and forever indebted to them for their endless love, support and encouragement. They are the source of my strength and without their countless support this dissertation would have never been started. Last but not least, I would like to thank my loving wife and son for coping with my hectic schedule and providing me with love, patience and understanding. Without their love this dissertation would probably have never been completed. I would never forget their encouragements during my most difficult times. To you my little boy, Quang-Minh, I would like to say: \When you grow up and are able to read this, please accept my apology for being busy and not giving you the time you deserve to have". vi Abstract The proliferation of Web services and online resources enabled a self-service application development method, namely \mashup", that combines together existing data and services to create ad-hoc, idiosyncratic applications. Typically, mashup tools possess user-friendly interfaces with simple user interaction mechanisms that enable individuals rapidly build applications without any in-depth technical skill requirements. To realise the full benefit of mashups, there is a need to support the paradigm through an established platform that has a large user base. Spreadsheets are popular productivity tools and are proven to be useful in manip- ulation, analysis, visualisation, and reporting of data. They have been also tagged as the most successful end-user development environment with millions of users. In this dissertation, we address the issue of providing a generic mashup develop- ment framework, through an application of the spreadsheet paradigm. We propose a novel framework, named MashSheet, which allows users to create mashup appli- cations using spreadsheet-like formulas. The key innovation of MashSheet is a collection of operators that supports co- ordinating Web services, manipulating and visualising data created by the services. MashSheet applications are incrementally built and data in each intermediary step is only visualised when needed. It makes the mashup applications concise and easy to follow, as well as keeping their computation logic separate from presentation. Although the issue of reusing already-built applications has been previously stud- ied in mashups and other spreadsheet research areas, its potential has not been fully realised in the state-of-the-art spreadsheet-based mashup tools. To enable users to reuse existing mashup applications in MashSheet, we propose a reuse model which consists of mashup templates and a template repository. The design of mashup templates in MashSheet allows the users to stay in the spreadsheet paradigm they are familiar with when applying the reuse model. The approach proposed in this dissertation have been implemented in a prototype vii and validated via experiments in real-world scenarios. We also conduct studies of the framework to evaluate its usability and expressiveness. The result shows that (i) MashSheet is expressive and flexible to support numerous application scenarios; and (ii) MashSheet reduces the application development time compared to one of the state-of-the-art spreadsheet-based mashup tools. viii Publications Arising from this Dissertation Prototypes (Demonstration of MashSheet): • http://www.cse.unsw.edu.au/~hpaik/mashsheet Published: • Hoang D, Paik H, Wei Dong, MashSheet: Mashups in Your Spreadsheet, in Proceedings of the 12th International Conference on Web Information System Engineering (WISE 2011), Demo track, Sydney, Australia, October 2011, pp. 332-333. • Hoang D, Paik H, Ngu A, Spreadsheet as a Generic Purpose Mashup Devel- opment Environment, In Proceedings of the 8th International Conference on Service Oriented Computing (ICSOC 2010), San Francisco, California, USA, December 2010, pp. 273-287. • Hoang D, Paik H, Benatallah B, An Analysis of Spreadsheet-Based Services Mashup, In Proceedings of the 21st Australasian Database Conference (ADC 2010), Brisbane, Australia, January 2010, pp. 141-150. • Hoang D, Benatallah B, Paik H, Towards a Spreadsheet-based Service Com- position Framework, In Proceedings of DASFAA Workshops, in conjunction with the 14th International Conference on Database Systems for Advance Ap- plications (DASFAA 2009), Brisbane, Australia, April 2009, pp. 369-373. Contents 1 Introduction 1 1.1 Key Research Issues . 3 1.1.1 Lack of Generic SB Mashup Programming Model . 4 1.1.2 Lack of Model for Application Reuse in SB Mashups . 6 1.2 Contribution Overview . 7 1.2.1 A Systematic Analysis of SB Mashups and the Tools . 7 Implementing Mashups in the Spreadsheet Paradigm . 7 A Survey of the State-of-the-art SB Mashup Tools . 8 1.2.2 The MashSheet Framework .