World Scientific
Skip main navigation

Cookies Notification

We use cookies on this site to enhance your user experience. By continuing to browse the site, you consent to the use of our cookies. Learn More
×

System Upgrade on Tue, May 28th, 2024 at 2am (EDT)

Existing users will be able to log into the site and access content. However, E-commerce and registration of new users may not be available for up to 12 hours.
For online purchase, please visit us again. Contact us at customercare@wspc.com for any enquiries.

Key Classes in Object-Oriented Systems: Detection and Assessment

    https://doi.org/10.1142/S0218194019500451Cited by:10 (Source: Crossref)

    Inadequate documentation of software design has been known to be a barrier for developers. Interestingly, several relevant object-oriented systems have their design documented using key classes, which are meant to represent key concepts of the systems. In order to fill the gap of under-documented design, we present Keecle, an approach for detecting a predefined number of key classes in a semi-automatic way. The main challenge is to reduce the space of potentially thousands of classes to just a few representatives of the main concepts of a system, while maintaining high precision. The approach is evaluated with 13 systems in order to assess its correctness. The ground-truth is obtained either from the original documentation, or from third-party, or from the respective developers. The results were analyzed in terms of precision and recall, and have shown to be superior compared to the state-of-the-art approach. In order to evaluate if key classes are more critical from the design point of view, we evaluated whether they are associated with cohesion and coupling metrics. We found that although key classes, in general, are critical from the point of view of design, there are other classes that are also critical, suggesting that being aware of key classes encompass information not available in structural metrics, and could be useful as a additional facet for design assessment.

    Remember to check out the Most Cited Articles!

    Check out our titles in C++ Programming!