Information Technology Reference
In-Depth Information
12.3.3.4 Fan-In and Fan-Out
There are two simple measures of the design of a software's design and compo-
nents: fan-in and fan-out. Fan-in for a particular component is the number of
components that call the give component. Similarly, fan-out is the number of
components call by said component. It is generally recommended that fan-out be
minimized to less than seven for most components and fan-in be maximized to
promote re-usability.
12.3.4 Architectural Design Evaluation
Evaluating a program's architecture is an important part of the design process,
especially as the complexity of a program grows. Beyond the subjective, qualitative
means for analyzing program architecture, architectural design metrics can provide
a quantitative way to assess the structure and components within a program.
Evaluation of a program's architecture often falls on the measurement of the
complexity of structure and data. Pressman, for example, suggests three com-
plexity measures pertaining to the architecture of a program: structural complexity,
data complexity, and system complexity. These measures are defined as the
following:
• Structural complexity: S(i) = f ou 2 (i)
• Data complexity: D(i) = v(i)/[f out (i) ? 1]
• System complexity: C(i) = S(i) ? D(i)
where f out (i) is the fan-out of a module i, and v(i) is the number of input/output
variables passed to and from module i. An increase in these metrics correlates to an
increase in overall architectural complexity (Pressman 2005 ). These metrics,
though, relate to hierarchical architectures only.
If you want to compare various architectures, though, also suggested are simply
shape metrics such as size, depth, width, and arc-to-node ratio of the architecture
in question. For these metrics:
• size = n ? a
• r = a/n
where n is the number of nodes, a is the number of arcs, and r is the arc-to-node
ration.
12.4 Object-Oriented Metrics
Metrics have been proposed specifically for the object-oriented approach for all
stages of the software development process. Pressman lists the following recom-
mended metrics for object-oriented projects (Pressman 2005 ):
Search WWH ::




Custom Search