SDMetrics home page
The Software Design Metrics tool for the UML

Comprehensive design measurement
SDMetrics ships with a rich set of object-oriented (OO) design measures covering structural properties of design elements from all UML1.x/2.x diagram types.
Measure all the import design attributes - size, coupling, complexity and more - at all levels of detail, from the model, subsystem, package level down to classes and operations. See the list of metrics.

Design rule checking
Design rules and heuristics automatically check your UML design for completeness, consistency, correctness, design style issues such as dependency cycles, and more. See the list of rules.

Early quality feedback
The later a fault is found in the development process, the more expensive it is to fix. SDMetrics finds problems at the design stage, before they are committed to source code.

Extensible set of design measures and design rules
You are not restricted to the built-in set of measures and rules. SDMetrics has a flexible and powerful mechanism to define and calculate new design rules and measures of your own, tailored to your development practices. See Custom Metrics and Rules.

Compare designs
Calculate size metrics deltas to quantify the growth in size between two versions of a design, identify parts of the system design that have undergone much change, or evaluate alternative solutions to a design problem.

Interoperability with UML tools
SDMetrics is designed to work with all UML modeling tools with XMI export.

  • SDMetrics supports all XMI Versions 1.0, 1.1, 1.2, 2.0, 2.1, 2.4, and 2.5 currently in use.
  • Flexible XMI import, configurable to deal with proprietary UML metamodel extensions, and tools that deviate from XMI standards. See Custom XMI Import.
  • Use SDMetrics with reverse engineering tools that produce XMI files from C++, Java, Delphi, or Smalltalk source code, .NET assemblies, etc., to perform design measurement on such sources.

Data export
Design measurement data is most effectively used when subjected to powerful statistical analysis procedures and visualization techniques. SDMetrics exports measurement data and descriptive statistics in various formats (tab-separated text tables, HTML, Calc, and XML for Microsoft Excel XP) for easy import in office applications, spreadsheet software, and statistics or visualization packages.

Interactive GUI
With the easy-to-use SDMetrics graphical user interface, you can interactively explore measurement data, identify outliers, browse histograms and Kiviat charts.

Command line interface
The measurement and data export features are also accessible via a command line interface. Automated analysis runs allow you to integrate SDMetrics in your development environment.

SDMetrics is fast. A 120MB XMI file with hundreds of thousands of design elements is processed in a matter of seconds.

Supported Platforms
SDMetrics runs on all platforms that support a Java 8 runtime environment (Windows, MacOS, Linux, Unix).