Months in advance, conduct a complete reconnaissance mission to determine what pre-migration upgrades are required, and assess the additional time and budget required. For example, all PC's must have the following minimum requirements to support Windows 7:
1 gigahertz (GHz) or faster 32-bit (x86) or 64-bit (x64) processor
1 gigabyte (GB) RAM (32-bit) or 2 GB RAM (64-bit)
16 GB available hard disk space (32-bit) or 20 GB (64-bit)
DirectX 9 graphics device with WDDM 1.0 or higher driver
Manually checking that every single desktop meets these requirements is nearly impossible, especially if you have to deal with multiple locations. Your best bet is to use an automated asset discovery solution, which will drastically cut the time and people needed to identify non-compliant PCs. It will immediately find all computers that fall into specific parameters (e.g., less than 1 GB of RAM and/or less than 16 GB of available disk space), so you can determine which PCs need to be upgraded or replaced, and begin to estimate cost to do so.
You can also use a discovery tool to take stock of all of your software licenses and determine what can be upgraded, reused or terminated. That way, you won't waste time migrating unused or outdated applications.