Automated trace tools dynamically generate links between various software artifacts such as requirements, design elements, code, test cases, and other less structured supplemental documents. Trace algorithms typically utilize information retrieval methods to compute similarity scores between pairs of artifacts. Results are returned to the user as a ranked set of candidate links, and the user is then required to evaluate the results through performing a topdown search through the list. Although clustering methods have previously been shown to improve the performance of information retrieval algorithms by increasing understandability of the results and minimizing human analysis effort, their usefulness in automated traceability tools has not yet been explored. This paper evaluates and compares the effectiveness of several existing clustering methods to support traceability; describes a technique for incorporating them into the automated traceability process; and proposes new techniques based on the concepts of theme cohesion and coupling to dynamically identify optimal clustering granularity and to detect cross-cutting concerns that would otherwise remain undetected by standard clustering algorithms. The benefits of utilizing clustering in automated trace retrieval are then evaluated through a case study.
In large and complex software projects, the knowledge needed to elicit requirements and specify the functional and behavioral properties can be dispersed across many thousands of stakeholders. Unfortunately traditional requirements engineering techniques, which were primarily designed to support face-to-face meetings, do not scale well to handle the needs of larger projects. We therefore propose a semi-automated requirements elicitation framework which uses data-mining techniques and recommender system technologies to facilitate stakeholder collaboration in a large-scale, distributed project. Our proposed recommender model is a hybrid one designed to manage the placement of stakeholders into highly focused discussion forums, where they can work collaboratively to generate requirements. In our approach, statements of need are first gathered from the project stakeholders; unsupervised clustering techniques are then used to identify cohesive and finely-grained themes and a users' profile is constructed according to the interests of the stakeholders in each of these themes. This profile feeds information to a collaborative recommender, which predicts stakeholders' interests in additional forums. The validity and effectiveness of the proposed recommendation framework is evaluated through a series of experiments using feature requests from three software systems.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.