Work practices and organizational processes vary widely and evolve constantly. The technological infrastructure has to follow, allowing or even supporting these changes. Traditional approaches to software engineering reach their limits whenever the full spectrum of user requirements cannot be anticipated or the frequency of changes makes software reengineering cycles too clumsy to address all the needs of a specific field of application. Moreover, the increasing importance of ‘infrastructural’ aspects, particularly the mutual dependencies between technologies, usages, and domain competencies, calls for a differentiation of roles beyond the classical user–designer dichotomy. End user development (EUD) addresses these issues by offering lightweight, use-time support which allows users to configure, adapt, and evolve their software by themselves. EUD is understood as a set of methods, techniques, and tools that allow users of software systems who are acting as non-professional software developers to 1 create, modify, or extend a software artifact. While programming activities by non-professional actors are an essential focus, EUD also investigates related activities such as collective understanding and sense-making of use problems and solutions, the interaction among end users with regard to the introduction and diffusion of new configurations, or delegation patterns that may also partly involve professional designers.
You don't need to be convinced. You know that usability is key to the success of any interactive system-from commercial software to B2B Web sites to handheld devices. But you need skills to make usability part of your product development equation. How will you assess your users' needs and preferences? How will you design effective solutions that are grounded in users' current practices? How will you evaluate and refine these designs to ensure a quality product? Usability Engineering: Scenario-Based Development of Human-Computer Interaction is a radical departure from traditional books that emphasize theory and address experts. This book focuses on the realities of product development, showing how user interaction scenarios can make usability practices an integral part of interactive system development. As you'll learn, usability engineering is not the application of inflexible rules; it's a process of analysis, prototyping, and problem solving in which you evaluate tradeoffs, make reasoned decisions, and maximize the overall value of your product.Written by prominent HCI educators who understand how to teach usability practices to students and professional developers.Interleaves HCI theory and concepts with a running case study demonstrating their application. Gradually elaborates the case study to introduce increasingly sophisticated usability engineering techniques.Analyzes usability issues in realistic scenarios that describe existing or envisioned systems from the perspective of one or more users.Emphasizes the real world of usability engineering-a world in which tradeoffs must be weighed and difficult decisions made to achieve desired results.