Supporting Distributed and Decentralized Projects: Drawing Lessons from the Open Source Community

Open source projects are typically organized in a distributed and decentralized manner. These factors strongly determine the processes followed and constrain the types of tools that can be utilized. This paper explores how distribution and decentralization have affected processes and tools in existing open source projects with the goals of summarizing the lessons learned and identifying opportunities for improving both. Issues considered include decisionmaking, accountability, communication, awareness, rationale, managing source code, testing, and release management.