I’m reading Miro Samek’s book on UML state machines for C/C++ and I’m impressed by the clarity and professionalism of the state diagrams. The way the statecharts are formatted and laid out makes them easy to understand.
Does anyone know what software he used to make these diagrams? I want to create similar diagrams for my own projects, but I’m unsure which tool would help me achieve that same professional look.
The diagrams are consistently styled, featuring clean lines and accurate UML notation. If you’re familiar with the book or have suggestions for tools that can create similar diagrams, I would really appreciate your input.
Back when I was studying his work for my thesis, I remember reading in one of the acknowledgments sections that he specifically thanked the team at Quantum Leaps for their diagramming support. This made me suspect he might have used their own internal tools or heavily customized existing software. What struck me most about his approach was the mathematical precision in spacing and the way he handled state hierarchy visualization. After trying to reverse-engineer his style, I discovered that achieving that level of consistency requires establishing strict grid alignment and using precise geometric ratios between elements. The professional appearance likely comes from his background in engineering discipline rather than any particular software magic. I eventually settled on using yEd with custom node styles, which gave me reasonable control over the geometric aspects that make his diagrams so visually appealing.
honestly i think the tool matters less than ppl make it seem. ive seen samek’s diagrams and yeah they look good but you can get similar results with even free stuff like plantuml if you put effort into consistant formatting. the secret sauce is probably just having good design sense rather than expensive software tbh
From what I recall, Samek used a combination of tools throughout different editions of his work. While Visio was definitely part of his toolkit, I believe he also utilized Enterprise Architect for some of the more complex hierarchical state diagrams. EA has particularly strong support for nested states and orthogonal regions which appear frequently in his examples. The key factor isn’t necessarily the specific tool but rather maintaining consistent styling conventions - uniform font sizes, standardized arrow styles, and proper use of UML stereotypes. I’ve had good success replicating his approach using Lucidchart with custom templates, though it took some time to establish the right formatting standards. The most important aspect is spending time on the layout phase rather than rushing through the diagramming process.
I’ve worked extensively with state machine documentation and noticed something interesting about Samek’s diagrams that others haven’t mentioned yet. The rendering quality and font consistency across his book suggests he likely used vector-based tools rather than bitmap editors. After examining the typography closely, I suspect he employed Adobe Illustrator for final polishing, even if the initial diagrams were created elsewhere. This would explain the crisp lines and perfect text rendering that’s difficult to achieve with standard diagramming software alone. The mathematical precision mentioned by others is characteristic of someone who understands both the technical content and graphic design principles. I’ve found that recreating his style requires a two-stage approach: initial diagram creation in a UML tool, then refinement in a vector graphics editor for that professional finish.
I actually reached out to Miro Samek directly about this a few years back when I was working on documenting state machines for an embedded project. He mentioned using Microsoft Visio for most of his diagrams in the book. The professional appearance comes from his consistent use of Visio’s UML stencils and careful attention to spacing and alignment rather than any specialized tooling. What really makes his diagrams stand out is the methodical approach to layout and the way he groups related states visually. If you don’t have access to Visio, I’ve found that draw.io can produce very similar results with their UML state diagram templates, though it requires a bit more manual formatting to match that exact style.