The purpose of this paper is to introduce the motivations behind end user development, discuss its basic concepts and roots, and review the current state of art. Various approaches are discussed and classified in terms of their main features and the technologies and platforms for which they have been developed. Lastly, the paper provides an indication of interesting possibilities for further evolution. 1. Introduction One important trend in software technology is that more and more interactive applications are being written not by professional software developers but by people with expertise in other domains working towards goals supported by computation. Statistics from the US Bureau of Labor and Statistics predicted that by 2012 in the United States, there would be fewer than 3 million professional programmers but more than 55 million people using spreadsheets and databases at work and many writing formulas and queries to support their jobs [1]. More recently, a July 2011 Gartner report indicated that nonprofessional developers will build at least 25 percent of new business applications by 2014. Computer programming, almost as much as computer use, is becoming a widespread, pervasive practice. Such trends were already identified some years ago [2] and are becoming more and more evident. End-User Development (EUD) can be defined as a set of methods, techniques, and tools that allow users of software systems, who are acting as non-professional software developers, at some point to create, modify or extend a software artefact [3]. End users have specific goals in their own domains, which are not related to software development. The users that we consider here are people who have some basic technological knowledge but are not professional programmers. There are various motivations for EUD: professional developers lack the domain knowledge that end users cannot easily convey when communicating requirements for a new application, and regular development cycles are too slow to meet the users’ fast changing requirements. However, since end users usually lack the training of professional software developers, it is simply not possible to use the traditional development approaches for EUD. Currently available applications only realize a fraction of EUD’s potential and still suffer from several flaws, limiting EUD’s important contribution to empowering users as active citizens of the information society. The success of the Web 2.0 is a clear indication of how people would like to be more active and creative in the information society. However, Web 2.0 is mainly
References
[1]
C. Scaffidi, M. Shaw, and B. Myers, “Estimating the numbers of end users and end user programmers,” in Proceedings of the IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC '05), pp. 207–214, Dallas, Tex, USA, September 2005.
[2]
B. W. Boehm, C. Abts, A. Winsor Brown et al., Software Cost Estimation with COCOMO II, Prentice Hall PTR, Upper Saddle River, NJ, 2000.
[3]
H. Lieberman, F. Paternò, and V. Wulf, Eds., End-User Development, Human Computer Interaction Series, Springer, New York, NY, USA, 2006.
[4]
A. J. Ko, R. Abraham, L. Beckwith et al., “The state of the art in end-user software engineering,” ACM Computing Surveys, vol. 43, no. 3, article 21, 2011.
[5]
A. J. Ko and B. A. Myers, “Designing the whyline: a debugging interface for asking questions about program behavior,” in Proceedings of the Conference on Human Factors in Computing Systems (CHI '04), pp. 151–158, April 2004.
[6]
F. Paternò, Model-Based Design and Evaluation of Interactive Applications, Springer, New York, NY, USA, 2000.
[7]
J. M. C. Fonseca, Ed., “W3C model-based UI XG final report 2010,” May 2010, http://www.w3.org/2005/Incubator/model-based-ui/XGR-mbui-20100504/.
[8]
F. Paternò, C. Santoro, and L. D. Spano, “MARIA: a universal, declarative, multiple abstraction-level language for service-oriented applications in ubiquitous environments,” ACM Transactions on Computer-Human Interaction, vol. 16, no. 4, article 19, 2009.
[9]
R. Jacob, L. Deligiannidis, and S. Morrison, “A Software model and specification language for non-WIMP user interfaces,” ACM Transactions on Computer-Human Interaction, vol. 6, no. 1, pp. 1–46, 1999.
[10]
P. Szekely, “Retrospective and challenges for model-based interface development,” in Design, Specification and Verification of Interactive Systems, Eurographics, pp. 1–27, Springer, Vienna, Austria, 1996.
[11]
B. A. Myers and W. Buxton, “Creating highly-interactive and graphical user interfaces by demonstration,” Computer Graphics (ACM), vol. 20, no. 4, pp. 249–258, 1986.
[12]
A. Cypher, Watch What I Do: Programming by Demonstration, The MIT Press, Cambridge, Mass, USA, 1993.
[13]
A. Cypher, “Eager: programming repetitive tasks by example,” in Proceeding of the CHI Conference on Human Factors in Computing Systems (CHI '91), pp. 33–39, ACM Press, New Orleans, La, USA, 1991.
[14]
B. A. Myers, Creating User Interfaces by Demonstration, Academic Press, San Diego, Calif, USA, 1998.
[15]
B. A. Myers, J. Goldstein, and M. A. Goldberg, “Creating charts by demonstration,” in Proceedings of the Conference on Human Factors in Computing Systems (CHI '94), pp. 106–111, April 1994.
[16]
G. Fischer and A. Girgensohn, “End-user modifiability in design environments,” in Proceedings of the SIGCHI Conference on Human Factors in Computing Systems (CHI '90), pp. 183–192, 1990.
[17]
W. E. Mackay, “Patterns of sharing customizable software,” in Proceedings of the ACM Conference on Computer-Supported cooperative work (CSCW '90), pp. 209–221, ACM Press, Los Angeles, Calif, USA, 1990.
[18]
A. MacLean, K. Carter, L. L?vstrand, and T. Moran, “User-tailorable systems: pressing the issues with buttons,” in Proceedings of the SIGCHI Conference on Human Factors in Computing Systems (CHI '90), pp. 175–182, ACM Press, Seattle, Wash, USA, 1990.
[19]
B. Nardi, A Small Matter of Programming, MIT Press, Cambridge, Mass, USA, 1993.
[20]
A. M?rch, “Three levels of end-user tailoring: customization, integration and extension,” in Computers and Context, M. Kyng and L. Mathiassen, Eds., pp. 51–76, MIT Press, Cambridge, Mass, USA, 1997.
[21]
V. Wulf, V. Pipek, and M. Won, “Component-based tailorability: enabling highly flexible software applications,” International Journal of Human Computer Studies, vol. 66, no. 1, pp. 1–22, 2008.
[22]
J. R. Rasure and C. S. Williams, “An integrated data flow visual language and software development environment,” Journal of Visual Languages and Computing, vol. 2, no. 3, pp. 217–246, 1991.
[23]
F. Paternò, I. Campari, and R. Scopigno, “The design and specification of a visual language: an example for customising geographic information systems functionalities,” Computer Graphics Forum, vol. 13, no. 4, pp. 199–210, 1994.
[24]
M. M. Burnett, M. J. Baker, C. Bohus, P. Carlson, S. Yang, and P. van Zee, “Scaling up visual programming languages,” Computer, vol. 28, no. 3, pp. 45–54, 1995.
[25]
D. Bricklin, B. Frankston, and D. Fylstra, “VisiCalc, software arts,” 1979, http://www.bricklin.com/history/intro.htm.
[26]
M. Burnett, S. Yang, and J. Summet, “A scalable method for deductive generalization in the spreadsheet paradigm,” ACM Transactions on Computer-Human Interaction, vol. 9, no. 4, pp. 253–284, 2002.
[27]
J. A. Johnson, B. A. Nardi, C. L. Zarmer, and J. R. Miller, “Ace. Building interactive graphical applications,” Communications of the ACM, vol. 36, no. 4, pp. 41–55, 1993.
[28]
B. A. Myers, S. E. Hudson, and R. Pausch, “Past, present and future of user interface software tools,” ACM Transactions on Computer Human Interaction, vol. 7, no. 1, pp. 3–28, 2000.
[29]
G. Fischer, E. Giaccardi, Y. Ye, A. G. Sutcliffe, and N. Mehandjiev, “Meta-design: a manifesto for end-user development,” Communications of the ACM, vol. 47, no. 9, pp. 33–37, 2004.
[30]
A. Faaborg and H. Lieberman, “A goal-oriented web browser,” in Proceedings of the Conference on Human Factors in Computing Systems (CHI '06), pp. 751–760, April 2006.
[31]
G. Little, T. A. Lau, A. Cypher, J. Lin, E. M. Haber, and E. Kandogan, “Koala: capture, share, automate, personalize business processes on the web,” in Proceedings of the 25th SIGCHI Conference on Human Factors in Computing Systems 2007 (CHI '07), pp. 943–946, May 2007.
[32]
M. Burnett, A. Sheretov, B. Ren, and G. Rothermel, “Testing homogeneous spreadsheet grids with the “what you see is what you test” methodology,” IEEE Transactions on Software Engineering, vol. 28, no. 6, pp. 576–594, 2002.
[33]
G. Fischer, “Domain-oriented design environments,” Automated Software Engineering, vol. 1, no. 2, pp. 177–203, 1994.
[34]
G. Fischer, K. Nakakoji, and Y. Ye, “Metadesign: guidelines for supporting domain experts in software development,” IEEE Software, vol. 26, no. 5, pp. 37–44, 2009.
[35]
A. Repenning and A. Ioannidou, “Agent-based end-user development,” Communications of the ACM, vol. 47, no. 9, pp. 43–46, 2004.
[36]
A. Repenning and A. Ioannidou, “What makes end-user development tick? 13 design guidelines,” in End-User Development, H. Lieberman, F. Paternò, and V. Wulf, Eds., Human Computer Interaction Series, pp. 51–85, Springer, New York, NY, USA, 2006.
[37]
A. Repenning and J. Sullivan, “The Pragmatic Web. Agent based multimodal web interaction with no browser in sight,” in Proceedings of the Conference on Human-Computer Interaction (INTERACT '03), IOS Press, 2003.
[38]
J. F. Pane, B. A. Myers, and L. B. Miller, “Using HCI techniques to design a more usable programming system,” in Proceedings of the IEEE Symposia on Human Centric Computing Languages and Environments (HCC '02), pp. 198–206, 2002.
[39]
B. A. Myers, J. F. Pane, and A. Ko, “Natural programming languages and environments,” Communications of the ACM, vol. 47, no. 9, pp. 47–52, 2004.
[40]
H. Lieberman, Your Wish Is My Command. Programming by Example, Morgan Kaufmann, Academic Press, New York, NY, USA, 2001.
M. Resnick, J. Maloney, A. Monroy-Hernández et al., “Scratch: programming for all,” Communications of the ACM, vol. 52, no. 11, pp. 60–67, 2009.
[43]
J. Humble, A. Crabtree, T. Hemmings et al., “‘Playing with the Bits’ user-configuration of ubiquitous domestic environments,” in UbiComp 2003: Ubiquitous Computing, A. K. Dey, A. Schmidt, and J. F. McCarthy, Eds., Lecture Notes in Computer Science, Springer, Berlin, Germany, 2003.
[44]
R. Andersen and A. Morch, “Mutual development: a case study in customer-initiated software product development,” in Proceedings of the 2nd International Symposium on End-User Development, vol. 5435 of Lecture Notes in Computer Science, pp. 31–49, Springer, Siegen, Germany, 2009.
[45]
M. F. Costabile, D. Fogli, P. Mussio, and A. Piccinno, “End-user development: the software shaping workshop approach,” in End User Development, H. Lieberman, F. Paternò, and V. Wulf, Eds., Human-Computer Interaction Series, pp. 183–205, Springer, Berlin, Germany, 2006.
[46]
M. F. Costabile, A. Piccinno, D. Fogli, and A. Marcante, “Supporting interaction and co-evolution of users and systems,” in Proceedings of the Working Conference on Advanced Visual Interfaces (AVI '06), pp. 143–150, May 2006.
[47]
M. F. Costabile, P. Mussio, L. P. Provenza, and A. Piccinno, “Supporting end users to be co-designers of their tools,” in Proceedings of the 2nd International Symposium on End-User Development, vol. 5435 of Lecture Notes in Computer Science, pp. 70–85, Springer, Siegen, Germany, 2009.
[48]
S. Kuhn and M. J. Muller, “Participatory design—introduction to the special section,” Communications of the ACM, vol. 36, no. 6, pp. 24–28.
[49]
K. B?dker, F. Kensing, and J. Simonsen, Participatory IT Design: Designing for Business and Workplace Realities, MIT Press, Cambridge, Mass, USA, 2004.
[50]
C. Letondal and W. E. Mackay, “Participatory programming and the scope of mutual responsibility: balancing scientific, design and software commitment,” in Proceedings of the 8th Participatory Design Conference Artful Integration: Interweaving Media, Matrials and Practices (PDC '04), pp. 31–41, July 2004.
[51]
R. C. M. Tam, D. Maulsby, and A. R. Puerta, “U-TEL: a tool for eliciting user task models from domain experts,” in Proceedings of the 1998 International Conference on Intelligent User Interfaces (IUI '98), pp. 77–80, January 1998.
[52]
J. A. Landay and B. A. Myers, “Sketching interfaces: toward more human interface design,” Computer, vol. 34, no. 3, pp. 56–64, 2001.
[53]
A. Coyette, S. Kieffer, and J. Vanderdonckt, “Multi-fidelity prototyping of user interfaces,” in Proceedings of the 11th IFIP TC 13 International Conference on Human-Computer Interaction (INTERACT '07), vol. 4662 of Lecture Notes in Computer Science, pp. 149–162, Springer, Rio de Janeiro, Brazil, September 2007.
[54]
H. Liu and H. Lieberman, “Programmatic semantics for natural language interfaces,” in Proceedings of the ACM Conference on Human Factors in Computing Systems, (CHI '05), Portland, Ore, USA, April 2005.
[55]
G. Little and R. C. Miller, “Translating keyword commands into executable code,” in Proceedings of the 19th Annual ACM Symposium on User Interface Software and Technology (UIST '06), pp. 135–144, October 2006.
[56]
T. R. G. Green and M. Petre, “Usability analysis of visual programming environments: a 'cognitive dimensions' framework,” Journal of Visual Languages and Computing, vol. 7, no. 2, pp. 131–174, 1996.
[57]
A. F. Blackwell and T. R. G. Green, “A cognitive dimensions questionnaire optimised for users,” in Proceedings of the 12th Annual Meeting of the Psychology of Programming Interest Group, A. F. Blackwell and E. Bilotta, Eds., pp. 137–152, 2000.
[58]
C. Scaffidi, A. Cypher, S. Elbaum, A. Koesnandar, and B. Myers, “Using scenario-based requirements to direct research on web macro tools,” Journal of Visual Languages and Computing, vol. 19, no. 4, pp. 485–498, 2008.
[59]
C. Scaffidi, B. A. Myers, and M. Shaw, “Fast, accurate creation of data validation formats by end-user developers,” in End-User Development, V. Pipek, M. B. Rosson, B. de Ruyter, and V. Wulf, Eds., vol. 5435 of Lecture Notes in Computer Science, pp. 242–261, Berlin, Germany, 2009.
[60]
J. Soriano, D. Lizcano, M. A. Canas, M. Reyes, and J. J. Hierro, “Fostering innovation in a mashup-oriented enterprise 2.0 collaboration environment,” in Proceedings of the SIWN International Conference on Adaptive Business Systems (ICABS '07), pp. 62–669, Chengdu, China, 2007.
[61]
J. Nichols and T. Lau, “Mobilization by demonstration: using traces to re-author existing web sites,” in Proceedings of the 13th International Conference on Intelligent User Interfaces (IUI '08), pp. 149–158, January 2008.
[62]
J. A. Macías and F. Paternò, “Customization of Web applications through an intelligent environment exploiting logical interface descriptions,” Interacting with Computers, vol. 20, no. 1, pp. 29–47, 2008.
[63]
M. Toomim, S. M. Drucker, M. Dontcheva, A. Rahimi, B. Thomson, and J. A. Landay, “Attaching UI enhancements to websites with end users,” in Proceedings of the ACM Conference on Human Factors in Computing Systems, pp. 1859–1868, 2009.
[64]
J. Lin, J. Wong, J. Nichols, A. Cypher, and T. A. Lau, “End-user programming of mashups with vegemite,” in Proceedings of the 13th International Conference on Intelligent User Interfaces (IUI '09), pp. 97–106, February 2009.
[65]
R. C. Miller, M. Bolin, L. B. Chilton, G. Little, M. Webber, and Y. Chen-Hsiang, “Rewriting the web with chickenfoot,” in No Code Required: Giving Users Tools to Transform the Web, pp. 39–62, Elsevier, Burlington, Mass, USA, 2010.
[66]
G. Leshed, E. M. Haber, T. Matthews, and T. Lau, “CoScripter: automating & sharing how-to knowledge in the enterprise,” in Proceedings of the 26th Annual CHI Conference on Human Factors in Computing Systems (CHI '08), pp. 1719–1728, April 2008.
[67]
I. Li, J. Nichols, T. Lau, C. Drews, and A. Cypher, “Here's what i did: sharing and reusing web activity with ActionShot,” in Proceedings of the 28th Annual CHI Conference on Human Factors in Computing Systems (CHI '10), pp. 723–732, April 2010.
[68]
J. Wong and J. I. Hong, “Making mashups with marmite: towards end-user programming for the web,” in Proceedings of the 25th SIGCHI Conference on Human Factors in Computing Systems (CHI '07), pp. 1435–1444, May 2007.
[69]
G. Ghiani, F. Paternò, and L. D. Spano, “Creating mashups by direct manipulation of existing web applications,” in End-User Development, vol. 6654 of Lecture Notes in Computer Science, pp. 42–52, Springer, Berlin, Germany, 2011.
[70]
B. Hartmann, L. Wu, K. Collins, and S. R. Klemmer, “Programming by a sample: rapidly creating web applications with d.mix,” in Proceedings of the 20th Annual ACM Symposium on User Interface Software and Technology (UIST '07), pp. 241–250, October 2007.
[71]
T. Nestler, A. Namoun, and A. Schill, “End-user development of service-based interactive web applications at the presentation layer,” in Proceedings of the 3rd ACM SIGCHI Symposium on Engineering Interactive Computing Systems (EICS '11), pp. 197–206, June 2011.
[72]
G. Ghiani, F. Paternò, and L. D. Spano, “Cicero designer: an environment for end-user development of multi-device museum guides,” Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), vol. 5435, pp. 265–274, 2009.
[73]
A. Celentano and M. Marek, “An end-user oriented building pattern for interactive art guides,” in End-User Development, M. Costabile, Y. Dittrich, G. Fischer, and A. Piccinno, Eds., vol. 6654 of Lecture Notes in Computer Science, pp. 187–202, Springer, Berlin, Germany, 2011.
[74]
A. F. Blackwell and R. Hague, “AutoHAN: an architecture for programming the home,” in Proceedings of the IEEE Symposia on Human-Centric Computing Languages and Environments, pp. 150–157, September 2001.
[75]
A. F. Blackwell, “End-user developers at home,” Communications of the ACM, vol. 47, no. 9, pp. 65–66, 2004.
[76]
K. P. Akesson, A. Crabtree, P. Hansson et al., “‘Playing with the Bits’ User-Configuration of Ubiquitous Domestic Environments,” in Proceedings of the 5th International Conference on Ubiquitous Computing (UbiComp '03), vol. 2864 of Lecture Notes in Computer Science, pp. 256–263, 2003.
[77]
A. K. Dey, T. Sohn, S. Streng, and J. Kodama, “iCAP: interactive prototyping of context-aware applications,” Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), vol. 3968, pp. 254–271, 2006.
[78]
S. Cotterell and F. Vahid, “A logic block enabling logic configuration by non-experts in sensor networks,” in Proceedings of the Extended Abstracts on Human Factors in Computing Systems (CHI '05), pp. 1925–1928, 2005.
[79]
S. P. Carmien and G. Fischer, “Design, adoption, and assessment of a socio-technical environment supporting independence for persons with cognitive disabilities,” in Proceedings of the 26th Annual CHI Conference on Human Factors in Computing Systems (CHI '08), pp. 597–606, April 2008.
[80]
R. Hull, B. Clayton, and T. Melamed, “Rapid authoring of mediascapes,” Tech. Rep. HPL-2004-154, 2004.
[81]
J. Floch, “A framework for user-tailored city exploration,” in End-User Development, vol. 6654 of Lecture Notes in Computer Science, pp. 239–244, Springer, Berlin, Germany, 2011.
[82]
P. Baudisch, X. Xie, C. Wang, and W. Y. Ma, “Collapse-to-zoom: viewing web pages on small screen devices by interactively removing irrelevant content,” in Proceedings of the Annual ACM Symposium on User Interface Software and Technology (UIST '04), pp. 91–94, October 2004.
[83]
G. Ghiani, F. Paternò, and C. Santoro, “On-demand cross-device interface components migration,” in Proceedings of the 12th International Conference on Human-Computer Interaction with Mobile Devices and Services (Mobile HCI '10), pp. 299–307, September 2010.
[84]
U. Tuomela, I. Kansala, J. Hakkila, and J. Mantyjarvi, “Context-Studio? Tool for personalizing context-aware applications in mobile terminals,” in Proceedings of the Australasian Computer Human Interaction Conference (OzCHI '03), p. 292, Nokia Research Center, 2003.
[85]
J. Danado, M. Davies, P. Ricca, and A. Fensel, “An authoring tool for user generated mobile services,” in Proceedings of the 3rd Future Internet Conference on Future Internet (FIS '10), A. Berre, A. Gomez-Pérez, K. Tutschku, and D. Fensel, Eds., pp. 118–127, Springer.
[86]
J. Seifert, B. Pfleging, E. Bahamóndez, M. Hermes, E. Rukzio, and A. Schmidt, “Mobidev: a tool for creating apps on mobile phones,” in Proceedings of the 13th International Conference on Human Computer Interaction with Mobile Devices and Services (MobileHCI '11), pp. 109–112, ACM, 2011.
[87]
J. Danado and F. Paternò, “A prototype for EUD in touch-based mobile devices,” in Proceedings of the IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC '12), pp. 83–86, 2012.
[88]
J. Danado and F. Paternò, “Puzzle: a visual-based environment for end user development in touch-based mobile phones,” in Human-Centered Software Engineering, vol. 7623 of Lecture Notes in Computer Science, pp. 199–216, 2012.
[89]
S. Cuccurullo, R. Francese, M. Risi, and G. Tortora, “MicroApps development on mobile phones,” in End-User Development, M. Costabile, Y. Dittrich, G. Fischer, and A. Piccinno, Eds., vol. 6654 of Lecture Notes in Computer Science, pp. 289–294, Springer, Berlin, Germany, 2011.
[90]
A. De Lucia, R. Francese, M. Risi, and G. Tortora, “Generating applications directly on the mobile device: an empirical evaluation,” in Proceedings of the International Working Conference on Advanced Visual Interfaces (AVI '12), pp. 640–647, 2012.
[91]
D. Dearman and J. Pierce, “It's on my other computer, computing with multiple devices,” in Proceedings of the SIGCHI Conference on Human Factors in Computing Systems (CHI '08), pp. 767–776, ACM Press, Florence, Italy, 2008.
[92]
Google Research Report, “The new multi-screen world: understanding cross-platform consumer behavior,” 2012, http://services.google.com/fh/files/misc/multiscreenworld_final.pdf.
[93]
J. Lin and J. A. Landay, “Employing patterns and layers for early-stage design and prototyping of cross-device user interfaces,” in Proceedings of the 26th Annual CHI Conference on Human Factors in Computing Systems (CHI '08), pp. 1313–1322, April 2008.
[94]
J. Borchers, A Pattern Approach to Interaction Design, Wiley, Chichester, UK, 2001.
[95]
F. Paternò, C. Santoro, and L. D. Spano, “Engineering the authoring of usable service front ends,” Journal of Systems and Software, vol. 84, no. 10, pp. 1806–1822, 2011.
[96]
Tasker, http://tasker.dinglisch.net/.
[97]
Locale, http://www.twofortyfouram.com/.
[98]
V. Realinho, T. Rom?o, and A. E. Dias, “An event-driven workflow framework to develop context-aware mobile applications,” in Proceedings of the 11th International Conference on Mobile and Ubiquitous Multimedia (MUM '12), article 12, ACM Press, 2012.
[99]
B. Athreya, F. Bahmani, A. Diede, and C. Scaffidi, “End-user programmers on the loose: a study of programming on the phone for the phone,” in Proceedings of the IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC '12), pp. 75–82, 2012.
[100]
S. Holloway and C. Julien, “The case for end-user programming of ubiquitous computing environments,” in Proceedings of the FSE/SDP Workshop on the Future of Software Engineering Research (FoSER '10), pp. 167–171, November 2010.
[101]
M. Beaudouin-Lafon, “Instrumental interaction: an interaction model for designing post-WIMP user interfaces,” in Proceedings of the Conference on Human Factors in Computing Systems “The Future is Here” (CHI '00), pp. 446–453, April 2000.
[102]
R. J. K. Jacob, O. Shaer, A. Girouard et al., “Reality-Based interaction: a framework for post-WIMP interfaces,” in Proceedings of the 26th Annual CHI Conference on Human Factors in Computing Systems (CHI '08), pp. 201–210, April 2008.
[103]
S. Berti, F. Paternò, and C. Santoro, “Natural development of nomadic iterfaces based on conceptual descriptions,” in End-User Development, pp. 143–160, Springer, 2006.
[104]
M. Nebeling, S. Leone, and M. C. Norrie, “Crowdsourced web engineering and design,” in Web Engineering, vol. 7387, 2012, pp. 31–45, Springer, Berlin, Germany.
[105]
O. Shaer, N. Leland, E. Calvillo-Gamez, and R. Jacob, “The TAC paradigm: specifying tangible user interfaces,” Personal and Ubiquitous Computing, vol. 8, no. 5, pp. 359–369, 2004.
[106]
M. Resnick, “Behavior constrction kits,” Communications of the ACM, vol. 36, no. 7, pp. 64–71, 1993.