\section{Future Work}
\label{sec:future_work}

Despite all the accomplishments achieved through the AdaptUI platform, there are 
still several areas and features in which more efforts are required to improve 
the presented results. Consequently, in this section several ideas about future
research actions are presented and, in some cases, an explanation of the steps 
that should be taken.

\begin{enumerate}[label=\alph*)]
  \item Dynamic self-generation adaptive rules. Although AdaptUI provides three 
  different sets of rules, these rules are static, and they always depend on 
  the corresponding developer to be designed. This means that rules have to 
  be added in a previous stage, when users are still not present. In the near 
  future we aim to provide to AdaptUI an extra module capable of generating and 
  adapting at runtime different rules considering several context change 
  triggers. Thus, from a default set of rules, these rules could be personalized 
  taking into account the user experience.
  
  \item Further \textit{Pellet4Android} evaluation and tests are needed. Although
  it provides promising results running in Android devices, deeper processing
  experiments are needed. More specialized datasets should be used to compare
  the results.
  
  \item AdaptUI basically covers disabilities related to visual and hearing
  sensory limitations. A further study and analysis of these and more 
  disabilities, based on the \ac{icf}, would include more users and better 
  adaptations of the user interfaces.
  
  \item Use users with actual enduring disabilities.
  
  \item Translate the models to JSON-LD~\citep{jsonld}, which is a JSON based
  Linked Data format.
  
  \item Adapt the \ac{api}, reaching a more object oriented paradigm. For instance,
  declaring an individual and being able to modify it with class methods would 
  be desirable than the current approach, in which there is just a method to
  declare it through the AdaptUI object. Listing~\ref{lst:api_adaptation} shows
  an example of the mentioned changes.
  
  \inputminted[linenos=true, fontsize=\footnotesize, frame=lines]{java}{6_conclusion/api_adaptation.java}
\captionof{listing}{Projected changes in the \ac{api}.\label{lst:api_adaptation}}

  \item Including the usability metrics in the Modelling Layer might help to
  identify the user needs in the current context. This will also allow to avoid
  the necessity of using the Capabilities Collector. In the current version it
  is mandatory to use it to collect several user preferences. By anticipating
  the intervention of the usability metrics the interaction monitoring process
  might produce significant preferences results.
  
%   \item Managing more than one possible configuration for the same view for the 
%   same context. For instance, combining the functionality of a button with a 
%   specific configuration.
  
  \item Integrate the proposed framework with the paradigm followed by
  \citet{marmolin_medium_1995}, through which it would be possible to distinguish
  between superficial and deep customizations depending on the context situation.
  This could be used to enrich the functionalities of the Adaptation Polisher
  module.
\end{enumerate}