How Do Open Source Communities Document Software Architecture: An Exploratory Survey

W. Ding, P. Liang, A. Tang, H. Van Vliet, M. Shahin

Research output: Chapter in Book / Report / Conference proceedingConference contributionAcademicpeer-review

Abstract

Software architecture (SA) documentation provides a blueprint of a software-intensive system for the communication between stakeholders about the high-level design of the system. In open source software (OSS) development, a lack of SA documentation may hinder the use and further development of OSS, but how much 'architecture' documentation is enough and appropriate is largely dependent on the contextual factors of development. In order to understand the state of the practice of SA documentation in OSS projects, we conducted a documentation-based survey to explore how SA is documented in OSS projects. Out of 2,000 OSS projects from four major OSS sources, we found that 108 projects have some SA documentation, which shows that the SA documentation is scarce in OSS development. We analyzed these 108 projects to understand what SA information has been documented and how they have been described. We have found that frequently-documented architectural information is model, system, and mission, natural language is the most frequently-used architectural language for specifying architectural information in OSS SA documents. The results also show that the likelihood that an OSS project will document SA is increased when more developers are involved in the project, and industry and research OSS projects are more likely to create SA documents than freelance projects.
Original languageEnglish
Title of host publicationProceedings of the 19th International Conference on Engineering of Complex Computer Systems (ICECCS)
PublisherIEEE Computer Society
Pages136-145
DOIs
Publication statusPublished - 2014
EventThe 19th International Conference on Engineering of Complex Computer Systems (ICECCS) -
Duration: 4 Aug 20147 Aug 2014

Conference

ConferenceThe 19th International Conference on Engineering of Complex Computer Systems (ICECCS)
Period4/08/147/08/14

Fingerprint

Dive into the research topics of 'How Do Open Source Communities Document Software Architecture: An Exploratory Survey'. Together they form a unique fingerprint.

Cite this