About This Guide

On This Page

Introduction to the UNIX Custom Application Migration Guide Introduction to the UNIX Custom Application Migration Guide
Project-based Organization of Migration Topics in UCAMG Project-based Organization of Migration Topics in UCAMG
Layout of the Guide Layout of the Guide
Resources Resources
Acknowledgments Acknowledgments

Introduction to the UNIX Custom Application Migration Guide

The UNIX Custom Application Migration Guide (UCAMG) is designed to provide the best information available about alternative strategies for migrating UNIX applications to the Microsoft® Windows® operating system environment. The UCAMG addresses all phases of a migration project, starting with its initial planning and ending with its final deployment and operation. It provides guidance in the technical aspects of the migration and also explains the best practices and the major issues that you are likely to face during the migration process. The guide includes five volumes, which are summarized as follows:

  • Volume 1: Plan . This volume gives an overview of the Windows and UNIX environments; development of the solution architecture, project plan, and infrastructure; and preparation of the development and testing environments.

  • Volume 2: Migrate Using Windows Services for UNIX 3.5 . This volume describes Windows Services for UNIX 3.5, the Interix environment, and architectural differences between Interix and UNIX environments. It describes the migration activities involved in migrating UNIX applications to the Interix environment. It also describes deployment aspects to consider during the Developing Phase and the testing activities to be performed in both the Developing and the Stabilizing Phases.

  • Volume 3: Migrate Using Win32/Win64 . This volume gives an overview of the Microsoft Win32® and Win64 architectures and the steps involved in migrating UNIX applications to the Win32/Win64 environments using the Windows Platform Software Development Kit (SDK). It also describes deployment aspects to consider during the Developing Phase and the testing activities to be performed in both the Developing and the Stabilizing Phases.

  • Volume 4: Migrate Using .NET . This volume describes the .NET architecture, configuration of the .NET environment, and the steps involved in migrating UNIX applications to the .NET environment using Microsoft Visual Studio® .NET and .NET Framework. It also describes deployment aspects to consider during the Developing Phase and the testing activities to be performed in both the Developing and the Stabilizing Phases.

    Note  This guide considers Visual Studio .NET 2003 as the integrated development environment (IDE) for developing .NET applications. Although newer technologies exist, the guide is based on best practices developed by partners and customers. Any future releases of the guide will incorporate new practices as they become established. These latest technologies and their features are briefly described in the “Roadmap for Future Migrations” section of Chapter 2 of Volume 5: Deploy and Operate.

  • Volume 5: Deploy and Operate . This volume describes the steps involved in deploying the migration and post-deployment support activities. It also briefly describes how Microsoft Operations Framework (MOF) can be used during the operations activities after the migration.

Users will find the UCAMG helpful because its content includes more than hands-on instructions for conducting the various migration options. Migration projects have several aspects that must be planned carefully from the outset. A migration project involves not just basic software reengineering, but also other important activities—for example, planning the project's objectives, making the appropriate decisions to meet those objectives, and managing the project's resources. Decisions that you make at the start of the project will have repercussions up to the end of the project. Therefore, it is very important to have a clear view of the direction that you want your migration project to take. It is also important to know your target environment and the full plans for deployment to avoid any post-deployment issues. The UCAMG supports meeting these needs through planning guidance that makes connections between business requirements and technology alternatives.

Intended Audience

