The amount of engineering software developed so far is vast and spans
many scientific applications. Common features of engineering software
are robustness and efficiency, however, it is scarcely reusable. As a
matter of fact, engineers develop new programs mostly from scratch. In
this paper, we collect empirical data showing that to produce (more)
reusable programs, engineers have to follow a code development approac
h capable of controlling the code complexity during the development ph
ase. (C) 1998 Elsevier Science Ltd. All rights reserved.