SDMetrics home page
The Software Design Metrics tool for the UML

Designing an ‘Agile’ XMI Parser for the UML

November 23, 2012, Jürgen Wüst. Category: Development

SDMetrics is primarily a UML design quality measurement solution. It contains an XMI parser to read UML models from XMI files. The XMI parser has attracted some interest on its own. In this post, I’ll talk a bit about the reasoning behind the design decisions of the XMI parser, and discuss the consequences for practical… [Continue reading]

Measuring the Size and Complexity of UML Sequence Diagrams

October 25, 2012, Jürgen Wüst. Category: Tips & Tricks

Almost all of the UML metrics that SDMetrics calculates “out of the box” are model-centric, not diagram-centric. For example, class metrics count all attributes, associations, operations, etc. of classes. Whether these elements – or the classes themselves – appear on any diagrams does not matter. They are part of the UML model, and that’s what… [Continue reading]

Predicting Fault-Prone Classes with UML Metrics

September 28, 2012, Jürgen Wüst. Category: Measurement

In this post we’ll have look at Chapter 7 of Ariadi Nugroho’s PhD Thesis “The Effects of UML Modeling on the Quality of Software”. I’ve previously discussed Chapters 5 and 6 of the thesis, which investigate the impact of the level of detail of UML models on system quality. You can download all those chapters… [Continue reading]

The Availability of UML Models for Empirical Research

August 23, 2012, Jürgen Wüst. Category: Measurement

There are quite a few empirical studies that investigate how the structural properties of a system impact external system quality attributes. For example, what is the relationship between class coupling or complexity to its fault-proneness or maintainability? These studies typically measure structural system properties from source code, which is readily available once the systems under… [Continue reading]

Checking the Layout of UML Diagrams with SDMetrics

July 18, 2012, Jürgen Wüst. Category: Tips & Tricks

In the previous post we have discussed the problem of diagram interchange between UML modeling tools via XMI. Using the example of Altova UModel, we have shown how to customize SDMetrics to extract tool vendor specific diagram information from XMI files. In this post, we will continue with this example and have SDMetrics automatically check… [Continue reading]

Parsing UML Diagram Information from Altova UModel XMI Files

June 20, 2012, Jürgen Wüst. Category: Tips & Tricks

I may have mentioned it before on this blog, but XMI interchange of UML models is notoriously difficult in practice. A major problem of model interchange concerns diagram information: what diagrams are there, which elements appear on the diagrams, and where are they located on the diagram? While the UML model itself often can be… [Continue reading]

The Impact of the Level of Detail in UML Models on System Quality

May 23, 2012, Jürgen Wüst. Category: Measurement

Software architects create UML models with varying amounts of rigor and detailedness. Some use UML in an informal manner, as a means to communicate architectural or design decisions. Such use often relies only on a small subset of the graphical notation the UML defines, and pays little regard to the semantics. At the other end… [Continue reading]

Checking the Multiplicity of Associations on UML Class Diagrams

April 25, 2012, Jürgen Wüst. Category: Tips & Tricks

A recurring quality issue of UML class diagrams concerns the multiplicity on association ends. Modelers can get the multiplicity wrong, or forget to specify it at all. In his book “Elements of UML 2.0 style”, Scott Ambler suggests to always indicate the multiplicity of associations on all ends, even in apparently obvious cases. This demonstrates… [Continue reading]

The Single Best Presentation Slide on OO Metrics, Hands Down

April 20, 2012, Jürgen Wüst. Category: Measurement

This slide by Natallia Kokash from the Software Engineering course of Fall 2011 at Leiden University discusses the metric NOC from Chidamber and Kemerer’s metric suite for object-oriented design: The entire set of presentations is available here. The above slide is no. 65 from the presentation titled “Software Quality”. Thank you Natallia Kokash!

Calculating Class Design Cohesion Metrics for UML

April 16, 2012, Jürgen Wüst. Category: Tips & Tricks

In an earlier post I have explained why SDMetrics does not feature any class cohesion metrics “out of the box”. In the following, I will show how you can use SDMetrics to calculate class cohesion metrics anyway. The metrics are: CAMC (Cohesion among methods in a class) by Bansiya et al, “A Class Cohesion Metric… [Continue reading]

« Newer PostsOlder Posts »