End User Development: Approaches Towards a Flexible Software Design

Acknowledging the competition in today’s global markets demands enterprises to be resilient in order to survive. Therefore product life cycles shorten and new customer segments have to be addressed permanently. Obviously, such environments require flexible information systems, which can be adapted quickly to the enterprises’ changing needs, without spending vast amounts of resources. Using End User Development (EUD) approaches can help to solve this dilemma by enabling software developers to create information systems that can even be adapted by technically inexperienced end users. This reduces time and costs needed for adaptations and increases their quality by avoiding potential misunderstandings between business users and IT experts. This paper presents a broad overview of existing EUD approaches. Based on this, it provides recommendations, how EUD design principles can be used conjointly, to develop embedded design environments for end users. We describe and classify EUD approaches taken from the literature, which are suitable approaches for different groups of end users. Implementing the right mixture of EUD approaches leads to embedded design environments, having a gentle slope of complexity. Such environments enable differently skilled end users to perform system adaptations on their own.

[1]  Eser Kandogan,et al.  Koala: capture, share, automate, personalize business processes on the web , 2007, CHI.

[2]  Volker Wulf,et al.  Component-Based Approaches to Tailorable Systems , 2006, End User Development.

[3]  Daniela Fogli,et al.  End-User Development: The Software Shaping Workshop Approach , 2006, End User Development.

[4]  Volker Wulf,et al.  How to make software softer—designing tailorable applications , 1997, DIS '97.

[5]  Frank M. Shipman,et al.  Seeding, evolutionary growth and reseeding: supporting the incremental development of design environments , 1994, CHI '94.

[6]  Volker Wulf,et al.  Towards an integrated organization and technology development , 1995, Symposium on Designing Interactive Systems.

[7]  Thomas P. Moran,et al.  User-tailorable systems: pressing the issues with buttons , 1990, CHI '90.

[8]  Alexander Repenning,et al.  What Makes End-User Development Tick? 13 Design Guidelines , 2006, End User Development.

[9]  Carol V. Brown,et al.  The management of end-user computing: status and directions , 1993, CSUR.

[10]  Austin Henderson,et al.  There's No Place Like Home: Continuing Design in Use , 1992, Design at Work.

[11]  Volker Wulf,et al.  Exploration environments: supporting users to learn groupware functions , 2000, Interact. Comput..

[12]  Frank M. Shipman,et al.  Seeding, evolutionary growth and reseeding: supporting the incremental development of design environments , 1994, CHI Conference Companion.

[13]  Bonnie A. Nardi,et al.  A Small Matter of Programming: Perspectives on End User Computing , 1993 .

[14]  Wendy E. Mackay,et al.  Patterns of sharing customizable software , 1990, CSCW '90.

[15]  Gregg Rothermel,et al.  End-user software engineering , 2004, Commun. ACM.

[16]  Larry Tesler,et al.  Novice Programming Comes of Age , 2001, Your Wish is My Command.

[17]  Matthias Jarke,et al.  The economics of end-user development , 2004, Commun. ACM.

[18]  Henry Lieberman,et al.  Watch what I do: programming by demonstration , 1993 .

[19]  Bonnie A. Nardi,et al.  An ethnographic study of distributed problem solving in spreadsheet development , 1990, CSCW '90.

[20]  Volkmar Pipek,et al.  From tailoring to appropriation support: Negotiating groupware usage , 2005 .

[21]  Simone Diniz Junqueira Barbosa,et al.  A Semiotic Framing for End-User Development , 2006, End User Development.

[22]  Brad A. Myers,et al.  Natural programming languages and environments , 2004, Commun. ACM.

[23]  Henry Lieberman,et al.  A goal-oriented web browser , 2006, CHI.

[24]  Bonnie A. Nardi,et al.  Gardeners and gurus: patterns of cooperation among CAD users , 1992, CHI.

[25]  Frederick P. Brooks,et al.  No Silver Bullet: Essence and Accidents of Software Engineering , 1987 .