Advertisement

Visualizing Feature-Level Evolution in Product Lines: A Research Preview

  • Daniel Hinterreiter
  • Paul GrünbacherEmail author
  • Herbert Prähofer
Conference paper
  • 48 Downloads
Part of the Lecture Notes in Computer Science book series (LNCS, volume 12045)

Abstract

[Context and motivation] Software product lines evolve frequently to address customer requirements in different domains. This leads to a distributed engineering process with frequent updates and extensions. [Question/problem] However, such changes are typically managed and tracked at the level of source code while feature-level awareness about software evolution is commonly lacking. In this research preview paper we thus present an approach visualizing the evolution in software product lines at the level of features. [Principal ideas/results] Specifically, we extend feature models with feature evolution plots to visualize changes at a higher level. Our approach uses static code analyses and a variation control system to compute the evolution data for visualisation. As a preliminary evaluation we report selected examples of applying our approach to a cyberphysical ecosystem from the field of industrial automation. [Contribution] Integrating visualisations into state-of-the-art feature models can contribute to better integrate requirements-level and code-level perspectives during product line evolution.

Keywords

Product lines Evolution Visualization 

Notes

Acknowledgements

The financial support by the Austrian Federal Ministry for Digital and Economic Affairs, the National Foundation for Research, Technology and Development, and KEBA AG, Austria is gratefully acknowledged.

References

  1. 1.
    Angerer, F., Grimmer, A., Prähofer, H., Grünbacher, P.: Change impact analysis for maintenance and evolution of variable software systems. Autom. Softw. Eng. 26(2), 417–461 (2019).  https://doi.org/10.1007/s10515-019-00253-7CrossRefGoogle Scholar
  2. 2.
    Apel, S., Batory, D., Kästner, C., Saake, G.: Feature-Oriented Software Product Lines: Concepts and Implementation. Springer, Heidelberg (2013).  https://doi.org/10.1007/978-3-642-37521-7_1CrossRefGoogle Scholar
  3. 3.
    Berger, T., et al.: What is a feature? A qualitative study of features in industrial software product lines. In: Proceedings of the 19th International Conference on Software Product Line, pp. 16–25 (2015)Google Scholar
  4. 4.
    Blackwell, A., Green, T.: Notational systems-the cognitive dimensions of notations framework. In: Carroll, J.M. (ed.) HCI Models, Theories, and Frameworks, Interactive Technologies, pp. 103–133. Morgan Kaufmann, San Francisco (2003)CrossRefGoogle Scholar
  5. 5.
    Dourish, P., Bellotti, V.: Awareness and coordination in shared workspaces. In: Proceedings of the 1992 ACM Conference on Computer-Supported Cooperative Work, pp. 107–114 (1992)Google Scholar
  6. 6.
    Feichtinger, K., Hinterreiter, D., Linsbauer, L., Prähofer, H., Grünbacher, P.: Supporting feature model evolution by suggesting constraints from code-level dependency analyses. In: Proceedings of the 18th ACM SIGPLAN International Conference on Generative Programming: Concepts and Experiences, pp. 129–142 (2019)Google Scholar
  7. 7.
    Hinterreiter, D., Linsbauer, L., Reisinger, F., Prähofer, H., Grünbacher, P., Egyed, A.: Feature-oriented evolution of automation software systems in industrial software ecosystems. In: 2018 IEEE 23rd International Conference on Emerging Technologies and Factory Automation (ETFA), pp. 107–114 (2018)Google Scholar
  8. 8.
    Kang, K., Cohen, S., Hess, J., Nowak, W., Peterson, S.: Feature-Oriented Domain Analysis (FODA) Feasibility Study. Technical Report (1990)Google Scholar
  9. 9.
    Kritzinger, L.M., Krismayer, T., Rabiser, R., Grünbacher, P.: A user study on the usefulness of visualization support for requirements monitoring. In: Proceedings of 7th IEEE Working Conference on Software Visualization, pp. 56–66. IEEE, Cleveland (2019)Google Scholar
  10. 10.
    Lettner, D., Grünbacher, P.: Using feature feeds to improve developer awareness in software ecosystem evolution. In: Proceedings 9th International Workshop on Variability Modelling of Software-intensive Systems, pp. 11–18 (2015)Google Scholar
  11. 11.
    Linsbauer, L., Berger, T., Grünbacher, P.: A classification of variation control systems. In: Proceedings 16th International Conference on Generative Programming: Concepts & Experiences, pp. 49–62 (2017)Google Scholar
  12. 12.
    Linsbauer, L., Lopez-Herrejon, R.E., Egyed, A.: Variability extraction and modeling for product variants. Softw. Syst. Model. 16(4), 1179–1199 (2016).  https://doi.org/10.1007/s10270-015-0512-yCrossRefGoogle Scholar
  13. 13.
    Montalvillo, L., Díaz, O., Fogdal, T.: Reducing coordination overhead in SPLs: peering in on peers. In: Proceedings of 22nd International Systems and Software Product Line Conference, pp. 110–120 (2018)Google Scholar
  14. 14.
    Novais, R.L., Torres, A., Mendes, T.S., Mendonça, M.G., Zazworka, N.: Software evolution visualization: a systematic mapping study. Inf. Softw. Technol. 55(11), 1860–1883 (2013)CrossRefGoogle Scholar
  15. 15.
    Rabiser, D., et al.: Multi-purpose, multi-level feature modeling of large-scale industrial software systems. Softw. Syst. Model. 17(3), 913–938 (2016).  https://doi.org/10.1007/s10270-016-0564-7CrossRefGoogle Scholar
  16. 16.
    Vogel-Heuser, B., Legat, C., Folmer, J., Feldmann, S.: Researching evolution in industrial plant automation: Scenarios and documentation of the Pick and Place Unit. Technische Universität München, Technical report (2014)Google Scholar

Copyright information

© Springer Nature Switzerland AG 2020

Authors and Affiliations

  • Daniel Hinterreiter
    • 1
  • Paul Grünbacher
    • 1
    Email author
  • Herbert Prähofer
    • 2
  1. 1.Christian Doppler Laboratory MEVSS, Institute Software Systems EngineeringJohannes Kepler University LinzLinzAustria
  2. 2.Institute System SoftwareJohannes Kepler University LinzLinzAustria

Personalised recommendations