Skip to content Skip to footer
0 items - $0.00 0

UML diagram for the DDD example in Evans’ book by takaakit

UML diagram for the DDD example in Evans’ book by takaakit

UML diagram for the DDD example in Evans’ book by takaakit

9 Comments

  • Post Author
    ak_111
    Posted April 18, 2025 at 8:36 pm

    What happened to UML? I remember it was everywhere in enterprise computing 20 years ago but seems to have disappeared now.

    Is it still around or did it go the way of SOAP, Java Applets? If not, what has replaced it?

  • Post Author
    neilv
    Posted April 18, 2025 at 9:01 pm

    I used to work heavily in this kind of system modeling (developing tools for it, and dogfooding), and still use it when high-value for figuring out or communicating an aspect of a system.

    Here's a challenge, to help appreciate the nature of these: try to find an error in the diagrams.

    It's usually harder than you might think, since, even when you know the notation and metamodel semantics, it's information-dense talking about a domain.

    You usually have to know or learn a lot about the domain, and/or have an domain expert you can walk through it exhaustively, before you can find errors.

    And an error can be whopper: a single graph edge missing, or between the wrong vertices, or with the wrong adornments can have huge implications.

    For example, large amounts of work that have to be redone, or a project abandoned, or a mess that takes 10x longer than it should to write, and 10x the tech debt going forward with a bad architecture, or a fundamental security flaw.

    One of the mistakes many people make is treating formalized diagrams as "marketecture" visuals, like they only need for handwaving sales presentation slides, where there's some kind of visual for every concept they want to be able to literally point to.

    Nope, if you have software engineers and domain experts communicating and reasoning about your system in only the fuzzy terms of sales/exec presentations, you're really stabbing yourself in the face.

  • Post Author
    karlgkk
    Posted April 18, 2025 at 9:11 pm

    Apropos of nothing, all of the major ai models have gotten really good at turning a pdf or document into uml

    Not great, mind you. 80% of the way there still saves an hour of your time tho

  • Post Author
    throw_m239339
    Posted April 18, 2025 at 10:10 pm

    It's useful to convey architectures. The problem is that UML has been abused by some vendors that implemented bad software based on "Rapid UML Development" and it soured a lot of developers. Also it is very old java OO oriented. But Sequence diagrams are still in use.

  • Post Author
    firesteelrain
    Posted April 18, 2025 at 10:42 pm

    These diagrams make a lot of sense if you understand the symbols and the relationships plus aggregations. You can easily talk to them. I use these diagrams with non technical people all the time

  • Post Author
    alganet
    Posted April 18, 2025 at 11:07 pm

    Good UML is really simple UML.

    "Then what about complex things? Can't make everything simple"

    Do partial diagrams. Simplify or skip things your team already knows.

    Also, great UML is no UML. Sometimes the code itself is short and clear enough, requiring no diagram (of course, not all diagrams are about code… but use case diagrams are rare these days anyway).

    Also, use cases and use case diagrams are great.

    Also, perfect UML is disposable. Thinking of long term diagrams that serve as documentation is a mistake.

  • Post Author
    BerislavLopac
    Posted April 19, 2025 at 8:30 am

    For the architectural documentation like this one, the C4 Model [0] is a much better fit than UML – primarily because it's less rigid in notation and modeling components. And in terms of tooling, I find IcePanel [1] to have the right combination of flexibility and simplicity.

    [0] https://c4model.com/

    [1] https://icepanel.io/

  • Post Author
    stevoski
    Posted April 19, 2025 at 10:03 am

    Analyst: “So this part of the UML diagram is right? A fizz always belongs to a buzz?”

    Domain expert: “Yes, always”

    Analyst: “Any exceptions you can think of?”

    Domain expert: “No, none at all.”

    —-

    Forward to day 1 after “delivery” of the implemented system.

    Domain expert is now using the system for the first time in a real-life situation:

    “It doesn’t let me save the fizz I’m creating. How does this handle a case where a fizz doesn’t yet belong to a buzz?”

  • Post Author
    andrewstuart
    Posted April 19, 2025 at 12:12 pm

    At one point it looked like working in corporate IT meant you’d have to learn Java and UML and the magic light left the forest and the little fairies and elves that made computing magical and happy and bright died.

    Fortunately UML was not the future.

Leave a comment

In the Shadows of Innovation”

© 2025 HackTech.info. All Rights Reserved.

Sign Up to Our Newsletter

Be the first to know the latest updates

Whoops, you're not connected to Mailchimp. You need to enter a valid Mailchimp API key.