Abstract
We have taken the process of software instrumentation, normally used in the creation of profiling and debugging tools, and applied it to the production of usage data for user-computer interaction studies. This paper describes the design and evaluation of a prototype tool called iGuess, that enables an investigator to discover which methods are used within a Java application when particular tasks are carried out, and instrument these to produce usage data. A key feature of the system is that an application can be instrumented without any need for access to the source code. In this paper we describe the system’s functionality, briefly explain how it works and present the results of an early informal evaluation.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Al-Qaimari, G. and McRostie D., KALDI: A Computer-Aided Usability Engineering Tool for Supporting Testing and Analysis of User Performance, in A. Blanford, J. Vanderdonckt, Ph. Gray (eds.), Proceedings of the 15th Annual Conference of the British HCI Group IHM-HCI’2001 (Lille, 10–14 September 2001), Springer-Verlag, London, pp. 153–169.
Chander, A., Mitchell J.C., and Shin, I., Mobile Code Security by Java Bytecode Instrumentation, in Proceedings of the 2001 DARPA Information Survivability Conference & Exposition DISCEX-II’2002 (Anaheim, 12–14 June 2001), IEEE Computer Society Press, Los Alamitos, 2002, pp. 1027–1040, accessible at http://citeseer.nj.nec.com/chander01mobile.html.
Cohen, G., Chase, J., and Kaminsky, D. Automatic Program Transformation With JOIE, In Proceedings USENIX Annual Technical Conference (New Orleans, 15–19 June 1998) USENIX Association, Berkeley, 1998, pp. 167–178.
Evans, H., Atkinson, M., Brown, M., Cargill, J., Crease, M., Draper, S., Gray, P.D., and Thomas, R.C., The Pervasiveness of Evolution in GRUMPS Software, Software: Practice and Experience, Vol. 33, No. 2, February 2003.
Hilbert, D.M. and Redmiles D.F., Extracting Usability Information from User Interface Events, ACM Computing Surveys, Vol. 32, No. 4, December 2000, pp. 384–421.
Jerding, D.F., Stasko, J.T., and Ball, T., Visualizing Interactions in Program Executions: International Conference on Software Engineering ICSE’97 (17–23 May 1997 Boston), ACM Press, New York, 1997, accessible at http://citeseer.nj.nec.com/jerding97visualizing.html.
Kölling, M., Quig, B., Patterson, A., and Rosenberg, J., The BlueJ System and its Pedagogy, The Journal of Computer Science Education, Special Issue on Learning and Teaching Object Technology, Vol. 13, No 4, pp. 249–268, December 2003.
Lee, H.B. and Zorn, B.G., BIT: A Tool for Instrumenting Java Bytecodes, In Proceedings USENIX Symposium on Internet Technologies and Systems, 1998.
De Pauw, W., Helm, R., Kimelman, D., and Vlissides, J., Visualizing the Behavior of Object-Oriented Systems, in Proceedings of the Conference on Object-oriented Programming Systems, Languages and Applications OOPSLA ’93 (Washington, 26 September–1 October), 1993, accessible at http://citeseer.nj.nec.com/depauw93visualizing.html
Renaud K, Evans H. JavaCloak: Engineering Javaâ„¢ Proxy Objects using Reflection. NET.OBJECTDAYS 2000, Messekongresszentrum Erfurt, Germany, accessible at http://www.netobjectdays.org/pdf/00/papers/jit/evans.pdf.
BCEL: The Java Bytecode Engineering Library, accessible at http://bcel.sourceforge.net
JRat: The Java Runtime Analysis Toolkit, accessible at http://jrat.sourceforge.net
[13] JFluid.: dynamicbytecode instrumentation, accessible at http://research.sun.com/projects/jfluid/
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2005 Kluwer Academic Publishers
About this paper
Cite this paper
McLeod, I., Evans, H., Gray, P., Mancy, R. (2005). Instrumenting Bytecode for the Production of Usage Data. In: Jacob, R.J., Limbourg, Q., Vanderdonckt, J. (eds) Computer-Aided Design of User Interfaces IV. Springer, Dordrecht. https://doi.org/10.1007/1-4020-3304-4_15
Download citation
DOI: https://doi.org/10.1007/1-4020-3304-4_15
Publisher Name: Springer, Dordrecht
Print ISBN: 978-1-4020-3145-8
Online ISBN: 978-1-4020-3304-9
eBook Packages: Computer ScienceComputer Science (R0)