Skip to main content

Scalable Hybrid Variability for Distributed Evolving Software Systems

Periodic Reporting for period 2 - HyVar (Scalable Hybrid Variability for Distributed Evolving Software Systems)

Reporting period: 2016-08-01 to 2018-01-31

HyVar proposes a development framework for continuous and individualized evolution of distributed software applications running on remote devices in heterogeneous environments.
The framework combine variability modeling from software product lines with formal methods and software upgrades, and can be easily integrated in existing software development processes.
HyVar's overall objectives are:
(O1) to develop a Domain Specific Variability Language (DSVL) and tool chain to support software variability for such applications;
(O2) to develop a cloud infrastructure that exploits software variability as described in the DSVL to track the software configurations deployed on remote devices and to enable (i) the collection of data from the devices to monitor their behavior; and (ii) secure and efficient customized updates;
(O3) to develop a technology for over-the-air updates of distributed applications which enables continuous software evolution after deployment on complex remote devices that incorporate a system of systems;
and (O4) to test HyVar's approach as described in the above objectives in an industry-led demonstrator to assess in quantifiable ways its benefits.
During the first reporting period (M1-M18) we focused on:
• Identification of requirements, development of semantic and syntax for the Domain Specific Variability Language (DSVL) and initial definition of variability mining methodology.
• Definition of engineering methodology and process guidelines to apply the DSVL in industrial practice, and study of formal verification techniques to incrementally validate the variability model.
• Study and implementation of an algorithm that enables scalable hybrid feature reconfiguration for highly customized remote devices. Initial investigation on auto-scaling mechanisms.
• Initiate the design and development of DSVL tool chain, cloud infrastructure and over-the-air ECU updating technology.
• Identification of suitable use cases and development of demonstrator model.
• Set-up of the external project web site, preparation of Poster and promotional material and participation to events targeting scientific community and broader public to promote project results.
• Establishment of a collaborative working environment and procedures to make easier and efficient the cooperation between partners. Costant monitoring of the progress on technical activities and of the costs.

During the second reporting period (M19-M36) we extended the initial results by:
• Constant monitoring of the progress on technical activities and of the costs (O1.1 O1.2). Ensure the good communication between project Partners and the achievement of relevant quality standards (O1.3 O1.4 and O1.5). Completion of M24, M30 and M36 deliverables.
• Refinement of the requirements (O2.1) finalization of semantic and syntax (O2.2) of the Domain Specific Variability Language (DSVL) and of the methodology specification for Variability Mining (O2.3).
• Definition of engineering guidelines and processes to apply the DSVL in industrial practice (O3.1). Implementation of efficient variability models analyses (O3.2). Study of formal approaches for software product lines quality assurance (O3.3) in particular behavioral analyses of statecharts by applying model checking techniques.
• Extension and improvement of the hybrid product reconfigurator HyVarRec (O4.1). Definition and validation of virtualized reconfiguration algorithm (O4.2). Application of the methodology for the scalability optimization to the final demonstrator scenario (O4.3).
• Implementation and integration of the HyVar DSVL development tool chain (O5.1). Realization of the cloud infrastructure and of the deployment tool chain (O5.2). Finalization of the over-the-air ECU updating technology (O5.3).
• Identification and development of the final demonstrator scenario related to the automotive domain (O6.1 O6.2) and evaluation of the overall HyVar methodology (O6.3).
• Dissemination and exploitation actions to communicate the obtained results both to European scientific and research communities and to industrial players (O7.1 O7.2).

With the development of the tool-chain and the definition of the first demonstrator we moved from the awareness to the communication phase with more actions directed to the industry stakeholders. We organized several presentations to potential adopters and during business oriented events and exhibitions.
We also published on HyVar web site a marketing oriented White Paper, a Demonstrator Video, some technical material (link to the software components developed, tutorials, webinars) and a survey to collect user feedback.
HyVar provides an innovative methodology and a supportive ICT tool chain in order to increase the efficiency of maintenance of complex, highly distributed software lines by enhancing the agility and responsiveness from the variability of the operational scenarios.

The HyVar integrated framework consists of advanced methods and tools that support:
• modeling of spatial and temporal variability in all phases of the software lifecycle,
• scalable, elastic, context-aware reconfiguration of individualized application instances, and
• secure and efficient over-the-air software updates on remote devices.
Tested in an industry-led demonstrator in automotive domain and addressing problems by the use cases’ actors and early adopters, the advanced solution showed to meet the needs and challenges of pervasive computing.

The HyVar Tool Chain offers a unique value proposition, as it support:
• Software reuse through proactive or extractive SPL development.
• Improved maintainability using modular design and analysis tools.
• Scalable virtualized and efficient reconfiguration.
• Cost saving through customized over-the-air update in the automotive domain.
In addition, the single components of the toolchain have a value in themselves and can be easily integrated in widely used development and modeling environments (Eclipse, Yakindu) and in commonly adopted engineering and industrial practices.

HyVar goes beyond the state-of-the-art by proposing hybrid variability; i.e. the automatic generation and deployment of software updates combines the variability model describing possible software configurations with sensor data collected from the device.

The results of the project could lead to considerable improvements in software development process and OTA update of software components.
The proposed methodology could be applied not only in the automotive domain, but also in other industry domains (such as home automation or remote healthcare), characterized by:
• Intensive software development and strong need to reduce cost of software development and maintenance.
• High variability of software and need to increase customization.
• Distributed applications running on remote devices requiring to perform over the air software upgrades after deployment.

HyVar is expected to have a significant potential impact supporting the customization, change management and maintenance of distributed software over heterogeneous networks of smart objects and cloud-based applications. As wider societal implications HyVar will contribute to increasing European engineering and system manufacturing competitiveness by enabling higher flexibility and increased product quality.