Collaborative software development model
Encyclopedia
The Collaborative software development model is a style of software development whose focus is on public availability and communication, usually via the Internet
Internet
The Internet is a global system of interconnected computer networks that use the standard Internet protocol suite to serve billions of users worldwide...

.The software development model began widespread adoption with the Linux kernel
Linux kernel
The Linux kernel is an operating system kernel used by the Linux family of Unix-like operating systems. It is one of the most prominent examples of free and open source software....

 in 1991.

Collaborative software development and free software

It is the dominant model used in development of free software
Free software
Free software, software libre or libre software is software that can be used, studied, and modified without restriction, and which can be copied and redistributed in modified or unmodified form either without restriction, or with restrictions that only ensure that further recipients can also do...

. It is very compatible with free software because free software projects publish the source code
Source code
In computer science, source code is text written using the format and syntax of the programming language that it is being written in. Such a language is specially designed to facilitate the work of computer programmers, who specify the actions to be performed by a computer mostly by writing source...

 of any published programs, so they do not have the secrecy reason for hiding their communications and in-progress development.

This development model is detailed examined by Eric Raymond in his book The Cathedral and the Bazaar
The Cathedral and the Bazaar
The Cathedral and the Bazaar is an essay by Eric S. Raymond on software engineering methods, based on his observations of the Linux kernel development process and his experiences managing an open source project, fetchmail. It examines the struggle between top-down and bottom-up design...

 where he compares it to a Bazaar model usually followed by hierarchic organizations.

Peer review

Massive scale peer review
Peer review
Peer review is a process of self-regulation by a profession or a process of evaluation involving qualified individuals within the relevant field. Peer review methods are employed to maintain standards, improve performance and provide credibility...

 of software changes and commits is possible under the collaborative development model. This has been summarised by Raymond in what he terms Linus's Law
Linus's Law
There are two statements named Linus's Law: one by Eric S. Raymond concerning software bug detection by a community, and the other by Linus Torvalds about the motivations of programmers.- By Eric Raymond :...

: many eyeballs make all bugs shallow.

However, the extent that such peer review actually occurs is disputed.

Involving users

One of the key facts is getting users involved. Many organizations have created special programs to ease enrolling new committers.

See also

  • Open source software assessment methodologies
    Open source software assessment methodologies
    Several methods have been created to define an assessment process for Free/Open Source software. Some focus on some aspects like the maturity, the durability and the strategy of the organisation around the Open Source project itself...

  • Commons-based peer production
    Commons-based peer production
    Commons-based peer production is a term coined by Harvard Law School professor Yochai Benkler to describe a new model of socio-economic production in which the creative energy of large numbers of people is coordinated into large, meaningful projects mostly without traditional hierarchical...

  • Hackathon
    Hackathon
    A hackathon, a hacker neologism, is an event when programmers meet to do collaborative computer programming. The spirit of a hackathon is to collaboratively build programs and applications. Hackathons are typically between several days and a week in length...

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK