Christopher S. Timperley

ORCID: 0000-0002-9785-324X
Publications
Citations
Views
---
Saved
---
About
Contact & Profiles
Research Areas
  • Software Engineering Research
  • Software Testing and Debugging Techniques
  • Software Reliability and Analysis Research
  • Software System Performance and Reliability
  • Scientific Computing and Data Management
  • Advanced Software Engineering Methodologies
  • Software Engineering Techniques and Practices
  • Advanced Malware Detection Techniques
  • Evolutionary Algorithms and Applications
  • Viral Infectious Diseases and Gene Expression in Insects
  • Modular Robots and Swarm Intelligence
  • Technology Assessment and Management
  • Genomics and Phylogenetic Studies
  • Service-Oriented Architecture and Web Services
  • Real-time simulation and control systems
  • Ecosystem dynamics and resilience
  • Sustainable Industrial Ecology
  • Open Source Software Innovations
  • Business Process Modeling and Analysis
  • Flexible and Reconfigurable Manufacturing Systems
  • Metaheuristic Optimization Algorithms Research
  • VLSI and Analog Circuit Testing
  • Robot Manipulation and Learning
  • Engineering and Test Systems
  • Radiation Effects in Electronics

Carnegie Mellon University
2017-2024

University of Luxembourg
2023

Korea Advanced Institute of Science and Technology
2021

King Saud University
2021

Grand Valley State University
2021

The University of Adelaide
2021

Instituto Tecnológico de Tijuana
2021

Wuhan University
2021

Lancaster University
2021

Michigan State University
2021

Robotic systems are increasingly a part of everyday life. Characteristics robotic such as interaction with the physical world, and integration hardware software components, differentiate from conventional systems. Although numerous studies have investigated challenges testing in practice, no study has focused on In this paper, we conduct qualitative to better understand practices used by robotics community, identify faced practitioners when their We total 12 9 our participants' responses....

10.1109/icst46399.2020.00020 article EN 2020-08-05

Robotics simulation plays an important role in the design, development, and verification validation of robotics systems. Simulation represents a potentially cheaper, safer, more reliable alternative to widely used practice manual field testing, introduces valuable opportunities for extensive test automation. The goal this paper is develop principled understanding ways developers use their testing processes challenges they face doing so. This can guide improvement simulators techniques modern...

10.1109/icst49551.2021.00036 article EN 2021-04-01

Robotics and autonomy systems are becoming increasingly important, moving from specialised factory domains to general consumer-focused applications. As such grow ubiquitous, there is a commensurate need protect against potentially catastrophic harm. System-level testing in simulation particularly promising approach for assuring robotics systems, allowing more extensive realistic scenarios seeking bugs that may not manifest at the unit-level. Ideally, could find critical well before expensive...

10.1109/icst.2018.00040 article EN 2018-04-01

Machine learning (ML) components are increasingly integrated into software products, yet their complexity and inherent uncertainty often lead to unintended hazardous consequences, both for individuals society at large. Despite these risks, practitioners seldom adopt proactive approaches anticipate mitigate hazards before they occur. Traditional safety engineering approaches, such as Failure Mode Effects Analysis (FMEA) System Theoretic Process (STPA), offer systematic frameworks early risk...

10.48550/arxiv.2502.07974 preprint EN arXiv (Cornell University) 2025-02-11

In recent years, many software engineering researchers have begun to include artifacts alongside their research papers. Ideally, artifacts, including tools, benchmarks, and data, support the dissemination of ideas, provide evidence for claims, serve as a starting point future research. However, in practice, suffer from variety issues that prevent realization full potential. To help community realize potential we seek understand challenges involved creation, sharing, use artifacts. end,...

10.1007/s10664-021-09973-5 article EN cc-by Empirical Software Engineering 2021-05-11

Robot systems are growing in importance and complexity. Ecosystems for robot software, such as the Operating System (ROS), provide libraries of reusable software components that can be configured composed into larger systems. To support compositionality, ROS uses late binding architecture configuration via "launch files" describe how to initialize a system. However, often leads failing silently due misconfiguration, example by misrouting or dropping messages entirely.In this paper we present...

10.1109/icsa53651.2022.00019 article EN 2022-03-01

As robotic systems such as autonomous cars and delivery drones assume greater roles responsibilities within society, the likelihood impact of catastrophic software failure those is increased.To aid researchers in development new methods to measure assure safety quality robotics software, we systematically curated a dataset 221 bugs across 7 popular diverse implemented via Robot Operating System (ROS). We produce historically accurate recreations each defective versions form Docker images,...

10.1007/s10664-024-10440-0 article EN cc-by Empirical Software Engineering 2024-03-23

We developed model-based adaptation, an approach that leverages models of software and its environment to enable automated adaptation. The goal our is build long-lasting systems can effectively adapt changes in their environment.

