There are four economic models for software development: retail, in-house and contract, efforts at collaboration without open source licensing and open source. The differentiating issues are: how they distribute the cost of development, how they distribute the risk of failure, their efficiency in funding software development rather than overheads of the process and the degree to which others can be excluded from using the software. A comparison regarding the below four paradigms can be consulted in the appendix section.
 See Appendix no. 6 to learn about advantages and disadvantages of each of the four paradigms