An update management system provides access to software updates (patches and
upgrades)
and to an update catalog server. The catalog server includes a chronology generator.
When a request for an update family tree for a target update is received, the chronology
generator accesses an index to find the database and record number for the target
update. The record is retrieved, indicating updates superseded by the target update
and updates superseding the target update. Records for the superseded and superseding
updates are, in turn, retrieved. The process is iterated until there are no further
superseding and no superseded updates indicated. The succession relations indicated
in the retrieved records are arranged into a family tree for the target patch.
The family tree can be used (along with dependency data) to help determine an update
for a given workstation that optimizes performance and compatibility.