Engineering adaptive model-driven user interfaces for enterprise applications

Enterprise applications such as enterprise resource planning systems have numerous complex user interfaces (UIs). Usability problems plague these UIs because they are offered as a generic off-the-shelf solution to end-users with diverse needs in terms of their required features and layout preferences. Adaptive UIs can help in improving usability by tailoring the features and layout based on the context-of-use. The model-driven UI development approach offers the possibility of applying different types of adaptations on the various UI levels of abstraction. This approach forms the basis for many works researching the development of adaptive UIs. Yet, several gaps were identified in the state-of-the-art adaptive model-driven UI development systems. To fill these gaps, this thesis presents an approach that offers the following novel contributions: - The Cedar Architecture serves as a reference for developing adaptive model-driven enterprise application user interfaces. - Role-Based User Interface Simplification (RBUIS) is a mechanism for improving usability through adaptive behavior, by providing end-users with a minimal feature-set and an optimal layout based on the context-of-use. - Cedar Studio is an integrated development environment, which provides tool support for building adaptive model-driven enterprise application UIs using RBUIS based on the Cedar Architecture. The contributions were evaluated from the technical and human perspectives. Several metrics were established and applied to measure the technical characteristics of the proposed approach after integrating it into an open-source enterprise application. Additional insights about the approach were obtained through the opinions of industry experts and data from real-life projects. Usability studies showed the approach’s ability to significantly improve usability in terms of end-user efficiency, effectiveness and satisfaction.

[1]  S RosenblumDavid,et al.  An Architecture-Based Approach to Self-Adaptive Software , 1999 .

[2]  Arosha K. Bandara,et al.  Cedar studio: an IDE supporting adaptive model-driven user interfaces for enterprise applications , 2013, EICS '13.

[3]  Marc Abrams,et al.  UIML: An Appliance-Independent XML User Interface Language , 1999, Comput. Networks.

[4]  Thomas K. Landauer,et al.  Behavioral Research Methods in Human-Computer Interaction , 1997 .

[5]  Uwe Aßmann,et al.  Using Role-Based Composition to Support Unanticipated , Dynamic Adaptation-Smart Application Grids , 2012 .

[6]  Fabio Paternò,et al.  The TERESA XML Language for the Description of Interactive Systems at Multiple Abstraction Levels , 2004 .

[7]  Oliver Brdiczka,et al.  Learning Situation Models for Providing Context-Aware Services , 2007, HCI.

[8]  Sahin Albayrak,et al.  Event-based Synchronization of Model-Based Multimodal User Interfaces , 2006, MDDAUI@MoDELS.

[9]  Olivier Chapuis,et al.  User interface façades: towards fully adaptable user interfaces , 2006, UIST.

[10]  Fabio Paternò,et al.  ConcurTaskTrees: A Diagrammatic Notation for Specifying Task Models , 1997, INTERACT.

[11]  Panagiotis G. Ipeirotis,et al.  Running Experiments on Amazon Mechanical Turk , 2010, Judgment and Decision Making.

[12]  Jean Vanderdonckt,et al.  Model-Based UI XG Final Report , 2010 .

[13]  Kris Luyten,et al.  DynaMo-AID: A Design Process and a Runtime Architecture for Dynamic Model-Based User Interface Development , 2004, EHCI/DS-VIS.

[14]  Kellogg S. Booth,et al.  An evaluation of a multiple interface design solution for bloated software , 2002, CHI.

[15]  Sahin Albayrak,et al.  A 3-layer architecture for smart environment models , 2010, 2010 8th IEEE International Conference on Pervasive Computing and Communications Workshops (PERCOM Workshops).

[16]  Peter Johnson,et al.  Adept-a task based design environment , 1992, Proceedings of the Twenty-Fifth Hawaii International Conference on System Sciences.

[17]  Pierre A. Akiki Engineering adaptive user interfaces for enterprise applications , 2013, EICS '13.

[18]  Joëlle Coutaz,et al.  CAMELEON-RT: A Software Architecture Reference Model for Distributed, Migratable, and Plastic User Interfaces , 2004, EUSAI.

