TL;DR: The approach leverages development practices of current HCI with methods and concepts to support a shift toward using broad and explicit design rationale to reify where in a design process, why the authors are there, and to guide reasoning about where they might go from there.
Abstract: We are developing an “action science” approach to human-computer interaction (HCI), seeking to better integrate activities directed at understanding with those directed at design. The approach leverages development practices of current HCI with methods and concepts to support a shift toward using broad and explicit design rationale to reify where we are in a design process, why we are there, and to guide reasoning about where we might go from there. We represent a designed artifact as the set of user scenarios supported by that artifact and more finely by causal schemas detailing the underlying psychological rationale. These schemas, called claims, unpack wherefores and whys of the scenarios. In this paper, we stand back from several empirical projects to clarify our commitments and practices.
TL;DR: Human-computer interaction study has progressively integrated its scientific concerns with the engineering goal of improving the usability of computer systems and applications, which has resulted in a body of technical knowledge and methodology.
Abstract: Human?computer interaction (HCI) is the area of intersection between psychology and the social sciences, on the one hand, and computer science and technology, on the other. HCI researchers analyse and design-specific user-interface technologies (e.g. three-dimensional pointing devices, interactive video). They study and improve the processes of technology development (e.g. usability evaluation, design rationale). They develop and evaluate new applications of technology (e.g. computer conferencing, software design environments). Through the past two decades, HCI has progressively integrated its scientific concerns with the engineering goal of improving theusabilityof computer systems and applications, thus establishing a body of technical knowledge and methodology. HCI continues to provide a challenging test domain for applying and developing psychology and social science in the context of technology development and use.
TL;DR: The design of computer systems capable of understanding and effectively meeting human needs is of great importance to our economy and well-being as mentioned in this paper, and it is generally agreed by those who have studied design that we can greatly improve the ultimate systems by improving the way we go about designing them.
Abstract: From the Publisher:
The design of computer systems capable of understanding and effectively meeting human needs is of great importance to our economy and well-being. It is generally agreed by those who have studied design that we can greatly improve the ultimate systems by improving the way we go about designing them. Researchers and practitioners in a variety of fields have been involved in this effort. The concept of design rationale, the why of designing, has emerged as a key to making design processes more intelligible and easier to deal with. Design rationale refers broadly to issues in the methods, documentation, and communication of design thinking. This book offers the most comprehensive account to date on research into design rationale. The authors report on leading-edge theory and empirical studies of the nature and use of design rationale. They also describe the significance of design rationale for creating design tools and for teaching designers. Finally, they discuss the nature of system design and the use of design rationale in real design settings in industry.
TL;DR: In this article, the authors identify seven technical and business issues and their implications, including cost-effective use and smooth integration, and describe their implications in design rationale systems, such as this article.
Abstract: Most current design rationale systems fail to consider practical concerns, such as cost-effective use and smooth integration. The author identifies seven technical and business issues and describes their implications.
TL;DR: Several possible future directions for collaboration in software engineering are presented, including tight integration between web and desktop development environments, broader participation by customers and end users in the entire development process, capturing argumentation surrounding design rationale, and use of massively multiplayer online (MMO) game technology as a collaboration medium.
Abstract: Software engineering projects are inherently cooperative, requiring many software engineers to coordinate their efforts to produce a large software system. Integral to this effort is developing shared understanding surrounding multiple artifacts, each artifact embodying its own model, over the entire development process. This focus on model- oriented collaboration embedded within a larger process is what distinguishes collaboration research in software engineering from broader collaboration research, which tends to address artifact-neutral coordination technologies and toolkits. This article first presents a list of goals for software engineering collaboration, then surveys existing collaboration support tools in software engineering. The survey covers both tools that focus on a single artifact or stage in the development process (requirements support tools, UML collaboration tools), and tools that support the representation and execution of an entire software process. Important collaboration standards are also described. Several possible future directions for collaboration in software engineering are presented, including tight integration between web and desktop development environments, broader participation by customers and end users in the entire development process, capturing argumentation surrounding design rationale, and use of massively multiplayer online (MMO) game technology as a collaboration medium. The article concludes by noting a problem in performing research on collaborative systems, that of assessing how well certain artifacts, models, and embedded processes work, and whether they are better than other approaches.