I asked David Guembel, one of the fathers of the software to email me a short describtion:
On an abstract level, the idea behind our ganymede system is simple: To make an application run under Wine (a free Win32-API layer and Windows executable loader), it is neccessary to know what parts of the Windows API are actually required by that particular piece of software. Software has a modular structure - in this context, a module is a Windows executable (.DLL, .EXE, .OCX etc.) - and every module provides (exports) certain functionality and requires (imports) functionality from other modules. Thus, ganymede internally creates a dependency graph of an application's binaries. This method is static and does not require anything but a fresh installation of the software to be analyzed. Before x-raying a Windows application, ganymede parses and stores an analysis of the soure code of one or more Wine versions. It automagically determines the implementation state of the APIs provided by Wine. During a software analysis, the functionality required by the Windows application is compared to what Wine provides, and missing or incomplete APIs are reported. By storing Wine versions and the dependency structure of the analyzed applications in a database, automatic or manual re-analysis with different Wine versions is possible. Via the API ganymede itself provides, the collected data is accessible in several ways. One application of that API is our tool named sysiphus, which uses ganymede and a GUI-based approach to semi-automatically determine the best possible Wine configuration while providing for the possibility to re-use already licensed Windows DLLs to fill the gaps Wine still leaves.