Patent ID: 8635609

Claim:
A method comprising: receiving, by a processor at a server system, update information for a plurality of software programs comprising a first software program provided by a first vendor and a second software program provided by a second vendor, wherein the first vendor is distinct from the second vendor, wherein the first software program comprises an operating system component, wherein the second software program comprises an application, wherein the application complements operation of the operating system component, and wherein the update information comprises dependency information regarding the application being dependent on updates to the operating system component; determining, by the server system, a dependency of the application on a parent software update to the operating system component in view of the dependency information; receiving, by the server system, a request from a client computer for updates to the operating system component at the client computer, wherein the parent software update is responsive to fulfilling the request for updates to the operating system component at the client computer; determining, by the server system, an effect of the parent software update on the application at the client computer in view of the dependency information; selecting, by the server system, a child software update that modifies the application to compensate for the determined effect of the parent software update on the application at the client computer, wherein the second vendor provides the child software update and the first vendor provides the parent software update; and in response to receiving the request, causing the parent software update and the child software update to be sent to the client computer and installed at the client computer.