Building an open-source ecosystem
OPEES Innovation report
Long-term availability is essential to embedded-systems deployment. Imagine you have a problem in an embedded system. While the know-how to fix it may exist, if the hardware is no longer available or the tool chain too outdated so as to be incompatible, the embedded system cannot be rebuilt. Since the maximum support period for proprietary engineering tools tends to be ten years, it is necessary either to migrate to a new platform, to re-engineer the entire system or to accept the absence of support.
Open-source tools for engineering development can more easily be adapted to new hardware or new constraints. As the source code of these tools is available to the community, the knowledge can be better shared. An open-tool platform makes it possible to adapt tools to one’s own process and ensures the long-term availability of tools. The main objective of the OPEES project was to create a community and build the necessary means and enablers to ensure long-term availability of innovative engineering technologies in the domain of dependable/critical software-intensive embedded systems.
The ITEA 2 OPEES project built a community within the ECLIPSE Foundation to ensure the long-term availability of these open-source tools for critical industrial sectors such as aerospace, transport and energy. OPEES was initiated by the users rather than the developers of technologies with companies such as Airbus, Astrium, CNES, Ericsson,Thales and Indra having a need for tools and platforms to develop embedded systems with a number of requirements that proprietary tools do not sufficiently cover. These included tools that adapt to the specificities of users’ own processes and that are available for the whole lifetime of the embedded system – for example, a satellite programme can last for more than 25 years and the life cycle of an aircraft or nuclear plant can exceed 40 to 50 years.
A bootstrap for a long-term entity
However, open-source tools are not enough; there is a need for an ecosystem of service providers. OPEES set out to create this ecosystem. The project, which included academics, tool vendors, software providers and systems developers, therefore both developed the necessary new technologies and set about implementing a sustainable ecosystem by leveraging the OPEES members from France, Spain, Belgium, Norway and Sweden.
The viability of such an ecosystem required several elements to be established during the project:
- An open technical repository that holds an initial set of core components and tools matured and assessed following the OPEES methodologies, and that supports collaborative works around these components; and
- A set of processes and guidelines for tools/components maturation, verification & qualification, for the candidate tools/components validated through experimentations on real use cases to ensure components durability and interoperability, through promotion of open standards, in adequacy with industrial needs, constraints and domain standards.
The outcome of these efforts became manifest with the creation of Polarsys, implemented as an Industry Working Group in collaboration with the Eclipse Foundation. Polarsys focuses on the maturation and long-term availability of tools for the development of critical embedded systems, its goal is to organise the open-source and business ecosystem around those tools. Polarsys enables collaboration between embedded-systems developers as tools end-users and tools developers.
Polarsys implements a specific infrastructure to ease long-term availability of tools, providing a common and vendor-neutral build-and-test infrastructure designed to last for years. This infrastructure is the meeting point of the systems and tools developers. If a system developer selects a service provider to maintain its tool chain, the provider will work on this common infrastructure and not on its own build-and-test server.
Strength in numbers
Many of the tools to be managed by Polarsys already existed and were being used by systems developers. For example, Astrium uses the TopCased UML2 model-driven engineering environment for embedded software and safety-critical application development in satellites, and a number of OPEES partners use Frama-C to check the correctness of embedded software. However, several new technologies had to be developed, including important components for model-based systems engineering. These included parts of Papyrus, TopCased, GeneAuto as a qualifiable code generator, Unisim for simulation, Binary Interface Tool to handle interfaces between components and ArCon to validate models. The objective was to have all the parts of a full-feature tool chain by integrating PolarSys components and some existing or new Eclipse components.
Polarsys involves both large and small service providers – large companies and research institutes such as Airbus, Astrium, Atos, Ericsson, Thales and CEA and smaller companies like OBEO and Soyatec in France, and Intecs in Italy. The two latter companies were not members of OPEES but became involved in Polarsys, which showed the appeal of the community already for external members even before the end of the project. Furthermore, other members of Eclipse, such as SAP, also use the Eclipse platform for their own tools and are keen to work on the long-term aspects in cooperation. While the development has more or less been finished and published, a lot of work is still needed on ecosystem development as well as on branding for OPEES/Polarsys service providers.
The strong, European dimension of the project consortium along with the dissemination activities enabled the OPEES initiative to spread through a larger number of European countries by establishing collaborations with other projects like CESAR, VERDE, OpenCOSS and CHESS. National and European competitiveness clusters also provided strong support to OPEES, playing an important role regarding dissemination. The offer of long-term support by some service providers (larger organisations and SMEs) for OPEES components not only demonstrates the interest in a medium-term relationship among technology experts, service providers and industrial end users but provides a boost to the aim of scaling up this LTS relationship, sharing the effort with other end users, and expanding the ecosystem around Polarsys with new components.
Reinforcing the European position
While the project did not plan to create any new start-ups or spin-offs, instead of creating a new Open Source Foundation to cover the OPEES concerns, the decision by the project to create Polarsys as an IWG inside Eclipse reinforces the European influence in the worldwide Eclipse community and positions Europe at the centre of the Embedded and Industry community in Eclipse.
In terms of exploitation prospects, some partners reconsidered their opportunities during the term of the project. One example is Thales, which started the OPEES project with the aim of open sourcing EGF, a software factory tool, within Eclipse but with the development of the Polarsys open-source community, Thales became convinced of the benefit of being an active member, both as an open-source component contributor and steering committee member. In this context, Thales considered Polarsys as an opportunity to bring together key industry actors and users worldwide.
The creation of very long-term support for a business-oriented, open-source framework and community driven by end users is a real innovation generated by this project, whose key outcomes are the open and visible Polarsys structure, which allows the emergence of a European service industry, a common vision and roadmap, which enables the results of R&D collaborative projects to be extended and shared through an open technical repository of tools/components in the domain of embedded systems/software engineering.