Assisting conformance checks between architectural scenarios and implementation

Autores
Diaz Pace, Jorge Andres; Soria, Alvaro; Rodríguez, Guillermo Horacio; Campo, Marcelo Ricardo
Año de publicación
2012
Idioma
inglés
Tipo de recurso
artículo
Estado
versión publicada
Descripción
Context: Conformance between architecture and implementation is a key aspect of architecture-centric development. Unfortunately, the architecture “as documented” and the architecture “as implemented” tend to diverge from each other over time. As this gap gets wider, the architects’ reliance on architecture-level analyses is compromised. Thus, conformance checks should be run periodically on the system in order to detect and correct differences. In practice, tool support is very beneficial for these checks. Objective: Despite having a structural conformance analysis, assessing whether the main scenarios describing the architectural behavior are faithfully implemented in the code is still challenging. Checking conformance to architectural scenarios is usually a time-consuming and error-prone activity. In this article, we describe a tool approach called ArchSync that helps architects to reconcile a scenario-based architectural description with its source code, as changes are being made on the code. Method: The architecture is specified with Use-Case Maps (UCMs), a notation for modeling both high-level structure and behavior. ArchSync applies heuristics that incrementally detect code deviations with respect to predetermined UCMs, based on the analysis of system execution traces for those UCMs. Also, ArchSync provides suggestions for re-synchronizing the UCMs with the code. Results: We have evaluated a prototype of ArchSync in three medium-size case-studies, involving developers with moderate experience. We compared time consumed, code browsed and suggestions for re-synchronizing the UCMs by these developers, with and without the support of ArchSync. Conclusion: The results from case-studies and lessons learned have shown that the ArchSync approach is practical and reduces conformance checking efforts.
Fil: Diaz Pace, Jorge Andres. Consejo Nacional de Investigaciones Científicas y Técnicas. Centro Científico Tecnológico Conicet - Tandil. Instituto Superior de Ingeniería del Software. Universidad Nacional del Centro de la Provincia de Buenos Aires. Instituto Superior de Ingeniería del Software; Argentina
Fil: Soria, Alvaro. Consejo Nacional de Investigaciones Científicas y Técnicas. Centro Científico Tecnológico Conicet - Tandil. Instituto Superior de Ingeniería del Software. Universidad Nacional del Centro de la Provincia de Buenos Aires. Instituto Superior de Ingeniería del Software; Argentina
Fil: Rodríguez, Guillermo Horacio. Consejo Nacional de Investigaciones Científicas y Técnicas. Centro Científico Tecnológico Conicet - Tandil. Instituto Superior de Ingeniería del Software. Universidad Nacional del Centro de la Provincia de Buenos Aires. Instituto Superior de Ingeniería del Software; Argentina
Fil: Campo, Marcelo Ricardo. Consejo Nacional de Investigaciones Científicas y Técnicas. Centro Científico Tecnológico Conicet - Tandil. Instituto Superior de Ingeniería del Software. Universidad Nacional del Centro de la Provincia de Buenos Aires. Instituto Superior de Ingeniería del Software; Argentina
Materia
Software architecture
Conformance checking
Behavioral scenarios
Tool support
Nivel de accesibilidad
acceso abierto
Condiciones de uso
https://creativecommons.org/licenses/by-nc-sa/2.5/ar/
Repositorio
CONICET Digital (CONICET)
Institución
Consejo Nacional de Investigaciones Científicas y Técnicas
OAI Identificador
oai:ri.conicet.gov.ar:11336/268861

