next up previous contents
Next: R2HBOOK Up: The MINOS Off-line Software Previous: Leak Checker   Contents

Subsections


Dependency

Last significant change: 2001/02/20

As the software system becomes increasingly complex managing the dependencies among and within packages will become increasingly important. The Dependency package is a set of tools to analyzing the dependency structure of the system.

How to make the list of dependencies?

To make the list of dependencies for the packages in the repository setup your MINFAST path as you normally would then type:
gmake dep
in the Dependency package area. This will produce a set of files:

The dependency report files have the general format:

level. package dep-level dep-package
For a package package level is the layer of this package in the hierarchy. Packages with high levels depend on many other packages. For example, packages at level 0 depend only on external packages, packages at level 1 depend on things at level 0 and below, etc. The package package depends on the package dep-package which is found at layer dep-level in the hierarchy. Packages flagged with <n> (n is a numeric label) are circularly dependent on other packages/classes flagged with the same numbers.

Why is this useful?

I have found this useful in several ways:

Figure 16.1: A sample set of dependencies. These five classes can be tested in units of A, B, C, DBC, EADBC.
\includegraphics[width=3in]{dep_sample.eps}

The classes in Figure 16.1 should be tested in the following combinations:

If the classes are tested this way problems can be quickly located. Eg. if the test of E-C-D-A-B fails one can look at the tests of A and D-B-C for the problem. If the problem is not found there then one should look for the error in class E.
next up previous contents
Next: R2HBOOK Up: The MINOS Off-line Software Previous: Leak Checker   Contents
MINOS Software 2017-10-29