An Empirical Approach to Design Metrics and Judgments
Dewayne E. Perry
Center for Advanced Research In Software Engineering (UT ARISE)
The University of Texas at Austin
Scientific evaluations and comparisons of designs require a mature set of design constructs and
observable measures. Currently we do not have that maturity. The requirements are defined for
an experimental basis for developing design constructs and observable measures that can then be
used to support scientific judgments about designs and design methods and techniques.
Design is at the core of any engineering discipline and software engineering is no exception.
How good the designs are critically determine the effectiveness and viability of the software
systems we build, market and evolve. Moreover, the techniques and methods for architectural
detailed design are critical in creating architectures and designs that meet the constraints imposed
by user requirements, marketing demands, company goals, and project constraints.
If we are to advance significantly in the areas of creating architectural and detailed designs that
meet their intended constraints using appropriate methods and techniques, we must be able
• to determine which methods and techniques work best relative to the desired design domain
and architectural and design constraints, and
• to measure and evaluate architectural and design alternatives both quantitatively and
qualitatively in order to make sound judgments about these alternatives.
Currently, we hav e neither the knowledge nor mechanisms to determine the most appropriate
methods and techniques, nor do we have the measurements needed to evaluate and compare the
possible alternatives with any confidence. We are still at the stage of maturity that is nearer to
that of a craft than an engineering discipline. While we can often tell from experience that
design X is better than design Y, we do these judgments from the standpoint of an art critic, not
from the standpoint of an engineer appealing to well unders