4 ms·
Too complex. Architecture descriptions should make sense to everyone on the project. It should not require you to learn a new design language or notation to use
by Silhouette 7y ago
Too complex. Architecture descriptions should make sense to everyone on the project. It should not require you to learn a new design language or notation to use.
That seems a little strong. We're talking about a potentially complicated system in a technical field. Some standardised notation and terminology could be helpful to keep the visuals concise and unambiguous. I agree that this looks far too complicated, though.
- Spearchucker 7y agoUML already provides that, no?
- Silhouette 7y agoPersonally I find UML (in its full, standardised form) is still a lot more complicated than is normally necessary too, but it does include versions of several useful ideas. I have often seen a group of developers discussing something and then someone sketches a simple diagram showing entities and relationships, transitions of a finite state machine, or message-passing similar to what UML would call a sequence or communication diagram. However, in my entire career, I have never seen anyone actually draw out fully annotated UML diagrams using the official notation, nor any instance of some of the numerous diagram types UML specifies. And that includes working at places where everyone had been given UML training!
- simon_brown 7y agoI've seen a number of organisations where everybody has been given UML training, and mandated to use a specific UML tool. In reality though, everybody is just abusing UML class diagrams as a way to draw ad hoc "boxes and lines" diagrams instead! :-)
- Spearchucker 7y agoUML in its full, standardized form is an anti-pattern. There are many useful things in it though. Sequence and activity diagrams, for example.
- prepend 7y agoI’ve tried and used uml for 20 years. It’s hard to learn and a different way of thinking for many staff. I see a pattern of the business analyst / product owner /non-tech lead hiring someone to make uml for ver. That abstraction costs money and time and creates confusion. So I think it’s not a worthwhile investment. The non-techs can’t create or edit and typically can’t read. The techs don’t use it for what they are creating. I’d rather spend time on docs in the actual system components or teaching non-techs enough to read autogenerated docs or walk through code that actually is the system. Then couple that with block diagrams written on whiteboards or powerpoints or whatever. If you get to the point you need notations it’s too complicated and point them to the appropriate source. This isn’t easy. But I think it’s easier than pretending that both sides learning an artificial middle language (uml, etc). Because construction analogies are stereotypical if you are building a building. A big, expensive skyscraper. If your construction workers speak English and your financiers and architects speak French. I think you’re better off investing in hiring some people who speak both languages than in making them both speak German to work on blueprints.