Information Technology Reference
In-Depth Information
TABLE 17.1
Summary of Optimization Metrics
Type of Metric
Comments
Ranking
Cohesion
High cohesion is an indication of a well-designed
system
1
Coupling
Low coupling is an indication of a well-designed
system
1
Cyclomatic Complexity
Only measures complexity as a function of control
flow
2
Halstead's Metric
Difficult computations as well as questionable
methodology for obtaining some mathematical
relationships
2
Function Point
Dominant metric for some types of economic and
quality studies. However, some software
applications so large that normal function point
analysis is too slow
2
Lines of Code
Outdated, has not been used widely since the
mid-1980s
3
some software applications are now so large that normal function point analysis is too
slow and too expensive to be used. Second, as of 2008, there are at least 24 function
point variations in which the number of variations tends to make baseline studies
difficult.
The next optimization metric, cyclomatic complexity, also has drawbacks, as it
only measures complexity as a function of control flow. Instead, Halstead's metrics
are suitable for measuring how intensely the programming language is used. However,
the Halstead metric has been criticized for its difficult computations as well as its
questionable methodology for obtaining some mathematical relationships.
In contrast to LOC, function point, cyclomatic complexity, and Halstead's metric,
some simpler metrics to use are cohesion and coupling. Indeed, high cohesion com-
bined with low coupling is a sign of a well-structured computer system and a good
design. Such a system supports the goals of high readability and high maintainability.
Table 17.1 is a table summarizing each optimization metric, comments, and a ranking
in which 1 is the best, 2 is average, and 3 is worst. As seen in Table 17.1, both cohe-
sion and coupling rank the highest, followed by cyclomatic complexity, Halstead's
metric, function point analysis, and LOC.
Therefore, although there are many types of optimization techniques on the market
today, some of the best optimization techniques are probably cohesion and coupling.
17.3.1
Response Time Techniques
Response time is the presentation of an input to a system and the realization of
the required behavior including the availability of all associated outputs (LaPlante,
2005). Response time is important in real-time applications because it estimates the
maximum amount of time until an event, such as when a communication from another
 
Search WWH ::




Custom Search