Results 1 - 10
of
27
Aligning development tools with the way programmers think about code changes
- In CHI ’07: Proceedings of the SIGCHI Conference on Human Factors in Computing Systems. ACM
, 2007
"... Software developers must modify their programs to keep up with changing requirements and designs. Often, a conceptually simple change can require numerous edits that are similar but not identical, leading to errors and omissions. Researchers have designed programming environments to address this pro ..."
Abstract
-
Cited by 9 (0 self)
- Add to MetaCart
Software developers must modify their programs to keep up with changing requirements and designs. Often, a conceptually simple change can require numerous edits that are similar but not identical, leading to errors and omissions. Researchers have designed programming environments to address this problem, but most of these systems are counter-intuitive and difficult to use. By applying a task-centered design process, we developed a visual tool that allows programmers to make complex code transformations in an intuitive manner. This approach uses a representation that aligns well with programmers ’ mental models of programming structures. The visual language combines textual and graphical elements and is expressive enough to support a broad range of code-changing tasks. To simplify learning the system, its user interface scaffolds construction and execution of transformations. An evaluation with Java programmers suggests that the interface is intuitive, easy to learn, and effective on a representative editing task. Author Keywords Transformations, visual languages, cognitive dimensions.
The programming language as a musical instrument
- In Proceedings of PPIG05 (Psychology of Programming Interest Group
, 2005
"... Abstract. This paper considers how to achieve new creative advances in the design of programming languages. It is based on the analysis of a single application domain, the practice of Live Coding in a new area of musical performance known as “Laptop ” music. Analysis of live coding as a context for ..."
Abstract
-
Cited by 6 (4 self)
- Add to MetaCart
Abstract. This paper considers how to achieve new creative advances in the design of programming languages. It is based on the analysis of a single application domain, the practice of Live Coding in a new area of musical performance known as “Laptop ” music. Analysis of live coding as a context for programming allows us to escape the implicit assumptions of the commercial office environment in which so much end-user programming has been studied. The programming environments of the future, with increasing deployment of ubiquitous computing technologies, will be unlike offices in many ways. We can prepare for this future by studying extreme varieties of programming today. Live coding is thus an ideal research opportunity for psychology of programming 1
Champagne prototyping: A Research technique for early evaluation of complex end-user programming systems
- in Proceedgings of VLHCC 2004
, 2004
"... Although a variety of evaluation techniques are available to researchers of visual and end-user programming systems, they are primarily suited to evaluation of research systems. It is important to have evaluation techniques suitable for real-world programming environments, in order to satisfy realwo ..."
Abstract
-
Cited by 4 (0 self)
- Add to MetaCart
Although a variety of evaluation techniques are available to researchers of visual and end-user programming systems, they are primarily suited to evaluation of research systems. It is important to have evaluation techniques suitable for real-world programming environments, in order to satisfy realworld product managers of the usefulness of proposed new features. To help fill this gap, we present a new evaluation technique, based in part on Cognitive Dimensions and Attention Investment, called “Champagne Prototyping”. The technique is an earlyevaluation technique that is inexpensive to do, yet features the credibility that comes from being based on the real commercial environment of interest, and from working with real users of the environment. 1.
Search. Encyclopedia of Artificial Intelligence
, 1991
"... In developmental biology ontologies are used amongst other things to describe the anatomy of different species in meaningful ways. These ontologies developed inde-pendently for different species. An interesting task is now to establish homology links across these different species to use the knowled ..."
Abstract
-
Cited by 3 (0 self)
- Add to MetaCart
In developmental biology ontologies are used amongst other things to describe the anatomy of different species in meaningful ways. These ontologies developed inde-pendently for different species. An interesting task is now to establish homology links across these different species to use the knowledge of one organism for other ones. In this MSc project I developed and implemented an application that displays two on-tologies simultaneously and enables biologists to make homology links across species. Two different visualisation techniques have been developed and implemented to eval-uate how different perspectives of the ontology can help in exploring ontologies and support the biologist in making homology links. An evaluation has shown the potential of the different visualisations of the applica-tion and the functionality in achieving its supposed purpose. i Acknowledgements First of all I want to thank my supervisor Stuart Aitken and my co-superviser Bonnie
Class libraries: A challenge for programming usability research
- In Proceedings of PPIG 2002
, 2002
"... In previous collaboration with the Visual Studio usability team at Microsoft, we have learned that the Microsoft Foundation Classes are considered central to the usability of their products. There is little research in psychology of programming that is directly relevant to the design and evaluation ..."
Abstract
-
Cited by 3 (2 self)
- Add to MetaCart
In previous collaboration with the Visual Studio usability team at Microsoft, we have learned that the Microsoft Foundation Classes are considered central to the usability of their products. There is little research in psychology of programming that is directly relevant to the design and evaluation of class libraries, despite the fact that they clearly occupy a central place among the cognitive challenges faced by professional programmers. Research into software reuse has considered some of the human factors in deploying class libraries. But the MFC library, despite being (probably) the most widely reused code in the world at present, has rather different problems from those addressed in reuse research. In this paper we analyse the nature of those problems, identify promising research avenues, and propose a challenge for future research in evaluating and improving the usability of class libraries.
Dimension driven re-design - applying systematic dimensional analysis
- Brunel University
, 2002
"... This paper describes work focused upon the formal analysis of the evaluative framework offered by cognitive dimensions. The paper introduces a tool for assisting with this analysis (CiDa). Findings from using the tool to analyse a series of example systems are described and discussed in relation to ..."
Abstract
-
Cited by 3 (2 self)
- Add to MetaCart
This paper describes work focused upon the formal analysis of the evaluative framework offered by cognitive dimensions. The paper introduces a tool for assisting with this analysis (CiDa). Findings from using the tool to analyse a series of example systems are described and discussed in relation to proposed cognitive dimension inter-dependencies. Exploiting Cognitive Dimensions Cognitive dimensions have received considerable attention within the human-computer interaction and the psychology of programming. The concepts on which the dimensions are based have received broad interest within a variety of domains where the uptake and complexity of notations and artefacts has been seen as a bottleneck in their effective exploitation, see Blackwell and Bilotta (2000),
Formalising an understanding of user–system misfits
, 2005
"... Many of the difficulties users experience when working with interactive systems arise from misfits between the user’s conceptualisation of the domain and device with which they are working and the conceptualisation implemented within those systems. We report an analytical technique called CASSM (Con ..."
Abstract
-
Cited by 3 (2 self)
- Add to MetaCart
Many of the difficulties users experience when working with interactive systems arise from misfits between the user’s conceptualisation of the domain and device with which they are working and the conceptualisation implemented within those systems. We report an analytical technique called CASSM (Concept-based Analysis for Surface and Structural Misfits) in which such misfits can be formally represented to assist in understanding, describing and reasoning about them. CASSM draws on the framework of Cognitive Dimensions (CDs) in which many types of misfit were classified and presented descriptively, with illustrative examples. CASSM allows precise definitions of many of the CDs, expressed in terms of entities, attributes, actions and relationships. These definitions have been implemented in Cassata, a tool for automated analysis of misfits, which we introduce and describe in some detail.
Usability Assessment of a UML-based Formal Modelling Method (submitted
, 2007
"... Abstract. Conceptual models communicate the important aspects of a problem domain to stakeholders. The models therefore should be accessible to users who need to interpret them. On the other hand, the quality of the produced models is highly dependent on the usability of the modelling method used. T ..."
Abstract
-
Cited by 2 (1 self)
- Add to MetaCart
Abstract. Conceptual models communicate the important aspects of a problem domain to stakeholders. The models therefore should be accessible to users who need to interpret them. On the other hand, the quality of the produced models is highly dependent on the usability of the modelling method used. This paper presents a series of usability assessments conducted on a method that integrates the use of a semi-formal notation, namely the Unified Modelling Language (UML) and a formal notation, namely B. The assessments included a controlled experiment that evaluated the comprehensibility of the produced model and a survey that assessed the modelling process. The results suggest that the method is able to produce a comprehensible model. The method is accessible to users when the principles and roles of each notation are obvious and well understood, and when there is strong support from the environment. 1
Evaluating Design: A Formative Evaluation of Agent Development Environments Used For Teaching Rule-Based Programming
"... We present two development environments designed to make it easier for students to create intelligent agents by taking advantage of established software engineering principles. This paper reports the results of a formative evaluation of the Herbal and the Vacuum Cleaner Environments. Findings from t ..."
Abstract
-
Cited by 2 (2 self)
- Add to MetaCart
We present two development environments designed to make it easier for students to create intelligent agents by taking advantage of established software engineering principles. This paper reports the results of a formative evaluation of the Herbal and the Vacuum Cleaner Environments. Findings from the study suggest design changes geared towards making these environments more useful for teaching rule-based programming and agent development.

