Busca avançada
Ano de início
Entree
(Referência obtida automaticamente do Web of Science, por meio da informação sobre o financiamento pela FAPESP e o número do processo correspondente, incluída na publicação pelos autores.)

Introducing an Architectural Conformance Process in Continuous Integration

Autor(es):
Pinto, Arthur F. [1] ; Terra, Ricardo [1] ; Guerra, Eduardo [2] ; Sabbas, Fernanda Sao [2]
Número total de Autores: 4
Afiliação do(s) autor(es):
[1] Univ Fed Lavras, Lavras - Brazil
[2] Inst Nacl Pesquisas Espaciais, Sao Jose Dos Campos - Brazil
Número total de Afiliações: 2
Tipo de documento: Artigo Científico
Fonte: JOURNAL OF UNIVERSAL COMPUTER SCIENCE; v. 23, n. 8, p. 769-805, 2017.
Citações Web of Science: 0
Resumo

As software evolves, developers usually introduce deviations from the planned architecture, due to unawareness, conflicting requirements, technical difficulties, deadlines, etc. This occurs in systems with an explicit division of responsibility between groups of classes, such as modules and layers. Although there are architectural conformance tools to identify architectural violations, these tools are underused and detected violations are rarely corrected. To address these shortcomings, this article introduces an architectural conformance process into continuous integration. Thus, the conformance process is triggered by every code integration and, when no violations are detected, the code is integrated into the repository. The implemented tool, called ArchCI, supports the proposed solution using DCL (Dependency Constraint Language) as underlying conformance technique and Jenkins as the Continuous Integration server. We also evaluated the applicability of our proposed solution in a real-world Java project where we incrementally introduced 44 constraints through six releases. As the result, our process was able to detect 42 violations, which have always been fixed before the ensuing release. (AU)

Processo FAPESP: 14/16236-6 - Interface de programação para recuperação de metadados de elementos em linguagens orientadas a objetos
Beneficiário:Eduardo Martins Guerra
Modalidade de apoio: Auxílio à Pesquisa - Regular