Jump to content

Collaborative software development

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Hut 8.5 (talk | contribs) at 11:29, 27 August 2018 (Peer review: not a reliable source). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.
Hackathon

Collaborative software development is a style of software development that emphasizes public availability and communication, usually via the Internet.

The software development model began widespread adoption with the Linux kernel in 1991 and continues to be used primarily for freeware, open-source software and commons-based peer production. It is also used for certain types of developmental models, such as the Iterative and Agile development model, through which stages of the program are released for public feedback, driving the development of the program.

Free software

Collaborative software development is the dominant model used in development of free software. It is very compatible with free software because free software projects publish the source code 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 and examined by Eric Raymond in his book The Cathedral and the Bazaar where he compares it to a Bazaar model usually followed by hierarchic organizations.

Peer review

Massive scale peer review of software changes and commits are possible under the collaborative development model. This has been summarized by Raymond in what he terms Linus's Law: many eyeballs make all bugs shallow.

Many software developers and researchers who agree that collaborative development is one of the best ways to identify the most possible bugs in a program while remaining efficient. Another way that this has been stated is, “if you post it, someone will fix it,” referring to the same principle applied to source code rather than an actual program.

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[1] to ease enrolling new committers.[2]

See also

References