Live data from Hacker News

Ask HN: Do you still use UML?

news.ycombinator.com

81–90 of 188 posts

Re: Ask HN: Do you still use UML?

#81
Yes - mainly for communicating with other teams. Its not the full spec, but a sub section, so that others (mainly the security architecture review) can understand the basic parts of the system.

I tried to keep it up to date for the public docs, but that can be an uphill battle.

Re: Ask HN: Do you still use UML?

#82
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…

Care to explain which are those communities you are referring to?

Re: Ask HN: Do you still use UML?

#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.

Re: Ask HN: Do you still use UML?

#84

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…

Yeah, I use boxes and arrows a lot, but even more than that I use indented lists, just fire up a text editor and break everything down. They're harder to show structure with for big complicated parts of the application but when you're breaking down a single feature into just a few classes I find it a lot quicker to work with.

Re: Ask HN: Do you still use UML?

#85
post #71

Yes, used the UML class diagrams, sequence diagrams and Statechart diagrams for an embedded device software. It's just a tool for modelling. You can pick and choose the diagrams you need, and at the abstraction level you desire.

which uml tool you use? tried umbrello and argouml but not very impressed.

Re: Ask HN: Do you still use UML?

#86
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)

I use doxygen mixed with dot for rendering the UML. Mostly for looking over the layout of the code after it's written to make sure there aren't any lines/dependencies that there shouldn't be. The nice thing is that this leaves you with both an HTML doc and UMLs as PNGs. I haven't found any great tools for creating UMLs ahead of code... like for many here, that seems like a recipe for outdated/mismatched code to UML in the long run.

Re: Ask HN: Do you still use UML?

#87
In its entirety? No. Never go "full UML", it will annihilate productivity and produce abominable software. It also is taught wrong, it tends to be taught as a design tool, but there's such a tremendous impedence mismatch between the diagramming tools and the way the code actually gets written that it ends up doing more harm than good. (not to mention that the people who usually end up creating the UML might be many organizational layers away from the developers).

But there's some goodness in there. The principal of using diagramming as a descriptive documentation and communication solution is highly worthwhile, but again it should be limited to pieces of the system that need such things. And in addition, the level of detail should be just as much as is sufficient to communicate what's necessary -- don't "prematurely optimize" by trying to document every bit of the system in excruciating detail.

There's also often better, simpler ways to document many aspects of a system, a few boxes and arrows work well for many things. Lightweight versions of the Archimate style work well for describing complete systems. Protocols are well described by a lightweight treatment of sequence diagrams, etc.

They'll often go out of date as quickly as you make them, so keeping them up to date and well versioned turns into a challenge.

Because it's free and provides cross platform compatibility (and the diagrams are supposed to be communication devices), we tend to use yEd for most things.

Re: Ask HN: Do you still use UML?

#88
UML was useful for visually communicating document architectures in the Web 1.0 world. But what's a UML diagram for a dynamic web application? ServerDatabase, done? If the tool doesn't fit the problem, don't use it.

And then there's the domain specific UMLs, such as Operations Management and BPMN, where the diagram can be programmatically "powered up" to analyze operational efficiency. If you work in a hierarchical organization where you need deliverables that filter to other departments, and there is a perceived value, then someone is going to be tasked to make it. But in a flat organization in startup mode, it's a waste of money.

If you're working across organizations, in public/private partnerships; if your government organization needs to be accountable at diverse levels, then UML is visual language that communicates a lot of information at once--in one artifact. Tax dollars going for new transportation infrastructure in New York City, maybe there's a need to get diverse groups on board. But you're going to pave potholes in Levittown, NY--who cares? Get it done; stop wasting money.

And finally, there is a the language-cultural dimension. Europe is multi-lingual, so it's no surprise the Open-Education Resources offering UML-like education materials are from European universities [1][2], and not American Universities. That's not our language problem (yet).

If you have a customer asking for UML, you need to understand their problems. Once you do that, then you can decide if the problem vector they present is profitable sector for your company.

To put all this in other words, UML is a tool and a visual language. Use it or not, it's not going away--ever.

[1]: https://open.hpi.de/courses/bpm2016

[2]: https://www.edx.org/course/creative-problem-solving-decision...

Re: Ask HN: Do you still use UML?

#89

I do, quite a lot actually. Originally it was mostly because it was the default setting in my Enterprise Architect tool, but it's proven more useful than Archimate (and other notations) because people without architect knowledge understands it much better. On the business side it's mainly the system integrations, dependencies and information flows that are of value and you could honestly do them in Word if you wanted…

Would you use UML to show BPs to a competely new user of a system?

I don't deal with a lot of end users, I mainly advice stakeholders and try to make them as equipped as possible for making the right overall decisions. That being said I wouldn't because our project maneuvers use bizagi and are comfortable with that notation.

Given the choice I'd probably not use UML BPs a lot either. They are very good if you want to do graphical use cases for architects, but I don't think they have a lot of communicative value unless you know UML.

Re: Ask HN: Do you still use UML?

#90
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)

White board it, modeling should be a group activity. Everyone should contribute their ideas so we can converge towards one mental model. If I'm working with 1 or 2 developer, we can cluster around a table and use pen and paper. I only use professional tools if I'm going to be giving presentation or wish to store it for long term.

In Linux there is modelio, and there is also Visual Paradigm which is available on most platforms and has a free community edition.

Post reply on HN