Automating the Synchronization of Software Variants
M.Sc. Paul Maximilian Bittner
Tracing features to their corresponding implementation in a software project is the main focus of my work. I investigate how feature-to-code mappings may be recorded during development, how mappings may evolve, and how we can synchronize mappings across divering forks, branches, or code clones in general. Within the research project VariantSync, Alexander Schultheiß and me are striving towards making software product-line technology easier to adopt, in particular in clone-and-own development.
Anything of your interest? Don't hesitate to contact me.
Material
Dateiname | Info | Geändert | |
---|---|---|---|
|
Topics_for_Theses_and_Projects-Feb23.pdf | 576 KB | 01.02.2023 14:07 |
Teaching
Lecture Exercises and Projects
Software Product Lines: Exercise Instructor
Software Engineering Project: VariantSync
Software Product Lines: Exercise Instructor
Software Product Lines: Exercise Instructor
Featured Publications
Feature Trace Recording
Feature trace recording is a semi-automated method for recording feature-to-code mappings during software development. It uses evolution as a source of information for feature location.

Consider a developer Alice editing the pop method of a Stack class in Java as depicted in the image above. Feature-to-code mappings are indicated by corresponding colours. By labeling her edits with the feature she edits, we derive feature mappings for edited source code. We refer to such a label as feature context. It can be left empty when developers do not know the feature they edit. In our example, Alice does not know the feature of the moved line in her second edit and omits the feature context (i.e., sets it to null). From feature contexts we can compute feature mappings for the current code base but also for other variants. Assume there is a second developer, Bob, working on another variant (e.g., branch or fork) of the software. Bob’s variant might implement other features than Alice’s.
Assume Bob’s variant implements the blue feature SafeStack but not the orange feature ImmutableStack.
Although Alice made many edits to ImmutableStack, we can still derive feature mappings for Bob’s code. When Alice deletes code from ImmutableStack, we can infer that this code does not belong to ImmutableStack anymore. We thus introduce the new feature mapping ¬ImmutableStack for the deleted code that is still present in Bob’s variant (highlighted in purple in the image on the right).
Feature trace recording is the first step towards our vision for bridging the gap between clone-and-own and software product lines in our project VariantSync. You may read about it in our ICSE NIER paper or watch our talk on YouTube.
Academic Service
I served as a (sub-)reviewer for
- Journals: TSE; SoSyM
- Conferences: GPCE'21; SPLC '21, '20; VaMoS'22, '21
2023
Quantifying the Potential to Automate the Synchronization of Variants in Clone-and-Own - Summary
Proc. Software Engineering (SE), Seite 109-110
Herausgeber: Gesellschaft für Informatik, Bonn, Germany
Februar 2023
Datei: |
Variational Satisfiability Solving: Efficiently Solving Lots of Related SAT Problems - Summary
Proc. Software Engineering (SE), Seite 129-130
Herausgeber: Gesellschaft für Informatik, Bonn, Germany
Februar 2023
Datei: |
Classifying Edits to Variability in Source Code - Summary
Proc. Software Engineering (SE), Seite 39-40
Herausgeber: Gesellschaft für Informatik, Bonn, Germany
Februar 2023
Datei: |
Benchmark Generation with VEVOS: A Coverage Analysis of Evolution Scenarios in Variant-Rich Systems
Proc. Int'l Working Conf. on Variability Modelling of Software-Intensive Systems (VaMoS), Seite 13-22
Herausgeber: ACM, New York, NY, USA
Januar 2023
DOI: | 10.1145/3571788.3571793 |
ISBN: | 9798400700019 |
Datei: |
Evaluating State-of-the-Art #SAT Solvers on Industrial Configuration Spaces
Empirical Software Engineering (EMSE)
Januar 2023
Herausgeber: Springer
DOI: | 10.1007/s10664-022-10265-9 |
Datei: |
2022
Classifying Edits to Variability in Source Code
Proc. Europ. Software Engineering Conf./Foundations of Software Engineering (ESEC/FSE), Seite 196-208
Herausgeber: ACM, New York, NY, USA
November 2022
DOI: | 10.1145/3540250.3549108 |
ISBN: | 9781450394130 |
Datei: |
RaQuN: A Generic and Scalable N-Way Model Matching Algorithm
Software and System Modeling (SoSyM)
November 2022
Herausgeber: Springer
DOI: | 10.1007/s10270-022-01062-5 |
Datei: |
Variational Satisfiability Solving: Efficiently Solving Lots of Related SAT Problems
Empirical Software Engineering (EMSE)
November 2022
Herausgeber: Springer
DOI: | 10.1007/s10664-022-10217-3 |
Datei: |
Quantifying the Potential to Automate the Synchronization of Variants in Clone-and-Own
Proc. Int'l Conf. on Software Maintenance and Evolution (ICSME), Seite 269-280
Herausgeber: IEEE, Piscataway, NJ, USA
Oktober 2022
DOI: | 10.1109/ICSME55016.2022.00032 |
Datei: |
Derivation of Subset Product Lines in FeatureIDE
Proc. Int'l Systems and Software Product Line Conf. (SPLC), Seite 38-41
Herausgeber: ACM, New York, NY, USA
September 2022
DOI: | 10.1145/3503229.3547033 |
ISBN: | 9781450392068 |
Datei: |
Simulating the Evolution of Clone-and-Own Projects with VEVOS
Proc. Int'l Conf. on Evaluation Assessment in Software Engineering (EASE), Seite 231-236
Herausgeber: ACM, New York, NY, USA
Juni 2022
DOI: | 10.1145/3530019.3534084 |
ISBN: | 9781450396134 |
Datei: |
Feature Trace Recording - Summary
Proc. Software Engineering (SE), Seite 19-20
Herausgeber: Gesellschaft für Informatik, Bonn, Germany
Februar 2022
DOI: | 10.18420/se2022-ws-002 |
Datei: |
Scalable N-Way Model Matching Using Multi-Dimensional Search Trees - Summary
Proc. Software Engineering (SE), Seite 83-84
Herausgeber: Gesellschaft für Informatik, Bonn, Germany
Februar 2022
DOI: | 10.18420/se2022-ws-028 |
Datei: |
2021
Scalable N-Way Model Matching Using Multi-Dimensional Search Trees
Proc. Int'l Conf. on Model Driven Engineering Languages and Systems (MODELS), Seite 1-12
Herausgeber: IEEE, Washington, DC, USA
Oktober 2021
DOI: | 10.1109/MODELS50736.2021.00010 |
Datei: |
Feature Trace Recording
Proc. Europ. Software Engineering Conf./Foundations of Software Engineering (ESEC/FSE), Seite 1007-1020
Herausgeber: ACM, New York, NY, USA
August 2021
DOI: | 10.1145/3468264.3468531 |
ISBN: | 9781450385626 |
Datei: |
Bridging the Gap Between Clone-and-Own and Software Product Lines
Proc. Int'l Conf. on Software Engineering (ICSE), Seite 21-25
Herausgeber: IEEE, Piscataway, NJ, USA
Mai 2021
DOI: | 10.1109/ICSE-NIER52604.2021.00013 |
ISBN: | 978-1-6654-0140-1 |
Datei: |
Applications of #SAT Solvers on Feature Models
Proc. Int'l Working Conf. on Variability Modelling of Software-Intensive Systems (VaMoS)
Herausgeber: ACM, New York, NY, USA
Februar 2021
DOI: | 10.1145/3442391.3442404 |
ISBN: | 9781450388245 |
Datei: |
2020
Temporal Consistent Motion Parallax for Omnidirectional Stereo Panorama Video
Proc. ACM Symposium on Virtual Reality Software and Technology (VRST)
Herausgeber: ACM, New York, NY, USA
November 2020
DOI: | 10.1145/3385956.3418965 |
Datei: | https://graphics.tu-bs.de/publications/muhlhausen2020temporal |
On the Use of Product-Line Variants as Experimental Subjects for Clone-and-Own Research: A Case Study
Proc. Int'l Systems and Software Product Line Conf. (SPLC)
Herausgeber: ACM, New York, NY, USA
Oktober 2020
DOI: | 10.1145/3382025.3414972 |
ISBN: | 9781450375696 |
Datei: |
Depth Augmented Omnidirectional Stereo for 6-DoF VR Photography
Proc. IEEE Virtual Reality Workshop (VR), Seite 660-661
Herausgeber: IEEE, Piscataway, NJ, USA
Mai 2020
DOI: | 10.1109/VRW50115.2020.00181 |
ISBN: | 978-1-7281-6532-5 |
Datei: | https://graphics.tu-bs.de/publications/bertel2020depth |
Semi-Automated Inference of Feature Traceability During Software Development
Master's Thesis
TU Braunschweig, Germany
Februar 2020
DOI: | 10.24355/dbbs.084-202002271120-0 |
Datei: |
2019
SAT Encodings of the At-Most-k Constraint - A Case Study on Configuring University Courses
Proc. Int'l Conf. on Software Engineering and Formal Methods (SEFM), Seite 127-144
Herausgeber: Springer, Berlin, Heidelberg, Germany
September 2019
DOI: | 10.1007/978-3-030-30446-1_7 |
Datei: |
Evaluation of Optimised Centres of Rotation Skinning
April 2019
Datei: | https://graphics.tu-bs.de/publications/bittner2019evaluation |
Gaze and Motion-aware Real-Time Dome Projection System
Proc. IEEE Virtual Reality Workshop (VR), Seite 1780-1783
Herausgeber: IEEE, Piscataway, NJ, USA
März 2019
DOI: | 10.1109/VR.2019.8797902 |
ISBN: | 978-1-7281-1377-7 |
Datei: | https://graphics.tu-bs.de/publications/grogorick2019gaze |
Immersive EEG: Evaluating Electroencephalography in Virtual Reality
Proc. IEEE Virtual Reality Workshop (VR), Seite 1794-1800
Herausgeber: IEEE, Piscataway, NJ, USA
März 2019
DOI: | 10.1109/VR.2019.8797858 |
Datei: | https://graphics.tu-bs.de/publications/tauscher2019immersive |
SAT Encodings of the At-Most-k Constraint - A Case Study on Configuring University Courses (Project Thesis)
Project Thesis
TU Braunschweig, Germany
März 2019
Datei: |
2017
Evaluation of Skinning Techniques for Skeletal Animation in MonSteR
Bachelor's Thesis
TU Braunschweig, Germany
September 2017
2023
Constructing Variation Diffs Using Tree Diffing Algorithms
Bachelor's Thesis
University of Ulm, Germany
April 2023
Inspecting the Evolution of Feature Annotations in Configurable Software
Master's Thesis
University of Ulm, Germany
Januar 2023
2022
Reverse Engineering Feature-Aware Commits from Software Product-Line Repositories
Bachelor's Thesis
University of Ulm, Germany
Oktober 2022
DOI: | 10.18725/OPARU-47892 |
Datei: |
Type-Checking Variability in Clone-and-Own Variants with Product-Line Tooling
Master's Thesis
University of Ulm, Germany
September 2022
2021
Empirical Evaluation of Feature Trace Recording on the Edit History of Marlin
Bachelor's Thesis
University of Ulm, Germany
April 2021
DOI: | 10.18725/OPARU-38603 |
Datei: |
M.Sc. Paul Maximilian Bittner

Institute of Software Engineering and Programming Languages
Albert-Einstein-Allee 11