1,773 research outputs found
Empirical Studies in End-User Software Engineering and Viewing Scientific Programmers as End-Users -- POSITION STATEMENT --
My work has two relationships with End User Software Engineering. First, as an Empirical Software Engineer, I am interested in meeting with people who do research into techniques for improving end-user software engineering. All of these techniques need to have some type of empirical validation. In many cases this validation is performed by the researcher, but in other cases it is not. Regardless, an independent validation of a new approach is vital. Second, an area where I have done a fair amount of work is in software engineering for scientific software (typically written for a parallel supercomputer). These programmers are typically scientists who have little or no training in formal software engineering. Yet, to accomplish their work, they often write very complex simulation and computation software. I believe these programmers are a unique class of End-Users that must be addresse
Recommended from our members
End user software engineering features for both genders
Previous research has revealed gender differences that impact femalesâ willingness to adopt software features in end usersâ programming environments. Since these features have separately been shown to help end users problem solve, it is important to female end usersâ productivity that we find ways to make these features more acceptable to females. This thesis draws from our ongoing work with users to help inform our design of theory-based methods for encouraging effective feature usage by both genders. This design effort is the first to begin addressing the gender differences in the ways that people go about problem solving in end-user programming situations.Keywords: End user, Software engineering, Gender, Hc
Recommended from our members
Garbage in, garbage out? An empirical look at oracle mistakes by end-user programmers
End-user programmers, because they are human, make mistakes. However, past research has not considered how visual end-user debugging devices could be designed to ameliorate the effects of mistakes. This paper empirically examines oracle mistakes mistakes users make about which values are right and which are wrong to reveal differences in how different types of oracle mistakes impact the quality of visual feedback about bugs. We then consider the implications of these empirical results for designers of end-user software engineering environments.Keywords: end user software engineering, Fault localization, Oracle mistake
Recommended from our members
Scratch Explorer : a tool for assisting end-user program comprehension of animation scripts
Visual programming languages (VPLs) have been widely used to support end-user programming. However, end users are still not able to reuse code as actively as professional programmers, even when given abundant resources such as a large VPL program repository. One reason may be that current VPL development environments lack features supporting efficient code exploration and program comprehension, thus cannot alleviate the hard mental operations during code reuse. To investigate into the problem of end-user program comprehension, this thesis focuses on an animation scripting language Scratch and presents tool features for assisting novice end users' understanding of animation scripts. For evaluating these features, we built Scratch Explorer, a code exploration environment containing visualized program information. Our empirical study has shown that Scratch Explorer has significantly helped novice Scratch users to answer code comprehension questions: less time and effort are required for them to find the target information. More specifically, Scratch Explorer users' understanding of control flow and data flow has exceeded those using the traditional tool, implying that Scratch Explorer may help novice users successfully build a mental model of the program. These empirical results demonstrate that effective program visualization has significant advantages over conventional visual program displaying techniques in assisting end-user program comprehension, and can be embedded as features into end-user animation environments
Empirical studies in end-user computer-generated music composition systems
Computer music researchers dream of the perfect algorithm, in which the music generated is indistinguishable from, or even superior to, that composed by the worldâs most talented composers. However, the fulïŹlment of this aim remains ambitious. This thesis pursues a different direction, proposing instead that computer-generated music techniques can be used as tools to support human composers, acting as a catalyst for human creativity, rather than a replacement.Computer-generated music remains a challenge. Techniques and systems are abundant, yet there has been little exploration of how these might be useful for end-users looking to compose with generative and algorithmic music techniques. User interfaces for computer-generated music systems are often inaccessible to non-programmers as they frequently neglect established composition workflow and design paradigms that are familiar to composers in the digital age. For this research, the Interactive Generative Music Environment (IGME) was developed for studying interaction and composition; building on the foundations established in modern music sequencing software, whilst integrating various computer-generated music techniques.Three original studies are presented, based on participatory design principles, and evaluated with a mix-methods approach that involved studying end-users engaged with the IGME software. Two studies were group sessions where 54 participants spent an hour with IGME, in either a controlled (lab) environment or remotely as part of a conference workshop. The third study provided users more time with the software, with interactions studied and analysed with the use of screen recording technologies. In total, over 80 hours of interaction data was captured.It was discovered that users need to understand several threshold concepts before engaging with computer-generated music, and have the necessary skills to debug musical problems within the generative output. The ability to do this requires pre-existing knowledge of music theory. The studies support the conclusion that computer-generated music is used more as a catalyst for composition than as a replacement for it.A range of recommendations and requirements for building computer-generated music systems are presented, and summarise the contributions to knowledge, along with signposts for future work
An empirical investigation of the factors contributing to spreadsheets usage and end-user computing satisfaction
The purpose of this research is to develop and test a model of the relationships
between several external and various mediating variables and the end-users'
satisfaction and usage of spreadsheets.
The present research takes several steps toward establishing a valid motivational
model of the end-users. Two fairly general, well-established theoretical models (i)
'theory of reasoned action' (TRA) of human behaviour from social psychology and
(ii) 'technology acceptance model' (TAM) from management information systems
were chosen as paradigms within which to formulate an extended model Several
adaptations to these paradigms were introduced in order to make them applicable
to the present context building upon and integrating previous research in a
curnulative manner.
This led to a model which was tested by a nine page questionnaire with 129 entries.
Response data was collected from a cross-sectional survey of 333 university
students who have been out for one year training in industry across the UK.
A careful reliability and validity analysis for the measures used in the survey was
conducted. Multiple regression analysis, path analysis, and LISREL modelling
were used as different data analysis techniques. The analysis in part gave good
support for the initial model considered but also indicated some shortcomings in
the two base models
Personalizing the web: A tool for empowering end-users to customize the web through browser-side modification
167 p.Web applications delegate to the browser the final rendering of their pages. Thispermits browser-based transcoding (a.k.a. Web Augmentation) that can be ultimately singularized for eachbrowser installation. This creates an opportunity for Web consumers to customize their Web experiences.This vision requires provisioning adequate tooling that makes Web Augmentation affordable to laymen.We consider this a special class of End-User Development, integrating Web Augmentation paradigms.The dominant paradigm in End-User Development is scripting languages through visual languages.This thesis advocates for a Google Chrome browser extension for Web Augmentation. This is carried outthrough WebMakeup, a visual DSL programming tool for end-users to customize their own websites.WebMakeup removes, moves and adds web nodes from different web pages in order to avoid tabswitching, scrolling, the number of clicks and cutting and pasting. Moreover, Web Augmentationextensions has difficulties in finding web elements after a website updating. As a consequence, browserextensions give up working and users might stop using these extensions. This is why two differentlocators have been implemented with the aim of improving web locator robustness
Jeeves : a blocks-based approach to end-user development of experience sampling apps
Professional programmers are signiïŹcantly outnumbered by end-users of software,
and cannot possibly predict the diverse and dynamic needs of user groups in advance.
This thesis is concerned with the provision of an end-user development (EUD)
approach, allowing end-users to independently create and modify their own software.
EUD activities are particularly applicable to the work practices of psychology researchers
and clinicians, who are increasingly dependent on software for assessment
of participants and patients, but must also depend on developers to realise their
requirements. This thesis targets these professionals, with an EUD solution to
creating assessment software.
The Experience Sampling Method (ESM) is one such means of assessment that
takes place in participantsâ everyday lives. Through regular completion of subjective
self-reports, participants provide rich detail of their ongoing physical and emotional
well-being. However, lack of engagement with such studies remains a prevalent
issue. This thesis investigates features for maximising engagement with experience
sampling smartphone apps.
Such apps are becoming accepted as standard practice for remote assessment, but
researchers are stiïŹed by the complexity and cost of implementation. Moreover,
existing EUD tools are insufïŹcient for development of ESM apps that include
engaging features. This thesis presents the development of Jeeves, an EUD tool with
a blocks-based programming paradigm that empowers non-programmers to rapidly
develop tailored, context-sensitive ESM apps.
The adoption of Jeeves is contingent on a number of factors, including its ease-of-use,
real-world utility, and organisational conditions. Failure to incorporate the necessary
functionality pertaining to these factors into Jeeves will lead to abandonment. This
thesis is concerned with establishing the usability, utility, and external factors
necessary for adoption of Jeeves. Further, Jeeves is evaluated with respect to these
factors through a series of rigorous studies from a range of application domains."This work was supported by a University of St Andrews 600th Anniversary PhD
Scholarship (School of Computer Science)." -- Fundin
User driven modelling: Visualisation and systematic interaction for end-user programming with tree-based structures
This thesis addresses certain problems encountered by teams of engineers when modelling complex structures and processes subject to cost and other resource constraints. The cost of a structure or process may be âread offâ its specifying model, but the language in which the model is expressed (e.g. CAD) and the language in which resources may be modelled (e.g. spreadsheets) are not naturally compatible. This thesis demonstrates that a number of intermediate steps may be introduced which enable both meaningful translation from one conceptual view to another as well as meaningful collaboration between team members. The work adopts a diagrammatic modelling approach as a natural one in an engineering context when seeking to establish a shared understanding of problems.Thus, the research question to be answered in this thesis is: âTo what extent is it possible to improve user-driven software development through interaction with diagrams and without requiring users to learn particular computer languages?â The goal of the research is to improve collaborative software development through interaction with diagrams, thereby minimising the need for end-users to code directly. To achieve this aim a combination of the paradigms of End-User Programming, Process and Product Modelling and Decision Support, and Semantic Web are exploited and a methodology of User Driven Modelling and Programming (UDM/P) is developed, implemented, and tested as a means of demonstrating the efficacy of diagrammatic modelling.In greater detail, the research seeks to show that diagrammatic modelling eases problems of maintenance, extensibility, ease of use, and sharing of information. The methodology presented here to achieve this involves a three step translation from a visualised ontology, through a modelling tool, to output to interactive visualisations. An analysis of users groups them into categories of system creator, model builder, and model user. This categorisation corresponds well with the three-step translation process where users develop the ontology, modelling tool, and visualisations for their problem.This research establishes and exemplifies a novel paradigm of collaborative end-user programming by domain experts. The end-user programmers can use a visual interface where the visualisation of the software exactly matches the structure of the software itself, making translation between user and computer, and vice versa, much more direct and practical. The visualisation is based on an ontology that provides a representation of the software as a tree. The solution is based on translation from a source tree to a result tree, and visualisation of both. The result tree shows a structured representation of the model with a full visualisation of all parts that leads to the computed result.In conclusion, it is claimed that this direct representation of the structure enables an understanding of the program as an ontology and model that is then visualised, resulting in a more transparent shared understanding by all users. It is further argued that our diagrammatic modelling paradigm consequently eases problems of maintenance, extensibility, ease of use, and sharing of information. This method is applicable to any problem that lends itself to representation as a tree. This is considered a limitation of the method to be addressed in a future project
- âŠ