HyVarRec is a tool developed within the HyVar project that allows to reconfigure an existing configuration for a given Software Product Line when it is subject to contextual changes.
HyVarRec requires different sources of input: the Hybrid Feature Model describing the software product, the current configuration C0 of the software product, the values of the contextual information Ctx, and the user profile P . The primary function of the contextual reconfigurator is to provide a valid configurations Cnew for the context Ctx that maximize the preferences of user profile P. In case of two configurations of equal quality regarding the maximization of the user preferences, the one that minimizes the difference between the initial configuration C0 is provided. This means that HyVarRec first tries to minimize the number of feature removals needed to transform C0 into C new and, later, to maximize the
number of attributes which values could be kept the same. Finally, HyVarRec outputs the configuration Copt, which is the optimal configuration in the given context, satisfying as many preferences of P as possible.
HyVarRec could be installed using docker container technology available for the majority of the operating systems. It can therefore be used simply sending a post request to the server deployed by using docker.
HyVarRec is written in python, open source, and freely available from https://github.com/HyVar/hyvar-rec.