[19]  Alois Ferscha,et al.  Constructing Ambient Intelligence - AmI 2007 Workshops Darmstadt, Germany, November 7-10, 2007 Revised Papers , 2008, AmI Workshops.

[20]  San Murugesan Web engineering , 1999, LINK.

[21]  Wilfred J. Hansen,et al.  The Andrew Toolkit - An Overview , 1988, USENIX Winter.

[22]  James A. Landay,et al.  Employing patterns and layers for early-stage design and prototyping of cross-device user interfaces , 2008, CHI.

[23]  Jean Vanderdonckt,et al.  Encapsulating knowledge for intelligent automatic interaction objects selection , 1993, INTERCHI.

[24]  Francisco Montero Simarro,et al.  IdealXml: An Interaction Design Tool , 2006, CADUI.

[25]  Carole A. Goble,et al.  Teallach: a model-based user interface development environment for object databases , 1999, Proceedings User Interfaces to Data Intensive Systems.

[26]  Krzysztof Z. Gajos,et al.  Preference elicitation for interface optimization , 2005, UIST.

[27]  Frank Lonczewski,et al.  The FUSE-System: an Integrated User Interface Design Environment , 1996, CADUI.

[28]  Ketil Stølen,et al.  What is model driven architecture , 2003 .

[29]  Luciano Baresi,et al.  The disappearing boundary between development-time and run-time , 2010, FoSER '10.

[30]  Heinrich Hußmann,et al.  Model-driven development of advanced user interfaces , 2010, CHI EA '10.

[31]  Tadao Saito,et al.  Designing interface toolkit with dynamic selectable modality , 1996, Assets '96.

[32]  Walter F. Tichy,et al.  Proceedings 25th International Conference on Software Engineering , 2003, 25th International Conference on Software Engineering, 2003. Proceedings..

[33]  Dan R. Olsen,et al.  MIKE: The Menu Interaction Kontrol Environment , 1986, ACM Trans. Graph..

[34]  Mary Shaw,et al.  What makes good research in software engineering? , 2002, International Journal on Software Tools for Technology Transfer.

[35]  Peyman Oreizy,et al.  An architecture-based approach to self-adaptive software , 1999, IEEE Intell. Syst..

[36]  Luís Carriço,et al.  A conceptual framework for developing adaptive multimodal applications , 2006, IUI '06.

[37]  Stina Nylander,et al.  The Ubiquitous Interactor - Device Independent Access to Mobile Services , 2004, CADUI.

[38]  Jeff A. Johnson Selectors: going beyond user-interface widgets , 1992, CHI '92.

[39]  Egbert Schlungbaum,et al.  Modelling and Generation of Graphical User Interfaces in the TADEUS Approach , 1995, DSV-IS.

[40]  Pablo Castells,et al.  Declarative interface models for user interface construction tools: the MASTERMIND approach , 1995, EHCI.

[41]  Krzysztof Z. Gajos,et al.  Automatically generating user interfaces adapted to users' motor and vision capabilities , 2007, UIST.

[42]  Ladan Tahvildari,et al.  Self-adaptive software: Landscape and research challenges , 2009, TAAS.

[43]  Andrea Bunt,et al.  AdaptableGIMP: designing a socially-adaptable interface , 2011, UIST '11 Adjunct.

[44]  Moira C. Norrie,et al.  Tools and Architectural Support for Crowdsourced Adaptation of Web Interfaces , 2011, ICWE.

[45]  Gregor Kiczales,et al.  Aspect-oriented programming , 2001, ESEC/FSE-9.

[46]  Daniela E. Damian,et al.  Selecting Empirical Methods for Software Engineering Research , 2008, Guide to Advanced Empirical Software Engineering.

[47]  Fabio Paternò,et al.  MARIA: A universal, declarative, multiple abstraction-level language for service-oriented applications in ubiquitous environments , 2009, TCHI.

[48]  Brad A. Myers,et al.  Past, Present and Future of User Interface Software Tools , 2000, TCHI.

[49]  Angel R. Puerta,et al.  The MECANO Project: Comprehensive and Integrated Support for Model-Based Interface Development , 1996, CADUI.

[50]  Marisa E. Campbell,et al.  Conference preview: HCI 2000: usability or else! , 2000, INTR.

