However, none of this body of quantitative studies consider design by contract
concern as we do in this work. In this context, the most well-known study focusing on
the interplay between design by contract and AO was performed by Lippert and
Lopes . They used AO techniques to modularize design by contract features such
as pre- and postconditions in a large OO framework, called JWAN. Also, they
attempted to identify situations where it was easy to aspectize design by contract
code. However, it has some shortcomings that hinder its results to be extrapolated to
the development of real-like software systems. First, the target of the study was a
system where the design by contract is only homogeneous (not application-specific).
However, contracted systems can contains heterogeneous DbC (application-specific)
such those we found in the Health watcher . Second, their evaluation only considered
pre- and postconditions, whereas we also include invariants in our analysis.
Third, their overall assessment was performed only in terms of pluggability and
incremental development. Quantitative evaluation was performed only in terms of
number of LOC. The use of LOC in isolation is usually the target of severe criticisms
. For instance, in the context of the Lippert and Lopes study, the use of LOC as
the sole metric resulted in a narrow view of the e®ects of the aspectization of design
by contract on the program quality. They portrayed that the AO decompositions as
very superior to OO decompositions regarding system size.