One of the presenters at QCon (I think it was John Davies) asked the audience whether they used UML 2.0 and only a couple of people raised their hands. I wasn't one of them - I briefly looked at UML 2.0 a while back but I didn't feel compelled enough to use it. This got me thinking, how widespread is the use of UML nowadays?
From my own perspective, here's where I tend to use UML within the context of a bespoke software project.
As I've mentioned before, I tend to go with a just enough approach to the software architecture document, but I do definitely find that UML is useful because you don't have to think about the notation. Having said that, I do use Visio-style block diagrams for representing things like the logical and physical/infrastructure architecture (you can see a simplified version of such a diagram on page 3 in this presentation). I do this for two reasons. First of all, I don't think that UML provides an easy to understand notation for this sort of thing and second, these high-level architecture diagrams are typically distributed to a wider audience, some of who aren't technical and don't understand UML.
So then, is UML on the way out? I'd be interested in your thoughts on the following.
Simon lives in Jersey (the largest of the Channel Islands) and works as an independent consultant, helping teams to build better software. His client list spans over 20 countries and includes organisations ranging from small technology startups through to global household names. Simon is an award-winning speaker and the author of Software Architecture for Developers - a developer-friendly guide to software architecture, technical leadership and the balance with agility. He still codes too. You can tweet Simon at @simonbrown.