Advertisement

Cluster Computing

, Volume 20, Issue 3, pp 2355–2362 | Cite as

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

  • Karel Cemus
  • Filip Klimes
  • Ondrej Kratochvil
  • Tomas Cerny
Article

Abstract

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.

Keywords

Aspect-oriented programming Enterprise information systems User interface Code generation 

Notes

Acknowledgements

This research was supported by the Grant Agency of the Czech Technical University in Prague, Grant No. SGS14/198/OHK3/3T/13.

References

  1. 1.
    Bernard, E., Peterson, S.: Jsr 303: Bean Validation. Bean Validation Expert Group, March (2009)Google Scholar
  2. 2.
    Browne, P.: JBoss Drools Business Rules. Packt Publishing Ltd, Birmingham (2009)Google Scholar
  3. 3.
    Bures, M.: Framework for assessment of web application automated testability. In: Proceedings of the 2015 Conference on research in adaptive and convergent systems, pp. 512–514. ACM, New York (2015)Google Scholar
  4. 4.
    Bures, M.: Model for evaluation and cost estimations of the automated testing architecture. In: New Contributions in Information Systems and Technologies, pp. 781–787. Springer, Heidelberg (2015)Google Scholar
  5. 5.
    Cemus, K.: Context-aware input validation in information systems. In: POSTER 2016—20th International Student Conference on Electrical Engineering (2016)Google Scholar
  6. 6.
    Cemus, K., Cerny, T.: Aspect-driven design of information systems. In: SOFSEM 2014: Theory and Practice of Computer Science, LNCS 8327, pp. 174–186. Springer International Publishing Switzerland (2014)Google Scholar
  7. 7.
    Cemus, K., Cerny, T., Donahoo, M.J.: Automated business rules transformation into a persistence layer. Proc. Comput. Sci. 62, 312–318 (2015)CrossRefGoogle Scholar
  8. 8.
    Cemus, K., Cerny, T., Donahoo, M.J.: Evaluation of approaches to business rules maintenance in enterprise information systems. In: Proceedings of the 2015 Conference on Research in Adaptive and Convergent Systems, pp. 324–329. ACM (2015)Google Scholar
  9. 9.
    Cerny, T., Cemus, K., Donahoo, M.J., Song, E.: Aspect-driven, data-reflective and context-aware user interfaces design. ACM SIGAPP Appl. Comput. Rev. 13(4), 53–66 (2013)CrossRefGoogle Scholar
  10. 10.
    Cerny, T., Donahoo, M.J.: How to reduce costs of business logic maintenance. In: 2011 IEEE International Conference on Computer Science and Automation Engineering (CSAE), Vol. 1, pp. 77–82. IEEE, Piscataway (2011)Google Scholar
  11. 11.
    Cerny, T., Donahoo, M.J.: On separation of platform-independent particles in user interfaces. Clust. Comput. 18(3), 1215–1228 (2015)CrossRefGoogle Scholar
  12. 12.
    Cerny, T., Donahoo, M.J.: On energy impact of web user interface approaches. Clust. Comput. 19(4), 1853–1863 (2016)CrossRefGoogle Scholar
  13. 13.
    Cerny, T., Donahoo, M.J., Song, E.: Towards effective adaptive user interfaces design. In: Proceedings of the 2013 Research in Applied Computation Symposium (RACS 2013) (2013)Google Scholar
  14. 14.
    Cerny, T., Macik, M., Donahoo, M.J., Janousek, J.: On distributed concern delivery in user interface design. Comput. Sci. Inf. Syst. 12(2), 655–681 (2015)CrossRefGoogle Scholar
  15. 15.
    Cerny, T., Matl, L., Cemus, K., Donahoo, M.J.: Evaluation of separated concerns in web-based delivery of user interfaces. In: Information Science and Applications, pp. 933–940. Springer, Berlin (2015)Google Scholar
  16. 16.
    Chinnici, R., Shannon, B.: JSR 316: Java\(^{\rm TM}\) Platform, Enterprise Edition (Java EE) Specification, v6 (2009)Google Scholar
  17. 17.
    Choi, Y.K., Yang, J.S., Jeong, J.: Application framework for multi platform mobile application software development. In: 11th International Conference On Advanced Communication Technology, 2009. ICACT 2009, Vol. 1, pp. 208–213. IEEE, Piscataway (2009)Google Scholar
  18. 18.
    Czarnecki, K., Eisenecker, U.W.: Generative programming. Edited by Goos, G., Hartmanis, J., van Leeuwen, J., p. 15 (2000)Google Scholar
  19. 19.
    Fowler, M.: Refactoring: Improving the Design of Existing Code. Pearson Education, New Delhi (2002)CrossRefzbMATHGoogle Scholar
  20. 20.
    Fowler, M.: Domain-Specific Languages. Pearson Education, New Delhi (2010)Google Scholar
  21. 21.
    Kennard, R., Edmonds, E., Leaney, J.: Separation anxiety: stresses of developing a modern day separable user interface. In: 2009 HSI’09 2nd Conference on Human System Interactions, pp. 228–235. IEEE, Piscataway (2009)Google Scholar
  22. 22.
    Kennard, R., Steele, R.: Application of software mining to automatic user interface generation (2008)Google Scholar
  23. 23.
    Kiczales, G., Lamping, J., Mendhekar, A., Maeda, C., Lopes, C., Loingtier, J.M., Irwin, J.: Aspect-Oriented Programming. Springer, Berlin (1997)CrossRefGoogle Scholar
  24. 24.
    Kleppe, A.G., Warmer, J.B., Bast, W.: MDA Explained, the Model Driven Architecture: Practice and Promise. Addison-Wesley Professional, Boston (2003)Google Scholar
  25. 25.
    Mernik, M., Heering, J., Sloane, A.M.: When and how to develop domain-specific languages. ACM Comput. Surv. (CSUR) 37(4), 316–344 (2005)CrossRefGoogle Scholar
  26. 26.
    Morin, B., Barais, O., Jezequel, J.M., Fleurey, F., Solberg, A.: Models at runtime to support dynamic adaptation. Computer 42(10), 44–51 (2009)CrossRefGoogle Scholar
  27. 27.
    Vanderdonckt, J.: A mda-compliant environment for developing user interfaces of information systems. In: Advanced Information Systems Engineering, pp. 16–31. Springer, Heidelberg (2005)Google Scholar

Copyright information

© Springer Science+Business Media New York 2017

Authors and Affiliations

  1. 1.Department of Computer ScienceCzech Technical University in PraguePragueCzech Republic
  2. 2.Department of Computer ScienceBaylor UniversityWacoUSA

Personalised recommendations