Title
Mercury: Properties and Design of a Remote Debugging Solution using Reflection
Abstract
Remote debugging facilities are a technical necessity for devices that lack appropriate input/output interfaces (display, keyboard, mouse) for programming (e.g., smartphones, mobile robots) or are simply unreachable for local development (e.g., cloud-servers). Yet remote debugging solutions can prove awkward to use due to re-deployments. Empirical studies show us that on average 10.5 minutes per coding hour (over five 40-hour work weeks per year) are spent for re-deploying applications (including re-deployments during debugging). Moreover current solutions lack facilities that would otherwise be available in a local setting because it is difficult to reproduce them remotely. Our work identifies three desirable properties that a remote debugging solution should exhibit, namely: run-time evolution, semantic instrumentation and adaptable distribution. Given these properties we propose and validate Mercury, a remote debugging model based on reflection. Mercury supports run-time evolution through a causally connected remote meta-level, semantic instrumentation through the reification of the underlying execution environment and adaptable distribution through a modular architecture of the debugging middleware.
Year
DOI
Venue
2015
10.5381/jot.2015.14.1.a1
JOURNAL OF OBJECT TECHNOLOGY
Keywords
Field
DocType
Remote Debugging,Reflection,Mirrors,Run-Time Evolution,Semantic Instrumentation,Adaptable Distribution,Agile Development
Middleware,Programming language,Computer science,Background debug mode interface,Agile software development,Coding (social sciences),Empirical research,Mobile robot,Algorithmic program debugging,Debugging,Embedded system
Journal
Volume
Issue
ISSN
14
2
1660-1769
Citations 
PageRank 
References 
2
0.50
18
Authors
5
Name
Order
Citations
PageRank
Nick Papoulias164.29
Noury Bouraqadi29418.92
Luc Fabresse36215.67
Stéphane Ducasse43418243.15
Marcus Denker528523.94