Patent ID: 8151256

Claim:
A method for managing a software application, comprising: receiving, by a control system, an abstract application programming interface (API) command to perform a life cycle operation (LCO) on a target system, wherein the LCO identifies the software application, and wherein the software application is associated with a software application schema, obtaining a platform independent registry associated with the target system, wherein the platform independent registry describes software components executing on the target system; generating a post-LCO configuration using the platform independent registry and the software application schema, wherein the post-LCO configuration comprises an anticipated impact of executing the LCO on the target system; comparing the post-LCO configuration to a current configuration of the target system; determining, based on the comparing, that the LCO is compatible with the target system; responsive to the LCO being compatible with the target system: obtaining an operating system (OS) map associated with an OS executing on the target system, wherein the OS map comprises a mapping between the abstract API command and an OS-specific API command for performing the LCO on the target system, wherein the abstract API command is mapped to a plurality of OS-specific API commands; executing, by the control system via a remote interface, the OS-specific API command to perform the LCO on the target system to obtain a result; and updating the platform independent registry based on the result.