In the Toshiba software factory, quality control and productivity improvements are primary concerns. Emphasis is placed on reusing existing software modules that have been proven correct through actual operation. To achieve a substantial degree of reuse, the software design process is viewed at several levels of abstraction. In this paper, these levels of abstraction are defined, and examples of the specification for these defined levels are given. This paper proposes a ``presentation'' of each existing module at the highest level of abstraction. Traceability between the presentation and the reusable program modules which implement it is established to simplify reusability. The paper concludes with an example showing reuse of a presentation for a different application.