ABSTRACT
Change impact analysis (CIA) techniques have been applied successfully to determine the effects of modifications when evolving software systems. However, many software systems today use multiple programming languages and they are organized as software product lines (SPLs) to ease their customization to different customer and market needs. Due to the limitations of current CIA approaches regarding variability and cross-language support assessing the impact of changes becomes difficult and arduous. This work aims at developing a CIA approach for multi language SPLs. The approach is based on a multiple conditional system dependency graphs. We will evaluate the approach based on the software product lines of an industry partner in the domain of industrial automation.
- F. Angerer, H. Prähofer, D. Lettner, A. Grimmer, and P. Grünbacher. Identifying Inactive Code in Product Lines with Configuration-Aware System Dependence Graphs. In Proc. of the 18th Int'l Software Product Line Conf. (SPLC 2014), Florence, Italy, 2014.Google ScholarDigital Library
- S. Apel and C. Kästner. An Overview of Feature-Oriented Software Development. Journal of Object Technology, 8(5):49--84, 2009.Google Scholar
- S. A. Bohner. Impact analysis in the software change process: a year 2000 perspective. In Proc. of the Int'l Conf. on Software Maintenance, pages 42--51, 1996. Google ScholarDigital Library
- S. Horwitz, T. Reps, and D. Binkley. Interprocedural slicing using dependence graphs. ACM Transactions on Programming Languages and Systems (TOPLAS), 12(1):26--60, 1990. Google ScholarDigital Library
- C. Kästner, S. Apel, T. Thüm, and G. Saake. Type checking annotation-based product lines, 2012.Google ScholarDigital Library
- D. Lettner, F. Angerer, P. Grünbacher, and H. Prähofer. Software Evolution in an Industrial Automation Ecosystem: An Exploratory Study. In Proc. Int'l Euromicro Conf. on Software Engineering and Advanced Applications, Verona, Italy, 2014.Google ScholarDigital Library
- D. Lettner, F. Angerer, H. Prähofer, and P. Grünbacher. A Case Study on Software Ecosystem Characteristics in Industrial Automation Software. In Proc. of the Int'l Conf. on Software and Systems Process (ICSSP 2014), Nanjing, China, 2014. Google ScholarDigital Library
- J. Liebig, A. von Rhein, C. Kästner, S. Apel, J. Dörre, and C. Lengauer. Scalable analysis of variable software. In Proc. of the 2013 9th Joint Meeting on Foundations of Software Engineering, ESEC/FSE 2013, pages 81--91, New York, NY, USA, 2013. ACM. Google ScholarDigital Library
- L. Linsbauer, E. R. Lopez-Herrejon, and A. Egyed. Recovering traceability between features and code in product variants. In Proc. of the 17th Int'l Software Product Line Conf., pages 131--140. ACM, 2013. Google ScholarDigital Library
- P. Mayer and A. Schröder. Cross-Language Code Analysis and Refactoring. In Source Code Analysis and Manipulation (SCAM), 2012 IEEE 12th Int'l Working Conf. on, pages 94--103, 2012. Google ScholarDigital Library
- H. V. Nguyen, H. A. Nguyen, T. T. Nguyen, A. T. Nguyen, and T. N. Nguyen. Dangling references in multi-configuration and dynamic PHP-based Web applications. In 2013 28th IEEE/ACM Int'l Conf. on Automated Software Engineering (ASE), pages 399--409. Ieee, Nov. 2013.Google Scholar
- M. Ribeiro, P. Borba, and C. Kästner. Feature Maintenance with Emergent Interfaces. In Proc. of the 36th Int'l Conf. on Software Engineering, ICSE 2014, pages 989--1000, New York, NY, USA, 2014. ACM. Google ScholarDigital Library
- J. Rubin and M. Chechik. A Framework for Managing Cloned Product Variants. In Proc. of the 35th Int'l Conf. on Software Engineering (ICSE 2013), pages 1233--1236, 2013. Google ScholarDigital Library
- D. Strein, H. Kratz, and W. Löwe. Cross-Language Program Analysis and Refactoring. In Source Code Analysis and Manipulation, 2006. SCAM '06. Sixth IEEE Int'l Workshop on, pages 207--216, 2006. Google ScholarDigital Library
Index Terms
- Variability-aware change impact analysis of multi-language product lines
Recommendations
Configuration-aware change impact analysis
ASE '15: Proceedings of the 30th IEEE/ACM International Conference on Automated Software EngineeringUnderstanding variability is essential to allow the configuration of software systems to diverse requirements. Variability-aware program analysis techniques have been proposed for analyzing the space of program variants. Such techniques are highly ...
Towards a Solution for Change Impact Analysis of Software Product Line Products
WICSA '11: Proceedings of the 2011 Ninth Working IEEE/IFIP Conference on Software ArchitectureDespite the fact that some practitioners and researchers report successful stories on Software Product Lines (SPL) adaptation, the evolution of SPL remains challenging. In our research we study a specific aspect of SPL adaptation, namely on updating of ...
Towards variant management and change impact analysis in safety-oriented process-product lines
SAC '19: Proceedings of the 34th ACM/SIGAPP Symposium on Applied ComputingIn safety-critical (software) systems, safety management embraces both processes and products, which due to e.g., product's upgrade, tend to be tailored, giving rise to safety-oriented product lines and corresponding safety-oriented process lines. To ...
Comments