Pooling software development for sustainability
© Inria / Photo N. Lacaux
InriaSoft aims for the durable development of large-scale software programs by bringing together their user communities within consortia that will finance a team of engineers tasked with their maintenance and evolution. The InriaSoft headquarters are based in Rennes, as Claude Labit, director, and David Margery, technical director of this national action backed by the Fondation Inria, explain.
The Inria software library contains around 1,500 references. Some of these laboratory prototypes have grown in scale, bringing together vast user communities around them. And that is where things get under way. “Inria is not intended to be a publisher for software programs originating from its teams and which would be used by the socio-economic world”, David Margery summarises. “Inria's missions focus on research and its value-creation. It would not be normal for the institute to continue to then dedicate resources to maintaining software for third parties.”
The InriaSoft action therefore aims to find a technical and economic solution in order to continue to keep these software programs going over the long term. The idea? “Pooling resources”, Claude Labit explains. “Creating, for each of these software programs, a consortium of players who get together in order to build a development policy for the tool and establish a basket of collective revenues enabling the expenditure required for its engineering to be covered. The consortia will be managed within the Fondation Inria. This private non-profit structure enables the institute to carry out actions that are close to, but outside, its core business.”
Relatively speaking, what we want to do resembles the foundations that already exist in the field of open source: Linux, Apache, Eclipse, etc. Of course, its set-up is slightly different; however we again find this concept where a foundation supports the development of the software.
David Margery, CTO of InriaSoft
What are the applications concerned? “To date, we are processing around 15 cases”, Claude Labit explains. “They are software programs which, to us, seem important from a scientific perspective, but also because actors outside Inria use, want to use or develop these tools with us. This external expression of interest is a major indicator of the scale and open nature of the software.”
In 2017, the scheme will initially concern four software programs. “They are the most advanced in the formation of a consortium. We will begin with Coq, a proof assistant. We are also incubating Sofa, multiphysical modelling software more aimed at medical simulation. Then there will be Pharo, a tool situated in the field of languages, and MMG, used for scientific computing, meshing and modelling. Moreover, these choices reflect the great diversity of Inria's achievements.”
Each consortium will pay one or several engineers. “Certain consortia want to start directly with two engineers. Others are already looking at having three.” What remains is to find the resources to cover this payroll. “Not all of them have yet achieved an economic balance. The Fondation Inria will therefore supplement the InriaSoft action via a seed fund that can allow for an incubation phase of around two years for each consortium. Région Bretagne (Brittany regional council) and Rennes Métropole have also decided to contribute to this fund since the InriaSoft headquarters are located in Rennes. We are counting on around 20 consortia by 2025. This would represent a minimum of 25 persons.” However they will not necessarily all be based in Rennes. “Certain engineers with a scientific profile who intervene more in the algorithmics of the core of the software will perhaps work in close proximity to the research teams producing these tools”, David Margery remarks. “In Rennes, we will have the engineers with a more general profile for everything that concerns publishing and software support.”
Despite the heterogeneous nature of the software, there are “real similarities in all of the requirements to industrialise production: how to manage support tickets, how to release a new version, how to carry out quality tests, etc. There is an entire multi-faceted software publishing process that we are going to aim to standardise in order attain quality standards.”
The diversity of the scenarios can also be found in the governance of the consortia. “The communities are extremely varied. Some software programs are of more interest to industrialists. Others primarily concern the academic world. Also, sometimes a large number of independent co-developers contribute to the dynamic of the software and want to participate in drawing up the roadmap. In certain cases, the software remains at the heart of the team's concerns. In others, it has ended up as a research subject and the team does not wish to remain too involved. As a result, governance cannot be organised in the same way. A lot of what we do is tailor-made in order to find the balance between the interests of all sides.”
Finally, it must be noted that InriaSoft also provides for exit arrangements. “If a consortium does not reach stability by the set deadline, we need to ask ourselves if it is any use continuing to incubate something that is not economically viable”, Claude Labit notes. “We are also considering 'positive' exits if a consortium distances itself from the initial philosophy. There may have been a shift in which the members no longer become players acting for the common good but rather customers just seeking the provision of services. If you enter into a business relationship, you need to go into a completely different economic model. The incubation of the consortium will then have been a first stage before a transfer towards industry players or the creation of a start-up around the software.”
The seven main objectives of InriaSoft
- Increase the impact of Inria's software production by furthering the transfer of this output towards the outside world;
- Ensure the durability of the software produced by research in order to guarantee to users their maintenance over time;
- Professionalise the management of communities and consortia around the software produced by research;
- Enable customised developments (on software produced by research) requested by external partners, without necessarily a link with research activities;
- Provide the means required for the publishing of a software program when this is considered necessary for its transfer;
- Further the emergence of start-ups dedicated to the exploitation of software or the services provided by software;
- In a second phase, provide the same services to all French laboratories in the field of digital technology.