In this article we present COSMOPEN, a reverse-engineering tool optimised for the behavioural analysis of complex layered software. COSMOPEN combines cheap and non-intrusive observation techniques with a versatile graph manipulation engine. By programming different graph manipulation scripts, the 'focal length' of our tool can be adapted to different abstraction levels. We illustrate how our tool can be used to extract high-level behavioural models from a complex multithreaded platform (GNU/Linux, CORBA middleware).
This paper is an extended version of the technical report COMP-002-2008. You may also want to look at the slides of my corresponding talk.
Copies / Update: Please contact me by email if you wish to obtain a copy of a paper that is not available on line.