Continous Delivery toolkit
ENACT will deliver two enablers that aim at improving the continuous delivery of smart IoT systems, with a specific focus on (i) agile and continuous evolution and (ii) ensuring the proper design of the system before delivery. A particular attention will be given to support the testing of smart IoT systems and the gradual migration from the test to the operation environment.
Agile Operation Toolkit
ENACT will deliver three innovative enablers to significantly reduce the burden of managing and maintaining smart IoT systems. A specific attention will be given (i) to ensure the trustworthiness of such systems and (ii) to automate operation activities as much as possible.
ENACT will deliver a set of enablers addressing specific crosscutting trustworthiness concerns such as ensuring proper robustness, security and privacy of smart IoT systems.
The main technical objective of ENACT is to develop novel IoT platform enablers to:
- Enable DevOps in the realm of trustworthy smart IoT systems, and enrich it with novel concepts for end-to-end security and privacy, resilience and robustness strengthening trustworthiness, taking into account the challenges related to "collaborative" actuation and actuation conflicts.
- Facilitate the smooth integration of these to leverage DevOps for existing and new IoT platforms and approaches (e.g., FIWARE, SOFIA, and TelluCloud).
The ENACT enablers represent novel concepts realised as open software engineering methods and tools.
This goal is underpinned by the following technical objectives:
Technical Objective 1: Support continuous delivery of trustworthy SIS.
To reduce delivery time and to foster continuous evolution of trustworthy SIS, the ENACT DevOps Framework will provide automation to close the gap between development and operation activities following the philosophy of DevOps [HumbleFarley10], and foster the continuous creation, evolution, and deployment of trustworthy SIS. In particular, the ENACT DevOps Framework will deliver enablers to accomplish orchestration of sensors, actuators, software services and topology configurations, and support the automatic testing and deployment of this orchestration across the IoT, edge and cloud space.
Technical Objective 2: Support the agile operation of trustworthy SIS.
The ENACT DevOps Framework will facilitate the operations of SIS in a trustworthy and agile fashion. To efficiently maintain and evolve the system according to system requirements, the ENACT DevOps Framework will provide and exploit mechanisms allowing dynamic adaptation both in terms of adapting the system itself according to context changes and by actually adapting the context by means of actuation. To ensure the trustworthy operation of smart applications and in particular the proper actuation on the physical environment, the ENACT DevOps Framework will provide enablers to analyse which actions are permissible in the given run-time context, thereby avoiding potential conflicting actuations and adaptations. Moreover, the ENACT DevOps Framework will enable root cause analysis and prediction in smart IoT systems with respect to trustworthiness, QoS requirements and SLAs.
Technical Objective 3: Support continuous quality assurance strengthening trustworthiness of SIS.
To strengthen trustworthiness, the ENACT DevOps Framework will provide a set of coherent enablers to: (i) continuously validate the proper system design and operation; (ii) control and adapt the system structure, behavior and infrastructure including operation-time monitoring of the system and its underlying infrastructure (\ie, nodes, devices, virtual machines, software stack, location and ownership of nodes, etc.); (iii) enhance robustness and resilience of smart IoT applications; (iv) provide new context-aware security and privacy mechanisms for end-to-end security and privacy across IoT, fog, and cloud infrastructures, integrating not only smart preventive security mechanisms but also reactive security measures; and (v) a novel risk-driven decision support system that allow identifying threats and provide selection of devices and services that adhere to specific security, location and QoS requirements. Because smart applications may involve actuators that can have direct impact on the physical world, special attention will be given to ensure the consistency of the different actuation behaviours and the management of intelligent behaviour also at the edge and IoT end.
Technical Objective 4: Leverage the capabilities of existing IoT platforms and fully exploit legacy, proprietary and off-the-shelf software components and devices.
The ENACT DevOps Framework will provide the missing links to implement a DevOps software process for IoT systems. The core of the ENACT enabler will be kept independent from the underlying implementation choices (i.e., programming languages, libraries, IoT platform, protocols, devices, etc.). A documented plug-in mechanism will allow to specialize the ENACT enablers to exploit the underlying platform for the implementation of continuous integration, deployment, dynamic adaptation, testing, usage analytics, etc. In the ENACT Framework, plugins for various IoT platforms such as SOFIA, FIWARE and TelluCloud will be developed. Targeting SOFIA and FIWARE ensures the broad applicability of ENACT. TelluCloud allow for the validation of the plug-in mechanism on a proprietary platform. The ENACT approach and enablers have to take advantage of existing components as well as allow choosing the best suited IoT platforms for the task. That includes both platforms available today and future ones.
Technical Objective 5: Leverage the capabilities of existing IoT platforms and fully exploit legacy, proprietary and off-the-shelf software components and devices.
ENACT DevOps Framework for trustworthy SIS will demonstrate the smooth integration and exploitation of all ENACT enablers featuring development and operation of trustworthy smart IoT systems across heterogeneous IoT, edge and cloud spaces. The effectiveness of the ENACT DevOps platform and its relevance will be validated by three comprehensive, industrial level case studies. The three case studies represent different application domains and business goals (Smart cities and e-Health, Intelligent Transport Systems, and Smart building) to demonstrate the general applicability of ENACT.