1. Apparatus for assisting in the optimisation of a complex, hierarchical data structure comprising a plurality of elements each having data dependency upon other elements within a hierarchy, the apparatus comprising: database means for maintaining a data set incorporating information relating to a plurality of dependency structure matrices corresponding to different hierarchical levels and comprised of elements, said elements comprising first-level elements occupying a first one of the hierarchical levels and second-level elements occupying a second one of the hierarchical levels lower than the first level, wherein the second-level elements comprise second-level groups individually associated with the first-level elements, with each second-level group having one or more second-level elements representing sub-tasks comprised within a task represented by the associated first-level element, said dependency structure matrices including dependency structure matrices whose elements exhibit future dependencies regardless of how the elements are sequenced, each dependency structure matrix corresponding to one of the hierarchical levels in the data set and each dependency structure matrix providing an indication of whether the data dependency of each element is dependent on information produced by an element representing an earlier, past activity or is dependent on information produced by an element representing a future activity; display means for displaying, to a user, a representation of said dependency structure matrices at said different hierarchical levels; user input means for effecting a change of a data dependency of a selected element at any selected level in said hierarchy; and data manipulation means, responsive to a change in data dependency of a selected element occupying a selected one of the first and second hierarchical levels, for automatically effecting changes in the data set representing changes in dependencies of elements throughout the hierarchical structure including a change in data dependency to an element associated with the selected element and occupying the one of said first and second hierarchical levels other than said selected level, consequential on the change in data dependency of said selected element at said selected level in the hierarchy; wherein said data manipulation means comprises means for applying a protocol for effecting changes to grouped dependencies of the second-level elements of a given one of the second-level groups consequent on a change of a dependency for the associated one of the first-level elements.