The architecture of the coverage plugin is illustrated in the image below.
Regarding each of the packages, they perform the following functions:
“coverage” contains methods for realizing the several types of coverage analysis (model, script and execution coverage);
“instrumentation” is responsible for all the functions regarding the instrumentation process and subsequent code coverage analysis;
“dialogs” contains the dialogues used to interact with the user;
“editors” implements the custom file editor used with code coverage analysis;
“views” contains the custom Eclipse view used to display code coverage results;
“helpers” encapsulates several methods to analyse model data and evaluate coverage criteria compliance regarding several element types.