It ıs the development large scale projects and softwares based on a common technology, within these projects by developers across the globe.
The funding of the projects is provided by public organizations, companies, foundations and people.
The systems used by global technology giants are based on open-source code, such as Facebook, Wikipedia, Google Android, Geoserver etc
The software development tools, libraries, functions, methods and all design and analysis information is delivered and shared without leaving any place for doubt.
The standards developed by ISO-TC211, OGC and Inspire are taken ase a basis by code developers. The software development infrastructure is entirely made in accordance with these standards.
No software developer, develops a special format, code or service. The reason for this is necessity of support to existing data and technology standards for the software to be used.
A system that is not conforming to international standards is a closed commercial software with its own standards.
In cases where the maintenance can not be directly supplied from the resources within, service procurement consultancy or direct service procurement takes place. Most of the time you can easily reach thousand of local or international experts providing these services.
All the needs for the in-house maintenance are provided during the product development and installation phase including all the software source codes, analysis and design documents, work flow diagrams, work rules and in-line documentation.
Licenses like GPL-LGLP are used for licensing of the open-source softwares. For further information you can check http://opensource.org/licenses/ . Softwares using this types of licensing indicate which model they use for licensing and, its is sufficient to dowload the page of this document and place it between your records. Nobody asks for money from you or disturb you for money.
Most open-source code development companies and software specialists earn money from the services they provide. The companies and software specialists with this awareness know that they should remain open and develop their softwares conforming to the standards while creating their own market.
Apart from this, most specialists organise daily-weekly-monthly training programs. These people have globally spread projects in every country and work through companies they are connected to.
Another way of earning money is the donations. This method is the payment done by the people who wish to use small parts of codes called widgets with the source code, deciding themselves on the amount of payment.
Open-source code projects are open to the access of other developers from the moment they are started. However, depending on the scale of the project, there are certain rules of participation to the project team. Yet, whether it s a large scale project or a small project consisting of a few people, the most important rule is the conformance of the software to standards and passing all test successfully. As the projects are not prepared with commercial concerns, the main version is not prepared until the modules pass the tests. The most important characteristic of open-source softwares is the ability of many other developers to see the source code, observe, comment and correct the errors, apart from those who develop and test the software.
Once the projects reach a certain maturity and a developer capacity, a management level is created for the management of the project. This management level decide on the vision of the project, technical infrastructure, what is to be done in new versions and the completion of project’s life. They can create sub-committees to execute these decisions. Project management level consists of people who gave the most effort to the projects as well as those who created the project.
For any developer to take part in open-source code projects, an acceptance is required from the management level; and there are conditions for this acceptance. Primarily, the person should volunteer for developing the modules in the project task list that should be coded to participate as a developer. Yet, being a volunteer is not sufficient. The developer should develop the module s/he takes on in conformance with the coding and test standards of the project and ensure that the written code is error-free and passes the tests. In these conditions, the project management can accept the person as a open-source code software developer.
All standards of the software are defined by the project management. The most important part in the projects is the constant code and version integration. Application is definitely managed with a configuration tool. All information on what is to be included in following versions, what should be done and not done, and where the module is placed within the project life-cycle is transparently shown to everybody on the internet.