  [Background] In large open-source software projects, development knowledge is
often fragmented across multiple artefacts and contributors such that
individual stakeholders are generally unaware of the full breadth of the
product features. However, users want to know what the software is capable of,
while contributors need to know where to fix, update, and add features.
[Objective] This work aims at understanding how feature knowledge is documented
in GitHub projects and how it is linked (if at all) to the source code.
[Method] We conducted an in-depth qualitative exploratory content analysis of
25 popular GitHub repositories that provided the documentation artefacts
recommended by GitHub's Community Standards indicator. We first extracted
strategies used to document software features in textual artefacts and then
strategies used to link the feature documentation with source code. [Results]
We observed feature documentation in all studied projects in artefacts such as
READMEs, wikis, and website resource files. However, the features were often
described in an unstructured way. Additionally, tracing techniques to connect
feature documentation and source code were rarely used. [Conclusions] Our
results suggest a lacking (or a low-prioritised) feature documentation in
open-source projects, little use of normalised structures, and a rare explicit
referencing to source code. As a result, product feature traceability is likely
to be very limited, and maintainability to suffer over time.
