C++ Code Analysis: an Open Architecture
for the Verification of Coding Rules
The analysis of C++ code is the basic building block of the collaboration
between ITC-irst and CERN, aimed at improving the quality of the software
by exploiting the information that can be automatically gathered from the
code. The first objective of the collaboration is the development of a
coding rule check tool. Successive steps will include a reverse
engineering module and an intelligent refactoring tool. Since all planned
applications, and possibly also those not yet considered, share a common
analysis bulk, particular attention was devoted to the development of an
open architecture for the analysis of C++ code.
In this paper the adopted architectural solutions are presented and
discussed, highlighting their generality, the possibilities of extension
that they offer, and the way details could be encapsulated within packages,
so that a clear and sharp interface between the subsystems is defined. The
peculiarities of the C++ language are also described, together with the way
they were approached and the state of the current implementation.
Postscript version of the paper.