A study of mashup as a software application development technique with examples from an end-user programming perspective

Ahmed Patel, Liu Na, Rodziah Latih, Christopher Wills, Zarina Shukur, Rabia Mulla

Research output: Contribution to journalArticle

15 Citations (Scopus)

Abstract

The purpose of this study is to present, introduce and explain the principles, concepts and techniques of mashups through an analysis of mashup tools from End-user Development (EuD) software engineering perspectives, since it is a new programming paradigm. Problem statement: Although mashup tools supporting the creation of mashups rely heavily on data integration, they still require users to have reasonable programming skills, rather than simply enabling the integration of content in a template approach. Mashup tools also have their lifespan in a fast moving technology-driven world which requires meta-application handling. Some developers have discontinued their mashup tools but others are still available in the mashup space. It has been noted that there is a steady increase of new mashups on a daily basis with a concomitant increase of new Application Programming Interface (APIs) to support meta-mashup application EuD. Approach: Both qualitative and quantitative research methods have been utilized. After introducing the basic principles, concepts and techniques of mashups, we develop and present a categorization of mashups and mashup tools and summarize the ten most popular currently used mashup tools against seven indictors from end-user software engineering perspectives ranging from programming skill requirement, prompt suggestion of features use, operability, 'share-ability' and reuse, service, type and target user, in order to evaluate how these mashup tools support end-user development. To perform the evaluation and produce the final results, the selected indicators' features have been horizontally compared and comprehensively analyzed. Results: The philosophy of mashup is aimed at providing simple rapid program development by end-users with minimum programming skills. However, we observe that mashup tools typically follow four data processing styles: Webpage customization, wire paradigm, spreadsheet and programming by demonstration. These mashup tools are supposed to seamlessly and effortlessly assist end-users programming but this is not the case. Conclusion: From our research we concluded that some mashup tools are not really simple enough to handle and still require end-users to have a computer programming background to learn and understand its platform infrastructures and mechanisms. These might all change in the near future. There are some companies that are now involved with mashup development which provide huge opportunities to both individual and organizational customers. Mashup have now become a commercial opportunity rather than a simple way of integrating data from Web 2.0 platforms.

Original languageEnglish
Pages (from-to)1406-1415
Number of pages10
JournalJournal of Computer Science
Volume6
Issue number12
DOIs
Publication statusPublished - 2010

Fingerprint

Application programs
Computer programming
Software engineering
Data integration
Spreadsheets
Application programming interfaces (API)
Demonstrations
Wire

Keywords

  • Application programming interface
  • Mashup
  • Mashup tools
  • Meta-applications
  • Software development
  • Webpage customization

ASJC Scopus subject areas

  • Software
  • Computer Networks and Communications
  • Artificial Intelligence

Cite this

A study of mashup as a software application development technique with examples from an end-user programming perspective. / Patel, Ahmed; Na, Liu; Latih, Rodziah; Wills, Christopher; Shukur, Zarina; Mulla, Rabia.

In: Journal of Computer Science, Vol. 6, No. 12, 2010, p. 1406-1415.

Research output: Contribution to journalArticle

@article{0febb4c8582a43d1a5faf5dd83332908,
title = "A study of mashup as a software application development technique with examples from an end-user programming perspective",
abstract = "The purpose of this study is to present, introduce and explain the principles, concepts and techniques of mashups through an analysis of mashup tools from End-user Development (EuD) software engineering perspectives, since it is a new programming paradigm. Problem statement: Although mashup tools supporting the creation of mashups rely heavily on data integration, they still require users to have reasonable programming skills, rather than simply enabling the integration of content in a template approach. Mashup tools also have their lifespan in a fast moving technology-driven world which requires meta-application handling. Some developers have discontinued their mashup tools but others are still available in the mashup space. It has been noted that there is a steady increase of new mashups on a daily basis with a concomitant increase of new Application Programming Interface (APIs) to support meta-mashup application EuD. Approach: Both qualitative and quantitative research methods have been utilized. After introducing the basic principles, concepts and techniques of mashups, we develop and present a categorization of mashups and mashup tools and summarize the ten most popular currently used mashup tools against seven indictors from end-user software engineering perspectives ranging from programming skill requirement, prompt suggestion of features use, operability, 'share-ability' and reuse, service, type and target user, in order to evaluate how these mashup tools support end-user development. To perform the evaluation and produce the final results, the selected indicators' features have been horizontally compared and comprehensively analyzed. Results: The philosophy of mashup is aimed at providing simple rapid program development by end-users with minimum programming skills. However, we observe that mashup tools typically follow four data processing styles: Webpage customization, wire paradigm, spreadsheet and programming by demonstration. These mashup tools are supposed to seamlessly and effortlessly assist end-users programming but this is not the case. Conclusion: From our research we concluded that some mashup tools are not really simple enough to handle and still require end-users to have a computer programming background to learn and understand its platform infrastructures and mechanisms. These might all change in the near future. There are some companies that are now involved with mashup development which provide huge opportunities to both individual and organizational customers. Mashup have now become a commercial opportunity rather than a simple way of integrating data from Web 2.0 platforms.",
keywords = "Application programming interface, Mashup, Mashup tools, Meta-applications, Software development, Webpage customization",
author = "Ahmed Patel and Liu Na and Rodziah Latih and Christopher Wills and Zarina Shukur and Rabia Mulla",
year = "2010",
doi = "10.3844/jcssp.2010.1406.1415",
language = "English",
volume = "6",
pages = "1406--1415",
journal = "Journal of Computer Science",
issn = "1549-3636",
publisher = "Science Publications",
number = "12",

}

