skip to main content
10.1145/2934466.2934468acmotherconferencesArticle/Chapter ViewAbstractPublication PagessplcConference Proceedingsconference-collections
research-article

Interface-based similarity analysis of software components for the automotive industry

Published: 16 September 2016 Publication History

Abstract

In a software product line similar products are derived based on a common foundation. With traditional methods a number of similar products exist independently. To derive a maintainable, reusable set of software components it is necessary to understand similarities and differences. However, an adequate similarity analysis involving several products is a cost-intensive and difficult task, compromising the pursued benefit. In this paper an automated syntactical similarity analysis for software component interfaces is proposed to support the software product line extraction and maintenance. We apply this general approach specifically to the automotive domain, as the static nature of the architecture and the high number of well-defined signals makes the interfaces especially expressive. The analysis supports three use cases: the identification of similarities between two interfaces, the automated extraction of a common interface for a set of interfaces and the evaluation of interface changes during the evolution history of a software component. In addition the syntactical analysis provides the foundation for further semantical examinations. Its applicability is indicated by a case study on different variants and versions of interfaces defined in an industrial context.

References

[1]
M. Balazinska, E. Merlo, M. Dagenais, B. Lague, and K. Kontogiannis. Measuring clone based reengineering opportunities. In Proceedings of the IEEE Symposium on Software Metrics, pages 292--303, 1999.
[2]
C. Berger, H. Rendel, and B. Rumpe. Measuring the ability to form a product line from existing products. In Variability Modelling of Software-intensive Systems (VaMos), 2010.
[3]
C. Berger, H. Rendel, B. Rumpe, C. Busse, T. Jablonski, and F. Wolf. Product line metrics for legacy software in practice. In Proceedings of the 14th International Software Product Line Conference (SPLC 2010), volume 2, 2010.
[4]
B. Bollobás. Handbook of combinatorics (vol. 2). chapter Extremal Graph Theory, pages 1231--1292. MIT Press, Cambridge, MA, USA, 1995.
[5]
P. Borba, L. Teixeira, and R. Gheyi. A theory of software product line refinement. Theoretical Computer Science, 455:2--30, Oct. 2012.
[6]
M. Broy. Challenges in automotive software engineering. In Proceedings of the 28th International Conference on Software Engineering, ICSE '06, pages 33--42, New York, NY, USA, 2006. ACM.
[7]
P. Chen, C. R. Hennicker, and M. Jarke. On the Retrieval of Reusable Software Components. In Proceedings of the Second International Workshop on Software Reusability, pages 99--108. IEEE, 1993.
[8]
J. Díaz, J. Pérez, P. P. Alarcón, and J. Garbajosa. Agile product line engineering - a systematic literature review. Software: Practice and Experience, 41(8):921--941, July 2011.
[9]
Y. Dubinsky, J. Rubin, T. Berger, S. Duszynski, M. Becker, and K. Czarnecki. An exploratory study of cloning in industrial software product lines. In Proceedings of the 2013 17th European Conference on Software Maintenance and Reengineering, CSMR '13, pages 25--34, Washington, DC, USA, 2013. IEEE Computer Society.
[10]
J. Edmonds. Paths, trees, and flowers. Canadian Journal of mathematics, 17(3):449--467, 1965.
[11]
B. Fischer, M. Kievernagel, W. Struckmann, et al. VCR: A VDM-based software component retrieval tool. Citeseer, 1994.
[12]
S. Fischer, L. Linsbauer, R. E. Lopez-Herrejon, and A. Egyed. Enhancing clone-and-own with systematic reuse for developing software variants. In Proceedings of the 2014 IEEE International Conference on Software Maintenance and Evolution, ICSME '14, pages 391--400, Washington, DC, USA, 2014. IEEE Computer Society.
[13]
J. Kleinberg and É. Tardos. Algorithm Design. Pearson Education India, 2006.
[14]
R. Koschke, P. Frenzel, A. P. J. Breu, and K. Angstmann. Extending the reflexion method for consolidating software variants into product lines. Software Quality Journal, 17(4):331--366, 2009.
[15]
V. Levenshtein. Binary codes capable of correcting deletions, insertions and reversals. In Soviet Physics Doklady, volume 10, page 707, 1966.
[16]
J. Mayrand, C. Leblanc, and E. Merlo. Experiment on the automatic detection of function clones in a software system using metrics. In Proceedings of the 1996 International Conference on Software Maintenance, ICSM '96, pages 244--, Washington, DC, USA, 1996. IEEE Computer Society.
[17]
R. Mili, A. Mili, and R. T. Mittermeir. Storing and Retrieving Software Components: A Refinement Based System. IEEE Transactions on Software Engineering, 23(7):445--460, 1997.
[18]
G. C. Murphy, D. Notkin, and K. J. Sullivan. Software reflexion models: bridging the gap between design and implementation. IEEE Transactions on Software Engineering, 27(4):364--380, Apr 2001.
[19]
K. Pohl, G. Böckle, and F. J. Linden. Software Product Line Engineering: Foundations, Principles and Techniques. Springer, 1 edition, 2005.
[20]
J. Richenhagen, H. Venkitachalam, S. Pischinger, and I. A. Schloßer. Persist--a scalable software architecture for the control of diverse automotive hybrid topologies. In 15. Internationales Stuttgarter Symposium, pages 37--56. Springer, 2015.
[21]
C. K. Roy, J. R. Cordy, and R. Koschke. Comparison and Evaluation of Code Clone Detection Techniques and Tools: A Qualitative Approach. Science of Computer Programming, 74(7):470--495, May 2009.
[22]
J. Rubin and M. Chechik. Combining related products into product lines. In Fundamental Approaches to Software Engineering, pages 285--300. Springer, 2012.
[23]
J. Rubin, K. Czarnecki, and M. Chechik. Managing cloned variants: A framework and experience. In Proceedings of the 17th International Software Product Line Conference, SPLC '13, pages 101--110, New York, NY, USA, 2013. ACM.
[24]
B. Rumpe, C. Schulze, J. Richenhagen, and A. Schloßer. Agile Synchronization between a Software Product Line and its Products. In Informatik 2015, volume P-246 of LNI, pages 1687--1698. Bonner Köllen Verlag, 2015.
[25]
B. Rumpe, C. Schulze, M. v. Wenckstern, J. O. Ringert, and P. Manhart. Behavioral Compatibility of Simulink Models for Product Line Maintenance and Evolution. In International Conference on Software Product Line (SPLC), pages 141--150, Nashville, Tennessee, 2015. ACM New York.
[26]
U. Ryssel, J. Ploennigs, and K. Kabitzsch. Automatic library migration for the generation of hardware-in-the-loop models. Science of Computer Programming, 77(2):83 -- 95, 2012. Special Issue on Automatic Program Generation for Embedded Systems.
[27]
B. N. Taylor and A. Thompson. The international system of units (si). 2001.
[28]
O. Tibermacine, C. Tibermacine, and F. Cherif. A practical approach to the measurement of similarity between wsdl-based web services. Revue des Nouvelles Technologies de l'Information, pages 03--18, 2014.
[29]
H. Venkitachalam, J. Richenhagen, and S. Pischinger. A generic control software architecture for battery management systems. Technical report, SAE Technical Paper, 2015.
[30]
Y. Wang and E. Stroulia. Flexible Interface Matching for Web-Service Discovery. In Web Information Systems Engineering, 2003. WISE 2003. Proceedings of the Fourth International Conference on, pages 147--156. IEEE, 2003.
[31]
A. M. Zaremski and J. M. Wing. Signature Matching: A Tool For Using Software Libraries. ACM Transactions on Software Engineering and Methodology (TOSEM), 4(2):146--170, 1995.
[32]
A. M. Zaremski and J. M. Wing. Specification Matching of Software Components. ACM Transactions on Software Engineering and Methodology (TOSEM), 6(4):333--369, 1997.

