This example describes a pilot project developed as part of an SEI SOA Migration, Adoption, and Reuse Technique (SMART) implementation. The goal for the pilot is to demonstrate, within four months, the feasibility of exposing one component of a legacy system (a mission status system) as a service to be used by one consuming system (a mission planning and execution system).
A U.S. Department of Defense (DoD) transition organization has been tasked with developing services that can be used by mission planning and execution applications. As a transition organization, it has a twofold goal: (1) develop the services and (2) become knowledgeable about migrating legacy systems to services in order to assist other organizations in doing so. The organization is engaged in several migration efforts but has not used a systematic approach for making decisions.
There are two legacy systems considered as sources for the candidate services:
The mission status system (MSS) targeted for migration compares a planned mission against a current state to determine if corrective actions should be taken.
The system obtains plan data and situational awareness data from a planning system (PS).
MSS and PS run on the same machine, and there is tight coupling between them. Both MSS and PS are in the final stages of development and have not been deployed. A long-term (in two years) business goal is the full migration of MSS to services. The technical driver for the project is to make the developed services available to all planning and execution systems.
Target SOA Environment
A standard web services environment has been selected as the target SOA environment. The future environment for the developed services will most likely be a DoD proprietary SOA infrastructure. However, by performing and executing this pilot, the organization will gain valuable insights on the migration process. Also, the overall process, as well as at least a significant part of the analysis, can be carried forward.
Candidate Services for Migration
Representatives from MSS and from a mission planning and execution system that is a potential service consumer identified the following set of candidate services:
- AvailablePlans: provides a list of available plans that are being reasoned about
- TrackedTasksPerPlan: provides a list of tasks that are being tracked for a certain plan
- TaskStatus: provides the status for a given task in a given plan
- SetTaskAlert: alerts when a given task in a given plan satisfies a certain condition
These services were selected because their functionality is generic enough that it can be used by other known mission planning and execution systems.
Migration Feasibility Issues
Migration issues identified at this point are
- The short-term and long-term goals for the migration are different. The implication of this difference is that the work to accomplish the short-term goal might have to be redone to accomplish the long-term goal.
- The system is currently a single-user system. When capabilities are migrated to services, it will have to support multiple users.
- The system currently monitors a single plan. When capabilities are turned into services, it will have to support monitoring of multiple plans.
Migration Feasibility Decision Point
Based on the data obtained at this stage, a decision was made to continue with the rest of the SMART analysis. This decision was based on the following factors:
- the availability of stakeholders from the service provider and a service consumer
- a good understanding of MSS
- the request-response nature of the identified services
- a reasonable initial mapping of services to components
Discussion of Other SMART Implementations