SDMetrics - the design measurement tool for the UML™.
Where to get started:
To integrate SDMetrics's measurement capabilities in your
application:
- Read Section 4 of the SDMetrics
User Manual to become
familiar with basic SDMetrics concepts (project files, filter settings,
metric data tables, design rule checking,
relation matrices, data export).
- The XMI parser is provided in package {@link com.sdmetrics.model}.
The description of that package contains a tutorial how to read
an XMI file and access the model elements.
- To calculate metrics and check design rules, use the classes
in package {@link com.sdmetrics.metrics}. The tutorial for the
package shows you how.
- The classes in package {@link com.sdmetrics.app} further automate
the calculation/checking of all design metrics/rules for a model, and
summarize the results in data tables. The tutorial for that package
shows how to create and access the tables.
- Package {@link com.sdmetrics.output} provides data export for the
data tables to CSV, HTML, or as spreadsheets for OpenOffice.org or
Excel.
- The command line utility in package {@link com.sdmetrics.cmdline}
ties the SDMetrics core functionality together in one simple application.
To add new metrics (or rules or relation matrices):
- Read Chapters 7 and 8 of the SDMetrics
User Manual to become
familiar with SDMetrics project file formats for metamodel
definitions, XMI transformations, and the SDMetricsML to write
metric definition files.
- Most of the time, you can just add the definition of the new metric
to the metric definition file, without having to change anything else.
- If your new metric requires information that is currently not
contained in SDMetrics' UML metamodel
- extend the metamodel definition file with the new metamodel
elements or attributes that you needed,
- add XMI transformations and triggers for the new metamodel
elements and attributes to the XMI transformation files.
- Add the metrics to the metric definition files, using the new
element types and/or attributes.
- If your new metrics cannot be expressed using the capabilities of the
SDMetricsML, an extension of the metrics engine
is required. The overall procedure is described in Chapter 9 of the
SDMetrics user manual.