openfasttrace icon indicating copy to clipboard operation
openfasttrace copied to clipboard

Dependencies between specification items

Open redcatbear opened this issue 5 years ago • 0 comments

As a requirement engineer, I want to optionally define dependencies from one specification item to one or more other specification items in order to document that a specification item requires the others to be complete before I can call the dependent item complete.

As a project leader, I want to define dependencies from a specification item representing a milestone to one or more representing features in order to create a milestone plan.

Understanding the difference between coverage and dependencies

There are two main differences between required coverage and dependencies:

  1. The link direction is reversed. Where coverage points from the detail to the high level concept (the decoupled way), dependencies point in the opposite direction.
  2. In case of coverage the author of the covering item decides which items are covered, with dependencies the author of the original requirements dictates the link.

Dependencies have two major uses:

  1. Pointing from project items to products where the product team tells which requirements it sees satisfied by the product. Keep in mind that product do not care about project-specifics. In fact they should have no knowledge of any project contents.
  2. Pointing from milestones to features. This reflects the fact that milestone planning a) seldom done by the same party as the requirements and b) has a different lifecycle than a requirement specification -- meaning that a milestone plan gets modified way more often than a requirement spec.

Dependencies should be avoided in for hierarchical requirement chains. This is what coverage is for. Otherwise you are introducing tight coupling between requirement documents. Worse, you are pointing in the wrong direction.

Dependencies can be used for linking requirements on the same level, but that should be handled with care. It is a sign of bad design if the implementation order of requirements is fixed.

redcatbear avatar Jun 25 '19 18:06 redcatbear