1. A software update method, comprising: receiving, at a first computer system, a first update request from a first client computer system for software updates, the first client computer system having a membership in a first client computer group; receiving, at the first computer system, a second update request from a second client computer for software updates, the second client computer system having a membership in a second client computer group; sending, by the first computer system, a first message to a second computer system, the first message based on a composite of the first and second client computer group's update requests, the first message identifying a composite group of software update packages to be obtained from sources identified by the second computer system; obtaining, by the first computer system, the composite group of software update packages; sending, by the first computer system, a second message to the first client computer system, the second message based on the first client computer group membership and identifying a first group of software update packages to be obtained from the first computer system; and sending, by the first computer system, a third message to the second client computer system, the third message based on the second client computer group membership and identifying a second group of software update packages to be obtained from the first computer system wherein the first group of identified software updates is not identical to the second group of identified software updates.