10.1109/ms.2018.2885058 article EN IEEE Software 2019-02-21

Robotics simulation plays an important role in the design, development, and verification validation of robotic systems. Recent studies have shown that may be used as a cheaper, safer, more reliable alternative to manual, widely used, process field testing. This is particularly context continuous integration pipelines, where integrated automated testing key reducing costs while maintaining system safety. However, are not seeing degree widespread adoption practice their potential would...

10.48550/arxiv.2004.07368 preprint EN cc-by arXiv (Cornell University) 2020-01-01

Most software engineering research involves the development of a prototype, proof concept, or measurement apparatus. Together with data collected in process, they are collectively referred to as artifacts and subject artifact evaluation (AE) at scientific conferences. Since its initiation SE community ESEC/FSE 2011, both goals process AE have evolved today expectations towards strongly linked reproducible results reusable tools that other researchers can build their work on. However, date...

10.1145/3540250.3549172 article EN Proceedings of the 30th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering 2022-11-07

Robotics systems are complex, safety-critical that can consist of hundreds software components interact with each other dynamically during run time. Software robotics often exhibit reactive, periodic, and state-dependent behavior. Incorrect component composition lead to unexpected behavior, such as passively waiting for initiation messages never arrive. Model-based analysis is a common technique identify incorrect behavioral by checking desired properties given models based on state...

10.1145/3597503.3639206 article EN cc-by 2024-04-12

Over the past eleven years, Robot Operating System (ROS), has grown from a small research project into most popular framework for robotics development. Composed of packages released on Rosdistro package manager, ROS aims to simplify development by providing reusable libraries, tools and conventions building robot. Still, developing complete robot is difficult task that involves bridging many technical disciplines. Experts who create computer vision packages, instance, may need rely software...

10.1109/icsme46990.2020.00048 article EN 2020-09-01

Search-based automatic program repair has shown promise in reducing the cost of defects real-world software. However, to date, such techniques have typically been most successful when constructing short or single-edit repairs. This is true even make use heuristic search strategies, like genetic programming, that principle support construction patches arbitrary length. One key reason fitness function traditionally depends entirely on test cases, which are poor at identifying partially correct...

10.1109/gi.2019.00011 article EN 2019-05-01

Testing plays an essential role in ensuring the safety and quality of cyberphysical systems (CPSs). One main challenges automated software-in-the-loop simulation testing CPSs is defining effective oracles that can check a given system conforms to expectations desired behavior. Manually specifying such be tedious, complex, error-prone, so techniques for automatically learning are attractive. Characteristics CPSs, as limited or no access source code, behavior non-deterministic sensitive noise,...

10.1109/tse.2021.3120680 article EN IEEE Transactions on Software Engineering 2021-10-15

Software refactoring plays an important role in software engineering. Developers often turn to when they want restructure improve its quality without changing external behavior. Small-scale (floss) is common industry and performed by a single developer short sessions, even though developers do much of this work manually instead using tools. However, some efforts are larger scale, requiring entire teams months or years effort, the tools these not as well studied. In paper, we report on survey...

10.1145/3540250.3558954 article EN Proceedings of the 30th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering 2022-11-07

Proposing a new method for automatically detecting, localising, or repairing software faults requires fair, reproducible evaluation of the effectiveness relative to existing alternatives. Measuring both an indicative set bugs, and mechanism reliably reproducing interacting with those bugs. We present BugZoo: decentralised platform distributing, reproducing, historical BugZoo connects datasets tools developers researchers, provides controlled environment conducting experiments. To ensure...

10.1145/3183440.3195050 article EN 2018-05-27

The Robot Operating System (ROS) was initially introduced to lower the barriers robots software development by reducing need for extensive domain knowledge. ROS allows developers build valuable configuring and reusing off-the-shelf components while writing little, if any, code through its modular design, loosely coupled architecture, rich package ecosystem. However, despite advantages of this approach, lack documentation can present a challenge novice users.

10.1145/3526071.3527521 article EN 2022-05-09

From delivering groceries and vital medical supplies to driving trucks passenger vehicles, society is becoming increasingly reliant on autonomous vehicles (AVs), It therefore that these systems be resilient adversarial actions, perform mission-critical functions despite known unknown vulnerabilities, protect repair themselves during or after operational failures cyber-attacks. While techniques have been proposed address individual aspects of software resilience, vulnerability assessment,...

10.1109/issre55969.2022.00018 article EN 2022-10-01

We report the discussion session at sixth international Genetic Improvement workshop, GI-2019 @ ICSE, which was held as part of 41st ACM/IEEE International Confer- ence on Software Engineering Tuesday 28th May 2019. Topics included GI representations, maintainability evolved code, automated software testing, future areas research, such co-evolution, and existing tools benchmarks.

10.1145/3356773.3356801 article EN ACM SIGSOFT Software Engineering Notes 2019-11-14
Coming Soon ...