Described are methods, apparatus and computer programs for determining
run-time dependencies between logical components of a data processing
environment. Components of the data processing environment are monitored
by monitoring agents accessing run-time activity data via APIs of the
managed system. A dependency generator identifies correlations between
the run-time activity of the monitored components. For synchronous
monitored systems, the dependency generator calculates an activity period
for monitored components and determines which component's activity
periods contain the activity periods of other components. Containment is
used as an indicator of a likely dependency relationship, and a weighting
is computed for each dependency relationship based on the consistency of
containment.