Live data from Hacker News

Ask HN: Do you still use UML?

news.ycombinator.com

91–100 of 188 posts

Re: Ask HN: Do you still use UML?

#94
For general purpose data modeling, I tend to favor some loose variant of Bachman or Chen notation. UML feels complicated to the point of being hard to read.

For architectural diagrams, I just use basic boxes, arrows, cans, etc. UML also tends to feel complicated to the point of being hard to read.

In both of the above cases, I think my not using UML is because its goals differ from mine. UML seeks to capture how a system comes together as completely an accurately as possible. I tend to think that the code should suffice for that (and if it doesn't, it's time to have a long hard talk about technical debt). I prefer diagrams to just be a gloss that helps to explain how things come together at a high level.

For understanding protocols and suchlike, though, UML sequence diagrams are my go-to. That's a rare spot where I really do want the diagram to capture a whole lot of fine detail, and the UML standard provides a pretty clear, intuitive and uncluttered visual language for the job.

Re: Ask HN: Do you still use UML?

#95
I do quite a lot. I use it for sketching out and documenting software. I use state machines for, well, state machines, which make up 90% of the software I write (embedded). They can almost mechanically be transformed to sourcecode, but I do the coding by hand. I use it for sequence diagram to sketch out and document sequences of events, and also generate sequence diagrams out of trace logs. And finally I use class diagrams to document the software architecture. For all of these I use plantuml because the text format is simple, human readable, and easily versioned. For the kind of software I write (embedded software with a lot of state machines and strong OO architecture), it is absolutely great. Definitely one of the big tools in my toolbox.

Re: Ask HN: Do you still use UML?

#96
post #83
post #74

HackerNews may not be the best place to sample for UML usage. It consists mainly of two communities that have a bias against formal engineering methodologies in the development of software. I won't comment on the pros and cons of UML. Instead I'll invite you to ask yourself a couple of questions. 1. What other clients do you support who have similar characteristics as this client (and may therefore also benefit from…

what are the two communities are you referring to? one of them might be frontend developers(ui,js,html,css,etc)? what is the other one? I'm a low-level guy and learning some web coding these days, so I can tell the difference views on software between HN and other places.

My guess is the FP (especially Lisp) crowd.

Re: Ask HN: Do you still use UML?

#97

I like to draw UML every so often. Question to HN: What tools do you guys use to draw UML diagrams?

planUML changed my view on UML. The basic application is extremely ugly and the output is far from being good looking, but writing UML in plain text is extremely refreshing.

Re: Ask HN: Do you still use UML?

#98
post #54

UML can be a great communication tool in specific situations but when it becomes a religion your organization will suffer. I'm older than most here, drank the cool-aid that predicted code generation and round tripping but spit it back up before the poison had a chance to set in. A bonus comment for the youngin's ... When you hear that some new system will allow "the common man" to write his own software without devel…

Code generation with 2D diagrams is a productivity killer. There is a reason why digital circuit design has shifted to use of HDLs. You can be far more productive describing behavior in text than shepherding boxes around on a schematic and slavishly working to make the interconnect look nice. With text, it's easy to make modifications. You have the power of VCS tools available to track changes. It's easier to partition work across multiple people. You aren't tied to proprietary storage formats and tooling that could disappear when their creators go under.

Re: Ask HN: Do you still use UML?

#99
"What's your favorite editor?" pales in comparison to the divisiveness inspired by "how do you feel about UML?"

I used Rational Rhapsody for a few years. We used it for use case diagrams, sequence diagrams, class diagrams, object model diagrams, statecharts+code generation.

Many folks scoff at and draw the line at code generation. By default, tools like Rhapsody seek to box you in to a certain way of doing things. It's not difficult at all to customize but it requires effort to opt out of some defaults. I felt like I experienced significant pros and cons. One one hand it was awkward to use their IDE to edit the code. OTOH it helped encourage a level of organization to the code. Statecharts are very expressive and very clear, I really liked them. There's no limit to the expressiveness of the code you can write. But the vocabulary used to describe the widgets I was working with was new to me, so it took a good deal of time to look up and understand the customizations required.

In the absence of code generation features of UML, the diagramming features are really great. Developers are too quick to treat it like a religion and (on both sides) become inspired to pray at the altar or preach about the evil that lies within. But really, it's just a glossary of visual representations mapped to software design concepts. That's all it needs to be -- conventions like the ones used in other engineering discipline's diagrams. Diagrams with "boxes and arrows" are just fine but there's always the implicit questions: "does that rectangle represent the process executing the 'flabtisticator executable' or the 'flabtisticator class'?

Re: Ask HN: Do you still use UML?

#100

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 figu…

I concur that box-and-arrow diagrams are useful, and if I am doing them, I might as well use UML as my base language. But even then those diagrams are not nearly as valuable as the diagrams used in any other field of engineering.

My explanation is this: computer programs are documents. The best way to capture the essence of a document is to summarise it's most important bits in language I can easily understand.

And for me, that requires English not UML.

Post reply on HN