Separation of concerns for distributed cross-platform context-aware user interfaces

Modern applications aim to provide attractive, efficient and adaptive user interfaces (UIs). The UI code developed in conventional design approaches brings numerous of difficulties exacerbating the development and maintenance efforts resulting in limited separation of concerns. The limitation comes from multiple cross-cuts of tangled concerns, e.g. data representation tangled with layout, security, business rules, localization, etc. This results in high information restatement, code duplication, and tedious maintenance. This paper introduces an approach that separates UI concerns bringing a single focal point for particular concern definitions improving readability and maintenance. The approach performs concern tangling at runtime through a weaver considering the contextual information influencing the result. This enables UI context-awareness, while significantly reduces the development and maintenance efforts. Furthermore, we apply this approach into a distributed environment, which allows us to construct the same UI on various platforms and devices involving a single concerns description streamed from the server.

[1]  Brice Morin Models aT RunTiMe To suppoRT dynaMic adapTaTion , 2022 .

[2]  Yoonseok Choi,et al.  Application framework for multi platform mobile application software development , 2009, 2009 11th International Conference on Advanced Communication Technology.

[3]  Michael J. Donahoo,et al.  Evaluation of approaches to business rules maintenance in enterprise information systems , 2015, RACS.

[4]  Michael J. Donahoo,et al.  Aspect-driven, data-reflective and context-aware user interfaces design , 2013, SIAP.

[5]  Krzysztof Czarnecki,et al.  Generative Programming , 2001, ECOOP Workshops.

[6]  Michael J. Donahoo,et al.  How to reduce costs of business logic maintenance , 2011, 2011 IEEE International Conference on Computer Science and Automation Engineering.

[7]  Brice Morin,et al.  Models@ Run.time to Support Dynamic Adaptation , 2009, Computer.

[8]  Martin Fowler,et al.  Domain-Specific Languages , 2010, The Addison-Wesley signature series.

[9]  Anneke Kleppe,et al.  MDA explained - the Model Driven Architecture: practice and promise , 2003, Addison Wesley object technology series.

[10]  Miroslav Bures Model for Evaluation and Cost Estimations of the Automated Testing Architecture , 2015, WorldCIST.

[11]  Mauricio A. Saca Refactoring improving the design of existing code , 2017, 2017 IEEE 37th Central America and Panama Convention (CONCAPAN XXXVII).

[12]  Cristina V. Lopes,et al.  Aspect-oriented programming , 1999, ECOOP Workshops.

[13]  Michael J. Donahoo,et al.  On energy impact of web user interface approaches , 2016, Cluster Computing.

[14]  Robert Steele,et al.  Application of Software Mining to Automatic User Interface Generation , 2008, SoMeT.

[15]  Karel Cemus,et al.  Aspect-Driven Design of Information Systems , 2014, SOFSEM.

[16]  Michael J. Donahoo,et al.  Towards effective adaptive user interfaces design , 2013, RACS.

[17]  Jean Vanderdonckt,et al.  A MDA-Compliant Environment for Developing User Interfaces of Information Systems , 2005, CAiSE.

[18]  John Leaney,et al.  Separation anxiety: Stresses of developing a modern day separable User Interface , 2009, 2009 2nd Conference on Human System Interactions.

[19]  Paul Browne,et al.  JBoss Drools Business Rules , 2009 .

[20]  Michael J. Donahoo,et al.  On separation of platform-independent particles in user interfaces , 2015, Cluster Computing.

[21]  Miroslav Bures Framework for assessment of web application automated testability , 2015, RACS.

[22]  Michael J. Donahoo,et al.  On distributed concern delivery in user interface design , 2015, Comput. Sci. Inf. Syst..

[23]  M Mernik,et al.  When and how to develop domain-specific languages , 2005, CSUR.

[24]  Michael J. Donahoo,et al.  Automated Business Rules Transformation into a Persistence Layer , 2015, SCSE.

[25]  Michael J. Donahoo,et al.  Evaluation of Separated Concerns in Web-based Delivery of User Interfaces , 2015 .

[26]  Karel CEMUS Context-aware Input Validation in Information Systems , 2016 .