id CONICETDig_055027c7eb81e522bfc92d1b87ab5319
oai_identifier_str oai:ri.conicet.gov.ar:11336/268861
network_acronym_str CONICETDig
repository_id_str 3498
network_name_str CONICET Digital (CONICET)
spelling Assisting conformance checks between architectural scenarios and implementationDiaz Pace, Jorge AndresSoria, AlvaroRodríguez, Guillermo HoracioCampo, Marcelo RicardoSoftware architectureConformance checkingBehavioral scenariosTool supporthttps://purl.org/becyt/ford/1.2https://purl.org/becyt/ford/1Context: Conformance between architecture and implementation is a key aspect of architecture-centric development. Unfortunately, the architecture “as documented” and the architecture “as implemented” tend to diverge from each other over time. As this gap gets wider, the architects’ reliance on architecture-level analyses is compromised. Thus, conformance checks should be run periodically on the system in order to detect and correct differences. In practice, tool support is very beneficial for these checks. Objective: Despite having a structural conformance analysis, assessing whether the main scenarios describing the architectural behavior are faithfully implemented in the code is still challenging. Checking conformance to architectural scenarios is usually a time-consuming and error-prone activity. In this article, we describe a tool approach called ArchSync that helps architects to reconcile a scenario-based architectural description with its source code, as changes are being made on the code. Method: The architecture is specified with Use-Case Maps (UCMs), a notation for modeling both high-level structure and behavior. ArchSync applies heuristics that incrementally detect code deviations with respect to predetermined UCMs, based on the analysis of system execution traces for those UCMs. Also, ArchSync provides suggestions for re-synchronizing the UCMs with the code. Results: We have evaluated a prototype of ArchSync in three medium-size case-studies, involving developers with moderate experience. We compared time consumed, code browsed and suggestions for re-synchronizing the UCMs by these developers, with and without the support of ArchSync. Conclusion: The results from case-studies and lessons learned have shown that the ArchSync approach is practical and reduces conformance checking efforts.Fil: Diaz Pace, Jorge Andres. Consejo Nacional de Investigaciones Científicas y Técnicas. Centro Científico Tecnológico Conicet - Tandil. Instituto Superior de Ingeniería del Software. Universidad Nacional del Centro de la Provincia de Buenos Aires. Instituto Superior de Ingeniería del Software; ArgentinaFil: Soria, Alvaro. Consejo Nacional de Investigaciones Científicas y Técnicas. Centro Científico Tecnológico Conicet - Tandil. Instituto Superior de Ingeniería del Software. Universidad Nacional del Centro de la Provincia de Buenos Aires. Instituto Superior de Ingeniería del Software; ArgentinaFil: Rodríguez, Guillermo Horacio. Consejo Nacional de Investigaciones Científicas y Técnicas. Centro Científico Tecnológico Conicet - Tandil. Instituto Superior de Ingeniería del Software. Universidad Nacional del Centro de la Provincia de Buenos Aires. Instituto Superior de Ingeniería del Software; ArgentinaFil: Campo, Marcelo Ricardo. Consejo Nacional de Investigaciones Científicas y Técnicas. Centro Científico Tecnológico Conicet - Tandil. Instituto Superior de Ingeniería del Software. Universidad Nacional del Centro de la Provincia de Buenos Aires. Instituto Superior de Ingeniería del Software; ArgentinaElsevier Science2012-05info:eu-repo/semantics/articleinfo:eu-repo/semantics/publishedVersionhttp://purl.org/coar/resource_type/c_6501info:ar-repo/semantics/articuloapplication/pdfapplication/pdfapplication/pdfapplication/pdfhttp://hdl.handle.net/11336/268861Diaz Pace, Jorge Andres; Soria, Alvaro; Rodríguez, Guillermo Horacio; Campo, Marcelo Ricardo; Assisting conformance checks between architectural scenarios and implementation; Elsevier Science; Information And Software Technology; 54; 5; 5-2012; 448-4660950-5849CONICET DigitalCONICETenginfo:eu-repo/semantics/altIdentifier/url/https://www.sciencedirect.com/science/article/abs/pii/S0950584911002497info:eu-repo/semantics/altIdentifier/doi/10.1016/j.infsof.2011.12.005info:eu-repo/semantics/openAccesshttps://creativecommons.org/licenses/by-nc-sa/2.5/ar/reponame:CONICET Digital (CONICET)instname:Consejo Nacional de Investigaciones Científicas y Técnicas2025-10-22T11:26:23Zoai:ri.conicet.gov.ar:11336/268861instacron:CONICETInstitucionalhttp://ri.conicet.gov.ar/Organismo científico-tecnológicoNo correspondehttp://ri.conicet.gov.ar/oai/requestdasensio@conicet.gov.ar; lcarlino@conicet.gov.arArgentinaNo correspondeNo correspondeNo correspondeopendoar:34982025-10-22 11:26:23.925CONICET Digital (CONICET) - Consejo Nacional de Investigaciones Científicas y Técnicasfalse
dc.title.none.fl_str_mv Assisting conformance checks between architectural scenarios and implementation
title Assisting conformance checks between architectural scenarios and implementation
spellingShingle Assisting conformance checks between architectural scenarios and implementation
Diaz Pace, Jorge Andres
Software architecture
Conformance checking
Behavioral scenarios
Tool support
title_short Assisting conformance checks between architectural scenarios and implementation
title_full Assisting conformance checks between architectural scenarios and implementation
title_fullStr Assisting conformance checks between architectural scenarios and implementation
title_full_unstemmed Assisting conformance checks between architectural scenarios and implementation
title_sort Assisting conformance checks between architectural scenarios and implementation
dc.creator.none.fl_str_mv Diaz Pace, Jorge Andres
Soria, Alvaro
Rodríguez, Guillermo Horacio
Campo, Marcelo Ricardo
author Diaz Pace, Jorge Andres
author_facet Diaz Pace, Jorge Andres
Soria, Alvaro
Rodríguez, Guillermo Horacio
Campo, Marcelo Ricardo
author_role author
author2 Soria, Alvaro
Rodríguez, Guillermo Horacio
Campo, Marcelo Ricardo
author2_role author
author
author
dc.subject.none.fl_str_mv Software architecture
Conformance checking
Behavioral scenarios
Tool support
topic Software architecture
Conformance checking
Behavioral scenarios
Tool support
purl_subject.fl_str_mv https://purl.org/becyt/ford/1.2
https://purl.org/becyt/ford/1
dc.description.none.fl_txt_mv Context: Conformance between architecture and implementation is a key aspect of architecture-centric development. Unfortunately, the architecture “as documented” and the architecture “as implemented” tend to diverge from each other over time. As this gap gets wider, the architects’ reliance on architecture-level analyses is compromised. Thus, conformance checks should be run periodically on the system in order to detect and correct differences. In practice, tool support is very beneficial for these checks. Objective: Despite having a structural conformance analysis, assessing whether the main scenarios describing the architectural behavior are faithfully implemented in the code is still challenging. Checking conformance to architectural scenarios is usually a time-consuming and error-prone activity. In this article, we describe a tool approach called ArchSync that helps architects to reconcile a scenario-based architectural description with its source code, as changes are being made on the code. Method: The architecture is specified with Use-Case Maps (UCMs), a notation for modeling both high-level structure and behavior. ArchSync applies heuristics that incrementally detect code deviations with respect to predetermined UCMs, based on the analysis of system execution traces for those UCMs. Also, ArchSync provides suggestions for re-synchronizing the UCMs with the code. Results: We have evaluated a prototype of ArchSync in three medium-size case-studies, involving developers with moderate experience. We compared time consumed, code browsed and suggestions for re-synchronizing the UCMs by these developers, with and without the support of ArchSync. Conclusion: The results from case-studies and lessons learned have shown that the ArchSync approach is practical and reduces conformance checking efforts.
Fil: Diaz Pace, Jorge Andres. Consejo Nacional de Investigaciones Científicas y Técnicas. Centro Científico Tecnológico Conicet - Tandil. Instituto Superior de Ingeniería del Software. Universidad Nacional del Centro de la Provincia de Buenos Aires. Instituto Superior de Ingeniería del Software; Argentina
Fil: Soria, Alvaro. Consejo Nacional de Investigaciones Científicas y Técnicas. Centro Científico Tecnológico Conicet - Tandil. Instituto Superior de Ingeniería del Software. Universidad Nacional del Centro de la Provincia de Buenos Aires. Instituto Superior de Ingeniería del Software; Argentina
Fil: Rodríguez, Guillermo Horacio. Consejo Nacional de Investigaciones Científicas y Técnicas. Centro Científico Tecnológico Conicet - Tandil. Instituto Superior de Ingeniería del Software. Universidad Nacional del Centro de la Provincia de Buenos Aires. Instituto Superior de Ingeniería del Software; Argentina
Fil: Campo, Marcelo Ricardo. Consejo Nacional de Investigaciones Científicas y Técnicas. Centro Científico Tecnológico Conicet - Tandil. Instituto Superior de Ingeniería del Software. Universidad Nacional del Centro de la Provincia de Buenos Aires. Instituto Superior de Ingeniería del Software; Argentina
description Context: Conformance between architecture and implementation is a key aspect of architecture-centric development. Unfortunately, the architecture “as documented” and the architecture “as implemented” tend to diverge from each other over time. As this gap gets wider, the architects’ reliance on architecture-level analyses is compromised. Thus, conformance checks should be run periodically on the system in order to detect and correct differences. In practice, tool support is very beneficial for these checks. Objective: Despite having a structural conformance analysis, assessing whether the main scenarios describing the architectural behavior are faithfully implemented in the code is still challenging. Checking conformance to architectural scenarios is usually a time-consuming and error-prone activity. In this article, we describe a tool approach called ArchSync that helps architects to reconcile a scenario-based architectural description with its source code, as changes are being made on the code. Method: The architecture is specified with Use-Case Maps (UCMs), a notation for modeling both high-level structure and behavior. ArchSync applies heuristics that incrementally detect code deviations with respect to predetermined UCMs, based on the analysis of system execution traces for those UCMs. Also, ArchSync provides suggestions for re-synchronizing the UCMs with the code. Results: We have evaluated a prototype of ArchSync in three medium-size case-studies, involving developers with moderate experience. We compared time consumed, code browsed and suggestions for re-synchronizing the UCMs by these developers, with and without the support of ArchSync. Conclusion: The results from case-studies and lessons learned have shown that the ArchSync approach is practical and reduces conformance checking efforts.
publishDate 2012
dc.date.none.fl_str_mv 2012-05
dc.type.none.fl_str_mv info:eu-repo/semantics/article
info:eu-repo/semantics/publishedVersion
http://purl.org/coar/resource_type/c_6501
info:ar-repo/semantics/articulo
format article
status_str publishedVersion
dc.identifier.none.fl_str_mv http://hdl.handle.net/11336/268861
Diaz Pace, Jorge Andres; Soria, Alvaro; Rodríguez, Guillermo Horacio; Campo, Marcelo Ricardo; Assisting conformance checks between architectural scenarios and implementation; Elsevier Science; Information And Software Technology; 54; 5; 5-2012; 448-466
0950-5849
CONICET Digital
CONICET
url http://hdl.handle.net/11336/268861
identifier_str_mv Diaz Pace, Jorge Andres; Soria, Alvaro; Rodríguez, Guillermo Horacio; Campo, Marcelo Ricardo; Assisting conformance checks between architectural scenarios and implementation; Elsevier Science; Information And Software Technology; 54; 5; 5-2012; 448-466
0950-5849
CONICET Digital
CONICET
dc.language.none.fl_str_mv eng
language eng
dc.relation.none.fl_str_mv info:eu-repo/semantics/altIdentifier/url/https://www.sciencedirect.com/science/article/abs/pii/S0950584911002497
info:eu-repo/semantics/altIdentifier/doi/10.1016/j.infsof.2011.12.005
dc.rights.none.fl_str_mv info:eu-repo/semantics/openAccess
https://creativecommons.org/licenses/by-nc-sa/2.5/ar/
eu_rights_str_mv openAccess
rights_invalid_str_mv https://creativecommons.org/licenses/by-nc-sa/2.5/ar/
dc.format.none.fl_str_mv application/pdf
application/pdf
application/pdf
application/pdf
dc.publisher.none.fl_str_mv Elsevier Science
publisher.none.fl_str_mv Elsevier Science
dc.source.none.fl_str_mv reponame:CONICET Digital (CONICET)
instname:Consejo Nacional de Investigaciones Científicas y Técnicas
reponame_str CONICET Digital (CONICET)
collection CONICET Digital (CONICET)
instname_str Consejo Nacional de Investigaciones Científicas y Técnicas
repository.name.fl_str_mv CONICET Digital (CONICET) - Consejo Nacional de Investigaciones Científicas y Técnicas
repository.mail.fl_str_mv dasensio@conicet.gov.ar; lcarlino@conicet.gov.ar
_version_ 1846781822111842304
score 12.982451