This guide is designed for senior IT decision makers and managers, network managers, project managers, and operating system administrators. In addition, because a large part of the guide covers the detailed changes that are made at the level of coding, it is also a valuable resource for developers and testers. The following list describes the specific ways each audience can use the guide:

  • IT decision makers and managers. High-level IT decision makers and managers can find information on the feasibility of migrating applications from UNIX to Windows. They can also find guidelines on assessing the UNIX application and choosing the appropriate path and strategy for migration. Volume 1: Plan of this guide may be more applicable to IT decision makers and managers than the technical volumes.

  • Network managers. Network managers can find help for assessing the current infrastructure in their UNIX environment and identifying the high-level infrastructure requirements for migration. The guide also provides instructions for deploying and maintaining the applications and systems after the migration.

  • Project managers. With the help of this guide, project managers can assess the feasibility of migration, identify major areas that will be affected by the migration, and choose the right environment and strategy for conducting the migration. The guidance discusses common issues involved in migrating applications from UNIX to Windows and provides resolutions for them. Project managers can use this guide to plan the development, budget, and delivery of the migration. Volume 1: Plan, Chapter 2, “Envisioning Phase: Beginning Your Migration Project” and Chapter 3, “Planning Phase: Planning Your Migration Project” are more applicable to project managers.

  • Operations managers. Operations managers can use this guide to obtain information on the interoperability issues that must be addressed when deploying an application to the new environment. The guide also provides information on integration, deployment, support, and maintenance of the application. Volume 5: Deploy and Operate of the guide is most applicable to operations managers.

  • Developers. Developers can use this guide to learn about the various UNIX-to-Windows migration options and choose the best strategy to fit their environment and application types. The build volumes of the guide (Volume 2, Volume 3, and Volume 4) are more applicable to developers because detailed instructions for making code changes in the migration projects are explained in these volumes.

  • Testers. Testers can use this guide to identify the testing methodology that is best suited for their migration scenario. With the help of this guide, they can test the application for such aspects as functionality, management, performance, and stability.

    Testing a migrated application is different from testing a software development project. As such, this guide focuses on areas that are typically challenged by a migration project. The chapters in the guide that may be applicable to testers are the following:

    • Volume 1: Plan; Chapter 4, “Setting Up the Development and Test Environments”

    • Volume 2: Migrate Using Windows Services for UNIX 3.5; Chapter 8, “Deployment Considerations and Testing Activities” and Chapter 9, “Stabilizing Phase”

    • Volume 3: Migrate Using Win32/Win64; Chapter 8, “Deployment Considerations and Testing Activities” and Chapter 9, “Stabilizing Phase”

    • Volume 4: Migrate Using .NET; Chapter 9, “Deployment Considerations and Testing Activities” and Chapter 10, “Stabilizing Phase”

Knowledge Prerequisites

To use this guide effectively, the audience should meet the following knowledge prerequisites for each volume:

  • Volume 1: Plan

    • Basic knowledge of the UNIX and Windows environments.

    • Basic hands-on experience with UNIX and Windows environments.

    • Knowledge of software engineering methodologies.

  • Volume 2: Migrate Using Windows Services for UNIX 3.5

    • Basic knowledge of UNIX and Windows operations and application programming.

    • Hands-on experience with Windows environments.

    • Familiarity with UNIX administration skills.

    • Understanding of the configurations of Windows Services for UNIX 3.5

  • Volume 3: Migrate Using Win32/Win64

    • Basic knowledge of the UNIX and Windows operations and application programming.

    • Knowledge of the UNIX system API.

    • Familiarity with C, C++, Fortran, and X Windows applications.

    • Understanding of the Windows API.

  • Volume 4: Migrate Using .NET

    • Basic knowledge of UNIX and the .NET Framework.

    • Knowledge of the UNIX system API.

    • Familiarity with .NET languages.

  • Volume 5: Deploy and Operate

    • Knowledge of the deployment methodology on UNIX.

    • Understanding of deployment methodology on Windows.

Project-based Organization of Migration Topics in UCAMG

The five volumes that make up the UCAMG provide technical and solution-specific information in the linear context of a project-based sequence. Specifically, the guide follows the structure of Microsoft Solutions Framework v.3.0 (MSF), a milestone-based framework for IT projects that defines five distinct project phases: Envisioning, Planning, Developing (or Migrating), Stabilizing, and Deploying. MSF is a flexible and scalable framework that provides guidance for managing the people, process, and technology elements encountered by most projects.

Managing IT projects according to a disciplined process that improves the odds of the success of a project is an industry-proven need and provides the rationale for the organization of this guide. The project-based organization of topics facilitates project management and enables different audiences to focus on the areas of most interest to them.

Whereas some readers will need to focus narrowly on the technical tasks involved in migrating UNIX applications to the Windows environment (covered in the UCAMG), others with project management and team lead responsibilities may need to understand the broader issues involved in a migration project. These readers should refer to the UNIX Migration Project Guide (UMPG).

