Skip to content

Commit a785132

Browse files
Revised STATUS.md
1 parent f441374 commit a785132

1 file changed

Lines changed: 16 additions & 4 deletions

File tree

STATUS.md

Lines changed: 16 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,33 @@
1+
# STATUS
2+
## Overview
13
The artifact for the paper _Classifying Edits to Variability in Source Code_ consists of four parts:
24

35
1. **DiffDetective**: For our validation, we built DiffDetective, a java library and command-line tool to classify edits to variability in git histories of preprocessor-based software product lines. DiffDetective is the main artifact used to replicate the validation for our paper (see Section 5).
46
2. **Appendix**: The appendix of our paper is given in PDF format in the file [`appendix.pdf`][ddappendix].
57
3. **Haskell Formalization**: We provide an extended formalization in the Haskell programming language as described in our appendix. Its implementation can be found in the Haskell project in the [`proofs`][ddproofs] directory.
68
4. **Dataset Overview**: We provide an overview of the 44 inspected open-source software product lines with updated links to their repositories in the file [docs/datasets.md](docs/datasets.md).
9+
10+
## Purpose
711
Our artifact has the following purposes:
812

9-
- **Replicability**: We provide instructions based on a docker container that allow to reproduce the validation we performed in Section 5 of our paper.
10-
- **Reusability**: DiffDetective is designed as a library that offers reusable functionality.
13+
### **Replicability**
14+
We provide replication instructions that allow to replicate the validation we performed in Section 5 of our paper. The replication is executed in a Docker container.
15+
16+
### **Reusability**
17+
DiffDetective is designed as a library that offers reusable functionality.
1118
Researchers and practitioners can use our DiffDetective library to build on our theory and results (e.g., for future prototypes to study the evolution of variability in source code).
19+
1220
DiffDetective offers various features, including but not limited to:
1321
parsing variation tree diffs from unix diffs, obtaining variation tree diffs for certain patches and commits, matching elementary edit patterns on variation tree diffs, defining custom classifications, rendering, traversing, and transforming variation tree diffs, various de-/serialization methods, and running analyses for the git histories of C preprocessor-based software product lines. We documented each part of the library and provide a javadoc website within the repository.
14-
- **Extended Formal Specification**: The `proofs` Haskell project provides an extended formal specification of our theory.
22+
23+
### **Extended Formal Specification**
24+
The `proofs` Haskell project provides an extended formal specification of our theory.
1525
Its main purpose is to document the theory and its extensions to serve as a reference for the proofs in our appendix.
1626
Yet, the project can also be used as a library to reason on variation trees and diffs in Haskell projects.
17-
The library is accompanied with a small demo application that shows an example test case for our proof for completeness, by creating a variation tree diff from two variation trees and re-projecting them.
27+
28+
The library is accompanied with a small demo application that shows an example test case for our proof for completeness, by creating a variation tree diff from two variation trees and re-projecting them.
1829

30+
## Claims
1931
We claim the _Artifacts Available_ badge as we made our artefacts publicly available on [Github][ddgithub] and [Zenodo][ddzenodo].
2032

2133
We claim the _Artifacts Evaluated Reusable_ badge as we implemented DiffDetective as a reusable library (see above).

0 commit comments

Comments
 (0)