TY - JOUR

T1 - A study of mashup as a software application development technique with examples from an end-user programming perspective

AU - Patel, Ahmed

AU - Na, Liu

AU - Latih, Rodziah

AU - Wills, Christopher

AU - Shukur, Zarina

AU - Mulla, Rabia

PY - 2010

Y1 - 2010

N2 - The purpose of this study is to present, introduce and explain the principles, concepts and techniques of mashups through an analysis of mashup tools from End-user Development (EuD) software engineering perspectives, since it is a new programming paradigm. Problem statement: Although mashup tools supporting the creation of mashups rely heavily on data integration, they still require users to have reasonable programming skills, rather than simply enabling the integration of content in a template approach. Mashup tools also have their lifespan in a fast moving technology-driven world which requires meta-application handling. Some developers have discontinued their mashup tools but others are still available in the mashup space. It has been noted that there is a steady increase of new mashups on a daily basis with a concomitant increase of new Application Programming Interface (APIs) to support meta-mashup application EuD. Approach: Both qualitative and quantitative research methods have been utilized. After introducing the basic principles, concepts and techniques of mashups, we develop and present a categorization of mashups and mashup tools and summarize the ten most popular currently used mashup tools against seven indictors from end-user software engineering perspectives ranging from programming skill requirement, prompt suggestion of features use, operability, 'share-ability' and reuse, service, type and target user, in order to evaluate how these mashup tools support end-user development. To perform the evaluation and produce the final results, the selected indicators' features have been horizontally compared and comprehensively analyzed. Results: The philosophy of mashup is aimed at providing simple rapid program development by end-users with minimum programming skills. However, we observe that mashup tools typically follow four data processing styles: Webpage customization, wire paradigm, spreadsheet and programming by demonstration. These mashup tools are supposed to seamlessly and effortlessly assist end-users programming but this is not the case. Conclusion: From our research we concluded that some mashup tools are not really simple enough to handle and still require end-users to have a computer programming background to learn and understand its platform infrastructures and mechanisms. These might all change in the near future. There are some companies that are now involved with mashup development which provide huge opportunities to both individual and organizational customers. Mashup have now become a commercial opportunity rather than a simple way of integrating data from Web 2.0 platforms.

AB - The purpose of this study is to present, introduce and explain the principles, concepts and techniques of mashups through an analysis of mashup tools from End-user Development (EuD) software engineering perspectives, since it is a new programming paradigm. Problem statement: Although mashup tools supporting the creation of mashups rely heavily on data integration, they still require users to have reasonable programming skills, rather than simply enabling the integration of content in a template approach. Mashup tools also have their lifespan in a fast moving technology-driven world which requires meta-application handling. Some developers have discontinued their mashup tools but others are still available in the mashup space. It has been noted that there is a steady increase of new mashups on a daily basis with a concomitant increase of new Application Programming Interface (APIs) to support meta-mashup application EuD. Approach: Both qualitative and quantitative research methods have been utilized. After introducing the basic principles, concepts and techniques of mashups, we develop and present a categorization of mashups and mashup tools and summarize the ten most popular currently used mashup tools against seven indictors from end-user software engineering perspectives ranging from programming skill requirement, prompt suggestion of features use, operability, 'share-ability' and reuse, service, type and target user, in order to evaluate how these mashup tools support end-user development. To perform the evaluation and produce the final results, the selected indicators' features have been horizontally compared and comprehensively analyzed. Results: The philosophy of mashup is aimed at providing simple rapid program development by end-users with minimum programming skills. However, we observe that mashup tools typically follow four data processing styles: Webpage customization, wire paradigm, spreadsheet and programming by demonstration. These mashup tools are supposed to seamlessly and effortlessly assist end-users programming but this is not the case. Conclusion: From our research we concluded that some mashup tools are not really simple enough to handle and still require end-users to have a computer programming background to learn and understand its platform infrastructures and mechanisms. These might all change in the near future. There are some companies that are now involved with mashup development which provide huge opportunities to both individual and organizational customers. Mashup have now become a commercial opportunity rather than a simple way of integrating data from Web 2.0 platforms.

KW - Application programming interface

KW - Mashup

KW - Mashup tools

KW - Meta-applications

KW - Software development

KW - Webpage customization

UR - http://www.scopus.com/inward/record.url?scp=78049493822&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=78049493822&partnerID=8YFLogxK

U2 - 10.3844/jcssp.2010.1406.1415

DO - 10.3844/jcssp.2010.1406.1415

M3 - Article

AN - SCOPUS:78049493822

VL - 6

SP - 1406

EP - 1415

JO - Journal of Computer Science

JF - Journal of Computer Science

SN - 1549-3636

IS - 12

ER -