skip to main content
10.1145/3461002.3473068acmconferencesArticle/Chapter ViewAbstractPublication PagessplcConference Proceedingsconference-collections
short-paper

STARS: software technology for adaptable and reusable systems

Published:06 September 2021Publication History

ABSTRACT

Dynamic Software Product Lines (DSPLs) engineering implements self-adaptive systems by dynamically binding or unbinding features at runtime according to a feature model. However, these features may interact in unexpected and undesired ways leading to critical consequences for the DSPL. Moreover, (re)configurations may negatively affect the runtime system's architectural qualities, manifesting architectural bad smells. These issues are challenging to detect due to the combinatorial explosion of the number of interactions amongst features. As some of them may appear at runtime, we need a runtime approach to their analysis and mitigation. This thesis introduces the Behavioral Map (BM) formalism that captures information from different sources (feature model, code) to automatically detect these issues. We provide behavioral map inference algorithms. Using the Smart Home Environment (SHE) as a case study, we describe how a BM is helpful to identify critical feature interactions and architectural smells. Our preliminary results already show promising progress for both feature interactions and architectural bad smells identification at runtime.

References

  1. Sven Apel, Alexander Von Rhein, Thomas ThüM, and Christian KäStner. 2013. Feature-interaction detection based on feature-based specifications. Computer Networks 57, 12 (2013), 2399--2409. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Joanne M Atlee, Uli Fahrenberg, and Axel Legay. 2015. Measuring behaviour interactions between product-line features. In 2015 IEEE/ACM 3rd FME Workshop on Formal Methods in Software Engineering. IEEE, 20--25. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Thomas H Austin and Cormac Flanagan. 2012. Multiple facets for dynamic information flow. In Proceedings of the 39th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages. ACM, 165--178. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Umberto Azadi, Francesca Arcelli Fontana, and Davide Taibi. 2019. Architectural smells detected by tools: a catalogue proposal. In 2019 IEEE/ACM International Conference on Technical Debt (TechDebt). IEEE, IEEE, 88--97. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Nelly Bencomo, Peter Sawyer, Gordon S Blair, and Paul Grace. 2008. Dynamically Adaptive Systems are Product Lines too: Using Model-Driven Techniques to Capture Dynamic Variability of Adaptive Systems.. In SPLC (2). 23--32.Google ScholarGoogle Scholar
  6. Nicolás Cardozo and Ivana Dusparic. 2020. Learning run-time compositions of interacting adaptations. In Proceedings of the IEEE/ACM 15th International Symposium on Software Engineering for Adaptive and Self-Managing Systems. 108--114. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Andreas Classen, Patrick Heymans, Pierre-Yves Schobbens, and Axel Legay. 2011. Symbolic model checking of software product lines. In Proceedings of the 33rd International Conference on Software Engineering. 321--330. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Myra B Cohen, Matthew B Dwyer, and Jiangfan Shi. 2007. Interaction testing of highly-configurable systems in the presence of constraints. In Proceedings of the 2007 international symposium on Software testing and analysis. 129--139. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Hugo Sica de Andrade, Eduardo Almeida, and Ivica Crnkovic. 2014. Architectural bad smells in software product lines: An exploratory study. In Proceedings of the WICSA 2014 Companion Volume. 1--6. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Edilton Lima dos Santos and Ivan do Carmo Machado. 2019. An Architecture Model for DSPL Engineering. In The 18th Belgium-Netherlands Software Evolution Workshop: BENEVOL. BENEVOL, CEUR-WS.Google ScholarGoogle Scholar
  11. Francesca Arcelli Fontana, Paris Avgeriou, Ilaria Pigazzini, and Riccardo Roveda. 2019. A Study on Architectural Smells Prediction. In 2019 45th Euromicro Conference on Software Engineering and Advanced Applications (SEAA). IEEE, IEEE, 333--337.Google ScholarGoogle ScholarCross RefCross Ref
  12. Francesca Arcelli Fontana, Ilaria Pigazzini, Riccardo Roveda, and Marco Zanoni. 2016. Automatic detection of instability architectural smells. In 2016 IEEE International Conference on Software Maintenance and Evolution (ICSME). IEEE, IEEE, 433--437.Google ScholarGoogle ScholarCross RefCross Ref
  13. Joshua Garcia, Daniel Popescu, George Edwards, and Nenad Medvidovic. 2009. Identifying architectural bad smells. In 2009 13th European Conference on Software Maintenance and Reengineering. IEEE, IEEE, 255--258. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Joshua Garcia, Daniel Popescu, George Edwards, and Nenad Medvidovic. 2009. Toward a catalogue of architectural bad smells. In International conference on the quality of software architectures. Springer, Springer, 146--162. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Robert J Hall. 2000. Feature combination and interaction detection via foreground/background models. Computer Networks 32, 4 (2000), 449--469. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. IBM. 2006. An architectural blueprint for autonomic computing. IBM White Paper 31 (2006), 1--6.Google ScholarGoogle Scholar
  17. IBM. 2020. The T. J. Watson Libraries for Analysis (WALA). IBM. https://github.com/wala/WALAGoogle ScholarGoogle Scholar
  18. Martin Lippert and Stephen Roock. 2006. Refactoring in large software projects: performing complex restructurings successfully. John Wiley & Sons.Google ScholarGoogle Scholar
  19. Jens Meinicke, Chu-Pan Wong, Christian Kästner, Thomas Thüm, and Gunter Saake. 2016. On essential configuration complexity: measuring interactions in highly-configurable systems. In Proceedings of the 31st IEEE/ACM International Conference on Automated Software Engineering. IEEE/ACM, 483--494. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Haris Mumtaz, Paramvir Singh, and Kelly Blincoe. 2020. A systematic mapping study on architectural smells detection. Journal of Systems and Software (2020), 110885.Google ScholarGoogle Scholar
  21. Neo4j. 2020. The Internet-Scale Graph Platform. Neo4j. https://neo4j.com/product/Google ScholarGoogle Scholar
  22. Neo4j. 2020. Neo4j APOC Library. Neo4j. https://neo4j.com/developer/neo4j-apoc/Google ScholarGoogle Scholar
  23. Neo4j. 2020. The Neo4j Cypher Manual v4.1. Neo4j. https://neo4j.com/docs/cypher-manual/current/introduction/Google ScholarGoogle Scholar
  24. Gilles Perrouin, Mathieu Acher, Jean-Marc Davril, Axel Legay, and Patrick Heymans. 2016. A Complexity Tale: Web Configurators. ACM Press. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Claudia Raibulet, Francesca Arcelli Fontana, and Simone Carettoni. 2020. A preliminary analysis of self-adaptive systems according to different issues. Software Quality Journal (2020), 1--31.Google ScholarGoogle Scholar
  26. Edilton Santos and Ivan Machado. 2018. Towards an Architecture Model for Dynamic Software Product Lines Engineering. In 2018 IEEE International Conference on Information Reuse and Integration (IRI). IEEE, IEEE, 31--38.Google ScholarGoogle ScholarCross RefCross Ref
  27. Marcel A Serikawa, André de S Landi, Bento R Siqueira, Renato S Costa, Fabiano C Ferrari, Ricardo Menotti, and Valter V De Camargo. 2016. Towards the characterization of monitor smells in adaptive systems. In 2016 X Brazilian Symposium on Software Components, Architectures and Reuse (SBCARS). IEEE, IEEE, 51--60.Google ScholarGoogle ScholarCross RefCross Ref
  28. Larissa Rocha Soares, Jens Meinicke, Sarah Nadi, Christian Kästner, and Eduardo Santana de Almeida. 2018. Varxplorer: Lightweight process for dynamic analysis of feature interactions. In Proceedings of the 12th International Workshop on Variability Modelling of Software-Intensive Systems. 59--66. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. Tassio Vale, Eduardo Santana de Almeida, Vander Alves, Uirá Kulesza, Nan Niu, and Ricardo de Lima. 2017. Software product lines traceability: A systematic mapping study. Information and Software Technology 84 (2017), 1--18. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. STARS: software technology for adaptable and reusable systems

      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
      • Published in

        cover image ACM Conferences
        SPLC '21: Proceedings of the 25th ACM International Systems and Software Product Line Conference - Volume B
        September 2021
        148 pages
        ISBN:9781450384704
        DOI:10.1145/3461002

        Copyright © 2021 ACM

        Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 6 September 2021

        Permissions

        Request permissions about this article.

        Request Permissions

        Check for updates

        Qualifiers

        • short-paper

        Acceptance Rates

        Overall Acceptance Rate167of463submissions,36%

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader