Generative AI for Software Architecture Diagrams
Published by O'Reilly Media, Inc.
Enhance your Mermaid, PlantUML and Structurizr diagrams as code
Course outcomes
- Create diagrams as code in the most popular notations
- Reduce the amount of time spent formatting and updating diagrams
- Use models to create multiple views of your systems
Course description
What secret weapon have software development teams been using to solve their documentation problems? Coding! By creating diagrams using plain text notations, a task that is usually regarded as an artistic activity can be turned into a data-driven document.
Join expert Jacqui Read to explore PlantUML, Structurizr, and Mermaid diagrams, see the pros and cons of each, and compare them to drawing diagrams. Diagram types covered include C4 models, activity diagrams, class diagrams, state diagrams, and more. You’ll also understand how the nature of these diagrams enables you to use them with large language models, and you’ll examine a number of scenarios where the large language model can reduce your legwork in maintaining your diagrams.
What you’ll learn and how you can apply it
- Get a thorough grounding on popular diagrams as code notations
- Understand when to use one diagram as code notation over another
- Learn through hands-on exercises
This live event is for you because...
- You develop, architect, or analyze software applications
- You want to adopt diagrams as code in your projects
- You are working with Gitlab, Github, Confluence or another platform with integrations for diagrams as code
Prerequisites
- Some experience of creating drawn diagrams is useful
Recommended Preparation
- Access to a text editor
- Access to the PlantUML, Mermaid, and Structurizr websites
- Optionally, an IDE like Visual Studio Code
- Optionally, access to ChatGPT or another LLM
Recommended Follow-Up
- Read Communication Patterns (book)
- Read Creating Software with Modern Diagramming Techniques (book)
- Read The Official Guide to Mermaid.js (book)
Schedule
The time frames are only estimates and may vary according to how the class is progressing.
Diagrams as code introduction (15 minutes)
- Presentation: What does “diagrams as code” mean?; how diagrams as code can be used with AI; inputs and outputs
- Group discussion: Have you used diagrams or documentation as code?; Which tools are useful with diagrams as code?
- Demo: AI diagram
- Q&A
Diagrams as code notations (15 minutes)
- Presentation: Comparing PlantUML, Mermaid, and Structurizr; where and how diagrams can be used
- Group discussion: Comparing diagrams as code to drawn diagrams
- Q&A
PlantUML (75 minutes)
- Presentation and exercises: Introduction to PlantUML (types of diagram, basic syntax, tools available, review of how it can be used, how to render with it); using AI with PlantUML
- Demo: AI diagrams with PlantUML
- Q&A
- Break
Mermaid (75 minutes)
- Presentation and exercises: Introduction to Mermaid (types of diagram, basic syntax, tools available, review of how it can be used); using AI with Mermaid
- Demo: AI diagrams with Mermaid
- Break
Structurizr (50 minutes)
- Presentation: Introduction to Structurizr (types of diagram, basic syntax, tools available, review of how it can be used); Structurizr DSL; using AI with Structurizr
- Demo: AI diagrams with Structurizr
Wrap-up (10 minutes)
- Presentation: Summary; list of AI patterns and antipatterns
- Hands-on exercise: Quiz
Your Instructor
Jacqui Read
Jacqui Read is an internationally-recognised solution and enterprise architect, and author of Communication Patterns: A Guide for Developers and Architects. She teaches public and private workshops and speaks at international conferences on topics such as architecture practices, technical communication, and systems design. Jacqui specializes in untangling and extracting value from data and knowledge, helping businesses to determine direction in complex environments. Her professional interests include collaborative modeling, knowledge management, Domain-Driven Design, sociotechnical architecture, and modernizing enterprise architecture practices. Outside of work she enjoys gardening and strumming her ukulele while singing at the same time. Her website is https://jacquiread.com/.