Direct SA1 Links
Etics Portal
- Etics Web
- EticsAgendas
- ETICS 2 SA1 Savannah
- SA1Actions (in Savannah)
, SA1 Internal
AQCM Reports
Short Description of the Task
Implementation of AQCM plugin. This plugin aggregates many other
plugins in order to evaluate AQCM metric.
The AQCM metric is a composition of 4
Quality Aspect (QA):
- Maintainability
- Reliability
- Portability
- Functionality
Evaluation Module (EM)
The Maintainability QA is based on 2 Evaluation Module:
code analysis and
static analysis.
The Reliability QA is based on 3 Evaluation Module:
structural analysis,
static analysis and
functional test.
The Portability QA is based on 1 Evaluation Module :
functional test.
The Functionality QA is based on 3 Evaluation Module:
structural analysis,
functional test and
standard compliance.
Every EM is based on a number of metrics calculated on report (or aggregated report) provided by different tool. For example: code analysis EM, for java code, is based on Include, Curly bracket, naming, unused items, Too_Frequent_Break, No_Null_Pointer, If_Else_While metrics retrieved from reports provided by Checkstyle tool and PMD.
AQCM plugin can be used by editing 2 configuration files:
- reports.config: for each tool (like Checkstyle) the report_pattern (i.e.: 'jcheckstyle-$moduleName-$configName.xml'), the plugin_dir_name (i.e.: 'checkstyle'), the filter to apply to retrieve the desired metric (i.e.: '//file[@name=$classname]/error[@source=$message]') and the function to be applied on (i.e.: exist)
- metrics.config: it contains three sections [metrics], [intervals] and [functions].
Metrics specifies the dependency tree of AQCM plugin, Intervals specifies the mapping between a numeric value and a judge (i.e.: 0.8 is GOOD for QA:Maintainability). Functions is a collection of couples (metric, operation)
Useful Links
Links to document, attach material needed, external resources, example, etc.
Requirements, Ideas, Constraints etc
Any requirement and from where it comes
-
SA1 phone conference 29/04/2009: complete the AQCM wiki documentation page
-
SA1 phone conference 29/04/2009: improve the fault tolerance to the missing plugins. AQCM is built on top of many plugins: If, for different reasons, the results of one or more plugins are not provided after an ETICS build, AQCM should be tolerant to this fault.
Open Issues
- contribution/dependency mechanism in the plugin framework: at the moment, the plugin framework supports contribution mechanism but a dependency mechanism could be more useful in the AQCM scenario, where AQCM plugin should specify the plugins it depends on.
Plans, Dates and Status
Status
General status and current versions, tags, configuration.
Currently the following people are working on AQCM plugin:
- Andrea: analysis, design and implementation
- Paolo: analysis and design
Ongoing work:
-
Andrea: enhancement of AQCM plugin fault tolerance
- complete configuration for missing plugins: update reports.conf and metrics.conf files for all the plugins integrated in ETICS
- injection of per-module metric values in build-status.xml
Done
- 4/4/2009: AQCMreport wiki page: done