Catálogo de publicaciones - libros

Compartir en
redes sociales


End User Development

Henry Lieberman ; Fabio Paternò ; Volker Wulf (eds.)

Resumen/Descripción – provisto por la editorial

No disponible.

Palabras clave – provistas por la editorial

User Interfaces and Human Computer Interaction

Disponibilidad
Institución detectada Año de publicación Navegá Descargá Solicitá
No detectada 2006 SpringerLink

Información

Tipo de recurso:

libros

ISBN impreso

978-1-4020-4220-1

ISBN electrónico

978-1-4020-5386-3

Editor responsable

Springer Nature

País de edición

Reino Unido

Fecha de publicación

Información sobre derechos de publicación

© Springer 2006

Tabla de contenidos

Challenges for End-User Development in Intelligent Environments

Boris De Ruyter; Richard Van De Sluis

Intelligent environments will be able to observe and sense the events that are happening around them. For these environments to become intelligent, however, they need to learn what appropriate and sensible behavior is in a given situation. The main challenge of ambient intelligent environments is not to integrate technology in the environment, but to integrate the system behavior into the fabric of everyday life. This means that an intelligent environment needs to be taught by its users how it should conduct and what position it should take. This paper will discuss two examples of end-user development in intelligent environments as a way to indicate the research challenges in this area.

Key words. (end-user development), ambient intelligence, home experience, content awareness.

Pp. 243-250

Fuzzy Rewriting

Yasunori Harada; Richard Potter

Rewriting systems are popular in end-user programming because complex behavior can be described with few or no abstractions or variables. However, rewriting systems have been limited to manipulating non-rotatable objects on a grid, such as in Agentsheets or Stagecast Creator. Systems that allow free-form movement of objects must use other techniques, such as the sequential programming by demonstration in Squeak. Viscuit is a new rewriting system that introduces fuzzy rewriting, which allows freely positioned and rotated objects to interact using only rewriting rules. The result is a system that allows users to specify animations in a highly interactive way, without textual language or menu selections.

Key words. animation, rewriting system, visual programming language

Pp. 251-267

Breaking It Up: An Industrial Case Study of Component-Based Tailorable Software Design

Gunnar Stevens; Gunter Quaisser; Markus Klann

Tailorability should enable users to fit computer systems to the application context. So tailoring options should be meaningful for end-users in their respective domains. This paper discusses how these design criteria can be realized within the technical framework of component-based tailorability. Component-based tailorability assumes that technical flexibility can be realized by allowing end-users to recompose components at runtime. To enable end-users to recompose components at runtime, the system has already appropriately broken down into modules at design time. Such a modularization of the software needs to meet two requirements: on the one hand it must provide sufficient flexibility with respect to the application context and on the other hand it must be understandable by the end-users. In an industrial case study we demonstrate how such a modularization can be established by applying ethnographic methods and choosing an appropriate design metaphor. The ethnographic study helps to capture tailoring needs of the application context. The design metaphor helps to break down software into components which are understandable by end-users. Subsequently, systematic interventions following an action research approach help to validate the design decisions.

Key words. component based software engineering, anticipation of change, tailorability, case study, ethnography

Pp. 269-294

End-User Development as Adaptive Maintenance

Yvonne Dittrich; Olle Lindeberg; Lars Lundberg

The change of change applications to suit the needs of users in different places and facilitate development over time has long been a major challenge for software maintenance experts. In this chapter we take up tailoring as a means of making software flexible. Starting with two case studies— one taking up tailoring for different users and the other addressing changes over time—the article discusses problems related to both the use and development of a tailorable application. Developing tailorable software presents newchallenges: howdo you create a user-friendly tailoring interface? How do you decide what should be tailorable, and how do you create a software architecture that permits this? How do you ensure that the tailorable system gives acceptable performance? Our experience shows that the borders between maintenance and use become blurred since tailorability can replace maintenance by professional software engineers by tailoring by advanced users. Using our experience of the two selected cases, we identify and discuss five important issues to consider when designing and implementing tailorable systems in industrial settings.

Pp. 295-313

Supporting Collaborative Tailoring

Volkmar Pipek; Helge Kahler

In this chapter we depict collaborative aspects of tailoring software. We provide a categorization distinguishing between (at first) three levels of intensity of user ties regarding tools usage (“shared use,” “shared context,” and “shared tool”) and discuss approaches to support collaborative tailoring in these scenarios. For the two levels with the most intense ties (“Shared Context” and “Shared Tool”) we provide the relevant theoretical background as well as empirical evidence from our own fieldwork. Our taxonomy helps us to describe and address two important shortcomings of current tailoring environments. First, current considerations regarding tailorability usually address tailoring within one tool, while current work infrastructures (which we introduce as a forth scenario—“Shared Infrastructure”—in our taxonomy) require a thinking beyond one tool. Second, although studies on tailoring-in-practice and evolving use of organizational software show the importance of user-userinteraction in processes of technology configuration, this interaction was only treated as a side issue in the design of tailoring environments. Respecting the importance of that interaction, we suggest to stronger focus on opportunities to support those appropriation activities of users.

Pp. 315-345

