login Register forgot password or username?
Search:         
Cradle from 3SL, the complete Model Based Systems Engineering Toolsuite, specialising in requirements management, requirements capture, model based systems engineering and for systems engineering software, support and consultancy, the logical choice: Cradle from 3SL.

January 2010 [Cradle 6.1]

Reordering Item Hierarchies

Hierarchies are seldom created in a single operation. It is more usual for a hierarchy to be created interactively, gradually developing the hierarchy item by item.

It is also very likely that the hierarchy will need to be reorganised as it is being built, for example:

  • To add a new top item into the hierarchy and move existing items below it
  • Move individual items to a different position in the hierarchy
  • Move sub-trees in the hierarchy upwards, downwards, or to any other new position

Cradle calls this process reordering.

Reording involves many operations:

  • Disconnecting a cross reference from the current parent of the item being moved
  • Reconnecting the cross reference to the item’s new parent in the hierarchy
  • Changing all of the hierarchical numbers to reflect the new structure of the hierarchy

Cradle fully supports reordering using drag-and-drop. To be able to reorder a hierarchy of items, the following must be all true:

  1. The items must all be of the same type of system note, or they must all be the pre-defined Requirements
  2. The items must be auto-numbered
  3. The items must allow hierarchical numbering using the Key attribute
  4. The items must be being shown in a tree
  5. The current navigation must either:
    • The pre-defined System scope navigation called Downwards by Key
    • A navigation which follows cross references DOWN and sorts linked items by their Key attribute (which is how Downwards by Key has been defined)

All Automatic scope queries use the Downwards by Key navigation.

As an example, if we have a System Breakdown Structure:

and we want to extend it to be:

Then the process is:

  • Add the new Workstation item
  • Reorder the Laptop tree to be after the Workstation item
  • Add the new children below the Workstation item

  • Reorder the Laptop sub-tree to be between Keyboard and Docking Station

The steps to extend the System Breakdown Structure are:

  1. Select the SBS item type in the Project sidebar:

  2. Right click and choose New &rarr Item… and enter Workstation as the Name and 2 as the Key (you could use any number, it does not have to be 2)
  3. Double-click the SBS item to see the two top-level items:

  4. Drag-and-drop the new Workstation item onto the existing Laptop item. Normally a drag-and-drop is used to create cross references, but because the conditions are correct for a reorder operation, a menu appears allowing you to choose to either reorder (in various ways) or to create a cross reference:

  5. Choose Reorder before this item and the new Workstation item will become number 1 and the Laptop item will become number 2 and the hierarchy below the Laptop item will be renumbered accordingly:

  6. Create the four new children of Workstation: Screen, Keyboard, Docking Station and Printer and ensure that they are not open in forms (so that they are not locked in the database) and that they are visible in the tree (so we can drag-and-drop onto them):

  7. The final step is to reorder the hierarchy so that Laptop is between Keyboard and Docking Station. You can either insert Laptop after Keyboard or you can insert it before Docking Station. This is a personal preference; the results are identical.

    Drag and drop Laptop onto Keyboard and choose Reorder after this item:

    and the final System Breakdown Structure is produced (double-click the items to show all levels):

There are many reasons why an attempt to reorder a hierarchy may fail, typically because someone is editing an item in the part of the hierarchy that is to be reordered, or parts of the hierarchy are baselined and cannot be changed. Cradle checks that all of the reorder operation can occur before any of it is started. Cradle will display appropriate error message(s) if a reorder cannot be completed successfully.

There are no limits on the number of times that you can reorder items in a hierarchy.

If you have change histories ( edit histories) enabled for the items in the hierarchy, then when a reorder changes an item’s Key attribute (the hierarchical number), it will also record this change in the item’s change history: