—Virtual machines offer unique advantages to the scientific computing community, such as Quality of Service(QoS) guarantee, performance isolation, easy resource management, and the on-demand deployment of computing environments. Using virtual machines as a computing resource within a distributed environment, such as Service Oriented Architecture (SOA), creates a variety of new issues and challenges that must be overcome. Traditionally, parallel task scheduling algorithms only focus on handling CPU resources. Using of a virtual machine, however, requires the monitoring and management of additional resource properties. Additionally, CPU, memory, storage, and software licenses must also be considered within the scheduling algorithm. The objective of this paper is to address these challenges of a multi-dimensional scheduling algorithm for virtual machines within a SOA. To do this, we deploy a testbed SOA environment composed of virtual machines which are capable of being registered, ind...