EUD as Integration of Components Off-The-Shelf: The Role of Software Professionals Knowledge Artifacts

Stefania Bandini; Carla Simone

An empirical case study highlights that software professionals develop and use specialized knowledge artifacts to improve the effectiveness of product design based on components-off-the-shelf integration. Computational counterparts of these artifacts improve the cooperative problem solving required by the design of applications fulfilling complex user requirements. Integration is likely to become a typical approach in EUD too, and tools supporting it are required. This chapter describes the outcomes of the case study. Lessons learned are discussed with regard to EUD, when it is interpreted as a creative discovery of components to be integrated.

Key words. Knowledge Artifact, Software Integration, Design as Discovery

Pp. 347-369

Organizational View of End-User Development

Nikolay Mehandjiev; Alistair Sutcliffe; Darren Lee

Assuming end-user development (EUD) is here to stay, we must begin to consider the economic, organizational and societal factors which would impact its adoption and use. Such studies have so far focused on the wider issues of IT adoption and users controlling information processing power (end-user computing), whilst EUD research has focused on the cognitive and technology aspects of programming by non-specialists. In this chapter we describe the start of a research programme addressing this gap. We present our findings from a pilot survey of researchers, practitioners and end-users conducted over several months in Spring/Summer 2003. The survey analysed two group discussions and 38 questionnaire returns to elicit organisational perceptions and views on End User Development, and to help formulate further research directions in the area, including an outline strategy for managing the integration of EUD.

Key words. organizational factors, EUD acceptance, survey of EUD perceptions

Pp. 371-399

A Semiotic Framing for End-User Development

Clarisse Sieckenius De Souza; Simone Diniz Junqueira Barbosa

One approach to designing usable and enjoyable computer applications is to say that designers need better methods and tools to understand users and their contexts, and to encode this understanding into closed computer systems. Another is to acknowledge that there will always be unattended user needs, and that the way to increase users’ satisfaction is to help them modify systems in order to meet constantly changing requirements. Different techniques are proposed in one approach usually without reference to the other. We present an overarching perspective of human–computer interactionwhere both meet, and provide a semiotic characterization of designers’ and users’ activities that clarifies the tradeoffs involved in designing and choosing techniques in either approach. Central to this characterization is the role of intentions in what users mean to say and do when using computers. Our characterization is in line with a broader concept of usability, in which systems must support users’ improvisation and creativity.

Pp. 401-426

Meta-design: A Framework for the Future of End-User Development

Gerhard Fischer; Elisa Giaccardi

In a world that is not predictable, improvisation, evolution, and innovation are more than a luxury: they are a necessity. The challenge of design is not a matter of getting rid of the emergent, but rather of including it and making it an opportunity for more creative and more adequate solutions to problems.

Meta-design is an emerging conceptual framework aimed at defining and creating social and technical infrastructures in which new forms of collaborative design can take place. It extends the traditional notion of system design beyond the original development of a system to include a coadaptive process between users and a system, inwhich the users become co-developers or co-designers. It is grounded in the basic assumption that future uses and problems cannot be completely anticipated at design time, when a system is developed. Users, at use time, will discover mismatches between their needs and the support that an existing system can provide for them. These mismatches will lead to breakdowns that serve as potential sources of new insights, new knowledge, and new understanding. This chapter is structured in four parts: conceptual framework, environments, applications, and findings and challenges. Along the structure of the chapter, we discuss and explore the following essential components of meta-design, providing requirements, guidelines, and models for the future of end-user development: (1) the relationship of meta-design to other design methodologies; (2) the , a process model for large evolving design artifacts; (3) the characteristics of , their strengths and their weaknesses, and the necessity for owners of problems to be empowered to engage in end-user development; (4) the possibilities created by meta-design to bring alive; and (5) the need for an integrated design space that brings together a that is evolvable, for the design of that allow end-users to become active contributors, and for the design of in which users can relate, find motivations and rewards, and accumulate social capital.

Key words. co-creation, design for change, design space, design time, domain-oriented design environments, Envisionment and Discovery Collaboratory, interactive art, open systems, SER model, social capital, underdesign, unself-conscious cultures of design, use time, value-feelings.

Pp. 427-457

Feasibility Studies for Programming in Natural Language

Henry Lieberman; Hugo Liu

We think it is time to take another look at an old dream—that one could program a computer by speaking to it in natural language. Programming in natural language might seem impossible, because it would appear to require complete natural language understanding and dealing with the vagueness of human descriptions of programs. Butwe think that several developments might nowmake programming in natural language feasible. First, improved broad coverage natural language parsers and semantic extraction techniques permit partial understanding. Second, mixed-initiative dialogues can be used for meaning disambiguation. And finally, where direct understanding techniques fail, we hope to fall back on Programming by Example, and other techniques for specifying the program in a more fail-soft manner. To assess the feasibility of this project, as a first step, we are studying how non-programming users describe programs in unconstrained natural language.We are exploring how to design dialogs that help the user make precise their intentions for the program, while constraining them as little as possible.

Key words. natural language programming, natural language processing, parsing, part-of-speech tagging, computer science education, programming languages, scripting languages, computer games.

Pp. 459-473