Although Open Source Software is created using the same methods and in many of the same languages as proprietary software, its "value added" in the simple and powerful concepts of re-usability and adaptability. Without the flexible licensing structures provided by OSS, software solutions are not re-usable
Redundant problems should never be met with redundant problem solving1. Open Source enables the re-use of solutions to common problems as well as the adaptability to expand from a basic problem into a new solution or service.
The value added by re-using Open Source solutions extends far beyond simple re-implementation and includes:
- Cost-Effective Development—Reusable code is cost-effective because it speeds up development time, especially for common parts of a project. Although this concept is widely accepted across the DoD, it is just gaining acceptance in relation to software development.
To fully grasp this concept, consider the Joint Strike Fighter which has a common airframe that can be adapted for different services and missions without designing a new aircraft for each use case. If software is though of in these terms, an Open Source project would be like the common airframe that can be re-used and adapted to a variety of missions and requirements.
- Highly Efficient—Open Source projects are ready to use, at least at a basic level, right away. This allows the primary development to focus on adaptation to requirements. Time is not spent re-inventing systems thus allowing developers to operate efficiently.
- Increased productivity—Increased efficiency naturally leads to increased productivity. The quicker a solution can be delivered, the quicker a developer can begin solving other problems.
- Increased innovation—Reusing Open Source code allows developers to focus on solving real-world problems. Reducing effort on redundant tasks allows more effort to be given to the innovative adaptation of existing projects to new problems.
- Increased collaboration—Open Source projects, even in the DoD, develop communities of interest around them. These communities form a solid foundation for collaboration and exchange of new ideas and knowledge sharing. Collaboration increase awareness and innovation for a project.
1 Open Source Efficiencies and Obstacles in the Department of Defense, 2010 by Kane McLean