Live data from Hacker News

Ask HN: Do you still use UML?

news.ycombinator.com

41–50 of 188 posts

Re: Ask HN: Do you still use UML?

#41

Good UML diagrams are hard to write, easy to understand. I used to write a lot of UML diagrams in Mechatronics Engineering for a big company, where specs were not supposed to change often. For projects with a long lifetime and a slow change velocity, UML is totally justified. UML diagrams are not worth it for Software Engineering: code evolve too fast to keep your diagrams up to date. In that case, I replace UML diag…

Even bad UML diagrams are hard to write for a human that is more into typing than drawing. I was even forced to create text-to-UML tool when I was a young dev. Saved a lot of time.

Re: Ask HN: Do you still use UML?

#42
post #38

Yes I do. When you have a team of developers with different model of how the system should work or works, it's usually a recipe for disaster. By modeling, we get to unify our thoughts and idea of the system. When starting out a project, I tend to lean more towards well labeled conceptual diagrams. I will also use activity diagram, sequence and state diagrams. While I have often read about people designing class diagr…

Any tool in particular that you suggest to make diagrams? Or maybe just pen and paper? I tried StarUML 2 and it's ok but I found it slightly clunky (it also does not have a realtime collaboration feature as far as I know, that would be nice to have when your team is remote IMHO)

Umlet: http://www.umlet.com/

Super easy to learn, efficient to use, runs anywhere, can reverse engineer Java code, free and open source.

It also comes with a palette so you can draw UML diagrams without knowing much UML.

Re: Ask HN: Do you still use UML?

#43
post #40

Yes. Everyday. With a pencil on a notebook. When I take notes, some concepts are better/faster materialized as relationships between objects or actors or activities Also reasoning about schematics topology is useful and enlightening when a problem is large

Btw when I need to sketch uml on a computer I use violet uml

Re: Ask HN: Do you still use UML?

#44

UML is too heavy and rigid. I use my own subset/version of UML, which uses a simplified "grammar", and allows you to express basically only the following: - Class with attributes - Parent/child relationship - One-to-one relationship - One-to-many relationship - Many-to-many relationship If I have some other need (rare), then I improvise. Usually I'm the only one who looks at these, but if a client or someone else nee…

An ERD (Entity Relationship Diagram) might be simpler and clearer. In my experiences, stakeholders find them easier to follow than UML class diagrams.

Re: Ask HN: Do you still use UML?

#45
post #26

In recent times, about on the same level as ERDs for databases. So mostly as a quick top-level sketch when designing something (mostly on paper), not really kept up to date when the code/model changes. Goes along with getting away from rigid class models in general, and for UI classes, the relationships are a bit more self-evident. I do miss Booch's fluffy clouds a bit, though.

Even Grady Booch thinks that UML is not so useful.

Re: Ask HN: Do you still use UML?

#46
post #19

Yes, but not in the formal sense. And i don't get why agile and proper documentation should not go Hand in Hand. There are components and class Diagramms that are invaluable for me when i'm joining an existing code base. Even if they are not up-to-date everytime. State and sequence diagrams are really cool to discuss dynamic flows and identify potential logic holes. UML-like diagrams are way better then to come up wi…

Time limits, I guess. It's the only reason not to create good documentation. If you fail to deliver on time there's no need in good project docs. More like a chronic desease.

A lack of good project documentation should be treated as technical debt and handled accordingly

Re: Ask HN: Do you still use UML?

#47
Yes. Keep in mind though that the - perhaps historically, perhaps still - most widely used kind of UML diagram - the class diagram - is just one component of UML.

Other than for explaining particular design patterns I don't find class diagrams all that useful, certainly not for giving you a complete picture of a system that consists of more than a handful of classes.

Sequence diagrams, state diagrams, use case diagrams, basically anything that involves or describes activities: I think those are tremendously useful.

Re: Ask HN: Do you still use UML?

#48
post #5

I'm teaching it. It feels increasingly out of date. Tool support has stagnated for years on Linux. Modern features like lambdas are not really supported.

> Modern features like lambdas "Modern" as in "Introduced to programming languages 35 years before the invention of UML, finally turning up in Java 20 years after the invention of UML"?

Yes. Why did the functional programming people need so long to convince the rest of the benefits?

Re: Ask HN: Do you still use UML?

#49

UML is too heavy and rigid. I use my own subset/version of UML, which uses a simplified "grammar", and allows you to express basically only the following: - Class with attributes - Parent/child relationship - One-to-one relationship - One-to-many relationship - Many-to-many relationship If I have some other need (rare), then I improvise. Usually I'm the only one who looks at these, but if a client or someone else nee…

An ERD (Entity Relationship Diagram) might be simpler and clearer. In my experiences, stakeholders find them easier to follow than UML class diagrams.

For me its also a lot more useful to document he data model rather than class diagrams. The data model usually changes less than the code.

Re: Ask HN: Do you still use UML?

#50
I use boxes-and-arrows sketches a lot. The UML which was so popular around 2000 was this detailed quasi-standard graphical language. It was very centred around being correct, and diagrams being of a specific type of a number of permissible types, and so on. And that whole part I never found to be too helpful.

It is useful to draw ideas as graphics for people who's brains are wired visually. And it can makes nice figures for books and articles explaining structures and concepts. But in neither case does the value predominantly depend on the depictions begin adherent to a standard, as much as other qualities, like focusing on the right part of a larger system, or leaving out unimportant detail, etc.

So nonstandard diagrams offer the author or user more creative flexibility, which is often very important.

I do see value in loosely following UML notation, for the obvious reason that one can immediately see if someone tries to show classes, states, requests, systems parts, and so on. That was probably the original goal behind UML all along, even if people lost sight of it during the fad phase.

Post reply on HN