Improvements
Version 2.0.0 of VEVOS Extraction presents a major improvement over version 1.0.0 in terms of extractable product lines,
commit coverage, and extraction speed.
VEVOS is now based on DiffDetective a library for analyses of edits to
preprocessor-based product lines.
Due to this major change, VEVOS can now extract a ground truth for any C preprocessor-based software product line and is
no longer bound to the availability of a special adaptor.
For this reason, VEVOS in its default configuration extracts a ground truth for the 43 product lines listed in
the without_linux dataset file.
Shortcomings
However, there is also a drawback of the improved extraction. VEVOS 2.0.0 is not capable of extracting a feature model
or the presence conditions of entire source code files that are defined by additional build files. If these are still
required, VEVOS 1.x.x has to be used.
Extraction Modes
There are two basic extraction modes: fast
and full
.
Fast Extraction
The fast ground truth extraction only extracts the ground truths of changed files for each commit. This extraction is
very useful for studies that are only interested in the evolution of a software family.
Full Extraction
The full ground truth extraction extracts the ground truth for all code files of all commits in a product line. Due to
the effort of extracting and saving a ground truth for all files of each commit, this extraction may require a very long
time and large amounts of free disk space.
Essentially, the full ground truth extraction first performs a fast ground truth extraction and then incrementally
combines the ground truths of all commits.