Abstract
This paper presents HERCULE, an approach to non-invasively tracking end-user application activity in a distributed, component-based system. Such tracking can support the visualisation of user and application activity, system auditing, monitoring of system performance and the provision of feedback. A framework is provided that allows the insertion of proxies, dynamically and transparently, into a component-based system. Proxies are inserted in between the user and the graphical user-interface and between the client application and the rest of the distributed, component-based system. The paper describes: how the code for the proxies is generated by mining component documentation; how they are inserted without affecting pre-existing code; and how information produced by the proxies can be used to model application activity. The viability of this approach is demonstrated by means of a prototype implementation.
Keywords
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
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
ACM. 1998 International Workshop on Component-Based Software Engineering. Proceedings of the 1988 ACM SIGMETRICS Conference on Measurement and Modeling of Computer Systems, Kyoto, Japan, April 25–26, 1998 1988. URL: http://www.sei.cmu.edu/cbs/icse98/papers/index.html
Human Interface Guildelines: The Apple Desktop Interface. Addison-Wesley, Reading, Massachusetts, 1987. Apple Computer Inc.
http://www.parc.xerox.com/spl/projects/aop/aspectj. Aspect J Web Page, 1998.
T. Ball and J.R. Larus. Optimally profiling and tracing programs. ACM Transactions on Programming Languages and Systems, 16(4):1319–1360, 1994.
L. Blackshaw and B. Fishhoff. Decision making in online searching. Journal of the American Society for Information Science, 39:369–389, 1988.
N. Borenstein. Programming as if People Mattered. Princeton Univeristy Press, Princeton, New Jersey, 1991.
A.N. Burton and P.H.J. Kelly. Workload characterization and using lightweight system call tracing and re-execution. In IEEE International Performance Computing and Communications Conference. IPCCC’ 98, Phoenix/Tempe, Arizona, USA, February 16–18 1998. IEEE.
A.N. Burton and P.H.J. Kelly. Tracing and reexecuting operating system calls for reproducible performance experiments. Computers and Electrical Engineering: An International Journal, May 1999.
F.R. Campagnoni and K. Ehrlich. Retrieval using a hypertext-based help system. ACM Transactions on Information Systems, 7:271–291, 1989.
J.M. Carroll, editor. Interfacing Thought: Cognitive Aspects of Human-Computer Interaction. MIT Press, Cambridge, MA, 1987.
J.M. Carroll and M.B. Rosson. The paradox of the active user. In [10], chapter 5, pages 80–111. 1987.
M. Chalmers, K. Rodden, and D. Brodbeck. The order of things: Activity-centred information access. In Proceedings of the 7th International Conference on the World Wide Web, pages 359–367, Brisbane, Australia, Oct 5–7 1998.
H.C. Chan, K.K. Wei, and K.L. Siau. The effect of a database feedback system on user performance. Behaviour and Information Technology, 14(3):152–62, 1995.
D. Chappell. Com+. WEB Document, April 1998. http://www.chappellassoc.com/articles.htm.
C. Dellarocas. Toward exception handling infrastructures for component-based systems. In [1], 1998.
T. Fawcett and F. Provost. Activity monitoring: Noticing interesting changes in behaviour. In Proceedings of the 5th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, San Diego, CA USA, August 15–18 1990. ACM.
R. Guerraoui, B. Garbinato, and K.R. Mazouni. Garf: A tool for programming reliable distributed applications. IEEE Concurrency, 5(4):32–39, October/December 1997.
C. Jeffery, W, Zhou, K. Templer, and M. Brazell. A lightweight architecture for program execution monitoring. In ACM SIGPLAN/SIGSOFT workshop on Progra Analysis for Software Tools and Engineering, Montreal, Canada, June 16 1998. ACM.
J. Joyce, G. Lomow, K. Slind, and B. Unger. Monitoring distributed systems. ACM Transactions on Computer Systems, 5(2):121–150, May 1987.
M.A. Kersten and G.C. Murphy. Atlas: A case study in building a web-based learning environment using aspect-oriented programming. Technical Report TR-99-04, Department of Computer Science, University of British Columbia, March 31 1999. Wed, 07 Apr 1999 21:31:26 GMT.
G. Kiczales. Aspect-oriented programming. ACM Computing Surveys, 28(4es):154–154, December 1996.
P. Leibscher and G. Marchionini. Browse and analytical search strategies in a full-text cd-rom encyclopedia. School Library Media Quarterly, Summer:223–233, 1988.
C. Lewis. Understanding what’s happening in system interactions. In D.A. Norman and S.W. Draper, editors, [30], chapter 8, pages 171–186. Lawrence Erlbaum Associates, Publishers, Hilldale, New Jersey, 1986.
X. Lin, P. Liebscher, and G. Marchionini. Graphical Representations of Electronic search Patterns. Journal of the American Society for Information Science, 42(7):469–478, 1991.
G. Marchionini. Information-seeking strategies of novices using a full-text electronic encyclopedia. Journal of the American Society for Information Science, 50:54–66, 1989.
Sun Microsystems. javadoc-The Java API documentation Generator. Web Document. http://java.sun.com/products/jdk/1.3/docs/tooldocs/solaris/javadoc.html.
Sun Microsystems. Enterprise Java Beans Specification. Web Document. URL: java.sun.com/products/ejb, March 1998.
J. Nielsen. Usability Engineering. AP Professional, Boston, 1993.
D. Norman. The “problem” of automation: Inappropriate feedback and interaction, not “overautomation”. Technical Report ICS Report 8904, Institute for Cognitive Science, University of California, San Diego, La Jolla, California, 92093, 1989.
D.A. Norman and S.W. Draper, editors. User Centred System Design. New Perspectives on Human-Computer Interaction. Lawrence Erlbaum Associates, Publishers, Hilldale, New Jersey, 1986.
J.R Olsen. Cognitive analysis of people’s use of software. In [10], chapter 10, pages 260–293. 1987.
K.V. Renaud. A Non-Invasive Mechanism for Monitoring Calls to Java Packages. Technical Report TR-1999-32, Department of Computing Science, University of Glasgow, 17 Lilybank Gardens, Glasgow,G12 8RZ, April 1999.
K.V. Renaud. Tracking activity at the user interface in a Java application. Technical Report TR-1999-33, Department of Computing Science, University of Glasgow, 17 Lilybank Gardens, Glasgow, G12 8RZ, April 1999.
B. Shneiderman. Designing the User Interface. Addison-Wesley, Reading, Massachusetts, 1998.
M. Siegle and R. Hofmann. Monitoring program behaviour on SUPRENUM. In International Conference on Computer Architecture. Proceedings of the 19th Annual International Symposium on Computer Architecture, Queensland, Australia, May 19–21, 1992 1992. ACM.
R.N. Taylor and G.F. Johnson. Separations of concerns in the Chiron-1 user interface development and management system. In Stacey Ashlund, Ken Mullet, Austin Henderson, Erik Hollnagel, and Ted White, editors, Proceedings of the Conference on Human Factors in computing systems, pages 367–374, New York, 24–29 April 1993. ACM Press.
H. Thimblebey. Combining systems and manuals. In J.L. Alty, D. Diaper, and S. Draper, editors, People and Computers VIII HCI’93, pages 479–88, 1993.
A. Thomas. Selecting Enterprise JavaBeans Technology. Prepared for WebLogic, Inc., July 1998. http://www.beasys.com/products/weblogic/server/papers.html.
J.G. Trafton and D.P. Brock. Simplifying interactions with task model tracing. ACT-R Summer School, Psychology Department, Carnegie Mellon University, June 1996.
S. Willett. Cloudscape Woos VARs for Java Database. Computer Reseller News 6-99, June 1999. http://www.crn.com/search/display.asp?ArticleID=7017.
D. Wybranietz and D. Haban. Monitoring and performance measuring distributed systems during operation. In Proceedings of the 1988 ACM SIGMETRICS Conference on Measurement and Modeling of Computer Systems, pages 197–206, Santa Fe, USA, May 1988. ACM.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2000 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Renaud, K. (2000). HERCULE: Non-invasively Tracking Java™ Component-Based Application Activity. In: Bertino, E. (eds) ECOOP 2000 — Object-Oriented Programming. ECOOP 2000. Lecture Notes in Computer Science, vol 1850. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45102-1_22
Download citation
DOI: https://doi.org/10.1007/3-540-45102-1_22
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-67660-7
Online ISBN: 978-3-540-45102-0
eBook Packages: Springer Book Archive