skip to main content
research-article

Using document-oriented GUIs in dynamic software product lines

Published:27 October 2013Publication History
Skip Abstract Section

Abstract

Dynamic Software Product Line (DSPL) Engineering has gained interest through its promise of being able to unify software adaptation whereby software adaptation can be realised at compile time and runtime. While previous work has enabled program logic adaptation by the use of language extensions and platform support, little attention has been placed on Graphical User Interface (GUI) variability. Different design patterns including the Model View Controller are commonly used in GUI implementation, with GUI documents being used for declaring the GUI. To handle dynamic GUI variability currently, the developer needs to implement GUI refinements using multiple techniques. This paper proposes a solution for dealing with GUI document variability, statically and dynamically, in a unified way. In our approach, we currently use a compile time method for producing GUI variants, and code transformations to handle these variants within the application at runtime. To avoid GUI duplicates, only GUI variants that are unique, and related to a valid product configuration, are produced. To validate our approach, we implemented tool support to enable this for Android based applications.

References

  1. G. D. Abowd, A. K. Dey, P. J. Brown, N. Davies, M. Smith, and P. Steggles. Towards a better understanding of context and context-awareness. In Proceedings of the 1st international symposium on Handheld and Ubiquitous Computing, HUC '99, pages 304--307, London, UK, 1999. Springer-Verlag. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. S. Apel, F. Janda, S. Trujillo, and C. Kästner. Model superimposition in software product lines. In Proceedings of the 2nd International Conference on Theory and Practice of Model Transformations, ICMT '09, pages 4--19, Berlin, Heidelberg, 2009. Springer-Verlag. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. S. Apel, C. Kästner, and C. Lengauer. Featurehouse: Language-independent, automated software composition. In Proceedings of the 31st International Conference on Software Engineering, ICSE '09, pages 221--231, Washington, DC, USA, 2009. IEEE Computer Society. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. S. Apel, T. Leich, M. Rosenmüller, and G. Saake. Featurec++: on the symbiosis of feature-oriented and aspect-oriented programming. In Proceedings of the 4th international conference on Generative Programming and Component Engineering, GPCE'05, pages 125--140, Berlin, Heidelberg, 2005. Springer-Verlag. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. S. Apel, C. Lengauer, B. Möller, and C. Kästner. An algebra for features and feature composition. In J. Meseguer and G. Rosu, editors, Algebraic Methodology and Software Technology, volume 5140 of Lecture Notes in Computer Science, pages 36--50. Springer Berlin / Heidelberg, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. M. Appeltauer, R. Hirschfeld, H. Masuhara, M. Haupt, and K. Kawauchi. Event-specific Software Composition in Context-oriented Programming. In Proceedings of International Conference on Software Composition, Lecture Notes in Computer Science, pages 50--65, Berlin, Heidelberg, Germany, 2010. Springer-Verlag. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. L. Balint. Adaptive interfaces for human-computer interaction: a colorful spectrum of present and future options. In Systems, Man and Cybernetics, 1995. Intelligent Systems for the 21st Century., IEEE International Conference on, volume 1, pages 292--297 vol. 1, 1995.Google ScholarGoogle ScholarCross RefCross Ref
  8. D. Batory, J. Sarvela, and A. Rauschmayer. Scaling step-wise refinement. IEEE Trans. Softw. Eng., 30:355--371, June 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. D. Benavides, S. Segura, and A. Ruiz-Cortés. Automated analysis of feature models 20 years later: A literature review. Inf. Syst., 35:615--636, September 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. M. Blumendorf, G. Lehmann, and S. Albayrak. 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, pages 9--18, New York, NY, USA, 2010. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Q. Boucher, E. Abbasi, A. Hubaux, G. Perrouin, M. Acher, and P. Heymans. Towards more reliable configurators: A re-engineering perspective. In Product Line Approaches in Software Engineering (PLEASE), 2012 3rd International Workshop on, pages 29--32, june 2012.Google ScholarGoogle ScholarCross RefCross Ref
  12. G. Calvary, J. Coutaz, and D. Thevenin. A unifying reference framework for the development of plastic user interfaces. In M. Little and L. Nigay, editors, Engineering for Human-Computer Interaction, volume 2254 of Lecture Notes in Computer Science, pages 173--192. Springer Berlin Heidelberg, 2001. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. N. Cardozo, S. Günther, and T. DHondt. Feature-oriented programming and context-oriented programming: Comparing paradigm characteristics by example implementations. In International Conference On Software Engineering Advances (ICSEA'11), pages 130--135. IARIA, 2011.Google ScholarGoogle Scholar
  14. J. Criado, C. Vicente-Chicote, N. Padilla, and L. Iribarne. A model-driven approach to graphical user interface runtime adaptation. In Proceedings of the 5th Workshop on [email protected] at the ACM/IEEE 13th International Conference on Model Driven Engineering Languages and Systems, pages 49--59, 2010.Google ScholarGoogle Scholar
  15. K. Czarnecki, S. Helsen, and U. W. Eisenecker. Staged configuration through specialization and multilevel configuration of feature models. Software Process: Improvement and Practice, 10(2):143--169, 2005.Google ScholarGoogle ScholarCross RefCross Ref
  16. F. Damiani and I. Schaefer. Dynamic delta-oriented programming. In Proceedings of the 15th International Software Product Line Conference, Volume 2, SPLC '11, pages 34:1--34:8, New York, NY, USA, 2011. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. L. M. Daniele, E. Silva, L. F. Pires, and M. Sinderen. A soa-based platform-specific framework for context-aware mobile applications. In W. Aalst, J. Mylopoulos, M. Rosemann, M. J. Shaw, C. Szyperski, R. Poler, M. Sinderen, and R. Sanchis, editors, Enterprise Interoperability, volume 38 of Lecture Notes in Business Information Processing, pages 25--37. Springer Berlin Heidelberg, 2009.Google ScholarGoogle Scholar
  18. D. Draheim, C. Lutteroth, and G. Weber. Graphical user interfaces as documents. In Proceedings of the 7th ACM SIGCHI New Zealand chapter's international conference on Computer-human interaction: design centered HCI, CHINZ '06, pages 67--74, New York, NY, USA, 2006. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. H. Gomaa and K. Hashimoto. Dynamic software adaptation for service-oriented product lines. In Proceedings of the 15th International Software Product Line Conference, Volume 2, SPLC '11, pages 35:1--35:8, New York, NY, USA, 2011. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. D. Grolaux. Transparent Migration and Adaptation in a Graphical User Interface Toolkit. PhD thesis, Université catholique de Louvain, 2007.Google ScholarGoogle Scholar
  21. S. Günther and S. Sunkle. rbfeatures: Feature-oriented programming with ruby. Sci. Comput. Program., 77(3):152--173, Mar. 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. S. Hallsteinsen, M. Hinchey, S. Park, and K. Schmid. Dynamic software product lines. Computer, 41:93--95, April 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. K. Kang, S. Cohen, J. Hess, W. Nowak, and S. Peterson. Feature-Oriented Domain Analysis (FODA) Feasibility Study. Technical Report Carnegie Mellon University/SEI-90-TR-21, 1990.Google ScholarGoogle ScholarCross RefCross Ref
  24. C. Kastner, T. Thum, G. Saake, J. Feigenspan, T. Leich, F. Wielgorz, and S. Apel. Featureide: A tool framework for feature-oriented software development. In Proceedings of the 31st International Conference on Software Engineering, ICSE '09, pages 611--614, Washington, DC, USA, 2009. IEEE Computer Society. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. J. Kim and C. Lutteroth. Multi-platform document-oriented guis. In Proceedings of the Tenth Australasian Conference on User Interfaces - Volume 93, AUIC '09, pages 27--34, Darlinghurst, Australia, Australia, 2009. Australian Computer Society, Inc. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. G. E. Krasner and S. T. Pope. A cookbook for using the model-view controller user interface paradigm in smalltalk-80. J. Object Oriented Program., 1(3):26--49, Aug. 1988. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. F. Marinho, F. Lima, J. Ferreira Filho, L. Rocha, M. Maia, S. de Aguiar, V. Dantas, W. Viana, R. Andrade, E. Teixeira, and C. Werner. A software product line for the mobile and context-aware applications domain. In J. Bosch and J. Lee, editors, Software Product Lines: Going Beyond, volume 6287 of Lecture Notes in Computer Science, pages 346--360. Springer Berlin / Heidelberg, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. C. Parra. Towards Dynamic Software Product Lines: Unifying Design and Runtime Adaptations. PhD thesis, INRIA Lille Nord Europe Laboratory, March 2011.Google ScholarGoogle Scholar
  29. C. Parra, X. Blanc, and L. Duchien. Context awareness for dynamic service-oriented product lines. In SPLC '09: Proceedings of the 13th International Software Product Line Conference, pages 131--140, Pittsburgh, PA, USA, 2009. Carnegie Mellon University. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. A. Pleuss, B. Hauptmann, D. Dhungana, and G. Botterweck. User interface engineering for software product lines: the dilemma between automation and usability. In Proceedings of the 4th ACM SIGCHI symposium on Engineering interactive computing systems, EICS '12, pages 25--34, New York, NY, USA, 2012. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. A. Pleuss, B. Hauptmann, M. Keunecke, and G. Botterweck. A case study on variability in user interfaces. In Proceedings of the 16th International Software Product Line Conference - Volume 1, SPLC '12, pages 6--10, New York, NY, USA, 2012. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. D. Rodríguez-Gracia, J. Criado, L. Iribarne, N. Padilla, and C. Vicente-Chicote. Runtime adaptation of architectural models: an approach for adapting user interfaces. In Proceedings of the 2nd international conference on Model and Data Engineering, MEDI'12, pages 16--30, Berlin, Heidelberg, 2012. Springer-Verlag. Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. M. Rosenmuller. Towards Flexible Feature Composition: Static and Dynamic Binding in Software Product Lines. PhD thesis, Otto-von-Guericke-University Magdeburg, June 2011.Google ScholarGoogle Scholar
  34. M. Rosenmüller, N. Siegmund, S. Apel, and G. Saake. Flexible feature binding in software product lines. Automated Software Engg., 18(2):163--197, June 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  35. M. Rosenmüller, N. Siegmund, M. Pukall, and S. Apel. Tailoring dynamic software product lines. SIGPLAN Not., 47(3):3--12, Oct. 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. M. Rosenmüller, N. Siegmund, G. Saake, and S. Apel. Code generation to support static and dynamic composition of software product lines. In Proceedings of the 7th international conference on Generative programming and component engineering, GPCE '08, pages 3--12, New York, NY, USA, 2008. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  37. A. Savidis and C. Stephanidis. Software refactoring process for adaptive user-interface composition. In Proceedings of the 2nd ACM SIGCHI symposium on Engineering interactive computing systems, EICS '10, pages 19--28, New York, NY, USA, 2010. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  38. I. Schaefer, L. Bettini, F. Damiani, and N. Tanzarella. Delta-oriented programming of software product lines. In Proceedings of the 14th international conference on Software product lines: going beyond, SPLC'10, pages 77--91, Berlin, Heidelberg, 2010. Springer-Verlag. Google ScholarGoogle ScholarDigital LibraryDigital Library
  39. M. Schlee and J. Vanderdonckt. Generative programming of graphical user interfaces. In Proceedings of the working conference on Advanced visual interfaces, AVI '04, pages 403--406, New York, NY, USA, 2004. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  40. C. Schuster, M. Appeltauer, and R. Hirschfeld. Context-oriented programming for mobile devices: Jcop on android. In Proceedings of the Workshop on Context-Oriented Programming (COP) 2011, Lancaster, UK, July 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  41. J.-S. Sottet, G. Calvary, J. Coutaz, and J.-M. Favre. A model-driven engineering approach for the usability of plastic user interfaces. In J. Gulliksen, M. B. Harning, P. Palanque, G. C. Veer, and J. Wesson, editors, Engineering Interactive Systems, volume 4940 of Lecture Notes in Computer Science, pages 140--157. Springer-Verlag, Berlin, Heidelberg, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  42. K. Yaici and A. Kondoz. A model-based approach for the generation of adaptive user interfaces on portable devices. In Wireless Communication Systems. 2008. ISWCS '08. IEEE International Symposium on, pages 164--167, 2008.Google ScholarGoogle Scholar

Index Terms

  1. Using document-oriented GUIs in dynamic software product lines

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in

      Full Access

      • Published in

        cover image ACM SIGPLAN Notices
        ACM SIGPLAN Notices  Volume 49, Issue 3
        GPCE '13
        March 2014
        181 pages
        ISSN:0362-1340
        EISSN:1558-1160
        DOI:10.1145/2637365
        Issue’s Table of Contents
        • cover image ACM Conferences
          GPCE '13: Proceedings of the 12th international conference on Generative programming: concepts & experiences
          October 2013
          198 pages
          ISBN:9781450323734
          DOI:10.1145/2517208

        Copyright © 2013 ACM

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 27 October 2013

        Check for updates

        Qualifiers

        • research-article

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader
      About Cookies On This Site

      We use cookies to ensure that we give you the best experience on our website.

      Learn more

      Got it!