DevOps principles have revolutionized software engineering: They promote more robust systems, faster release cycles and greater efficiency. In highly complex systems, such as robots or embedded systems as commonly used in industry, three key factors complicate software development under DevOps:
- The combination of hardware and software (for example, the combination of artificial intelligence, sensors and actuators)
- Uncertainty due to the operational environment (such as interaction with people)
- Distributed infrastructure (for example, a combination of cloud services and local services)
To compensate for these factors, the Fraunhofer Institute for Cognitive Systems IKS and Magazino GmbH conducted the research project “RoboDevOps – Continuous development and safeguarding of autonomous, mobile robotic systems” to research new DevOps concepts and evaluate them based on specific scenarios. The project was funded by the Bavarian Ministry of Economic Affairs, Regional Development and Energy.
Whereas other work in the DevOps area and existing technologies in other projects are limited to the creation and testing of pure software packages, the joint project by Fraunhofer IKS and Magazino GmbH focused on integrated hardware and software in order to integrate adaptable robots in actual applications.
As such, the project concentrates on the following key points:
- Reducing lead times through automated test selection and testing procedures
- Increasing test quality through the systematic selection of test scenarios, the testing of non-deterministic robotic systems and the development of methods and metrics for assessing behavioral quality
- Greater control over which software is installed on which robots, based on methods for controlled feature roll-out and release management
- Runtime monitoring and analysis of robots in the field, to measure quality and gain insights for subsequent update cycles