Wrapping involves attaching the legacy system code to a wrapper code and incorporating them into a service oriented architecture. As proposed by (Sneed, 2006), this methodology accomplishes legacy system migration to service oriented architectures by decoupling code from the existing system. Determining the legacy system code is achieved by employing engineering tools such as automated reverse tools. The components of the code performing desirable functionalities are examined by clustering tools and flow charts. A new system is then implemented based on these components.
The interface of the new segment is then constructed from data objects thereby ensuring decoupling of the functionalities of the legacy system. The resulting interface is given a web service description language (WSDL) interface and then a simple object access protocol (SOAP) outline is employed in constructing the segment into an extensible markup language (XML) schema. The resulting services are then linked into SOA architecture by a proxy. This proxy examines the available parameters and then generates the desired WSDL thereby enabling the wrapped code to be integrated into the service oriented architecture model.
This approach has certain benefits associated with it. The reengineering of the whole system is avoided and therefore a lot of time is saved by the automation of the wrapping process. However, there are complexities in decoupling the original code to build a suitable interface capable of being wrapped. If the wrapping incorporates components of the legacy system that are not desired for SOA, the design and runtime of the new system is compromised and therefore future maintenance and modifications may be difficult to achieve (Morisio et al.
, 2002). This calls for the adjustment of the wrapper and the interface during the evolution of the components. Furthermore, the introduction of wrappers and proxies creates an additional overhead in the service oriented architecture model which could undermine system performance (Lewis & Smith, 2006). Migration Migration technique incorporates both redevelopment and wrapping techniques. However, it is particularly derived from the wrapping technique. The methods of extracting and decoupling legacy system code are similar to wrapping.
The use interfaces are therefore rearranged to the adherence of the service oriented architecture model. Not all the components are wrapped because the interfaces are created using this technique (Aversano et al. , 2001). However, significant wrapping might be required especially to interpret requests that are not supported by a language. Studies have shown that this approach was successfully employed to migrate a COBOL based system to service oriented architecture based on web services with only the server interface of the original system being wrapped for incorporation into the desired system.
The remaining components of the system were redeveloped and integrated into the service oriented architecture. The amount of wrapping and redevelopment required is therefore reduced by this methodology thereby producing a balanced system which improves the overall efficiency and design of the new system. It incorporates the advantages of redevelopment and wrapping techniques of migrating to service oriented architectures from legacy systems to achieve optimal performance levels of the new system (Zhang et al. , 2004).