You must specify in detail the target environment so that your developers can complete the application migration. You have to provide clear guidance about the techniques to be used in changing from a UNIX-based approach to a Windows “based approach. You also have to define which of the Windows-specific features you want to use in your application.
You determined your migration strategy during the assessment and analysis. You should now know whether you are porting to:
The Win32 environment and API.
The Interix environment and API.
A third-party environment and API (for example, a cross-platform environment such as Roguewave).
Your choice of target environment determines the appropriate API and the available libraries.
After you have determined the target environment, you may be able to implement standards and procedures that make the code easier to migrate. These include changing code so that it continuously works on the source platform, but also works on the target platform. For example, if you are migrating to the Interix environment, you can ensure that the application code conforms to the appropriate standards (for example, POSIX) before the migration.
Your code analysis helped you recognize the differences between the current code and the target environment. You now have to specify a standard approach to each of the differences, and determine a way to map from one to the other.
A full list of expected differences is presented in Chapter 7, Creating the Development Environment. The following are some examples:
File names , access mechanisms, and structure
Interprocess communication
Networking and remote access
User interface and screen management
Conversion of daemons to services
You can now start migrating the code and building the application on Windows. If you build the code quickly, you can also create a functioning prototype that you can use to test the effectiveness of your strategy. You may find it useful to migrate a part of the application to assess the success of your strategy.
UNIX application and development environments commonly use scripts. You may have to migrate at least some of these scripts to the target environment. As with the source code, you have the choice of rewriting the scripts or porting them. In many cases, versions of the scripting languages used in UNIX are also available in Windows, making it relatively straightforward to carry over the scripts. However, the scripts sometimes have to be rewritten using one of the scripting languages that are available in Windows.