Article Preview
Top1. Introduction
Pervasive computing technologies have recently emerged with a diversity of computer devices and software applications. In this sense, innovation has renovated our lives and we are currently involved in interaction by way of distinctive devices and machines. Modern researches have attempted to permit progress in user interaction using the notion of context-awareness. Context-aware computing is being identified as a key factor for the enhancement of human-computer interfaces (Dey and Abowd, 2000). This interest has been increasing over the past years. It has been broadly investigated with different fields of computer science (Petkov et al., 2013).
Nevertheless, a growing challenge is facing the requirements of context-aware systems. This challenge is concerned with the design and development of context-aware applications. Some researches deal with modelling and analysing context as in (Fahy and Clarke, 2004), but few are studies in the literature which support the design and development of context-aware pervasive systems. Furthermore, it is certainly proved in the literature that the context of mobile devices is highly dynamic if compared with the traditional desktop computers (Harrison et al., 2013). Thus, another limit refers to the fact that context-aware systems encounter requirements related to their inconsistencies in terms of usability. We notice that usability has more and more been recognized as one of the most important quality factors which reinforce an interactive system success (Nielsen, 1993). Therefore, it is widely considered that integrating good usability design principles has become indispensable in order to provide the operator with an efficient quality of user interface (UI), prevent user’s discomfort and consequently lead to the successful adoption and use of mobile applications. The key challenge, thus, is to adopt UI design (ISO, 2010) to provide compliance of context-aware UI with usability guidelines. We think that there is a need for a new generation of methodologies which allows the selection and the integration of consistent usability requirements into the context-aware design process.
Actually, MDA (OMG MDA, 2003) is being largely explored (Nasri and Bourouis, 2017). It has been proven that it is quite appropriate therefore becoming an essential paradigm for the software system design and development. In the last decade, the Human Computer Interaction community (HCI) has highlighted the benefits of the MDA technology and accordingly is moving towards it (Oliviera et al., 2013). Generally, in such a process, attention is focalized in data and functional modeling neglecting usability aspects in context-aware environments. Hence, there is a need to require the MDA process extension for the purpose of supporting context-based usability as a first-class entity in the UI development process.
In this paper, we propose a model-driven approach that considers the human factors while designing context-aware UI.
The remainder of the paper is organized as follows: Section 2 presents the related works on existing approaches dealing with context-awareness and usability. Section 3 describes the proposed approach for generating context-aware systems based on usability requirements. In this section, two main stages are provided to develop the system namely: usability rules selection which focuses on how to select consistent usability requirements, and Model-Driven Development which focuses on how to incorporate usability requirements into user interface development process. Section 4 presents a case study of the proposed approach as applied to a computerized management maintenance system. Section 5 presents an empirical evaluation of the proposal. An experimental platform is thus proposed to clearly demonstrate the performance of adaptive UI. Finally, section 6 summarizes the principal contributions and outlines the future perspectives.