The driving force behind the service oriented architecture approach is that organizations do not want to give up the functions they have already used for decades from the legacy systems. Instead of developing these already well-defined and deployed functions again from scratch for the new platform, they are transitioning to, the companies look for a way to reuse and integrate them with the new system. The value of service-oriented architecture relies on this concept of re-use which is also a part of the green IT initiative. Reuse of internal and/or external services also accelerates the return on investment for any service oriented architecture strategy. Service oriented architecture initiative is process-driven, standard-based and loosely-coupled but requires well-defined interfaces. With this approach, companies can centralize business logic and services can be aligned with business process steps. Services then can be changed incremental as processes change, which allows companies to have faster response to customer needs and shifting markets. Since everything comes forth as services, they can be configured and reconfigured either in composite applications, such as mash ups, or bonded into processes, or abstracted into applications.
Discussion & Analyses
Like any other enterprise, software architecture service oriented architecture infrastructure also needs to address security, scalability, performance and others as well as the manageability of the services. Virtualization is the separation of a service request from the underlying physical delivery of that service. Virtualization technologies are abstracting virtual servers from the underlying hardware, while contributing to the abstraction of the computer hardware from the way in which it helps. Virtualization is also a logical abstraction which hides the underlying resource sharing and its clusters and presents a single or arbitrary point of contact (Ali & Natarajan). As stated above, virtualization refers to a class of technologies which provide a layer of abstraction of the physical characteristics of computing resources between computer hardware systems and the software systems running on them. A properly designed virtual system provides application programs an execution environment identical to its host hardware, minimally degrades performance and has complete control of system resources.
A virtualization layer of system software, called hypervisor, comes between the guest operating system and the underlying hardware on which it functions by software emulation of the underlying hardware platform's architecture. Available hypervisors permit multiple operating systems instances to run concurrently within virtual machines on a single physical machine, dynamically partitioning and sharing the available physical resources such as CPU, storage, memory, and I/O devices. In this architecture, hypervisor is responsible for running multiple operating systems' images, and all associated applications to share the resources of a single hardware machine (Kotsovinos). It makes certain that hardware resources, such as CPU, memory, I/O, are properly and securely partitioned among different operating systems' images and their applications.
Applications running on each virtual machine is protected as if they were installed on independent physical machines. In another implementation of x86 virtualization, called hosted architecture, virtualization layer functions as an application on top of an operating system. VMware player, ACE workstation and server use ...