Conceptual Development of Custom, Domain-Specific Mashup Platforms

Despite the common claim by mashup platforms that they enable end-users to develop their own software, in practice end-users still don't develop their own mashups, as the highly technical or inexistent user bases of today's mashup platforms testify. The key shortcoming of current platforms is their general-purpose nature, that privileges expressive power over intuitiveness. In our prior work, we have demonstrated that a domain-specific mashup approach, which privileges intuitiveness over expressive power, has much more potential to enable end-user development (EUD). The problem is that developing mashup platforms—domain-specific or not—is complex and time consuming. In addition, domain-specific mashup platforms by their very nature target only a small user basis, that is, the experts of the target domain, which makes their development not sustainable if it is not adequately supported and automated. With this article, we aim to make the development of custom, domain-specific mashup platforms cost-effective. We describe a mashup tool development kit (MDK) that is able to automatically generate a mashup platform (comprising custom mashup and component description languages and design-time and runtime environments) from a conceptual design and to provision it as a service. We equip the kit with a dedicated development methodology and demonstrate the applicability and viability of the approach with the help of two case studies.

[1]  Li Yan,et al.  Distributed orchestration of user interfaces , 2012, Inf. Syst..

[2]  Craig A. Knoblock,et al.  Building Mashups by Demonstration , 2011, TWEB.

[3]  E. Michael Maximilien,et al.  A Domain-Specific Language for Web APIs and Services Mashups , 2007, ICSOC.

[4]  Fabio Casati,et al.  Hosted Universal Composition: Models, Languages and Infrastructure in mashArt , 2009, ER.

[5]  Brad A. Myers,et al.  Report of the “End-User Programming” working group , 1992 .

[6]  Klaus Meißner,et al.  CRUISe: Composition of Rich User Interface Services , 2009, ICWE.

[7]  Scott R. Klemmer,et al.  Hacking , Mashing , Gluing : A Study of Opportunistic Design and Development , 2006 .

[8]  M. Brian Blake,et al.  Composition as a service [Web-Scale Workflow] , 2010, IEEE Internet Computing.

[9]  Fabio Casati,et al.  Conceptual Design of Sound, Custom Composition Languages , 2014, Web Services Foundations.

[10]  M Mernik,et al.  When and how to develop domain-specific languages , 2005, CSUR.

[11]  Florian Daniel,et al.  Mashups - Concepts, Models and Architectures , 2014, Data-Centric Systems and Applications.

[12]  Frank Salim,et al.  The WebSocket API , 2013 .

[13]  Antonella De Angeli,et al.  Conceptual and Usability Issues in the Composable Web of Software Services , 2010, ICWE Workshops.

[14]  Scott R. Klemmer,et al.  Hacking, Mashing, Gluing: Understanding Opportunistic Design , 2008, IEEE Pervasive Computing.

[15]  Fabio Casati,et al.  Baya: assisted mashup development as a service , 2012, WWW.

[16]  Mark Nottingham,et al.  The Atom Syndication Format , 2005, RFC.

[17]  Cesare Pautasso,et al.  The mashup component description language , 2011, iiWAS '11.

[18]  Daniela Fogli,et al.  Software Environments for End-User Development and Tailoring , 2004, PsychNology J..

[19]  Antonella De Angeli,et al.  Developing Mashup Tools for End-Users: On the Importance of the Application Domain , 2012, Int. J. Next Gener. Comput..

[20]  Fabio Casati,et al.  Efficient, Interactive Recommendation of Mashup Composition Knowledge , 2011, ICSOC.

[21]  Fabio Casati,et al.  Understanding Mashup Development , 2008, IEEE Internet Computing.

[22]  Gabor Karsai,et al.  Smart Dust: communicating with a cubic-millimeter computer , 2001 .

[23]  Antonella De Angeli,et al.  End-User Requirements for Wisdom-Aware EUD , 2011, IS-EUD.

[24]  Aditya K. Ghose,et al.  Carbon-Aware Business Process Design in Abnoba , 2010, ICSOC.

[25]  Aditya K. Ghose,et al.  Business Process Improvement in Abnoba , 2010, ICSOC Workshops.

[26]  M. Brian Composition as a Service , 2010 .

[27]  Marek Hatala,et al.  A Quality Aggregation Model for Service-Oriented Software Product Lines Based on Variability and Composition Patterns , 2011, ICSOC.

[28]  Boi Faltings,et al.  Dynamically Selecting Composition Algorithms for Economical Composition as a Service , 2011, ICSOC.

[29]  Laurence Duchien,et al.  Creating Context-Adaptive Business Processes , 2010, ICSOC.

[30]  Luciano Baresi,et al.  Consumer Mashups with Mashlight , 2010, ServiceWave.

[31]  Alexander Schill,et al.  Overview of an end-user enabled model-driven development approach for interactive applications based on annotated services , 2009, WEWST '09.

[32]  Antonella De Angeli,et al.  Service Composition for Non-programmers: Prospects, Problems, and Design Recommendations , 2010, 2010 Eighth IEEE European Conference on Web Services.

[33]  Gabor Karsai,et al.  Composing Domain-Specific Design Environments , 2001, Computer.

[34]  Bernhard Rumpe,et al.  Domain specific modeling , 2005, Software & Systems Modeling.

[35]  Joe Gregorio,et al.  The Atom Publishing Protocol , 2004 .

[36]  Chiara Francalanci,et al.  DashMash: A Mashup Environment for End User Development , 2011, ICWE.