A Framework for Reverse Engineering by Thomas Panas