Specification and Automatic Checking of Architecture Constraints on Object Oriented Programs

Abstract : Context: Architecture constraints are specifications of conditions to which an architecture model must adhere in order to satisfy an architecture decision imposed by a given design principle. These constraints can be specified with predicate languages like OCL at design time and checked on design artifacts. Objective: Many works in the literature studied the importance of checking these constraints to guarantee quality on design models, and to prevent technical debt and maintenance difficulties. In this paper, we propose a process whose ultimate goal is to enable the checking of these constraints in the implementation stage. Method: The proposed process takes as input a textual specification of an architecture constraint specified at design stage. It translates this specification into meta-programs and then it uses them with aspect-oriented programming to check constraints at the implementation stage and at run-time on object-oriented programs. Results: We experimented an implementation of this process on a set of 12 architecture constraints. The results of this experimentation showed that our process is able to statically and dynamically detect architecture constraint violations on toy object-oriented applications, but also on real-world ones. at source code level and at runtime. It avoids the disappearance of architecture decision knowledge in implementation artifacts, and facilitates later their maintenance.
Document type :
Journal articles
Liste complète des métadonnées

Cited literature [5 references]  Display  Hide  Download

https://hal.archives-ouvertes.fr/hal-01905953
Contributor : Tibermacine Chouki <>
Submitted on : Friday, October 26, 2018 - 11:52:46 AM
Last modification on : Thursday, November 8, 2018 - 1:15:30 AM
Document(s) archivé(s) le : Sunday, January 27, 2019 - 1:39:33 PM

File

ist.pdf
Files produced by the author(s)

Identifiers

Collections

Citation

Sahar Kallel, Chouki Tibermacine, Slim Kallel, Ahmed Kacem, Christophe Dony. Specification and Automatic Checking of Architecture Constraints on Object Oriented Programs. Information and Software Technology, Elsevier, 2018, 101, pp.16-31. ⟨10.1016/j.infsof.2018.05.002⟩. ⟨hal-01905953⟩

Share

Metrics

Record views

22

Files downloads

25