[51]  Edwin D. Reilly,et al.  Interactive system , 2003 .

[52]  Daniela K. Busse,et al.  Complexity in Enterprise Applications vs. Simplicity in User Experience , 2007, HCI.

[53]  Tamara Babaian,et al.  Identifying Usability Issues with an ERP Implementation , 2005, ICEIS.

[54]  Yijun Yu,et al.  Integrating adaptive user interface capabilities in enterprise applications , 2014, ICSE.

[55]  Yijun Yu,et al.  RBUIS: simplifying enterprise application user interfaces through engineering role-based adaptive behavior , 2013, EICS '13.

[56]  Sophie Dupuy-Chessa,et al.  A Survey of Model Driven Engineering Tools for User Interface Design , 2007, TAMODIA.

[57]  Jacob Eisenstein,et al.  Interactively Mapping Task Models to Interfaces in MOBI-D , 1998 .

[58]  Sahin Albayrak,et al.  Model-based layout generation , 2008, AVI '08.

[59]  Jürgen Ziegler,et al.  Generating user interfaces from data models and dialogue net specifications , 1993, INTERCHI.

[60]  Sriram Subramanian,et al.  Talking about tactile experiences , 2013, CHI.

[61]  Mary Shaw,et al.  Software Engineering for Self-Adaptive Systems: A Research Roadmap , 2009, Software Engineering for Self-Adaptive Systems.

[62]  Murray Crease,et al.  Caring, Sharing Widgets: A Toolkit of Sensitive Widgets , 2000, BCS HCI.

[63]  Jean Vanderdonckt,et al.  Graceful degradation of user interfaces as a design method for multiplatform systems , 2004, IUI '04.

[64]  David Garlan,et al.  Rainbow: architecture-based self-adaptation with reusable infrastructure , 2004 .

[65]  Sahin Albayrak,et al.  Multimodal User Interaction in Smart Environments: Delivering Distributed User Interfaces , 2007, AmI Workshops.

[66]  Pedro A. Szekely,et al.  Design alternatives for user interface management sytems based on experience with COUSIN , 1985, CHI '85.

