Craig Anslow

dblp:29/1039 · DBLP profile ↗
← Back
59ranked-venue papers
7as first author
23since 2021 · last 2026
0000-0001-8064-6300ORCID · verified

Domains — the database's venue-derived domains; a paper can count in several

Software engineering, systems software and programming languages · 28 · 2 first-author · 10 since 2021Human-computer interaction and ubiquitous computing · 24 · 6 first-author · 5 since 2021Graphics, computer vision, multimedia, augmented reality and games · 15 · 12 since 2021Security and privacy · 1Databases, data management, data science and information retrieval · 1 · 1 since 2021
YearPublicationVenuePosition
2026 Grand Challenges in Cross Reality
abstract
Cross Reality (CR) is a new emerging field based on the current developments in Mixed Reality hardware, especially supported by the broad market penetration of video-based see-through Head-Mounted Displays. It refers to applications that span across different stages (real, Augmented Reality, Augmented Virtuality, Virtual Reality) of the reality-virtuality continuum, where users are interconnected between different stages and/or are able to transition between these stages. This publication follows the concept of other grand challenges publications and reflects the discussion of various researchers invested in CR. After an initial discussion at the 1stJoint Workshop on Cross Reality at IEEE ISMAR 2023, six topic groups have been identified, leading to 22 challenges, which were discussed in groups over the period of multiple months. The discussion of these challenges should act as a road map for future research in the area of CR.
Christoph Anthes, Mark Billinghurst, Uwe Gruenefeld, Hans-Christian Jetter, Hai-Ning Liang, Frank Maurer, David Aigner, Craig Anslow, Guillaume Bataille, Abraham G. Campbell, Judith Friedl-Knirsch, Alexander Gall, Renan Luigi Martins Guarese, Sebastian Hubenschmid, Yue Li 0023, Fabian Pointecker, Andreas Riegler, Daniel Roth 0001, Rishi Vanukuru, Nanjia Wang, Lingyun Yu 0001, Johannes Zagermann, Daniel Zielasko
IEEE Trans. Vis. Comput. Graph.8
2025 Syntest-ACR: Automated Crash Reproduction for Javascript
abstract
Automated Crash Reproduction (ACR) is an area of software testing research that aims to reproduce software crashes to improve developers' ability to debug programs. There has been little progress in applying ACR techniques to JavaScript, as the highly dynamic nature of JavaScript poses challenges for program analysis and synthesis. We present SynTest-ACR, the first tool for ACR in JavaScript, applying artificial intelligence techniques to evolve suitable reproduction cases. We have evaluated SynTest-ACR against the CrashJS dataset consisting of 453 crashes. As a baseline, we ported the state-of-the-art searchguiding fitness function from EvoCrash for Java, finding that it performs much worse when applied to JavaScript programs, and through comprehensively designing and evaluating alternative fitness functions more suitable for JS ACR we obtain an 18.9% increase in reproduction rate over this baseline for Syntest-ACR.
Philip Oliver, Jens Dietrich 0001, Craig Anslow, Michael Homer
ICSME3
2025 Immersive Analytics for Understanding Ecosystem Services Data
abstract
Planning land use changes requires input from experts across several domains with diverse expertise. Currently available tools were not designed for analysing the required ecosystem services before and after land use changes, or for analysing tradeoffs. Our study is motivated by the need for better tools designed for expert analysts and location knowledgable stakeholders to analyse data relating to land use planning, such as ecosystem services data. The effectiveness of an immersive VR visualization system (Immersive ESS Visualizer) for analysing and visualizing ecosystem services data, is evaluated and compared to existing methods of analysis, paper maps and a 2D screen. Although VR presented some difficulties, the benefits of spatially arranging maps, inspecting fine details, navigation by zooming, and inspection of hillshades provided sufficient advantages to make VR an effective tool for ecosystem services analysis. Participants using Immersive ESS Visualizer arranged handheld maps into 3D layouts, which would not be possible with paper or on the 2D screen. Our research demonstrates that geospatial analysis can be supported by comparative visualization in VR.
Benjamin Thomas Powley, Craig Anslow, Mairéad de Róiste, Stuart Marshall
VR2
2024 Reducing Workload in Using AI-based API REST Test Generation
abstract
Modern software applications, notably those utilizing microservices architectures, rely heavily on REST API technology for communication. Testing these APIs is challenging, time-consuming, and prone to errors. This paper introduces Pulse-UI, an AI-supported tool designed to enhance test sequence generation for REST APIs, aiming to reduce the workload involved in managing test sequences efficiently and improve overall test quality.
Benjamin Leu, Jonas Volken, Martin Kropp, Nejdet Dogru, Craig Anslow, Robert Biddle
AST5
2024 Fully Automated DORA Metrics Measurement for Continuous Improvement
abstract
Many organizations implementing DevOps are adopting DORA metrics to measure their capabilities. Surveys are commonly used to gather the DORA metric data. The data are typically captured only in longer intervals, and on the team level, omitting important details on individual software systems. In this paper, we present a solution that enables completely automated measurement and calculation of the DORA metrics from DevOps tooling on individual microservices level, and in real-time.We evaluated the developed solution in an industrial case study consisting of 37 microservices over a four-week period. The evaluation demonstrated the ability for a completely automated DORA metrics calculation which provides much greater transparency for data-driven decision-making and optimizations on a more fine-granular level allowing teams to continually improve their software processes and outputs.
Janick Rüegger, Martin Kropp, Sebastian Graf 0001, Craig Anslow
ICSSP4
2024 CrashJS: A NodeJS Benchmark for Automated Crash Reproduction
abstract
Software bugs often lead to software crashes, which cost US companies upwards of $2.08 trillion annually. Automated Crash Reproduction (ACR) aims to generate unit tests that successfully reproduce a crash. The goal of ACR is to aid developers with debugging, providing them with another tool to locate where a bug is in a program. The main approach ACR currently takes is to replicate a stack trace from an error thrown within a program. Currently, ACR has been developed for C, Java, and Python, but there are no tools targeting JavaScript programs. To aid the development of JavaScript ACR tools, we propose CrashJS: a benchmark dataset of 453 Node.js crashes from several sources. CrashJS includes a mix of real-world and synthesised tests, multiple projects, and different levels of complexity for both crashes and target programs.
Philip Oliver, Jens Dietrich 0001, Craig Anslow, Michael Homer
MSR3
2024 Towards a Python 3 processing IDE for teaching creative programming
Tristan Bunn, Craig Anslow, Karsten Lundqvist
Multim. Tools Appl.2
2023 MRMAC: Mixed Reality Multi-user Asymmetric Collaboration
abstract
We present MRMAC, a Mixed Reality Multi-user Asymmetric Collaboration system that allows remote users to teleport virtually into a real-world collaboration space to communicate and collaborate with local users. Our system enables telepresence for remote users by live-streaming the physical environment of local users using a 360° camera while blending 3D virtual assets into the mixed-reality collaboration space. Our novel client-server architecture enables asymmetric collaboration for multiple AR and VR users and incorporates avatars, view controls, as well as synchronized low-latency audio, video, and asset streaming. We evaluated our implementation with two baseline conditions: conventional 2D and standard 360° videoconferencing. Results show that MRMAC outperformed both baselines in inducing a sense of presence, improving task performance, usability, and overall user preference, demonstrating its potential for immersive multi-user telecollaboration.
Faisal Zaman, Craig Anslow, Andrew Chalmers, Taehyun Rhee
ISMAR2
2023 Diving Into The Twilight Zone VR for Marine Biology
abstract
Teaching students about underwater marine science is difficult due to the limitations required to access underwater environments. Marine science is typically not taught until tertiary education levels. We have developed a Virtual Reality experience for teaching marine science activities focusing on high school students. Our education programme and VR tool can help train the next generation of students into learning and being aware about marine science.
James Bell 0005, Alice Rogers, Kristian Hansen, Craig Anslow, Simon McCallum
VRST4
2023 XR for Improving Cardiac Catheter Ablation Procedure
abstract
Arrhythmia refers to abnormalities of the heart rhythm, and it is considered a life-threatening pathology. Catheter ablation is a minimally invasive procedure which provides the best therapeutic outcomes to cure the arrhythmia. The procedure consists of a series of intraoperative and training challenges that could potentially affect the procedure outcome. This study examines how Extended Reality (XR) technologies (AR/VR) can be used to improve the cardiac catheter ablation procedure for electrophysiologists.
Nisal Manisha Udawatta Kankanamge Don, Craig Anslow, Brian Robinson
VRST2
2023 VR Experiences of Pregnant Women During Antenatal Care
abstract
Pregnant women use a range of non-pharmacological pain relief methods to help manage and reduce pain intensity and to induce relaxation. We conducted a study with 18 pregnant women to explore VR experiences as a non-pharmacological method of pain relief to determine the effect on pain intensity. The results of the study identified several themes: evoking emotion with sub-themes, memory, and imagination. The theme presence, with sub-themes of relatability, realism, immersion, interactivity, and narration. Finally, the escape and anchoring themes were descriptions of how women envisaged using VR antenatally. This study provides a novel contribution to the field of VR and antenatal and labour care which can help inform the design of VR experiences for pregnant women.
Lorna Massov, Brian Robinson, Edgar R. Rodríguez Ramírez, Robyn Maude, Craig Anslow
VRST5
2023 Immersive visualization for ecosystem services analysis
abstract
Ecosystem services are benefits provided to humans by ecosystems through the natural processes and conditions which occur [7]. Interviews with land use scientists identified problems with currently available software applied to their ecosystem services analysis. A user centred design process is adopted and a visualization system, Immersive ESS Visualizer, is presented for visualizing data relating to ecosystem services analysis. Immersive ESS Visualizer is designed for both experts and non-experts and allows users to compare data visualized with multiple hand-manipulated maps. Users can glide over a landscape with data layers draped to analyse areas of interest. Immersive ESS Visualizer could augment a process for presenting ecosystem services analysis results.
Benjamin Thomas Powley, Craig Anslow, Mairéad de Róiste, Stuart Marshall
VRST2
2023 SpaceVR: Virtual Reality Space Science Outreach Experience
abstract
Teaching people about Space concepts is challenging with traditional text book and teaching methods. It is hard to encourage prospective students with these traditional methods as they lack engagement and interactivity. We have developed SpaceVR which is a VR application that provides high school students with an engaging outreach experience about Space Science. The application uses real images of the sun from NASA’s solar dynamics observatory satellite to create an interactive digital Sun for students to explore. The project investigates if adding gamification elements will increase student engagement with Space Science outreach efforts.
Benjamin Sanson, Craig Anslow, Alex Doronin, Yvette Perrott, Tulasi Nandan Parashar
VRST2
2023 Vicarious: Context-aware Viewpoints Selection for Mixed Reality Collaboration
abstract
Mixed-perspective, combining egocentric (first-person) and exocentric (third-person) viewpoints, have been shown to improve the collaborative experience in remote settings. Such experiences allow remote users to switch between different viewpoints to gain alternative perspectives of the remote space. However, existing systems lack seamless selection and transition between multiple perspectives that better fit the task at hand. To address this, we present a new approach called Vicarious, which simplifies and automates the selection between egocentric and exocentric viewpoints. Vicarious employs a context-aware method for dynamically switching or highlighting the optimal viewpoint based on user actions and the current context. To evaluate the effectiveness of the viewpoint selection method, we conducted a user study (n = 27) using an asymmetric AR-VR setup where users performed remote collaboration tasks under four distinct conditions: No-view, Manual, Guided, and Automatic selection. The results showed that Guided and Automatic viewpoint selection improved users’ understanding of the task space and task performance, and reduced cognitive load compared to Manual or No-view selection. The results also suggest that the asymmetric setup had minimal impact on spatial and social presence, except for differences in task load and preference. Based on these findings, we provide design implications for future research in mixed reality collaboration.
Faisal Zaman, Craig Anslow, Taehyun Rhee
VRST2
2023 Waste Self-reporting for Software Development Productivity Improvement
abstract
Abstract Little research has been done on enabling software development teams to self-report waste to assist in productivity improvement. This study created a waste categorization and survey for teams to identify and quantify wasteful activities. Developers from a Swiss company used the survey for three weeks. Participants found the survey helpful for identifying waste but there was little evidence that self-reported waste correlated with improved performance.
Marc Sallin, Martin Kropp, Craig Anslow, Robert Biddle
XP3
2022 Enhancing cross-reality applications and user experiences
abstract
This paper summarizes the contributions to the AVI 2022 workshop on “Enhancing Cross-reality Applications and User Experiences”.
Frank Maurer, Craig Anslow, Joaquim Jorge 0001, Maurício Sousa
AVI2
2022 VizAPI: Visualizing Interactions between Java Libraries and Clients
abstract
Software projects make use of libraries extensively. Libraries make available intended API surfaces—sets of exposed library interfaces that library developers expect clients to use. However, in practice, clients only use small fractions of intended API surfaces of libraries. We have implemented the VizAPI tool, which shows a visualization that includes both static and dynamic interactions between clients, the libraries they use, and those libraries’ transitive dependencies (all written in Java). We then present some usage scenarios of VizAPI, targetted at library upgrades. One application, by client developers, is to answer a query about upstream code: will their code be affected by breaking changes in library APIs? Or, library developers can use VizAPI to find out about downstream code: which APIs in their source code are commonly used by clients?
Sruthi Venkatanarayanan, Jens Dietrich 0001, Craig Anslow, Patrick Lam 0001
VISSOFT3
2022 VR Games for Chronic Pain Management
abstract
Chronic pain is a continuous ailment lasting for long periods after the initial injury or disease has healed. Chronic pain is challenging to treat and affects the daily lives of patients. Distraction therapy is a proven method of relieving patients’ discomfort by taking their attention away from the pain. Virtual reality (VR) is a platform for distraction therapy by immersing the user in a virtual world detached from reality. However, there is little research on how physical interactions in VR affect pain management. We present a study to evaluate the effectiveness of physically active, mentally active, and passive interventions in VR using games with chronic pain patients. Our results indicate that physical and mental activities in VR are equally effective at reducing pain. Furthermore, These actively engage patients, while the effects of observing relaxing content persist outside VR. These findings can help inform the design of future VR games targeted at chronic pain management.
Jiaheng Wang 0004, Craig Anslow, Simon McCallum, Brian Robinson, Daniel Medeiros 0001, Joaquim Jorge 0001
VRST2
2022 Understanding Leadership in Agile Software Development Teams: Who and How?
abstract
Abstract The principles in the Agile Manifesto, the Scrum Guide and most other approaches to agile software development emphasize self-organizing teams, but rarely address issues of leadership. In this paper we report on a study of the nature of different aspects of leadership in agile teams. We used an established model of leadership, distinguishing transactional and transformational styles, and asked IT professionals a set of questions about the leadership they experience, both from direct supervisors (hierarchical leadership) and from the team itself (shared leadership). We determined correlation measures of these four types of leadership with the extent of agility in the whole organization. Our results show that agility is indeed related to the transformational style, but that the transactional style also plays a part, especially as shared leadership. Furthermore, even in highly agile software development, leadership by direct supervisors still plays an important role. We propose that, as software development becomes more agile, the transactional aspects of leadership may shift away from the leadership dyad between supervisor and employee into the agile team, while transformational leadership is important for both the team and supervisors. We discuss our results in light of applications for both research and practice.
Johann C. Weichbrodt, Martin Kropp, Robert Biddle, Peggy Gregory, Craig Anslow, Ursina Maria Bühler, Magdalena Mateescu, Andreas Meier 0004
XP5
2022 What Makes Agile Software Development Agile?
abstract
Together with many success stories, promises such as the increase in production speed and the improvement in stakeholders’ collaboration have contributed to making agile a transformation in the software industry in which many companies want to take part. However, driven either by a natural and expected evolution or by contextual factors that challenge the adoption of agile methods as prescribed by their creator(s), software processes in practice mutate into hybrids over time. Are these still agile? In this article, we investigate the question: what makes a software development method agile? We present an empirical study grounded in a large-scale international survey that aims to identify software development methods and practices that improve or tame agility. Based on 556 data points, we analyze the perceived degree of agility in the implementation of standard project disciplines and its relation to used development methods and practices. Our findings suggest that only a small number of participants operate their projects in a purely traditional or agile manner (under 15 percent). That said, most project disciplines and most practices show a clear trend towards increasing degrees of agility. Compared to the methods used to develop software, the selection of practices has a stronger effect on the degree of agility of a given discipline. Finally, there are no methods or practices that explicitly guarantee or prevent agility. We conclude that agility cannot be defined solely at the process level. Additional factors need to be taken into account when trying to implement or improve agility in a software company. Finally, we discuss the field of software process-related research in the light of our findings and present a roadmap for future research.
Marco Kuhrmann, Paolo Tell, Regina Hebig, Jil Klünder, Jürgen Münch, Oliver Linssen, Dietmar Pfahl, Michael Felderer, Christian Prause, Stephen G. MacDonell, Joyce Nakatumba-Nabende, David Raffo, Sarah Beecham, Eray Tüzün, Gustavo López 0001, Nicolás Paez, Diego Fontdevila, Sherlock A. Licorish, Steffen Küpper, Günther Ruhe, Eric Knauss, Özden Özcan Top, Paul M. Clarke, Fergal McCaffery, Marcela Genero, Aurora Vizcaíno, Mario Piattini, Marcos Kalinowski, Tayana Conte, Rafael Prikladnicki, Stephan Krusche, Ahmet Coskunçay, Ezequiel Scott, Fabio Calefato, Svetlana Pimonova, Rolf-Helge Pfeiffer, Ulrik Pagh Schultz Lundquist, Rogardt Heldal, Masud Fazal-Baqaie, Craig Anslow, Maleknaz Nayebi, Kurt Schneider, Stefan Sauer 0001, Dietmar Winkler 0001, Stefan Biffl, M. Cecilia Bastarrica, Ita Richardson
IEEE Trans. Software Eng.40
2021 A Partial Reproduction of A Guided Genetic Algorithm for Automated Crash Reproduction
abstract
This paper is a partial reproduction of work by Soltani et al. which presented EvoCrash, a tool for replicating software failures in Java by reproducing stack traces. EvoCrash uses a guided genetic algorithm to generate JUnit test cases capable of reproducing failures more reliably than existing coverage-based solutions. In this paper, we present the findings of our reproduction of the initial study exploring the effectiveness of EvoCrash and comparison to three existing solutions: STAR, JCHARMING, and MuCrash. We further explored the capabilities of EvoCrash on different programs to check for selection bias. We found that we can reproduce the crashes covered by EvoCrash in the original study while reproducing two additional crashes not reported as reproduced. We also find that EvoCrash was unsuccessful in reproducing several crashes from the JCHARMING paper, which were excluded from the original study. Both EvoCrash and JCHARMING could reproduce 73% of the crashes from the JCHARMING paper. We found that there was potentially some selection bias in the dataset for EvoCrash. We also found that some crashes had been reported as non-reproducible even when EvoCrash could reproduce them. We suggest this may be due to EvoCrash becoming stuck in a local optimum.
Philip Oliver, Michael Homer, Jens Dietrich 0001, Craig Anslow
ICSME4
2021 Promoting Reality Awareness in Virtual Reality through Proxemics
abstract
Head-Mounted Virtual reality (VR) systems provide full-immersive experiences to users and completely isolate them from the outside world, placing them in unsafe situations. Existing research proposed different alert-based solutions to address this. Our work builds on these studies on notification systems for VR environments from a different perspective. We focus on: (i) exploring alert systems to notify VR users about non-immersed bystanders' in socially related, non-critical interaction contexts; (ii) understanding how best to provide awareness of non-immersed bystanders while maintaining presence and immersion within the Virtual Environment(VE). To this end, we developed single and combined alert cues - leveraging proxemics, perception channels, and push/pull approaches and evaluated those via two user studies. Our findings indicate a strong preference towards maintaining immersion and combining audio and visual cues, push and pull notification techniques that evolve dynamically based on proximity.
Daniel Medeiros 0001, Rafael Kuffner dos Anjos, Nadia Pantidi, Maurício Sousa, Craig Anslow, Joaquim Jorge 0001
VR6
2021 Measuring Software Delivery Performance Using the Four Key Metrics of DevOps
abstract
Abstract The Four Key Metrics of DevOps have become very popular for measuring IT-performance and DevOps adoption. However, the measurement of the four metrics deployment frequency, lead time for change, time to restore service and change failure rate is often done manually and through surveys - with only few data points. In this work we evaluated how the Four Key Metrics can be measured automatically and developed a prototype for the automatic measurement of the Four Key Metrics. We then evaluated if the measurement is valuable for practitioners in a company. The analysis shows that the chosen measurement approach is both suitable and the results valuable for the team with respect to measuring and improving the software delivery performance.
Marc Sallin, Martin Kropp, Craig Anslow, James W. Quilty, Andreas Meier 0004
XP3
2020 Visualizing Progress Tracking for Software Teams on Large Collaborative Touch Displays
abstract
Keeping track of the progress on software projects can be difficult and time consuming. Progress tracking requires developers to track progress by hand or digitally neither of which have good support for collaborative team processes. In this paper we present DashVis a tool to help support teams to track progress more effectively using large touch displays and visualization techniques. We conducted a study and found the visualizations to be very effective in supporting teams to gain a more accurate way of keeping track of progress. With large touch displays becoming ubiquitous in the work place and the demand for software teams to understand their progress more effectively there is a need for tools like DashVis.
Brandon Scott-Hill, Craig Anslow, Jennifer Ferreira, Martin Kropp, Magdalena Mateescu, Andreas Meier 0004
VL/HCC2
2020 Satisfaction and its correlates in agile software development
Martin Kropp, Andreas Meier 0004, Craig Anslow, Robert Biddle
J. Syst. Softw.3
2019 CorpusVis - Visualizing Software Metrics at Scale
abstract
We do not know fully understand how software violates metrics based principles, particularly in large systems. Systems are restricted by structural and static deficiencies that we can aim to reduce by providing developers with effective visualizations of their code. We developed CorpusVis a widget-based application to explore software metrics of Java software systems from the Qualitas Corpus. Through an evaluation of the visualization techniques we identified what visualizations were effective and which ones did not scale well for large software systems. Our application helps to reduce the structural and static deficiencies in developers code which enables developers to spend less time maintaining legacy systems and learn to develop more effective code for future systems.
Jack Slater, Craig Anslow, Jens Dietrich 0001, Leonel Merino
VISSOFT2
2019 Co-located Collaborative Block-Based Programming
abstract
With the increasing need to teach programming to novices using collaborative methods like pair programming, it is important to understand how different input devices can help support collaborative learning. In this paper we present Multi-Device Grace, the first application to explore block-based programming in a cross-device environment consisting of digital tabletops, mobile tablets, and laptops. We conducted a user study (n = 18) to explore how cross-device environments can support co-located collaborative block-based programming. The study used Tiled Grace, an existing block-based programming language, and our extensions: Tabletop Grace (designed for tabletops) and Mobile Grace (designed for tablets). Our results show that the majority of participants felt they were able to collaborate quickly and easily, and the cross device interaction would be particularly beneficial in an education setting.
Ben Selwyn-Smith, Craig Anslow, Michael Homer, James R. Wallace
VL/HCC2
2019 Adventures in Hologram Space: Exploring the Design Space of Eye-to-eye Volumetric Telepresence
abstract
Modern volumetric projection-based telepresence approaches are capable of providing realistic full-size virtual representations of remote people. Interacting with full-size people may not be desirable due to the spatial constraints of the physical environment, application context, or display technology. However, the miniaturization of remote people is known to create an eye gaze matching problem. Eye-contact is essential to communication as it allows for people to use natural nonverbal cues and improves the sense of “being there”. In this paper we discuss the design space for interacting with volumetric representations of people and present an approach for dynamically manipulating scale, orientation and the position of holograms which guarantees eye-contact. We created a working augmented reality-based prototype and validated it with 14 participants.
Rafael Kuffner dos Anjos, Maurício Sousa, Daniel Mendes, Daniel Medeiros 0001, Mark Billinghurst, Craig Anslow, Joaquim Jorge 0001
VRST6
2019 LINACVR: VR Simulation for Radiation Therapy Education
abstract
A clear and well-documented LaTeX document is presented as an article formatted for publication by ACM in a conference proceedings or journal publication. Based on the “acmart” document class, this article presents and explains many of the common variations, as well as many of the formatting elements an author may use in the preparation of the documentation of their work.
Haydn Bannister, Ben Selwyn-Smith, Craig Anslow, Brian Robinson, Rafael Kuffner dos Anjos, Daniel Medeiros 0001, Paul Kane, Aidan Leong
VRST3
2019 Extended Reality for Chronic Pain Relief
abstract
Chronic pain is ongoing pain lasting for long periods of time after the initial injury or disease has healed. Chronic pain is difficult to treat and can affect the daily lives of patients. Distraction therapy is a proven way of relieving pain by redirecting the focus of patients’ attention. Virtual reality is an effective platform for distraction therapy as it immerses the user visually, aurally, and even somewhat physically in a virtual world detached from reality. There is little research done on the effects that physical interactions have on pain management. This project aims to evaluate different types of extended reality (XR) interactions, including full body movement, for chronic pain patients to determine which is the best for pain relief. We are building a prototype for participants to interact both mentally and physically and measuring the reduction in subjective pain ratings at various points of the XR experience.
Jiaheng Wang 0004, Craig Anslow
VRST2
2019 Agile Practices in Practice: Towards a Theory of Agile Adoption and Process Evolution
abstract
Abstract As teams and organisations make the difficult shift to agile ways of working, there has been relatively little investigation of how they adopt and use agile practices. To aid those teams looking to move to agile we should examine how others have done so and what practical value they found. We studied teams which adopted agile practices across a spectrum from taking on a whole methodology to a couple of practices at a time, and then committed to continuous assessment and improvement of their ways of working. Those teams favoured adapting agile-based, team-oriented practices suited to their particular needs over technical practices and defined methodologies.
Brendan Julian, James Noble 0001, Craig Anslow
XP3
2018 Satisfaction, Practices, and Influences in Agile Software Development
abstract
The principles behind the Agile Manifesto begin with "Our highest priority is to satisfy the customer...". It also states that Agile projects should be build around motivated and self-organized teams, which might also lead to more satisfied developers. Several studies indeed report an increased job satisfaction by anecdotal evidence. In this paper we address the topic of satisfaction by in-depth analysis of the results of a nationwide survey about software development in Switzerland. We wanted to find out if satisfaction depends on the applied development method, and, more concrete, how satisfaction relates to other elements in the development process, including the use of various practices, and the influences on business, team and software issues. We found that higher satisfaction is reported more by those using Agile development than with plan-driven processes. We explored the different perspectives of developers and those with a management role and found a high consistency of satisfaction between Agile developers and Agile management, and big differences with using working plan-driven methods. We found that certain practices and influences have high correlations to satisfaction, and that collaborative processes are closely related to satisfaction, especially when combined with technical practices. Applying recursive partitioning, we found which elements were most important for satisfaction, and gained insight about how practices and influences work in combination. We also explored the relationship between satisfaction and personal experience with Agile development. Our results in this analysis are principally descriptive, but we think they can be a relevant contribution to understand the challenges for everyone involved in Agile development, and can help in the transformation to Agile.
Martin Kropp, Andreas Meier 0004, Craig Anslow, Robert Biddle
EASE3
2018 An Agile Conversion Masters Degree Programme in Software Development
abstract
The Information and Communications Technology (ICT) industry in New Zealand is growing rapidly. The traditional university courses are preparing an insufficient number of graduates to sustain the growth. Many of the traditional graduate students lack key soft skills that are important in team based software development. This paper reports on the development of a conversion Master of Software Development degree. The students are all graduates with little or no computer science degrees, are taught key programming skills, with a focus on agile development. The programme begins by focusing on individual programming skills through solving problems. Later industrial partners are engaged by providing industrial problems to agile teams of students. The industrial partners are active partners in the agile teams as product owners. By solving the problems, the students develop both technical and non-technical skills while utilizing the skills obtained from previous studies. The results from the first year of the programme are encouraging. A key result is that a high number of students found work in paid IT positions before graduating. The main issue of the first year was introducing too many topics at the same time, over-assessment, not enough communication and contact time, little opportunity for the students to make their own experiences, and learning by making mistakes. The programme has been changed for the next year/s cohort to introduce less topics at once, provide time and space for learning, and a redesign of scheduling assessments.
Karsten Lundqvist, Craig Anslow, Michael Homer, Kris Bubendorfer, Dale Anthony Carnegie
SIGCSE2
2018 Visualizing Design Erosion: How Big Balls of Mud are Made
abstract
Software systems are not static, they have to undergo frequent changes to stay fit for purpose, and in the process of doing so, their complexity increases. It has been observed that this process often leads to the erosion of the systems design and architecture and with it, the decline of many desirable quality attributes, such as maintainability. This process can be captured in terms of antipatterns - atomic violations of widely accepted design principles. We present a visualisation that exposes the design of evolving Java programs, highlighting instances of selected antipatterns including their emergence and cancerous growth. This visualisation assists software engineers and architects in assessing, tracing and therefore combating design erosion. We evaluated the effectiveness of the visualisation in four case studies with ten participants.
David Baum, Jens Dietrich 0001, Craig Anslow, Richard Müller 0002
VISSOFT3
2018 What Programming Languages Do Developers Use? A Theory of Static vs Dynamic Language Choice
abstract
We know very little about why developers do what they do. Lab studies are all very well, but often their results (e.g. that static type systems make development faster) seem contradicted by practice (e.g. developers choosing JavaScript or Python rather than Java or C#). In this paper we build a first cut of a theory of why developers do what they do with a focus on the domain of static versus dynamic programming languages. We used a qualitative research method - Grounded Theory, to interview a number of developers \pmb(n=15) about their experience using static and dynamic languages, and constructed a Grounded Theory of their programming language choices.
Aaron Pang, Craig Anslow, James Noble 0001
VL/HCC2
2018 Stress in Agile Software Development: Practices and Outcomes
Andreas Meier 0004, Martin Kropp, Craig Anslow, Robert Biddle
XP3
2018 A systematic literature review of software visualization evaluation
Leonel Merino, Mohammad Ghafari, Craig Anslow, Oscar Nierstrasz
J. Syst. Softw.3
2017 CityVR: Gameful Software Visualization
abstract
Gamification of software engineering tasks improve developer engagement, but has been limited to mechanisms such as points and badges. We believe that a tool that provides developers an interface analogous to computer games can represent the gamification of software engineering tasks more effectively via software visualization. We introduce CityVR - an interactive software visualization tool that implements the city metaphor technique using virtual reality in an immersive 3D environment medium to boost developer engagement in software comprehension tasks. We evaluated our tool with a case study based on ArgoUML. We measured engagement in terms of feelings, interaction, and time perception. We report on how our design choices relate to developer engagement. We found that developers i) felt curious, immersed, in control, excited, and challenged, ii) spent considerable interaction time navigating and selecting elements, and iii) perceived that time passed faster than in reality, and therefore were willing to spend more time using the tool to solve software engineering tasks.https://youtu.be/R0C-HMAtgnk.
Leonel Merino, Mohammad Ghafari, Craig Anslow, Oscar Nierstrasz
ICSME3
2017 Effects of the Display Angle and Physical Size on Large Touch Displays in the Work Place
abstract
Large display and touch screens are becoming ubiquitous within the work place including multiple display screens. There is limited evidence on what configurations and arrangements of the display screens are most effective for data analysis. We conducted two user studies to understand the effectiveness of the display angle, physical size, resolution, and touch precision for data analysis activities. Our results indicated that touch interaction for data analysis sitting at a workstation was most effective with medium sized screens at 27", high precision touch accuracy (not 4K resolution), and display angle titled at 30°. The results from our studies can guide other researchers and developers who want to integrate large touch display screens into their work place environments.
Craig Anslow, B. L. William Wong
ISS1
2017 The Disappearing Tabletop: Social and Technical Challenges for Cross-Surface Collaboration
abstract
After 20 years of research, it is unclear what role the tabletop should play in the home or workplace. Progress has been made towards hardware and software interfaces, connectivity with nearby devices, and understanding human behaviour on and around the table -- yet, in practice tabletops see limited use. This workshop seeks to explore the development and use of tabletops from historical, technical, and social perspectives. Workshop goals include synthesizing opinion and experience from new and established researchers on future directions of tabletop research, and an open discussion of questions such as to what applications are tabletops best suited? and how can tabletops be better integrated into larger workflows and digital ecosystems?
James R. Wallace, Steven Houben, Craig Anslow, Andrés Lucero, Yvonne Rogers, Stacey D. Scott
ISS3
2017 On the Impact of the Medium in the Effectiveness of 3D Software Visualizations
abstract
Many visualizations have proven to be effective in supporting various software related tasks. Although multiple media can be used to display a visualization, the standard computer screen is used the most. We hypothesize that the medium has a role in their effectiveness. We investigate our hypotheses by conducting a controlled user experiment. In the experiment we focus on the 3D city visualization technique used for software comprehension tasks. We deploy 3D city visualizations across a standard computer screen (SCS), an immersive 3D environment (I3D), and a physical 3D printed model (P3D). We asked twenty-seven participants (whom we divided in three groups for each medium) to visualize software systems of various sizes, solve a set of uniform comprehension tasks, and complete a questionnaire. We measured the effectiveness of visualizations in terms of performance, recollection, and user experience. We found that even though developers using P3D required the least time to identify outliers, they perceived the least difficulty when visualizing systems based on SCS. Moreover, developers using I3D obtained the highest recollection.
Leonel Merino, Johannes Fuchs 0001, Michael Blumenschein, Craig Anslow, Mohammad Ghafari, Oscar Nierstrasz, Michael Behrisch 0001, Daniel A. Keim
VISSOFT4
2017 A study of the effectiveness of usage examples in REST API documentation
abstract
Generating and maintaining REST API documentation with usage examples can be a time consuming and expensive process for evolving APIs. Most REST API documentation tools focus on automating the documentation of the API objects, but require manual effort for capturing usage examples. Consequently, REST API developers need to know the cost vs. benefit of providing usage examples in the documentation to prioritize the documentation efforts. To this end, we have performed a controlled study with 26 experienced software engineers to understand problems that REST API client developers face while using an API without usage examples. We found that REST API client developers face productivity problems with using correct data types, data formats, required HTTP headers and request body when documentation lacks usage examples. By following the REST API documentation suggestions from this paper, REST API developers can reduce the errors, improve success rate and satisfaction of API client developers.
Frank Maurer, Craig Anslow, Martin P. Robillard
VL/HCC3
2017 Enhancing Agile Team Collaboration Through the Use of Large Digital Multi-touch Cardwalls
abstract
Agile software development has become mainstream, and with it many tools have been developed to support Agile software development. Nonetheless, studies show, that most Agile software teams still also use physical cardboards for their daily work. This is error prone and causes a lot of extra effort to keep both in sync. In our research project we conducted an interview study about the reasons for this media break. Based on the findings we developed visualization and interaction concepts for an Agile cardwall using an extra-large multi-touch wall display which provides Agile teams the lightweight collaboration workspace for their Agile meetings. We implemented the concepts in the software prototype aWall , and evaluated the usability of aWall in a user study. The evaluation indicates that aWall enables and encourages team work due to the large size of the wall, the easy accessibility and visibility of the needed information, and the integration with existing issue tracking tools. This suggests that augmenting digital cardwalls with large interactive touch technology and integration with task tracking systems is a useful way to support effective collaborative Agile software development processes.
Martin Kropp, Craig Anslow, Magdalena Mateescu, Roger Burkhard, Dario Vischi, Carmen G. Zahn
XP2
2017 Teaching Agile Methods to Software Engineering Professionals: 10 Years, 1000 Release Plans
abstract
Agile methods are an essential resource for software engineers. The Agile movement evolved out of industry and is the common approach to software development today. Teaching Agile methods challenges students’ working attitudes, where putting Agile into practice is not possible through simply applying methods prescriptively, but by having an Agile mindset. In this paper we present and discuss our experiences over the last decade of teaching a novel intensive Agile methods week long course as part of a professional Masters of Software Engineering degree programme at the University of Oxford. We describe the typical shape of the course, discuss how students experience Agile values and management practices to foster an Agile mindset, and provide student feedback indicating a consistently positive response to our approach at teaching Agile methods to software engineering professionals. Our reported experiences and material can help other educators who want to run similar courses and adapt where required.
Angela Martin, Craig Anslow, David Johnson 0006
XP2
2017 Technologies, Methods, and Values: Changes in Empirical Research at CSCW 1990 - 2015
abstract
The field of Computer Supported Cooperative Work has constantly evolved to meet the changing needs of individuals at home, at work, and online. To understand how these changes impacted CSCW research, we systematically reviewed 1209 papers and notes published at the ACM Conference on Computer Supported Cooperative Work between 1990 and 2015. When considered with results from two previous literature reviews, covering 1990 - 1998 and 1998 - 2004 respectively, our analysis provides perspective on 25 years of groupware research. We show that the field has responded to, not anticipated, changes in the computing landscape, long-term trends away from 'systems' and explanatory research, and a lack of bibliographic research that synthesizes findings. Finally, we discuss implications of these trends for CSCW research: how results are synthesized across the field, what kinds of research we value, and how multi-device ecologies are studied.
James R. Wallace, Saba Oji, Craig Anslow
Proc. ACM Hum. Comput. Interact.3
2016 Datathons: An Experience Report of Data Hackathons for Data Science Education
abstract
Large amounts of data are becoming increasingly available through open data repositories as well as companies and governments collecting data to improve decision making and efficiencies. Consequently there is a need to increase the data literacy of computer science students. Data science is a relatively new area within computer science and the curriculum is rapidly evolving along with the tools required to perform analytics which students need to learn how to effectively use. To address the needs of students learning key data science and analytics skills we propose augmenting existing data science curriculums with hackathon events that focus on data also known as datathons. In this paper we present our experience at hosting and running four datathons that involved students and members from the community coming together to solve challenging problems with data from not-for-profit social good organizations and publicly open data. Our reported experience from our datathons will help inform other academics and community groups who also wish to host datathons to help facilitate their students and members to learn key data science and analytics skills.
Craig Anslow, John Brosz, Frank Maurer, Mike Boyes
SIGCSE1
2016 Collaboration Meets Interactive Surfaces and Spaces (CMIS): Walls, Tables, Mobiles, and Wearables
abstract
The CMIS workshop proposes to bring together researchers who are interested in improving collaborative experiences through the combination of multiple interaction surfaces with diverse sizes and formats, ranging from large-scale walls, to tables, mobiles, and wearables. The opportunities for innovation exist, but the ISS, CHI, CSCW, and other HCI communities have not yet thoroughly addressed the problem of bringing effective collaboration activities together using multiple interactive surfaces, especially in complex work domains. Of particular interest is the potential synergy that one can obtain by effectively combining different-sized surfaces and sharing information between devices.
Craig Anslow, Pedro F. Campos, Andrés Lucero, Laurent Grisoni, Mirjam Augstein, James R. Wallace
ISS1
2016 Developing usable APIs with XP and cognitive dimensions
abstract
Developing a usable Application Programming Interface (API) is a complex and expensive task. Two major factors play important roles on the usability of an API: the design and resources (e.g. documentation, tutorials). API Developers typically evaluate the usability of an API after implementation that results in refactoring tasks if an API lacks usability after development. This refactoring could be avoided if evaluation were continuously conducted while development. This paper explores a new combined process for building usable APIs that combines concepts from a usability evaluation method (Cognitive Dimensions Framework) and an Agile development methodology (eXtreme Programming). We explored the effectiveness of this combined process by implementing a web-based API and conducting a user study. The findings from our evaluation indicated that the new process helped in designing and building a usable API, but ignored some concerns related to resources.
Rahul Kamal Bhaskar, Craig Anslow, John Brosz, Frank Maurer
VL/HCC2
2015 VisRAID: Visualizing Remote Access for Intrusion Detection
Leliel Trethowen, Craig Anslow, Stuart Marshall, Ian Welch
ACISP2
2015 SpyREST: Automated RESTful API Documentation Using an HTTP Proxy Server (N)
abstract
RESTful API documentation is expensive to produce and maintain due to the lack of reusable tools and automated solutions. Most RESTful APIs are documented manually and the API developers are responsible for keeping the documentation up to date as the API evolves making the process both costly and error-prone. In this paper we introduce a novel technique using an HTTP proxy server that can be used to automatically generate RESTful API documentation and demonstrate SpyREST, an example implementation of the proposed technique. SpyREST uses a proxy to intercept example API calls and intelligently produces API documentation for RESTful Web APIs by processing the request and response data. Using the proposed HTTP proxy server based technique, RESTful API developers can significantly reduce the cost of producing and maintaining API documentation by replacing a large manual process with an automated process.
Craig Anslow, Frank Maurer
ASE2
2015 SpyREST in Action: An Automated RESTful API Documentation Tool
abstract
RESTful APIs are often manually documented. As a result, the process of maintaining the documentation of RESTful APIs is both expensive and error-prone. In this demonstration paper, we present SpyREST as an automated software as a service tool that can be used to document RESTful APIs. SpyREST leverages an HTTP Proxy server to intercept real API calls to automatically collect and generate RESTful API documentation by processing HTTP traffic involved in API calls. SpyREST provides an automated yet customizable example based documentation solution for RESTful APIs. RESTful API developers can use SpyREST to automatically generate and maintain updated API documentation.
Craig Anslow, Frank Maurer
ASE2
2015 A Case Study of Web API Evolution
abstract
When applications are integrated using web APIs, changes on a web API may break the dependent applications. This problem exists because old versions of the APIs may no longer be supported, a lack of adequate documentation to upgrade to a newer version, and insufficient communication of changes. In this paper we conducted a case study of evolving Web APIs to investigate what changes are made between versions and how the changes are documented and communicated to the API users. The findings are a list of recommendations for practitioners and researchers based on API change profiles, versioning, documentation and communication approaches that are observed in practice. This study will help inform developers of evolving Web APIs to make decision about versioning, documentation and communication methods.
Craig Anslow, Frank Maurer
SERVICES2
2015 An Experience Report at Teaching a Group Based Agile Software Development Project Course
abstract
Teaching group based Agile software development project courses is difficult. There are many aspects that need to be considered for a project to be successful such as a well defined scope, students working effectively together, and engaging with the customer. In this paper we present an experience report at teaching an Agile software development project course that involved teams developing web applications. The resources developed for the course and discussion about our experience will help inform others who also wish to teach group based software development courses.
Craig Anslow, Frank Maurer
SIGCSE1
2015 CodeSurveyor: Mapping large-scale software to aid in code comprehension
abstract
Large codebases - in the order of millions of lines of code (MLOC) - are incredibly complex. Whether fixing a fault, or implementing a new feature, changes to such systems often have unanticipated effects, as it is impossible for a developer to maintain a complete understanding of the code in their head. This paper presents CodeSurveyor, a spatial visualization technique that aims to support code comprehension in large codebases by allowing developers to view large-scale software at all levels of abstraction. It uses a cartographic metaphor to produce an interactive map of a codebase where users can zoom from a view of a system's high-level architectural components, represented as continents, down to the individual source files and the entities they define, shown as countries and states, respectively. The layout of the produced code map incorporates system dependency data and sizes regions according to a userconfigurable metric (line count by default), to create distinctive shapes and positions that serve as strong visual landmarks and keep users oriented. We detail the CodeSurveyor algorithm, show it generates code maps of the Linux kernel (1.4 MLOC) in 1.5 minutes, and evaluate the intuitiveness of the metaphor to software developers and its utility in navigation tasks. Results show the effectiveness of the approach with developers of varying experience levels.
Nathan Hawes, Stuart Marshall, Craig Anslow
VISSOFT3
2014 Reflections on Collaborative Software Visualization in Co-located Environments
abstract
Most software visualization systems and tools for maintenance are designed from a single-user perspective and are bound to the desktop and IDEs. These design decisions do not allow developers to analyze software collaboratively or to easily interact and navigate visualizations within a co-located environment. In my PhD thesis I conducted an exploratory study of how 44 pairs of professional software developers use Source is, a collaborative software visualization application, on a large multi-touch table in a co-located environment. The thesis contributes to a richer understanding of how pairs of developers collaborate with shared visualizations on large interactive tabletops to gain insight into the structure and evolution of software systems.
Craig Anslow
ICSME1
2014 Information Visualization for Agile Software Development
abstract
Understanding information about software artifacts is key to successful Agile software development projects, however, sharing information about artifacts is difficult to achieve amongst team members. There are many information visualization techniques used to help address the difficulties of knowledge sharing, but it is not clear what is the most effective technique. This paper presents the results of a systematic mapping study of existing literature on information visualization techniques used by Agile software development teams. The results of the systematic mapping show that Agile teams use visualization techniques for designing, developing, communicating, and tracking progress. Our findings show that visualization techniques help Agile teams increase knowledge sharing and raise awareness about software artifacts amongst team members.
Julia Paredes, Craig Anslow, Frank Maurer
VISSOFT2
2013 SourceVis: Collaborative software visualization for co-located environments
abstract
Most software development tools and applications are designed from a single-user perspective and are bound to the desktop and Integrated Development Environments (IDEs). These tools and applications make it hard for developers to analyse and interact with software artifacts collaboratively. We present SourceVisa multi-user collaborative software visualization application for use on large multi-touch tables. We describe the design and visualization features of SourceVis, present findings from a user study, and discuss the implications for building collaborative software visualization applications.
Craig Anslow, Stuart Marshall, James Noble 0001, Robert Biddle
VISSOFT1
2010 The Qualitas Corpus: A Curated Collection of Java Code for Empirical Studies
abstract
In order to increase our ability to use measurement to support software development practise we need to do more analysis of code. However, empirical studies of code are expensive and their results are difficult to compare. We describe the Qualitas Corpus, a large curated collection of open source Java systems. The corpus reduces the cost of performing large empirical studies of code and supports comparison of measurements of the same artifacts. We discuss its design, organisation, and issues associated with its development.
Ewan D. Tempero, Craig Anslow, Jens Dietrich 0001, Ted Han, Markus Lumpe, Hayden Melton, James Noble 0001
APSEC2
2008 Towards end-user web software visualization
abstract
Software visualization has always been expensive, special purpose, and hard to program. Most of the existing software visualization tools require too much time for end-user developers to learn and make effective use of. We are currently building a Web software visualization application that allows end-user to create, view, save, and share visualizations. In this abstract we introduce our software corpus visualization project and summarize our results thus far.
Craig Anslow, James Noble 0001, Stuart Marshall, Ewan D. Tempero
VL/HCC1