Skip to content

Commit 5bc0929

Browse files
committed
add description of algorithm
1 parent cddc782 commit 5bc0929

1 file changed

Lines changed: 14 additions & 4 deletions

File tree

README.md

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,14 +4,24 @@
44

55
## Overview
66
This research artifact contains the boosted retroactive comparison-based feature tracing algorithm as presented in our [SPLC 2024 paper]().
7+
78
In the paper, we explore how minimal seeds of proactive feature traces enhance the accuracy of automated, heuristic-based retroactive tracing.
89
Our results demonstrate that only small amounts of proactive feature information can boost the overall accuracy of the tracing and
910
that the number of variants compared affects the effectiveness of the boosted tracing approach.
1011

11-
TraceBoosting is an algorithm designed to enhance retroactive feature tracing with proactively collected feature traces.
12-
It is particularly useful for projects with multiple product variants, where it can improve the accuracy and efficiency of the tracing process.
13-
This projects presents a prototype of our algorithm that boosts comparison-based retroactive feature tracing.
14-
The used retroactive comparison-based tracing method is inspired by the algorithm used by the tool [ECCO](https://jku-isse.github.io/ecco/).
12+
<img alt="Comparison-Based Feature Tracing" src="docs/boostedTracingConcept.png" height="500" />
13+
14+
TraceBoosting, as sketched conceptually in above figure, is an algorithm designed to enhance retroactive feature tracing with proactively collected feature traces.
15+
Particularly, this implementation compares multiple product variants which are represented as artifact trees.
16+
It builds sets of co-occurring artifacts by matching the trees and computes sets of possible and impossible features for these co-occurring artifact sets based on the respective configuration in which they occur.
17+
This heuristic retroactive comparison-based tracing method is inspired by the algorithm used in the tool [ECCO](https://jku-isse.github.io/ecco/).
18+
19+
To increase the accuracy and efficiency of the heuristic algorithm,
20+
we integrate proactive knowledge (represented as rectangles attached to artifact nodes in above figure).
21+
Each time a proactive feature trace is available in a co-occuring artifact set and not contradicting another proactive trace,
22+
the expression of the proactive trace is mapped onto all artifact nodes in the set.
23+
In this way, we can propagate the reliable knowledge, provided typically by humans, to the remaining artifact nodes in a co-occuring artifact set and eventually,
24+
spread the information across variants.
1525

1626
## Dependencies
1727
- [Java using JDK17 or newer](https://www.oracle.com/java/technologies/downloads/)

0 commit comments

Comments
 (0)