Cited By

View all
  • (2022)Managed Evolution of Automotive Software Product Line Architectures: A Systematic Literature StudyElectronics10.3390/electronics1112186011:12(1860)Online publication date: 13-Jun-2022
  • (2019)Semantic Evolution Analysis of Feature ModelsProceedings of the 23rd International Systems and Software Product Line Conference - Volume A10.1145/3336294.3336300(245-255)Online publication date: 9-Sep-2019
  • (2018)A mapping study of software architecture recovery for software product linesProceedings of the 12th European Conference on Software Architecture: Companion Proceedings10.1145/3241403.3241454(1-7)Online publication date: 24-Sep-2018

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Other conferences
SPLC '16: Proceedings of the 20th International Systems and Software Product Line Conference
September 2016
367 pages
ISBN:9781450340502
DOI:10.1145/2934466
  • General Chair:
  • Hong Mei
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 the author(s) 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].

Sponsors

  • Huawei Technologies Co. Ltd.: Huawei Technologies Co. Ltd.
  • Key Laboratory of High Confidence Software Technologies: Key Laboratory of High Confidence Software Technologies, Ministry of Education
  • DC Holdings: Digital China Holdings Limited

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 16 September 2016

Permissions

Request permissions for this article.

Check for updates

Qualifiers

  • Research-article

Conference

SPLC '16
Sponsor:
  • Huawei Technologies Co. Ltd.
  • Key Laboratory of High Confidence Software Technologies
  • DC Holdings

Acceptance Rates

Overall Acceptance Rate 167 of 463 submissions, 36%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)9
  • Downloads (Last 6 weeks)1
Reflects downloads up to 05 Mar 2025

Other Metrics

Citations

Cited By

View all
  • (2022)Managed Evolution of Automotive Software Product Line Architectures: A Systematic Literature StudyElectronics10.3390/electronics1112186011:12(1860)Online publication date: 13-Jun-2022
  • (2019)Semantic Evolution Analysis of Feature ModelsProceedings of the 23rd International Systems and Software Product Line Conference - Volume A10.1145/3336294.3336300(245-255)Online publication date: 9-Sep-2019
  • (2018)A mapping study of software architecture recovery for software product linesProceedings of the 12th European Conference on Software Architecture: Companion Proceedings10.1145/3241403.3241454(1-7)Online publication date: 24-Sep-2018

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media