Dr. Jeffrey Carver
Dr. Jeffrey Carver, associate professor of computer science, researches development of open-source software, which could be improved through understanding how isolated programmers collaborate. He answered questions about the study he conducted in collaboration with graduate student Amiangshu Bosu.
Q: Has the open-source movement already influenced expensive user-generated software?
Carver: The open-source movement has had a large impact on the traditional software industry. Many users, companies and governments are moving away from proprietary software to open-source software in cases where they cannot make a good financial argument for the extra functionality provided by the proprietary software. Open-source software can potentially be upgraded more frequently than traditional proprietary software due to the different business model
It is definitely true that in many domains, open-source software projects are pushing commercial software companies to provide more value to justify the additional expense. In fact, in many cases, commercial software companies have changed their business model to release some or their entire product free in return for gathering advertising revenue.
Q: What improvement can come from researching open-source software development since many of the most-used open-source programs seem to be doing fine?
Carver: While many of the more well-known open-source projects are doing well, those projects make up less than 1 percent of the over 600,000 open-source projects. Most of these projects have various problems, both technical and nontechnical. Our research aims to better understand why some projects are successful. These results will not only allow us to identify areas of further improvement for those projects but also to share effective strategies with the less successful projects.
Q: Can open-source development be as efficient as traditional development teams?
Carver: Yes and no. The motivation for open-source software teams is largely different than the goal of traditional software development teams. There are some key differences between open-source development and traditional development in regards to team membership, methods of teammates and even the reward structure for team participation.
These differences make efficiency difficult to compare between open-source and traditional development. The primary goal of open-source software is to utilize globally-available software-development talent to create usable software that can be provided at little or no costs to its users. Therefore, open-source teams are focused on integrating new functionality into their products as quickly as possible to provide benefit to their users, while traditional development teams are focused on releasing features in a manner that makes the product profitable to the company. In those respects, both types of teams can be efficient, in their own way.