ICARUS parses Delphi or Borland Pascal source code and generates a Uses Report. This report will help you remove unneeded units from your uses lists. You will also know which units that can be moved from the interface uses list to the implementation uses list.
Removing unused uses references has multiple benefits:
Cleaner code to maintain, no need to bother about code that is not used
Code from initialization and finalization sections in unused units is not linked in
Compilation runs smoother and quicker
ICARUS is very easy to use, just select a source file, set a few options, and start analyzing. Or let the built-in Wizard guide you through this process.