International Conference Peer-reviewed Short paper

Inference-Based Detection of Architectural Violations in MVC2

Shinpei Hayashi, Fumiki Minami, Motoshi Saeki

In Proceedings of the 12th International Conference on Software Technologies (ICSOFT 2017), pp. 394–401, Madrid, Spain, July 2017.

Abstract

Utilizing software architecture patterns is important for reducing maintenance costs. However, maintaining code according to the constraints defined by the architecture patterns is time-consuming work. As described herein, we propose a technique to detect code fragments that are incompliant to the architecture as fine-grained architectural violations. For this technique, the dependence graph among code fragments extracted from the source code and the inference rules according to the architecture are the inputs. A set of candidate components to which a code fragment can be affiliated is attached to each node of the graph and is updated step-by-step. The inference rules express the components' responsibilities and dependency constraints. They remove candidate components of each node that do not satisfy the constraints from the current estimated state of the surrounding code fragment. If the current result does not include the current component, then it is detected as a violation. By defining inference rules for MVC2 architecture and applying the technique to web applications using Play Framework, we obtained accurate detection results.

BibTeX

@inproceedings{hayashi-icsoft2017,
    author = {Shinpei Hayashi and Fumiki Minami and Motoshi Saeki},
    title = {Inference-Based Detection of Architectural Violations in MVC2},
    booktitle = {Proceedings of the 12th International Conference on Software Technologies},
    pages = {394--401},
    doi = {10.5220/0006465103940401},
    year = 2017,
}
Type
International Conference
Conference
ICSOFT 2017
Location
Madrid, Spain
Presented
July 25, 2017
Volume / Pages
pp. 394–401
DOI
10.5220/0006465103940401