In this masterclass you will upgrade and advance your software architecture and design, learning to create diagrams-as-code, models, and diagrams, and augment them with AI. You will streamline and enhance your work, gaining the knowledge to make informed decisions on how and when to create diagrams, and when it is useful to use AI.
Course Overview
Day 1: Patterns & Antipatterns for Diagrams & Diagrams-as-Code
Introduction
- The Course
- Design Patterns & Antipatterns
Communication Essentials: The Foundations of Successful Visual Communication
- Face in the Crowd
- Multi-Storey Diagram
- Connect the Dots
Clarify the Clutter: Use Less to Say More
- Explosion of Unicorns
- Spider’s Web
- Notes on a Theme
- Exercise: Apply ‘Clarify the Clutter’
- Exercise Discussion
Accessibility: Go Beyond Screen Readers
- Colour is Key
- Written in Legend
- MLAH (Multiple-Letter Acronym Hell)
- Exercise: Apply ‘Accessibility’
- Exercise Discussion
Narrative: Tell Your Audience Your Story
- A Push in the Right Direction
- Show Them the Pirate Ship
- When is a Good Time to Use Animation?
Notation: Select the Best Standard to Communicate Successfully
- Not-so-unified Modelling Language
- Structures Behaving Badly
- Unconventional
Composition: Arrange Your Visuals for Ultimate Clarity
- Meta Style
- Strike a Balance
- Exercise: Apply Patterns and Antipatterns
- Exercise Discussion
- Summary of Day 1
Day 2: Diagrams-as-Code, Models, & AI
Introduction
- Diagrams-as-code
- Diagrams-as-code vs. Models vs. Diagrams
Diagrams-as-code Notations:
- Comparing Plant UML, Mermaid, & Structurizr
- Trade-offs
- Tooling
AI & Diagrams-as-code: A First Look
PlantUML
- Diagrams, Syntax and Tools
- Using PlantUML with LLMs
- Exercise
Mermaid
- Diagrams, Syntax, and Tools
- Automation with AI
- Using Mermaid with LLMs
- Exercises
- Comparing PlantUML & Mermaid
Structurizr
- Diagrams, Syntax, and Tools
- Using Structurizr with LLMs
- Exercises
- Comparing PlantUML & Mermaid & Structurizr
- Wrap Up
FAQ
Q: Do I need to be a programmer to attend your workshop?
A: No. Some experience of coding or scripting will help, but the syntax of all three notations we will look at is fairly easy to learn for someone who has never coded, and we will use online tools with no setup required.
Q: What is the schedule for the workshop?
A: The workshop will be run over 2 days from 9am to 5pm local time. We will have lunch and other breaks each day. The proposed daily schedule may alter due to questions asked and the interests of the group.
Q: Will I receive the slides and teaching materials used during the course?
A: Yes, all materials will be made available to you, and you will be able to continue to access the GitHub repository we use in the workshop.
Q: Do you cover diagrams created with tools such as Draw.io or Visio?
A: Yes. The main focus of Day 1 is patterns and antipatterns that can be applied to diagrams (as well as diagrams-as-code), and we will look at the pros and cons of diagrams, diagrams-as-code, and models on Day 2.
Q: Do I need to install anything before the workshop?
A: You should check that your organisation does not block any of the online tools that we will use in the course on the laptop you will be bringing with you. If any are blocked you will need to get them unblocked or install the local version. You can optionally sign up for a free account with ChatGPT or another online LLM, and optionally install Draw.io locally. All the tools we use have online and free versions. Optionally you can use tools such as Structurizr Lite, Structurizr Cloud, or an IDE such as Visual Studio Code with plugins for the notations we will use. I will not be providing support for local installations or time to set these up in the workshop as the online tools are all that are needed.
Q: Can I use another diagramming tool instead of Draw.io?
A: You can, but the example files for you to edit are in Draw.io format. You could recreate the diagrams in another tool, but this will take some time away from your working on the solution. You can use Draw.io online or install it locally.
Q: Do I need to have read your book to attend the workshop?
A: No, we will cover everything you need to know in the workshop. You may want to follow up by reading Communication Patterns for more patterns and antipatterns, and you can get a code from me to be able to read it for free for 30 days.