This article on the "Death of UML" ( is mourning how agile killed any idea of analysis and design.

But there is nothing stopping you to come up with a good design. Agile simply killed the idea that one time analysis and design is enough ("big design upfront"). You should incorporate feedback to strengthen your analysis and improve your design regularly.

Do you need UML for this? Probably not, but if you find it useful, no one stops you.

@schaueho UBL did give us a few good things, such as my personal favourite, the sequence diagrams. In general UML is a shared language that should be used for whiteboards when discussing system design.

This is where UML should have stopped, in my opinion. What happened was that someone thought that if you make the specification precise enough, you can completely design a system using UML diagrams and you wouldn't need to write any code.

I just looked at the spec, and it's absolutely ridiculous how someone thought it would a good idea to formalise this stuff to this level.


@loke @schaueho
Back in university, we've had a graph library ( which allowed modeling the domain of interest as UML class diagrams and then provided a graph datastructure for it (either dynamically or by generating code). You could then build your app on top of that (usually by simply using the code rather than by extending the generated classes), you could query those graphs or transform them (e.g., in terms of graph pattern matching, model transformations, or bidirectional transformations).

One querying and transformation approach was/is FunnyQT ( which I've developed in Clojure as part of my PhD. Great fun!

Ah, good old times. We've had a lot success with that approach, e.g., for software analysis an abstract syntax graphs in re-engineering projects.

That said, I haven't seen almost any UML since I'm in the industry and when I've seen a bit, it had nothing to do with the reality anymore.

Sign in to participate in the conversation
Functional Café

The social network of the future: No ads, no corporate surveillance, ethical design, and decentralization! Own your data with Mastodon!