L. H. Etzkorn, C. G. Davis, L. L. Bowen, J. C. Wolf, R. P. Wolf, M. Y. Yun, B. L. Vinz, A. M. Orme, and L. W. Lewis
Software reuse has been demonstrated to increase productivity, reduce costs, and improve software quality. The research that has addressed this problem has concentrated on code created in the functional domain. However, in recent years much object-oriented code has been developed. In many cases eventual reuse of the code was not considered in the software development process, and so even though the object-oriented paradigm tends to result in more reusable code than that developed in the functional decomposition paradigm, the code itself was not specifically designed for reuse. An approach for the automated identification of reusable components in object-oriented legacy code is presented in this paper. This approach includes a natural language processing, knowledge-based tool for the identification of components reusable in a chosen domain. It also includes a reusability metrics tool that uses low level OO metrics to determine high level reusability quality factors in order to quantify the reusability of OO components.