Forked and Integrated Variants In An Open-Source Firmware Project

Stefan Stanciulescu, Sandro Schulze, Andrzej Wasowski

    Research output: Conference Article in Proceeding or Book/Report chapterArticle in proceedingsResearchpeer-review

    Abstract

    Code cloning has been reported both on small (code fragments) and large (entire projects) scale. Cloning-in-the-large, or forking, is gaining ground as a reuse mechanism thanks to
    availability of better tools for maintaining forked project variants, hereunder distributed version control systems and interactive source management platforms such as Github.
    We study advantages and disadvantages of forking using the case of Marlin, an open source firmware for 3D printers. We find that many problems and advantages of cloning do translate to forking. Interestingly, the Marlin community uses both forking and integrated variability management (conditional ompilation)
    to create variants and features. Thus studying it increases our understanding of the choice between integrated and clone-based
    variant management. It also allows us to observe mechanisms governing source code maturation, in particular when, why and
    how feature implementations are migrated from forks to the main integrated platform. We believe that this understanding will ultimately
    help development of tools mixing clone-based and integrated variant management, combining the advantages of both.
    Original languageEnglish
    Title of host publication2015 IEEE International Conference on Software Maintenance and Evolution : ICSME
    Number of pages10
    PublisherIEEE
    Publication date25 Nov 2015
    Pages151 - 160
    ISBN (Print)978-1-4673-7532-0
    DOIs
    Publication statusPublished - 25 Nov 2015
    Event31st International Conference on Software Maintenance and Evolution - Bremen University, Bremen, Germany
    Duration: 29 Sept 20151 Oct 2015
    Conference number: 31
    http://www.icsme.uni-bremen.de/

    Conference

    Conference31st International Conference on Software Maintenance and Evolution
    Number31
    LocationBremen University
    Country/TerritoryGermany
    CityBremen
    Period29/09/201501/10/2015
    Internet address

    Keywords

    • variant
    • clone
    • open source
    • firmware
    • forked
    • integrated variability

    Fingerprint

    Dive into the research topics of 'Forked and Integrated Variants In An Open-Source Firmware Project'. Together they form a unique fingerprint.

    Cite this