[67]  Jeff Magee,et al.  Self-Managed Systems: an Architectural Challenge , 2007, Future of Software Engineering (FOSE '07).

[68]  Dan R. Olsen,et al.  Evaluating user interface systems research , 2007, UIST.

[69]  Christian Märtin,et al.  Software Life Cycle Automation for Interactive Applications: The AME Design Environment , 1996, CADUI.

[70]  Dan R. Olsen,et al.  A Programming Language Basis for User Interface Management , 1989 .

[71]  Akash Singh,et al.  Evaluation criteria for assessing the usability of ERP systems , 2009, SAICSIT '09.

[72]  Julie A. McCann,et al.  A survey of autonomic computing—degrees, models, and applications , 2008, CSUR.

[73]  Sebastian Feuerstack,et al.  A method for the user centered and model-based development of interactive applications , 2009 .

[74]  Constantine Stephanidis Towards the Next Generation of UIST: Developing for all Users , 1997, HCI.

[75]  Jean Vanderdonckt,et al.  THE « CORPUS ERGONOMICUS »: A COMPREHENSIVE AND UNIQUE SOURCE FOR HUMAN-MACHINE INTERFACE , 2000 .

[76]  Jean Vanderdonckt,et al.  USIXML: A User Interface Description Language Supporting Multiple Levels of Independence , 2004, ICWE Workshops.

[77]  Joëlle Coutaz,et al.  User interface plasticity: model driven engineering to the limit! , 2010, EICS '10.

[78]  Sahin Albayrak,et al.  Seamless Home Services , 2006 .

[79]  Charles Wiecha,et al.  ITS: a tool for rapidly developing interactive applications , 1990, TOIS.

[80]  Paulo Pinheiro,et al.  User Interface Declarative Models and Development Environments: A Survey , 2000, DSV-IS.

[81]  Jean Vanderdonckt,et al.  People and Computers XV—Interaction without Frontiers , 2001, Springer London.

[82]  Jan Van den Bergh,et al.  Task Models for Safe Software Evolution and Adaptation , 2009, TAMODIA.

[83]  Michael D. Buhrmester,et al.  Amazon's Mechanical Turk , 2011, Perspectives on psychological science : a journal of the Association for Psychological Science.

[84]  Jean Vanderdonckt,et al.  A Sketching Tool for Designing Anyuser, Anyplatform, Anywhere User Interfaces , 2005, INTERACT.

[85]  Brice Morin,et al.  Combining aspect-oriented modeling with property-based reasoning to improve user interface adaptation , 2011, EICS '11.

[86]  Jørgen Staunstrup Design Specification and Verification , 1997 .

[87]  GrafiXML, a Multi-target User Interface Builder Based on UsiXML , 2008, Fourth International Conference on Autonomic and Autonomous Systems (ICAS'08).

[88]  Rob Miller,et al.  The Amulet Environment: New Models for Effective User Interface Software Development , 1997, IEEE Trans. Software Eng..

[89]  Goetz Botterweck,et al.  Multi Front-End Engineering , 2011, Model-Driven Development of Advanced User Interfaces.

[90]  Bernhard Rumpe,et al.  Model-driven Development of Complex Software : A Research Roadmap , 2007 .

[91]  Fabio Paternò,et al.  CTTE: Support for Developing and Analyzing Task Models for Interactive System Design , 2002, IEEE Trans. Software Eng..

[92]  Francisco Montero Simarro,et al.  Designing user interface adaptation rules with T: XML , 2009, IUI.

[93]  David Frankel,et al.  Model Driven Architecture: Applying MDA to Enterprise Computing , 2003 .

[94]  Stephen Travis Pope,et al.  A Description of the Model-View-Controller User Interface Paradigm in the Smalltalk-80 System , 1998 .

[95]  Christoph Niemann,et al.  The JANUS Application Development Environment - Generating More than the User Interface , 1996, CADUI.

[96]  Rogério de Lemos,et al.  Software Engineering for Self-Adaptive Systems [outcome of a Dagstuhl Seminar] , 2009, Software Engineering for Self-Adaptive Systems.

[97]  Moira C. Norrie,et al.  Crowdsourced Web Engineering and Design , 2012, ICWE.

[98]  Yijun Yu,et al.  A SYSTEMATIC FRAMEWORK FOR ASSESSING THE IMPLEMENTATION PHASE OF ENTERPRISE RESOURCE PLANNING SYSTEMS , 2012 .

[99]  Arnaud Blouin,et al.  Improving modularity and usability of interactive systems with Malai , 2010, EICS '10.

[100]  Jean Vanderdonckt,et al.  Usability evaluation of multi-device/platform user interfaces generated by model-driven engineering , 2010, ESEM '10.

[101]  Jean Vanderdonckt,et al.  Proceedings of the 2nd ACM SIGCHI symposium on Engineering interactive computing systems , 2010 .

[102]  Robin Kay,et al.  A Practical Research Tool for Assessing Ability to Use Computers: The Computer Ability Survey (CAS). , 1993 .

[103]  Constantine Stephanidis,et al.  Universal Access in HCI , 2001 .

[104]  Caroline Appert,et al.  SwingStates: adding state machines to the swing toolkit , 2006, UIST.

[105]  B. Shneiderman Promoting universal usability with multi-layer interface design , 2002, CUU '03.

[106]  Yijun Yu,et al.  Preserving Designer Input on Concrete User Interfaces Using Constraints While Maintaining Adaptive Behavior , 2013, CASFE.

[107]  Jean Vanderdonckt,et al.  Computer-Aided Design Of User Interfaces V, Proceedings of the Sixth International Conference on Computer-Aided Design of User Interfaces, CADUI 2006 6-8 June 2006, Bucharest, Romania , 2008, CADUI.

[108]  Sophie Dupuy-Chessa,et al.  UsiComp: an extensible model-driven composer , 2012, EICS '12.

[109]  Christine L. Lisetti,et al.  Proceedings of the 13th International Conference on Human Computer Interaction , 2009 .

[110]  P. Lachenbruch Statistical Power Analysis for the Behavioral Sciences (2nd ed.) , 1989 .

[111]  Joanna McGrenere,et al.  Evaluating Reduced-Functionality Interfaces According to Feature Findability and Awareness , 2007, INTERACT.

[112]  Jean Vanderdonckt,et al.  An automated layout approach for model-driven WIMP-UI generation , 2012, EICS '12.

[113]  Detlef Zuehlke,et al.  Model-driven development of advanced user interfaces , 2010, CHI Extended Abstracts.

[114]  J. B. Brooke,et al.  SUS: A 'Quick and Dirty' Usability Scale , 1996 .

[115]  Yvonne Rogers,et al.  Interaction Design: Beyond Human-Computer Interaction , 2002 .

[116]  Murielle Florins,et al.  Graceful degradation: a method for designing multiplatform graphical user interfaces , 2006 .

[117]  Jan Meskens,et al.  Design by Example of Graphical User Interfaces Adapting to Available Screen Size , 2008, CADUI.

[118]  Jan Meskens,et al.  Gummy for multi-platform user interface designs: shape me, multiply me, fix me, use me , 2008, AVI '08.

[119]  Yijun Yu,et al.  Adaptive Model-Driven User Interface Development Systems , 2014, ACM Comput. Surv..

[120]  Peter Robinson,et al.  Towards a practical inclusive design approach , 2000, CUU '00.

[121]  Deborah J. Mayhew,et al.  The usability engineering lifecycle , 1998, CHI Conference Summary.

[122]  Ping Luo,et al.  Facilitating the exploration of interface design alternatives: the HUMANOID model of interface design , 1992, CHI.

[123]  Jean Vanderdonckt,et al.  Towards a Systematic Building of Software Architectures: the TRIDENT Methodological Guide , 1995, DSV-IS.

[124]  Sahin Albayrak,et al.  Bridging models and systems at runtime to build adaptive user interfaces , 2010, EICS '10.

[125]  Krzysztof Z. Gajos,et al.  Automatically generating personalized user interfaces with Supple , 2010, Artif. Intell..

[126]  Ralph D. Hill,et al.  Supporting concurrency, communication, and synchronization in human-computer interaction—the Sassafras UIMS , 1986, TOGS.

[127]  David E. Avison,et al.  INFORMATION SYSTEMS DEVELOPMENT , 2006 .

[128]  Luciano Baresi,et al.  Fuzzy Goals for Requirements-Driven Adaptation , 2010, 2010 18th IEEE International Requirements Engineering Conference.

[129]  Philippe A. Palanque,et al.  Engineering Human Computer Interaction and Interactive Systems, Joint Working Conferences EHCI-DSVIS 2004, Hamburg, Germany, July 11-13, 2004, Revised Selected Papers , 2005, EHCI/DS-VIS.

[130]  Eric Lecolinet,et al.  A molecular architecture for creating advanced GUIs , 2003, UIST '03.

[131]  Carsten Rudolph,et al.  Developing Ambient Intelligence , 2008 .

[132]  Jean Vanderdonckt,et al.  Model-Driven Engineering of User Interfaces: Promises, Successes, Failures, and Challenges , 2008 .

[133]  T. Landauer,et al.  Handbook of Human-Computer Interaction , 1997 .

[134]  Srdjan Kovacevic,et al.  UIDE—an intelligent user interface design environment , 1991 .

[135]  Pascal Bihler,et al.  Supporting Cross-Application Contexts with Dynamic User Interface Fusion , 2007, GI Jahrestagung.

[136]  Matthias Peissner,et al.  MyUI: generating accessible user interfaces from multimodal design patterns , 2012, EICS '12.

[137]  B. Thomas,et al.  Usability Evaluation In Industry , 1996 .

[138]  Goetz Botterweck,et al.  Integrating Automated Product Derivation and Individual User Interface Design , 2010, VaMoS.

[139]  Yijun Yu,et al.  Using Interpreted Runtime Models for Devising Adaptive User Interfaces of Enterprise Applications , 2012, ICEIS.

[140]  Austin Henderson,et al.  Interaction design: beyond human-computer interaction , 2002, UBIQ.

[141]  Kris Luyten,et al.  A task-driven user interface architecture for ambient intelligent environments , 2006, IUI '06.

[142]  Arosha Bandara,et al.  Crowdsourcing user interface adaptations for minimizing the bloat in enterprise applications , 2013, EICS '13.

[143]  Mark Green,et al.  The University of Alberta user interface management system , 1985, SIGGRAPH.

[144]  Janice Singer,et al.  Guide to Advanced Empirical Software Engineering , 2007 .

[145]  Jacob Cohen Statistical Power Analysis for the Behavioral Sciences , 1969, The SAGE Encyclopedia of Research Design.

[146]  Robert J. K. Jacob,et al.  A Specification Language for Direct-Manipulation User Interfaces , 1986, ACM Trans. Graph..

[147]  Pierre A. Akiki Devising a New Model-Driven Framework for Developing GUI for Enterprise Applications , 2008, ISD.

[148]  Axel Uhl,et al.  Model-Driven Architecture , 2002, OOIS Workshops.

[149]  Jean Vanderdonckt,et al.  A Theoretical Survey of User Interface Description Languages: Preliminary Results , 2009, 2009 Latin American Web Congress.

[150]  Sahin Albayrak,et al.  Behavior-Sensitive User Interfaces for Smart Environments , 2009, HCI.

[151]  K. J. Schmucker,et al.  MacApp: An application framework , 1987 .

[152]  Gordon S. Blair,et al.  Dynamically Adaptive Systems are Product Lines too: Using Model-Driven Techniques to Capture Dynamic Variability of Adaptive Systems , 2008, SPLC.

[153]  T. C. Nicholas Graham,et al.  Architectures for Widget-Level Plasticity , 2003, DSV-IS.

[154]  Marco Blumendorf,et al.  Multimodal interaction in smart environments: a model-based runtime system for ubiquitous user interfaces , 2009 .

[155]  Anthony F. Norcio,et al.  Adaptive human-computer interfaces: a literature survey and perspective , 1989, IEEE Trans. Syst. Man Cybern..

[156]  Benjamin Michotte,et al.  Visual Design of User Interfaces by (De)composition , 2006, DSV-IS.

[157]  John M. Carroll,et al.  Training wheels in a user interface , 1984, CACM.

[158]  Kellogg S. Booth,et al.  A field evaluation of an adaptable two-interface design for feature-rich software , 2007, TCHI.

[159]  Katharina Reinecke,et al.  Improving performance, perceived usability, and aesthetics with culturally adaptive user interfaces , 2011, TCHI.

[160]  Jeffrey Nichols,et al.  Improving automatic interface generation with smart templates , 2004, IUI '04.

[161]  Jean Vanderdonckt,et al.  Design, Specification and Verification of Interactive Systems ’96 , 1996, Eurographics.

[162]  Karin Coninx,et al.  COMET(s), A Software Architecture Style and an Interactors Toolkit for Plastic User Interfaces , 2008, DSV-IS.

[163]  Joëlle Coutaz,et al.  Towards a New Generation of Widgets for Supporting Software Plasticity: The "Comet" , 2004, EHCI/DS-VIS.

[164]  Arda Goknil,et al.  Survey of Traceability Approaches in Model-Driven Engineering , 2007, 11th IEEE International Enterprise Distributed Object Computing Conference (EDOC 2007).

[165]  Jean Vanderdonckt,et al.  Past, Present, and Future of Model-Based User Interface Development , 2011, i-com.

[166]  Ramaswamy Chandramouli,et al.  The Queen's Guard: A Secure Enforcement of Fine-grained Access Control In Distributed Data Analytics Platforms , 2001, ACM Trans. Inf. Syst. Secur..

[167]  Pierre Dragicevic,et al.  Input Device Selection and Interaction Configuration with ICON , 2001, BCS HCI/IHM.

[168]  Sahin Albayrak,et al.  Bridging the Gap between Model and Design of User Interfaces , 2006, GI Jahrestagung.

[169]  Jan Van den Bergh,et al.  Dygimes: Dynamically Generating Interfaces for Mobile Computing Devices and Embedded Systems , 2003, Mobile HCI.

[170]  Jean Vanderdonckt,et al.  A Unifying Reference Framework for multi-target user interfaces , 2003, Interact. Comput..

[171]  Jacob Eisenstein,et al.  XIML: a common representation for interaction data , 2002, IUI '02.