**3. Intelligent user interfaces**

Intelligent user interfaces are human-machine interfaces whose purpose is to enhance the performance, affectivity, naturalness and, in general, usability of interactions between humans and machines representing, reasoning or performing on a collection of models (user, domain, dialog, voice, functions, etc.). The design of user interfaces is a multidisciplinary challenge due to the numerous models coming from different disciplines (see **Figure 1**). Artificial Intelligence leads to developing collaboration with intelligence modeling methods, Software Engineering corresponds to coherent systems, notations and formal languages. Consequently, the user's concern leads to Human-Computer Interaction, and hence the strategies for designing practical user interfaces.

In order to fulfill the key purpose of intelligent user interfaces and to help them in various situations, they need to be able to reflect the information they have about users, the activities they are allowed to do across the user interface, the usage sense in which the user communicates with the program and has the ability to properly interpret the inputs and produce the outputs based on all the data gathered and the information they have [25]. The topic of usage is generally defined by presenting a model of the application users' strengths, skills and interests, the channels on which those users communicate with the application (both the hardware and the software platform), and the physical world in which the interaction takes place, such as luminosity, noise level, etc. In [26], the task actually performed by the client is often included as a first order element in the scope of use. Since the current role is included in the framework of use, given a particular context of use, it is possible to better explain the reactions the machine would give. It can, for example, be used to build context-sensitive support systems quickly. It is very helpful to include the task in the context of use. It is not always feasible, though, to provide a high level of assurance about what the individual is actually carrying out. According to the interaction data obtained from the client, the authors add certain heuristics to a task model to figure out which is the task that is actually being done. The heuristics work

on the premise that the possible tasks that the user executes at a given time are just the set of tasks "enabled" in the actual presentation in which the user communicates at all times [27].
