I& #39;ve just further opened up the Tactical Design section in our tech documentation to the public https://upmo.com/dev/technical/ ">https://upmo.com/dev/techn... (see the sidebar). The first thing you& #39;ll notice is.. What?!? UML?!
Thread
https://abs.twimg.com/emoji/v2/... draggable="false" alt="🧵" title="Thread" aria-label="Emoji: Thread">
Thread
This is a continuation of my thought on #OpenStrategyDesign https://twitter.com/ceilfors/status/1313783838829576193?s=20
https://twitter.com/ceilfors/... href="https://twtext.com//hashtag/Architecture"> #Architecture #SoftwareArchitecture #SoftwareDesign
https://twitter.com/ceilfors/... href="https://twtext.com//hashtag/Architecture"> #Architecture #SoftwareArchitecture #SoftwareDesign
1/ The first thought you might have when you see UML is: It& #39;s old. https://twitter.com/dechampsgu/status/1179705062005850113">https://twitter.com/dechampsg...
2/ This is a fallacy and any developers should benefit from UML. We as a team have found UML really useful as a visualisation tool, and you don& #39;t need to know all the diagram types to benefit from it. I only use 3 UML diagram types.
3/ The reason I& #39;m only using 3 UML diagram types, though, is because I needed to see real-world examples of the other diagram types to understand how they should be used. But real-world examples are very hard to find.
4/ @Grady_Booch (one of the creator of #UML) shared a real-world example in this tweet here, which I got excited about when I saw it. I& #39;d like to see more people sharing examples like this publicly. https://twitter.com/Grady_Booch/status/1180529810440933376">https://twitter.com/Grady_Boo...
5/ This is the primary reason why I think it is useful for us to open this up to the community as it& #39;s incredibly difficult to see real-world examples of UMLs out there.
6/ The second thought you might have when you see UML is: Documentation is a waste of time
7/ I also think that this is a fallacy. For example, the reason we have class diagrams for each of our bounded contexts is because domain models are a hard change. Thinking about the domain model *before* you code will save your time!
8/ The other way to think about this is, the class diagrams are just the side effect of thinking. The real work is the thinking, not the drawing.
https://notes.ceilfors.com/Documentation_is_the_side_effect_of_thinking.html">https://notes.ceilfors.com/Documenta...
https://notes.ceilfors.com/Documentation_is_the_side_effect_of_thinking.html">https://notes.ceilfors.com/Documenta...
9/ Updating our documentation is part of our development process. Before we code, we first brainstorm about the models. It& #39;s a great time to form a common / ubiquitous language (which also is a time saver).
10/ If you want to learn more about UML, the book that I always refer to is @martinfowler& #39;s UML Distilled. I especially refer to his section of "When to Use X Diagrams" a lot. https://www.goodreads.com/book/show/85001.UML_Distilled">https://www.goodreads.com/book/show...