The objective of the Arrowhead Framework is to efficiently support the development, deployment and operation of interconnected, cooperative systems. It is based on the Service Oriented Architecture philosophy. The building elements of the framework are systems that provide and consume services, and cooperate as systems of systems. Some commonly used systems, such as orchestration, authorization or service registry are considered as core. These can be used by any system of systems that follow the guidelines of the Arrowhead Framework.
Within the framework, systems – using different information exchange technologies during collaboration – are helped through various approaches. These include the so-called Interoperability Layer, as well as systems and services for translation. Furthermore, one of the main problems of developing such highly interoperable systems is the lack of understanding between various development groups. Adequate development and service documentation methodologies can help to overcome this issue.
The design, development and verification methodology for each service, system and system of systems within the Arrowhead Framework supports that these can be implemented, verified, deployed, and run in an interoperable way. This paper presents an overview of the framework together with its core elements – and provides guidelines for the design and deployment of interoperable, Arrowhead-compliant cooperative systems.