HyVar Tool Chain Software Modules
Please select an area in the picture to see more information on the components.

DarwinSPL
Tool suite for modeling the conceptual side of software produt lines of HyVar. In detail, it allows to define feature models with attributes, context-aware feature models (including contextual information), context-aware reconfiguration rules, the mapping to code artifacts defined with DeltaEcore and to model the evolution of all of these models.
Component name | DarwinSPL |
---|---|
Responsable Unit | TUB |
Version | 2.0 |
Source Code | DarwinSPL |
Nature | Development/Deployment |
Programming Language | Java/Ecore Metamodeling |
Development Tools | Eclipse |
Additional Libraries | Google GSON, Jetty (Apache 2.0), FreeMarker (Apache 2.0), Choco solver (BSD license) |
Licensing | Apache 2.0 |
Contact Person | Email to Michael Nieke |
Tutorial | Documentation |
Cross Compiler and Tarball Generation
Set of scripts and software modules used to automatically generate a makefile for a specific variant based on Autotools. Autotools is a GNU Build system to compile and build the product depending on the target platform.
COMPONENT NAME | Cross Compiler and Tarball Generation |
---|---|
Responsable Unit | Reply/UNITO |
Source Code | Auotomake |
Nature | Development/Deployment |
Licensing | GNU General Public License (GPL) |
Contact Person | Email to Simone Donetti Email to Liudmila Dobriakova |
Tutorial | Tutorial |
Multi Software Product Lines Extension
This component provides support for Multi Software Product Lines in order to enable modular development and analysis of large and variable systems. It is implemented in Eclipse, as a layer on top of DarwinSPL.
Component name | MSPL Extension |
---|---|
Responsable Unit | UNITO |
Version | 1.0 |
Nature | Development |
Development Tools | Eclipse |
Contact Person | Email to Simone Donetti Email to Ferruccio Damiani |
Analysis of DSVL
This component provides support for checking properties of systems developed using the HyVar toolchain. The considered properties include feature model consistency and well-formedness of variants (at the statechat level).
Component name | Analysis of DSVL |
---|---|
Responsable Unit | UNITO |
Version | 1.0 |
Nature | Development |
Development Tools | Eclipse |
Contact Person | Email to Michael Lienhardt Email to Ferruccio Damiani |
DarwinSPL
Tool suite for modeling the conceptual side of software produt lines of HyVar. In detail, it allows to define feature models with attributes, context-aware feature models (including contextual information), context-aware reconfiguration rules, the mapping to code artifacts defined with DeltaEcore and to model the evolution of all of these models.
Component name | DarwinSPL |
---|---|
Responsable Unit | TUB |
Version | 2.0 |
Source Code | DarwinSPL |
Nature | Development/Deployment |
Programming Language | Java/Ecore Metamodeling |
Development Tools | Eclipse |
Additional Libraries | Google GSON, Jetty (Apache 2.0), FreeMarker (Apache 2.0), Choco solver (BSD license) |
Licensing | Apache 2.0 |
Contact Person | Email to Michael Nieke |
Tutorial | Documentation |
HyVarRec
Reconfigurator tool: check the validity of a configuration and if not it provides a new valid one taking into account and maximize the user preferences.
Component name | HyVarRec |
---|---|
Responsable Unit | UiO |
Version | 0.2 |
Source Code | HyVarRec |
Nature | Deployment |
Programming Language | Python |
Development Tools | Z3 SMT Solver |
Additional Libraries | click, antlr4-python2-runtime |
Licensing | ISC |
Contact Person | Email to Jacopo Mauro |
Tutorial | HyVarRec |
Video | HyVarRec video Tutorial |
ECU Update
Software component and protocols for updating the ECUs connected to the
CAN bus
Cross Compiler and Tarball Generation
Set of scripts and software modules used to automatically generate a makefile for a specific variant based on Autotools. Autotools is a GNU Build system to compile and build the product depending on the target platform.
COMPONENT NAME | Cross Compiler and Tarball Generation |
---|---|
Responsable Unit | Reply/UNITO |
Source Code | Auotomake |
Nature | Development/Deployment |
Licensing | GNU General Public License (GPL) |
Contact Person | Email to Simone Donetti Email to Liudmila Dobriakova |
Tutorial | Tutorial |
Scalability Optimizer
This component, given a formal executable model written in ABS investigates by using an automatic parameter configurator what are the best possible settings of the model to reach a given target. In particular, it is used to find good auto-scaling strategies for every component in the HyVar toolchain that has been modeled in ABS.
Component name | Scalability Optimizer |
---|---|
Responsable Unit | UiO |
Version | alpha |
Nature | Deployment |
Programming Language | ABS language, Python, Bash |
Development Tools | ABS tools, Erlang, SMAC |
Contact Person | Email to Ingrid Chieh Yu Email to Jia-Chun Lin Email to Jacopo Mauro |
Java Compiler
This component together with Maven project management tool automatically generate an executable jar file out from the java class files received from the previous component to be uploaded to the ECU_C and executed.
COMPONENT NAME | Java Compiler |
---|---|
Responsable Unit | Reply |
Development Tools | Eclipse / Maven |
Nature | Development/Deployment |
Licensing | GNU General Public License (GPL) |
Contact Person | Email to Liudmila Dobriakova |
Java Compiler
This component together with Maven project management tool automatically generate an executable jar file out from the java class files received from the previous component to be uploaded to the ECU_C and executed.
COMPONENT NAME | Java Compiler |
---|---|
Responsable Unit | Reply |
Development Tools | Eclipse / Maven |
Nature | Development/Deployment |
Licensing | GNU General Public License (GPL) |
Contact Person | Email to Liudmila Dobriakova |
Code Generator
This component using the Yakindu SCT headless plugin generate the C or Java code based on the received parameters.
COMPONENT NAME | Code Generator |
---|---|
Responsable Unit | Reply |
Development Tools | JVM and Yakindu SCT plugin |
Nature | Development/Deployment |
Licensing | GNU General Public License (GPL) |
Contact Person | Email to Liudmila Dobriakova |
Code Generator
This component using the Yakindu SCT headless plugin generate the C or Java code based on the received parameters.
COMPONENT NAME | Code Generator |
---|---|
Responsable Unit | Reply |
Development Tools | JVM and Yakindu SCT plugin |
Nature | Development/Deployment |
Licensing | GNU General Public License (GPL) |
Contact Person | Email to Liudmila Dobriakova |