Architecture conformance analysis using model-based testing: A case study approach

Research output: Contribution to journalArticleAcademicpeer-review

Abstract

Context: The architectural drift problem defines the discrepancy between the architecture description and the code. Deviations of the code from the architecture can occur if architectural constraints as defined in the architectural models are not implemented in the code. For large-scale systems, manually checking the consistency of the architecture with the code is not trivial and cumbersome. Objective: The overall objective of this paper is to propose and analyze the effectiveness and practicality of an architecture conformance analysis approach using model-based testing (ACAMBT) approach for checking the consistency between architectural models and the code. Hereby, we consider the case whereby the architecture is assumed correct, and the code needs to align with the architecture. Method: We propose a model-based testing that uses architectural views to automatically derive test cases for checking the architectural constraints in the code. We have evaluated the approach and the corresponding toolset for a real industrial case study using a systematic case study protocol. Further, we have adopted exhaustive fault-injection techniques to detect the constraint violations. Results: The evaluation of the approach on real code showed that deviations with the architectural constraints could be easily detected in the code. Conclusion: We can conclude that ACAMBT is effective for identifying inconsistencies between the architecture views and the code for the defined view constraints. Our survey study with practitioners showed that adopting the ACAMBT approach is practical and easy to use. The approach as such can be considered as a complimentary tool to the existing testing and reflexion modeling approaches.

LanguageEnglish
Pages423-448
JournalSoftware: Practice and Experience
Volume49
Issue number3
Early online date28 Nov 2018
DOIs
Publication statusPublished - Mar 2019

Fingerprint

Testing
Large scale systems

Keywords

  • architecture conformance analysis
  • case study
  • model-based testing
  • software architecture

Cite this

@article{81c9a3b2be6e4445b78739796d90088e,
title = "Architecture conformance analysis using model-based testing: A case study approach",
abstract = "Context: The architectural drift problem defines the discrepancy between the architecture description and the code. Deviations of the code from the architecture can occur if architectural constraints as defined in the architectural models are not implemented in the code. For large-scale systems, manually checking the consistency of the architecture with the code is not trivial and cumbersome. Objective: The overall objective of this paper is to propose and analyze the effectiveness and practicality of an architecture conformance analysis approach using model-based testing (ACAMBT) approach for checking the consistency between architectural models and the code. Hereby, we consider the case whereby the architecture is assumed correct, and the code needs to align with the architecture. Method: We propose a model-based testing that uses architectural views to automatically derive test cases for checking the architectural constraints in the code. We have evaluated the approach and the corresponding toolset for a real industrial case study using a systematic case study protocol. Further, we have adopted exhaustive fault-injection techniques to detect the constraint violations. Results: The evaluation of the approach on real code showed that deviations with the architectural constraints could be easily detected in the code. Conclusion: We can conclude that ACAMBT is effective for identifying inconsistencies between the architecture views and the code for the defined view constraints. Our survey study with practitioners showed that adopting the ACAMBT approach is practical and easy to use. The approach as such can be considered as a complimentary tool to the existing testing and reflexion modeling approaches.",
keywords = "architecture conformance analysis, case study, model-based testing, software architecture",
author = "Burak Uzun and Bedir Tekinerdogan",
year = "2019",
month = "3",
doi = "10.1002/spe.2667",
language = "English",
volume = "49",
pages = "423--448",
journal = "Software: Practice and Experience",
issn = "0038-0644",
publisher = "Wiley",
number = "3",

}

Architecture conformance analysis using model-based testing : A case study approach. / Uzun, Burak; Tekinerdogan, Bedir.

In: Software: Practice and Experience, Vol. 49, No. 3, 03.2019, p. 423-448.

Research output: Contribution to journalArticleAcademicpeer-review

TY - JOUR

T1 - Architecture conformance analysis using model-based testing

T2 - Software: Practice and Experience

AU - Uzun, Burak

AU - Tekinerdogan, Bedir

PY - 2019/3

Y1 - 2019/3

N2 - Context: The architectural drift problem defines the discrepancy between the architecture description and the code. Deviations of the code from the architecture can occur if architectural constraints as defined in the architectural models are not implemented in the code. For large-scale systems, manually checking the consistency of the architecture with the code is not trivial and cumbersome. Objective: The overall objective of this paper is to propose and analyze the effectiveness and practicality of an architecture conformance analysis approach using model-based testing (ACAMBT) approach for checking the consistency between architectural models and the code. Hereby, we consider the case whereby the architecture is assumed correct, and the code needs to align with the architecture. Method: We propose a model-based testing that uses architectural views to automatically derive test cases for checking the architectural constraints in the code. We have evaluated the approach and the corresponding toolset for a real industrial case study using a systematic case study protocol. Further, we have adopted exhaustive fault-injection techniques to detect the constraint violations. Results: The evaluation of the approach on real code showed that deviations with the architectural constraints could be easily detected in the code. Conclusion: We can conclude that ACAMBT is effective for identifying inconsistencies between the architecture views and the code for the defined view constraints. Our survey study with practitioners showed that adopting the ACAMBT approach is practical and easy to use. The approach as such can be considered as a complimentary tool to the existing testing and reflexion modeling approaches.

AB - Context: The architectural drift problem defines the discrepancy between the architecture description and the code. Deviations of the code from the architecture can occur if architectural constraints as defined in the architectural models are not implemented in the code. For large-scale systems, manually checking the consistency of the architecture with the code is not trivial and cumbersome. Objective: The overall objective of this paper is to propose and analyze the effectiveness and practicality of an architecture conformance analysis approach using model-based testing (ACAMBT) approach for checking the consistency between architectural models and the code. Hereby, we consider the case whereby the architecture is assumed correct, and the code needs to align with the architecture. Method: We propose a model-based testing that uses architectural views to automatically derive test cases for checking the architectural constraints in the code. We have evaluated the approach and the corresponding toolset for a real industrial case study using a systematic case study protocol. Further, we have adopted exhaustive fault-injection techniques to detect the constraint violations. Results: The evaluation of the approach on real code showed that deviations with the architectural constraints could be easily detected in the code. Conclusion: We can conclude that ACAMBT is effective for identifying inconsistencies between the architecture views and the code for the defined view constraints. Our survey study with practitioners showed that adopting the ACAMBT approach is practical and easy to use. The approach as such can be considered as a complimentary tool to the existing testing and reflexion modeling approaches.

KW - architecture conformance analysis

KW - case study

KW - model-based testing

KW - software architecture

U2 - 10.1002/spe.2667

DO - 10.1002/spe.2667

M3 - Article

VL - 49

SP - 423

EP - 448

JO - Software: Practice and Experience

JF - Software: Practice and Experience

SN - 0038-0644

IS - 3

ER -