A Practitioner's Approach to Successfully Implementing Service Virtualization
Service virtualization envisions a promising solution to alleviate dependency constraints. However, its implementation can pose confusing questions for IT architects. Success in virtualization initiatives comes from understanding the three W’s – Why virtualize, What is the virtualization process and When to virtualize. Previous papers in this series have already helped us address the questions that pertained to the “Why” and “When” of Service Virtualization. This paper focuses on the “What” of the virtualization process and also lays out a practitioner’s approach/methodology to successfully implementing Service Virtualization.
The Virtualization Methodology
In the earlier papers, we had discussed the factors that lead to the creation of service and hardware virtualization. These complimentary solutions are designed to alleviate problems posed by underutilized and over utilized systems. Service Virtualization is a promising solution; unfortunately IT architects face numerous hurdles in its implementation. Most of the hurdles can be resolved by a rigorous and a well-defined virtualization lifecycle. The virtualization lifecycle suits the inherently agile lifecycle of today’s composite application approaches, which includes SOA, BPM and Cloud-based apps, since it is iterative and incremental. Similar to a SOA development lifecycle, the virtualization lifecycle starts with the requirements management phase followed by analysis and design, implementation (develop and test) and ends with deployment and management. The figure below illustrates this concept – the inner pie displays the phases of the SOA lifecycle and the outer boxes describe the intent of the virtualization teams at each phase of the lifecycle.