One recurring question in the IT marketplace today is how does a proprietary software development model compare to an open source development model? What are the trade-off decisions that a software vendor or a customer makes when comparing the two models?
In order to address these questions, Microsoft has sponsored Scott Swigart and Sean Campbell to look into the process, benefits, and high-level trade-offs associated with proprietary & open-source software development models, which includes not only the development process, but the flexibility, vendor accountability, ecosystem benefits, etc…
Scott and Sean are very excited to be a part of this dialogue to discuss the differences between software developed using closed source and open source development paradigms.
They both have been engaging with industry subject matter experts across various companies to gather information on open source and proprietary software development processes. To be successful, I’ll also need to engage with you. Whether you are involved in closed source projects, open source projects, or both, they would like to hear your thoughts on the issue. Do you love one and hate the other? Why? What do you think are the relative strengths and weaknesses of the two paradigms? As the investigation continues, they also hope that the community will help them refine my findings and help make the project successful.
For the sake of this project, we will define a few ground rules:
Scope of the project
This project will examine the stages of the software delivery lifecycle in an open source vs. a closed source environment. For the purposes of this project, we will define open source software to be software where the source code is available for inspection, modification, and distribution. Closed source software is defined as software where the source is available to few people or organizations, typically the vendor that created the software and possibly their partners under tight non-disclosure agreements.
The findings will be used to highlight the differences in methodology and processes related to quality, security, support etc in each phase of the lifecycle.
The project aims to examine the following questions:
- How does the idea design differ in an open source and a closed source environment?
- How does the engineering process differ in the closed vs. the open Source Scenario?
- How do the two ecosystems differ and what are the implications?
The following aspects will not be examined:
- How does the Software development life cycle of closed source and open source software differ?
- Which development model is better?
Output and Methodology
We have set up this forum to facilitate discussion of the effort and will be posting transcripts of our discussion with various experts.
The primary audience for the blog and overall effort are software vendors or customers seeking to better understand the trade-offs associated with commercial closed source (e.g. “proprietary”) software and commercial open source software.
The findings will be based on Community feedback on the blog coupled with:
- Interviews with key development staff for the selected closed source and open source organizations, and document (via this blog) similarities and trends in the software delivery process in each of the development methodologies.
- Findings from additional public sources like published interviews, whitepapers, newsgroups, blogs etc.
We will make frequent blog posts with raw findings, allowing the community to comment, refute, or offer supporting evidence regarding the findings. We will also produce and periodically update readers with the aggregate results of the findings. Companies or members of the community performing open and/or closed source development are invited to participate. Microsoft and other software development firms may make employees available for the investigator to interview, and members of the open source community are likewise encouraged to be interviewed to facilitate the investigation.
Now that we have the ground rules, let the discussion begin!