The UMPG is based on MSF v.3.0 and describes best practices and principles that can apply to all UNIX migration projects. Like the UCAMG, it is organized by phase and covers the specific activities, the roles involved, and the deliverables that belong to each phase. The UMPG is available for download at https://go.microsoft.com/fwlink/?LinkId=20012. In-depth information about MSF v.3.0 is available at https://www.microsoft.com/technet/solutionaccelerators/msf/default.mspx.

Note Although the two guides are designed to be used together, the UMPG is not required if the organization has an alternative project methodology in place. In that case, the MSF phases and team structure can be mapped to the elements of the methodology used by the organization. If you plan to use this guide to implement a project, we recommend that you read the “Overview of MSF” section in the UMPG to become familiar with the MSF Process Model and the MSF Team Model.

Layout of the Guide

Figure 0.1 shows the layout of the guide and the correlation of the volumes with MSF process phases. Whereas Volumes 1 and 5 are applicable to all UNIX to Windows migration projects, Volumes 2, 3, and 4 cover alternative technology approaches to the Developing and Stabilizing phases. The planning activities covered in Volume 1 are intended to enable readers to decide which of Volumes 2, 3, and 4 they should consult for detailed technical guidance about implementing the migration approach they have chosen.

Note *   *Volumes 2, 3, and 4 are referred to as the build volumes of this guide. The topics in these volumes are organized in parallel to facilitate comparisons between development techniques.

Figure 0.1 UCAMG organization

Figure 0.1 UCAMG organization

Resources

Resources available with this guide include job aids (tools and templates for some of the project deliverables) an acronyms list, and code samples.

Acronyms

See the Acronyms list accompanying this guide for a list of the acronyms and their meanings used in this guide.

Code Samples

The build volumes, Volume 2: Migrate Using Windows Service for UNIX 3.5, Volume 3: Migrate Using Win32/64, and Volume 4: Migrate Using .NET, of this guide contain several code samples to illustrate certain programming concepts. These code samples are available as source files in a Tools and Templates folder in the download version of this guide, available at https://go.microsoft.com/fwlink/?LinkId=30864.

Document Conventions

Table 0.1 provides details of the document conventions that this guide uses.

Table 0.1. Document Conventions

Text Element

Meaning

Bold text

Used in the context of paragraphs for file names; commands; literal arguments to commands (including paths when they form part of the command); switches; and programming elements such as methods, functions, data types, and data structures.

Also used to identify the UI elements.

Italic text

Used in the context of paragraphs for variables to be replaced by the user.

Also used to emphasize important information.

Monospace font

Used for excerpts from configuration files, code examples, and terminal sessions.

Monospace bold font

Used to represent commands or other text that the user types.

Monospace italic font

Used to represent variables that the reader supplies in command-line examples and terminal sessions.

Shell prompts and Code Snippets

Used to represent shell scripts and code snippets.

Note

Represents a note.

Code

Represents code.

Acknowledgments

Project Managers 

Pablo Barcenas Ibinarriaga–Microsoft Corporation

Karthikeyan Venkataraman–Infosys

Principal Consultant

Nageswar Cherukupalli–Infosys

Technical Architects 

Azhar Amir–Infosys

Venu Brundavanam–Infosys

Peter Larsen–Microsoft Corporation

P. Kavitha Nagaraj–Infosys

Jason Zions–Microsoft Corporation

Technical Consultants

Priyaranjan Dash–Infosys

Dhiraja–Infosys

Subhadra Kanti Karra–Infosys

Praveen Chakravarthi Kotam–Infosys

Smitha Nataraj–Infosys

Govindarajan Rajagopalan–Infosys

Sundar Subramanian–Infosys

Technical Reviewers 

Larry Mead–Microsoft Corporation

Lawrence Twork–Microsoft Corporation

Test Lead

Sandor Kiss–Microsoft Corporation

Tester

Ryan Graham–Excell Data Corporation

UE Lead

Gaile Simmons–Microsoft Corporation

Editors

Ayesha Dawsom–Infosys

Kishore Gorti–Infosys

Manjusha Nair–Infosys

Patricia Rytkonen–Volt Technical Services

Download

Get the UNIX Custom Application Migration Guide

Update Notifications

Sign up to learn about updates and new releases

Feedback

Send us your comments or suggestions