Abstract
The complexity of user interface (UI) design grows quickly with the number of application concerns. Such complexity compounds with additional requirement of contextual-awareness (i.e., adapt to user location, skill level, etc.) and support of heterogeneous devices and platforms (e.g., web, mobile app). Implementation support of such a wide-range of orthogonal concerns often results in restatement of a significant portion of the UI description using platform-specific components. Replication requires repeated implementation decision, greatly increasing development costs since each version/context variant may need separate development. Naturally, such replication also produces error prone maintenance because code updates must correlate among all replicas. Using separation of concerns, the application can be decomposed into fine-grain fragments, which we call particles, some of which are platform independent and others are not. Using this decomposition, this paper addresses the above inefficiency by dynamically composing particles at runtime that match user demands, context, and target platform.
Similar content being viewed by others
Notes
Meteor, JavaScript App Platform, 2015, http://www.meteor.com.
References
Ali, M., Prez-Quiones, M., Abrams, M., Shell, E.: Building multi-platform user interfaces with UIML. In: Kolski, C., Vanderdonckt, J. (eds.) Computer-Aided Design of User Interfaces III, pp. 255–266. Springer, Netherlands (2002)
Bernard, E.: JSR 303: Bean validation (2009). http://jcp.org/en/jsr/detail?id=303
Blumendorf, M., Lehmann, G., Albayrak, S.: Bridging models and systems at runtime to build adaptive user interfaces. In: Proceedings of the 2nd ACM SIGCHI Symposium on Engineering Interactive Computing Systems, EICS’10, pp. 9–18. ACM, New York, NY (2010)
Burns, E., Griffin, N.: JavaServer Faces 2.0, The Complete Reference, 1st edn. McGraw-Hill Inc., New York (2010)
Calvary, G., Coutaz, J., Thevenin, D., Limbourg, Q., Bouillon, L., Vanderdonckt, J.: A unifying reference framework for multi-target user interfaces. Interact. Comput. 15(3), 289–308 (2003)
Cerny, T., Cemus, K., Donahoo, M.J., Song, E.: Aspect-driven, data-reflective and context-aware user interfaces design. SIGAPP Appl. Comput. Rev. 13(4), 53–65 (2013)
Cerny, T., Donahoo, M.J.: Separating out platform-independent particles of user interfaces. Information Science and Applications, pp. 941–948. Springer, Berlin (2015)
Cerny, T., Macik, M., Donahoo, M.J., Janousek, J.: Efficient description and cache performance in aspect-oriented user interface design. In: Federated Conference on Computer Science and Information Systems (2014)
Cerny, T., Matl, L., Cemus, K., Donahoo, M.J.: Evaluation of separated concerns in web-based delivery of user interfaces. Information Science and Applications, pp. 933–940. Springer, Berlin (2015)
Cerny, T., Song, E.: Model-driven rich form generation. Inf. Int. Interdiscip. J. 15(7, SI), 2695–2714 (2012)
Czarnecki, K., Eisenecker, U.W.: Components and generative programming (invited paper). SIGSOFT Softw. Eng. Notes 24(6), 2–19 (1999)
DeMichiel, L.: JSR 317: JavaTM persistence API, version 2.0 (2009). http://jcp.org/en/jsr/detail?id=317
DeMichiel, L., Keith, M.: JSR 220: Enterprise javabeans version 3.0. java persistence API (2006). http://jcp.org/en/jsr/detail?id=220
Fowler, M.: Patterns of Enterprise Application Architecture. Addison-Wesley Longman Publishing Co., Inc., Boston (2002)
Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley Longman Publishing Co., Inc., Boston (1995)
Green, B., Seshadri, S.: AngularJS, 1st edn. O’Reilly Media, Inc., Sebastopol (2013)
Hanson, R., Tacy, A.: GWT in Action: Easy Ajax with the Google Web Toolkit. Manning Publications Co., Greenwich (2007)
Kennard, R., Edmonds, E., Leaney, J.: Separation anxiety: stresses of developing a modern day separable user interface. In: Proceedings of the 2nd Conference on Human System Interactions pp. 225–232 (2009)
Kiczales, G., Irwin, J., Lamping, J., Loingtier, J.M., Lopes, C.V., Maeda, C., Mendhekar, A.: Aspect-oriented programming. In: IECOOP’97-Object-Oriented Programming, 11th European Conference, vol. 1241, pp. 220–242 (1997)
Kleppe, A.G., Warmer, J., Bast, W.: MDA Explained: The Model Driven Architecture: Practice and Promise. Addison-Wesley Longman Publishing Co., Inc., Boston (2003)
Laddad, R.: AspectJ in Action: Enterprise AOP with Spring Applications, 2nd edn. Manning Publications Co., Greenwich (2009)
Larman, C.: Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and the Unified Process, 2nd edn. Prentice Hall PTR, Upper Saddle River (2001)
López-Jaquero, V., Montero, F., Real, F.: Designing user interface adaptation rules with t: Xml. In: Proceedings of the 14th international conference on Intelligent user interfaces, IUI’09, pp. 383–388. ACM, New York (2009)
Macik, M., Cerny, T., Slavik, P.: Context-sensitive, cross-platform user interface generation. J. Multimodal User Interfaces 8(2), 217–229 (2014)
Mori, G., Paterno, F., Santoro, C.: Design and development of multidevice user interfaces through multiple logical descriptions. IEEE Trans. Softw. Eng. 30(8), 507–520 (2004)
Morin, B., Barais, O., Jezequel, J.M., Fleurey, F., Solberg, A.: Models@ run.time to support dynamic adaptation. Computer 42(10), 44–51 (2009)
Schattkowsky, T., Lohmann, M.: Uml model mappings for platform independent user interface design. In: Bruel, J.M. (ed.) Satellite Events at the MoDELS 2005 Conference, Lecture Notes in Computer Science, vol. 3844, pp. 201–209. Springer, Berlin (2006)
Schlee, M., Vanderdonckt, J.: Generative programming of graphical user interfaces. In: Proceedings of the Working Conference on Advanced Visual Interfaces, AVI’04, pp. 403–406. ACM, New York (2004)
Sottet, J.S., Calvary, G., Coutaz, J., Favre, J.M.: A model-driven engineering approach for the usability of plastic user interfaces. Engineering Interactive Systems, pp. 140–157. Springer, Heidelberg (2008)
Sottet, J.S., Calvary, G., Favre, J.M.: Models at runtime for sustaining user interface plasticity. In: Models@ run.time workshop (in conjunction with MoDELS/UML 2006 conference) (2006)
Störzer, M., Hanenberg, S.: A classification of pointcut language constructs. In: Software-Engineering Properties of Languages and Aspect Technologies (2005). Held in Conjunction with AOSD’05
Cerny, T., Macik, M., Donahoo, M. J., Janousek, J.: On distributed concern delivery in user interface design. Comput Sci Inform Syst 12(2), 655–681(2015)
Acknowledgments
This work was supported by the Grant Agency of the Czech Technical University in Prague, Grant No. SGS14/198/OHK3/3T/13.
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Cerny, T., Donahoo, M.J. On separation of platform-independent particles in user interfaces. Cluster Comput 18, 1215–1228 (2015). https://doi.org/10.1007/s10586-015-0471-7
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10586-015-0471-7