A Common Notation and Tool Support for Embedded Feature Annotations
Paper in proceeding, 2020

Features are typically used to describe the functionalities of software systems. They help understanding systems as well as planning their evolution and managing systems. Especially agile methods foster their use. However, to use features, their locations need to be known. When not documented, they are easily forgotten and then need to be recovered, which is costly. While automated feature-location techniques exist, they are not usable in practice given their inaccuracies. We take a different route and advocate to record locations early using a lightweight annotation system, where feature information is embedded in software assets. However, given the potential design space of annotations, a unified notation and tool support is needed. Extending our prior work, we present a unified, concise notation for embedded annotations, which we implemented in FAXE, a library for parsing and retrieving such annotations, use-able in third-party tooling. We demonstrate its use, especially for an advanced use case of feature-oriented isolated development by automating partial commits.

partial commits

feature location

embedded annotations


Tobias Schwarz

Student at Chalmers

Wardah Mahmood

University of Gothenburg

Thorsten Berger

University of Gothenburg

ACM International Conference Proceeding Series

Vol. Part F164402-B 5-8
9781450375702 (ISBN)

24th ACM Conference on Systems and Software Product Line, SPLC 2020
Online, ,

Subject Categories

Software Engineering

Embedded Systems

Computer Systems



More information

Latest update