Application of an Iterative Approach to DoD Software Migration Planning, An
John BergeyLiam O'Brien
Dennis Smith
CMU/SEI-2002-TN-027
September 2002
Product Line Practice Initiative
Unlimited distribution subject to the copyright.
1 Introduction
In recent years, system modernization has received much attention within the Department of Defense (DoD). Typically, that attention has focused on the technical and acquisition issues associated with the new system. Less attention has been paid to the equally important issue of migration planning. A migration plan is necessary to provide guidance on how to phase out the legacy system and move to the new system.
A good software migration plan should
- clearly describe the approach for migrating users and operations from the legacy system to the new system
- contain sufficient detail to
- verify that the approach is complete, coherent, and consistent
- validate that the approach is on target
- verify that the approach is complete, coherent, and consistent
- provide a basis for
- communication and understanding among stakeholders
- managing resources and staff
- managing the project (i.e., internal view of the project)
- establishing the appropriate relationships with and commitments from stakeholders
- establishing a framework under which any related contract efforts can be managed
- communication and understanding among stakeholders
- provide a means for executive management to monitor the effort (i.e., external view of the project)
- reduce risk and increase the likelihood of a successful migration effort
This technical note describes the initial results of an approach to software migration planning that is currently being piloted in a major DoD organization. The approach enables migration planning to be managed proactively. It is an iterative approach that involves defining and refining mini-plans of action and adding new focus areas as circumstances change and the effort progresses. While this note is based on a specific migration example, the approach is also applicable to migration planning in general.
2 Background
A large DoD organization is in the midst of a multi-year effort that involves a migration from a large number of legacy systems to a new consolidated system that will feature a common user interface with single-point access to the system. The legacy systems will be phased out over several years as different sets of new functionality become available.
The initial draft of the organization's migration plan identified the following major migration-planning factors:
- key tasks, roles, and responsibilities
- current environment
- new environment
- migration timing and prioritization
- migration policies
- risk factors
That draft provided a high-level overview for the overall migration effort, including the selection of an initial pilot for migration. However, it needed an additional level of detail to make it actionable and a mechanism for making it a "living document" that would evolve throughout the duration of the migration.
To get to the required level of detail, the team from the Software Engineering Institute (SEI) met with the migration team and prepared a set of checklists to address salient migration issues related to the development/migration cycle. These checklists helped to gain insights on the current status of the migration effort, how it was being coordinated with the development effort, and important issues and problems. Next, the SEI team analyzed the information and identified candidate software focus areas that appeared to be most relevant to the program's success. The SEI team presented the candidate focus areas to the migration team. After several iterations, both teams reached a consensus on an initial set of focus areas to pursue in some detail.
The migration team identified a set of associated activities for each focus area. Then the program manager assigned a team member to each area and asked that he or she develop a mini-plan of action for it.
Section 3 outlines the focus areas that were identified. Section 4 presents a template for driving the focus areas to the next level of detail and producing a mini-plan of action. Section 5 presents a model for performing the refinement of the migration plan. It proposes a spiral model that starts with an existing version of a migration plan and successively refines the plan for a set of focus areas.
3 Migration-Planning Focus Areas Defined by the Prototype Program
Any migration effort will have a different set of priorities. For the pilot program, the team identified six critical focus areas through the process described in Section 2.
The software focus areas that we identified included
- migration planning and management
- deployment and transition ass