Classification and retrieval of reusable object-oriented software designs
Bibliographic record
Abstract
Effective sharing and reusing of software artifacts has been asserted to be one of the most promising approaches to improving the practice of software engineering in terms of increasing software developer's productivity and enhancing software quality. It is as beneficial to reuse software artifacts, not only at the code level, but also across the entire software development process starting with requirement specifications, through software design and coding, to testing and maintenance. This thesis proposes an approach, based on a generalization of a faceted classification scheme, for classification and retrieval of software design artifacts, in particular object-oriented design models, thus facilitating their reuse. In the proposed scheme, a facet describes one aspect of software design model and is defined as a set of predefined terms chosen from the results of analyzing various software systems specifications. The terms of each facet are arranged on a conceptual graph to aid the retrieval process. A design artifact is classified or represented in a software repository by associating it with a software descriptor to describe its important structural and behavioral properties and also to document the artifacts associated with the design model. Two retrieval mechanisms, similarity-based retrieval and feature-based retrieval, are incorporated into the classification scheme and can be used separately or in combination. The retrieval mechanisms help users to search for and rank candidate design artifacts that best match their target specifications. The similarity analysis estimates the conceptual closeness between a query descriptor and descriptors in the software repository. The feature-based retrieval estimates the discrepancy ratio between a target and candidate descriptors by taking into account only their common features. A prototype software tool of the proposed classification scheme is implemented. It is also used in the testing of the proposed classification scheme. The tests show positive results in terms of retrieval effectiveness, consistency, and usability of the classification scheme.
Fetched live from OpenAlex and de-inverted. Abstracts are not stored in this database: the inverted indexes are 8.6 GB of the frame’s 9.3 GB of text, and the host has 13 GB free.
How this classification was reachedexpand
Full frame machine prediction
Teacher imitationNot calibrated prevalence, not ground truth. Human validation pending. The Gemma side is a direct model label for every work in the frame, read from the title-only record. The Codex side is a classifier learned from the 10,348 direct Codex labels and calibrated to design-weighted sample rates; fields without enough sample support carry no Codex call. Candidate is the union of the two sides; consensus is their intersection. These outputs are machine_predicted_unvalidated and are not human labels.
Distilled classifier scores by category (both heads)
| Category | Codex | Gemma |
|---|---|---|
| Metaresearch | 0.002 | 0.011 |
| Meta-epidemiology (narrow) | 0.001 | 0.000 |
| Meta-epidemiology (broad) | 0.001 | 0.001 |
| Bibliometrics | 0.009 | 0.006 |
| Science and technology studies | 0.001 | 0.001 |
| Scholarly communication | 0.003 | 0.002 |
| Open science | 0.001 | 0.001 |
| Research integrity | 0.001 | 0.000 |
| Insufficient payload (model declined to judge) | 0.001 | 0.001 |
Machine scores (provisional)
The two teacher heads of the student model, read on this work. A score orders the frame for review; it never asserts a category, and the validation status ships verbatim with every row.
Baseline scores from an immature model (maturity gate not passed, 7 training rounds). Scores rank; they never assert a category.
score_only:v0-immature-baseline · verbatim from the scoring run: score_only means the number may rank works, and no category label ships from itClassification
machine, unvalidatedMachine predicted; a candidate call from one source (direct Gemma or distilled Codex), not a consensus.
How this classification was reached, model by model and score by score, is at the end of the page under "How this classification was reached".