Community source
Community Source is a type of software development used in colleges and universities that builds on the practices of open source software communities. The software of these collective efforts are distributed via an approved Open Source Initiative license. Examples include the Sakai Project, Kuali, and Open Source Portfolio. Copyright for the software is often held by an independent foundation modeled on the contributor agreements, licensing, and distribution practices of the Apache Foundation.
Description
An important distinctive characteristic of community source as opposed to plain open source is that the community includes some organizations or institutions that are committing their resources to the community, in the form of human resources or other financial elements. In this way, the open source project will have both more solid support, rather than purely volunteer efforts as found in other open source communities, and will possibly be shaped by the strategic requirements of the institution committing the resource.Brad Wheeler has noted that Community Source can be understood as a hybrid model of a community like "The Pub between the Cathedral and the Bazaar” where higher education can really solve its software challenges. References below provide more details regarding the use of community source as a practice in higher education.
The Community Source Model in Higher Education
The Community Source Model is a hybrid model that blends elements of directed development, in the classic sense of an organization employing staff and resources to work on a project, and the openness of traditional open-source projects like Apache. The resulting software is available under an Open Source Initiative approved license. The code can be examined, changed, redistributed, sold, or incorporated into other products without fee. Anyone can make changes, and subject to quality review, those changes can be incorporated back into an open-source application for the benefit of all.
The distinguishing feature of the Community Source Model is that many of the investments of developers' time, design, and project governance come from institutional contributions by colleges, universities, and some commercial firms rather than from individuals. These contributions may be tendered as the first phase of a project, and then additional work may be contributed on an ongoing, voluntary basis by those institutions with a continuing interest in the project. The project often establishes a software framework and baseline functionality, and then the community develops additional features as needed over time.
Community Source Model projects generally operate as follows. Several institutions realize they are trying to solve a similar problem—need for a research administration system is a recent example. After some discussions and resulting agreement on project objectives, timelines, and philosophy, the institutions pool their resources under a project board of institutional leaders. The institutions are often agreeing to tender existing staff time to the direction of the project, and as such, this is not a new cash outlay but rather an aggregation of existing staff in a virtual organization. A grant from a foundation may provide cohesion among the investors. Typical recent projects have ranged from $1 to $8 million in funding and from twelve to thirty months in duration. Each investor signs a Corporate Contributor Agreement that grants a copyright license for the software to the project or foundation. The project usually operates on a date-driven delivery schedule. This forces difficult decisions in the reality triangle of balancing features, resources, and time, but such a schedule is essential to the growth of community confidence.
The project board then establishes the appropriate structure for articulating the system requirements, the technical choices, and a project manager. It is essential that clear roles and responsibilities be established early, and the project participants will benefit from spending some face-to-face time together at the beginning of the project. Experience reveals that some staff members may not work well in distributed, virtual organizations, whereas others find the work to be career-renewing.
Early projects had to transition from an investor-based project to a community and a foundation. New projects can take advantage of the foundations' existing infrastructure and how-to knowledge and can begin as a project of a foundation. There is no rulebook for Community Source Model projects for every domain, but there is a growing body of accumulated wisdom on how to coordinate institutional investments and execute a development plan for quality software.
Community source software licensing
Community source software licensing is when the source code to proprietary software is licensed to members of a defined community, each member of which must explicitly enter an agreement with the code owner in order to be permitted access to source code. By this definition, community source licenses are incompatible with both open source and free software, since in open source and free software anyone may have access to source code without entering into an agreement with anyone else, though they must accept the license.A community source license cannot meet the requirements of the Open Source Definition, whose first provision requires free redistribution of software. A community source license cannot meet the requirements of The Free Software Definition, since freedoms 1 and 3 require open access to source code.
A community source license may violate other provisions of the open source and free software definitions.
One motivation for community source may be to promote the use of software production and development models similar to those used in open source communities. But because the community is not open, those production and development models must differ in subtle or marked ways from those used in open source. Another motivation may be to ease adoption by customers of complex software from a proprietary supplier, using trusted intermediaries to help.