Public Sector Open Source Projects – How is development organized?

TL;DR / Summary:
- While the practice and process for Open Source Software (OSS) development are quite explored in industry and general community contexts, less is known about how development is done on OSS in the public sector context, specifically, those developed and governed by Public Sector Organizations (PSOs).
- To shed light on this, in a recent paper, we looked at six mature examples of public sector OSS projects, identified by crawling different public sector OSS project catalogs, including those of Italy, France, US, Denmark, Finland, and Sweden.
- We find that 80% of development is typically concentrated on 5-15 developers.
- There is a preference for local and national service suppliers and growing trusted relationships.
- Processes for development, quality assurance and coordination are typically formally defined and ridged.
- The OSS developed is typically of high quality and stability.
- There are two clusters of public sector OSS projects in terms of how the development is sponsored by the involved PSOs.
- Centralized sponsorship:
- Main development is carried out or sponsored by, and in extension dependent on, one or a few resourceful PSOs.
- The OSS typically also originates from these main PSOs, showing similarities to vendor-led OSS projects.
- The OSS serves as a business-critical use case warranting the dedicated development and sponsorship.
- Community size is typically limited and dependent on the use case and complexity of the OSS.
- Rationale for open sourcing connected to intentions for encouraging reuse and growing a community size.
- A high level of dependence on a central PSO poses a sustainability risk for the OSS projects.
- Decentralized sponsorship:
- Development carried out through co-funded and collaborative procurement of development and maintenance efforts from suppliers.
- There is a dependency among the PSOs in the respective communities in collecting the necessary funds to sponsor the development.
- There is also risk for dependency on single service suppliers can threaten sustainability, e.g., due to emerging lock-in or change of business.
- Implications and recommendations:
- Public sector OSS projects stand out from traditional community-based and, to some extent, industry-led projects, requiring practice and guidelines to be tailored accordingly.
- Several contextual factors impact the public sector's ability to adopt, develop, and collaborate on OSS, e.g., in terms of culture, regulatory frameworks, and siloed organizational structures.
- Dependencies to a few PSOs or service providers should be proactively avoided by openly sharing all necessary knowledge and tools for developing and deploying OSS.
- Facilitating development through Open Source Stewards can improve robustness, enable co-funding models, and access to standardized development processes and governance structures.
- Support structures (e.g., Open Source Program Offices (OSPOs)) can help to grow and provide internal capabilities and expertise for OSS adoption within PSOs. For less resourceful PSOs, associations (or stewards) such as OS2 can be a source of such support.
- Growing a competitive ecosystem of service suppliers is important for robustness while decreasing the risk of ending up in a vendor lock-in. Limited availability of support is, however, a commonly reported challenge.
- Growing community and collaborative culture among PSOs for co-funding development critical for the long-term sustainability of public sector OSS projects.
Longer version
While the practice and process for Open Source Software (OSS) development are quite explored in industry and general community contexts, less is known about how development is done on OSS in the public sector context, specifically, those developed and governed by Public Sector Organizations (PSOs). To shed light on this, in a recent paper, we looked at six mature examples of public sector OSS projects, identified by crawling different public sector OSS project catalogs, including those of Italy, France, US, Denmark, Finland, and Sweden.
By combining interviews and quantitative analysis of the project’s code repositories, we gained several insights and examples on how PSOs can go about doing OSS development in the public sector context and how that may differ from the more general and maybe informal practice that one can find among projects in the wild. The We consists of myself and the greats of Björn Lundell, Francisco Servant, Jonas Gamalielsson, Satchiko Muto, and Gregorio Robles.
Cases investigated
The six cases we looked at included:
- EnergyPlus - a simulation program for energy consumption in houses from the US, mainly developed and governed by the National Renewable Energy Laboratory, under the US. Department of Energy. It was initiated in 1996 and published as OSS in 2012 to improve adoption. Today, the software is widely used primarily by software vendors as a component in end-user applications and for enabling academic research.
- OS2forms – an e-service platform based on Drupal, mainly developed and governed through OS2, a Danish municipal association. The project was initiated in 2019 and is used by 11 municipalities in Denmark.
- Oskari - a platform for constructing web-based mapping applications, mainly developed and governed by the National Land Survey of Finland. The project was initiated in 2013, today powering several well-established solutions, including the Finnish National Geoportal.
- GeoTrek - a platform for managing and publishing tracks, signages, and interventions within national parks, developed and governed through a collaboration of French National Parks, along with a national vendor. Created in 2013, the project today is estimated to have about 150 mainly PSOs as its users.
- Démarches simplifiées - a platform for generating forms to be integrated into public online services and managing and automating data processing. The project is hosted, developed, and managed by the Interdepartmental Administration for Digital (DINUM) and provided as a service to all PSOs in France. Today, the project has about 1000 PSOs using the platform.
- The IO app - a single point of entry for Italian citizens when communicating and interacting with public online services. Developed and maintained by PagoPA, a government-owned company focused on developing, maintaining, and providing software services for the Italian government.
Concentrated development with external resources
The major part (80 percent) of development is typically concentrated on a group of 5-15 developers, something which is in line with research on the broader OSS ecosystem. These developers are, for the most part, originating from national and local service providers, which may indicate a preference for suppliers with whom PSOs can have a more personal and trusted relationship, something that was especially highlighted in the cases of OS2forms and Geotrek. This national and local preference aligns with investigations highlighting how increased public investment into OSS contributes to increased growth and competition of business and entrepreneurship in OSS.
Formal development methods and high-quality software
Another general note was the use of formally defined development and quality assurance processes and means of coordination commonly found in professional settings, including OSS projects with high levels of commercial involvement. Explanations can be found in the reports on how the development in all cases was performed within or between PSOs and service suppliers by professional developers sponsored by the involved PSOs. By extension, this may also provide explanations for the high quality and stability of the OSS developed in the respective projects despite the limited size and contributions from their respective communities.
Deviation in sponsorship of OSS development
We did, however, note some important deviations among the cases. Specifically, we observe two clusters of public sector OSS projects in terms of how the development is sponsored by the involved PSOs: Centralized or Decentralized sponsorship. While these two clusters represent generalizations based on our sampled projects, these can be considered part of a continuum in terms of how development is funded or performed among the involved PSOs.
Centralized sponsorship
Oskari, Démarches simplifiées, the IO app, and EnergyPlus, represent different nuances of public sector OSS projects with a centralized sponsorship, implying that the main development is carried out or sponsored by, and in extension dependent on, one or a few resourceful PSOs. The OSS typically also originates from these main PSOs, showing similarities to vendor-led OSS projects. In the latter, the development is steered and sponsored mainly by software-intensive organizations aiming to employ OSS as a building block or platform for commercial products and services. In the context of our surveyed cases, however, the OSS would rather serve as an input for public products and services developed and provided by the respective PSOs.
Business-critical for the main sponsor
In all cases, the OSS serves a business-critical use case warranting the dedicated development and sponsorship of the projects to ensure their sustainability. In the Démarches simplifiées and the IO app OSS projects, DINUM and PagoPA, respectively, use the OSS as a foundation for public services, in each case directed to public servants and citizens in the concerned countries. The Oskari OSS serves as the foundation for the national geoportal provided by the NLSF in Finland, and EnergyPlus as a tool for enabling simulation and research on a building’s consumption regarding heating, cooling, ventilation, lighting, and water. Hence, the two PSOs have dedicated funding and resources to ensure the sustainability and quality of the respective OSS projects.
Community size dependent on use case and complexity
The size and role of the community, however, differ somewhat between the projects. When the codebase complexity and use case of the OSS are limited, as in the case of the IO app, community size is limited. The IO app is reported as being complex and specific for the infrastructure of PagoPA, where the main use case is tied to the public service provided by the PSO. In contrast, the Oskari and EnergyPlus projects both have a more general use case where the sponsoring PSOs see a value in the potential for open innovation an active community can bring.
Rationale for open sourcing connected to reuse and community size
The rationale for releasing the software as OSS differs across the cases, and relates to the potential for reuse and community growth of the OSS project. The release and public development of the IO app is mainly due to legal requirements and to provide transparency into how the application, e.g., uses and collects data. Similar rationales can be found across policies in several countries, implying that there is less focus on enabling general reuse. For Oskari and EnergyPlus, there are more explicit intentions of growing a community to enable collaborative development and reuse.
Sustainability dependent on a central PSO
From a sustainability and community point of view, the high level of dependence on a central PSO poses a risk for the communities of Oskari and EnergyPlus. A refactoring or change in business scope may imply that the OSS projects risk becoming unmaintained.
Decentralized sponsorship
OS2forms and Geotrek represent cases where multiple PSOs collaborate through the pooling of resources that sponsor the development, commonly procured from service providers. Similarities can be found in the user-driven where development is mainly directed and sponsored by software-intensive organizations addressing internal use-cases, or the building of non-commercial (e.g., public) services.
Development through collaborative procurement of suppliers
In OS2forms, 11 municipalities collaborate and co-fund the development from a smaller set of service suppliers. The OSS project is hosted under the Danish national OS2 association, which serves as a steward for 25+ public sector OSS projects, with various participation among 80+ municipal members. In Geotrek, a smaller set of national parks and PSOs (of about 150 users) collaborate through joint or direct procurement of development from a main service supplier.
Sustainability dependent on collective funding
In terms of sustainability, there is a dependency among the PSOs in the respective communities in collecting the necessary funds to sponsor the development. While both projects are reported as stable, there is still an expressed need to scale the community in terms of paying members to ensure the sustainability of the projects. Observations align with general literature where funding is a generally highlighted challenge for the health and sustainability of OSS projects. A difference is, however, that there already exists an incentive among the users of the OSS to pay for its development, whereas many smaller projects maintained by individuals struggle to achieve any form of sponsorship for their work.
Sustainability dependent on the presence of service suppliers
A second factor is the dependence on service suppliers, which can threaten sustainability should they stop providing services for whatever reason. The threat can be compared to sensitivity if OSS projects are maintained by a single organization or individual who abandons a project, e.g., due to internal re-factorization or change of interest. Here, the general lack of internal capabilities and dependence on outsourcing becomes a liability
Coming to terms with sustainability
Addressing the sustainability challenges highlighted across the surveyed cases is critical for the PSOs. Below, we discuss potential actions based on findings and literature that may help.
Sharing and disseminating critical knowledge for development
When development is limited to a few PSOs or service providers, it is critical to ensure that all the necessary knowledge and tools needed to develop and deploy the OSS are openly available. The presence of the necessary documentation concerning how to develop, build, and deploy the OSS; a development and build environment based on OSS tools; presence and high coverage of test cases; and overview of and access to dependencies are critical to enable others to potentially take over the maintenance.
Facilitating development through Open Source Stewards
Another means of improving robustness is through the organization of concerned PSOs through associations such as OS2, comparable to the foundations commonly used for hosting and collaborating on OSS projects in the broader OSS ecosystem. These make up a type of Open Source Steward (a term recently introduced by the European Cyber Resilience Act) that may help to create standardized development processes and governance structures and maintain a broader ecosystem of potential users and service suppliers that join communities as they grow beyond early adopters and prove value and potential. The X-Road provides a successful example of how such stewardship can be set up in a cross-border context.
Growing institutional capabilities through Open Source Program Offices
Growing and providing internal capabilities and expertise within PSOs for OSS adoption within PSOs is another approach for increasing robustness, also highlighted in literature. This is commonly performed through the creation of dedicated support functions referred to as Open Source Program Offices (OSPOs). For less resourceful PSOs, associations (or stewards) such as OS2 can be a source of corresponding support.
Growing a competitive ecosystem of service suppliers
Availability of multiple service providers increases robustness, while decreasing the risk of ending up in a vendor lock-in. Limited availability of support is, however, a commonly reported challenges. OS2 presents an approach where they have organically grown an ecosystem of 60+ service suppliers, working actively to enable sustainable business models, e.g., through conscious license selection and open collaboration.
Growing community and collaborative culture
Funding is a general sustainability challenge for OSS project maintainers, where various models ranging from sponsorship to entrepreneurship and employment have been proposed. For the public sector OSS projects, however, funding is dependent on the PSOs using the OSS. Hence, there is a need to minimize the (potential) ‘‘free-riding’’ and grow a collaborative culture where PSOs are inclined to contribute to the common development.