Patent ID: 8281307

Claim:
A computer program product stored in a memory and executable by a processor, and comprising a virtual part for composing a virtual solution comprised of a plurality of virtual parts, the virtual part comprising: a virtual image comprising a set of software components, wherein each software component in the set of software components is compatible with each other; a set of configurability points, wherein each configurability point in the set of configurability points defines at least one parameter of at least one of the software components of the virtual image that is configurable during virtual solution composition, wherein virtual solution composition comprises associating at least a first virtual part to operate with at least a second virtual part; a set of virtual ports, wherein each virtual port within the set of virtual ports indicates at least one of a set of virtual parts required by the virtual part comprising the set of virtual ports, and a set of virtual parts that are compatible with the virtual part, wherein a compatible virtual part comprises a virtual port having a first set of properties that match a second set of properties of at least one of the virtual ports in the set of virtual ports, and wherein each virtual port within the set of virtual ports identifies a set of configuration parameters that are exchanged with a remote virtual part for configuring at least one of the software components of the virtual image with at least one software component of a virtual image in the remote virtual part; and a set of configuration operations configured to reconfigure the virtual image based on at least one of a virtual part associated with the virtual part comprising the set of configuration operations, and an operating environment associated with the virtual part comprising the configuration operations.