A model-driven approach for designing multi-platform user interface dialogues
Human-computer interaction becomes sophisticated, multimodal and multi device and needs to be well-designed with the aim of facilitating application correction (i.e. to correcting errors/bugs in the application) or extension (i.e. adding new functionalities or modifying existing tasks). This thesis is focused on building a methodology of designing and specifying User Interface (UI) behaviour. The Unified Modelling Language (UML) is used to describe in detail the conceptual model and to define all its objects. The methodology flux diagram is provided with the specification of the consistency and the completeness properties of the transformation model. To support the methodology, we implement a graphic Dialog Editor in which Models are organized in three levels (abstract, concrete and final) according to Cameleon Reference Framework (CFR) and, whose process respects the Model Driven Engineering (MDE) approach. Furthermore, the use of Dialog Editor is illustrated through a simple example (connection to an interactive system with a login and a password) and another more complex example (CTI Application, relative to CTI Company, intended to cover the activities of a company which is specialized in the international transfer of money and import express worldwide services). These two examples of use have revealed strong points of Dialog Editor, as well as certain gaps. Qualitative approach is used to evaluate Dialog Editor. The assessment plan is structured in three phases. In the first instance, in the form of an interview we presented an open questionnaire to the potential users, in order to have feedback of a more or less general nature. Then, we organized a satisfaction survey by making use of the IBM Computer Usability Satisfaction Questionnaires (CSUQ). Finally, to conclude this assessment, we have applied the respondents' comments to the ISO / CEI 9126 norm criteria to have a clearer vision of the useful and usable characteristics of Dialog Editor.