SlideShare a Scribd company logo
1 of 21
Download to read offline
Diagrams as Code
Sakir Temel
Engineering Director @
CoverWallet, an Aon company
15/02/2022
coverwallet.engineering
2
Objectives
Messages to be taken
- Diagrams are useful
- Diagrams as Code can help a lot
- I can use diagrams as code starting from tomorrow
- I should explore the diagrams more
3
Diagrams are useful
4
Why a Diagram is (Sometimes) Worth Ten Thousand Words
- A language is a system of communicating, usually between humans. It’s versatile, And you can communicate
almost any idea
- Many distinguished scientists and mathematicians (e.g., Einstein, Hadamard) have denied that they “think in
words.”
5
Why a Diagram is (Sometimes) Worth Ten Thousand Words
Why don’t we use diagrams?
6
Type of UML diagrams
Software Diagrams
- UML is standard visual modeling language intended to be used for
modeling business and similar processes,
analysis, design, and implementation of software-based systems
- Software is a complex outcome
7
Where do we use the diagrams in Software Development
Simplifying communication during remote meetings
- Teams meetings
→ significant context onboarding, taking everyone into one picture quickly
- After/during meetings
→ Decisions are reflected easily
- Onboarding new people to a process / system
→ Reduce significant amount of time, fast ramp-up
- Reonboard yourself
→ Use your existing know-how to help
8
Diagram is a communication tool
- Human language is for social interaction for dialogs
- Language of Architecture, how proficient you are?
Diagrams as
Code can help
a lot
10
Ok, Diagrams as Code, what is it briefly
11
Where, my experience
- I got better on the diagrams that I use
Less text, more diagrams
Helps to fill in the gaps of documentation
- I don’t skip explaining some complex parts anymore <- fun now, as I “design” the things instead of “write”
- Supporting text & documentation that is “around” diagrams
12
My thoughts
- Drawing simple shapes and arrows are easy, but, some more “specific” and “efficient” diagrams
I can use
diagrams as
code starting
from tomorrow
14
How to include it into existing flows and projects
- Documentation and the diagrams should be
as close as they can be to the code
- it helps to share the diagrams know-how and usage
(simply copy paste)
15
Some practices
You don’t have to be best at diagrams
- Evaluate, do mistakes
- Start with parts of your system which has a lot of Terminologies
16
What’s waiting for you
Embed them in the documentation
- It helps with diffing
17
Demo
- An open PR
I should explore
the diagrams
more
19
Advanced diagrams tips (VScode, gitlab) where to use
- VCS encourages drawing, avoids duplication
- Treating diagrams as Code helps with structuring, as we always do with the code
- Educates thanks to shared codebase for diagrams
- Solves which tool to use problem
- C4A, modeling, reusing
- Some automation / web server
20
Links
planttext.com
uml-diagrams.org
plantuml.com
real-world-plantuml.com
21
Thank You
Legal Copy Helvetica Regular 8/9.6 White
Thank You

More Related Content

Similar to Diagrams as Code

A Comprehensive Learning Path to Become a Data Science 2021.pptx
A Comprehensive Learning Path to Become a Data Science 2021.pptxA Comprehensive Learning Path to Become a Data Science 2021.pptx
A Comprehensive Learning Path to Become a Data Science 2021.pptx
RajSingh512965
 
JavaFest. Антон Лемешко. Model-Driven Development in the Open Java Universe
JavaFest. Антон Лемешко. Model-Driven Development in the Open Java UniverseJavaFest. Антон Лемешко. Model-Driven Development in the Open Java Universe
JavaFest. Антон Лемешко. Model-Driven Development in the Open Java Universe
FestGroup
 
Part C Developing Your Design SolutionThe Production Cycle.docx
Part C Developing Your Design SolutionThe Production Cycle.docxPart C Developing Your Design SolutionThe Production Cycle.docx
Part C Developing Your Design SolutionThe Production Cycle.docx
smile790243
 

Similar to Diagrams as Code (20)

Software engineering
Software engineeringSoftware engineering
Software engineering
 
Model Driven Architectures
Model Driven ArchitecturesModel Driven Architectures
Model Driven Architectures
 
Sioux Hot-or-Not: Model Driven Software Development (Markus Voelter)
Sioux Hot-or-Not: Model Driven Software Development (Markus Voelter)Sioux Hot-or-Not: Model Driven Software Development (Markus Voelter)
Sioux Hot-or-Not: Model Driven Software Development (Markus Voelter)
 
A Comprehensive Learning Path to Become a Data Science 2021.pptx
A Comprehensive Learning Path to Become a Data Science 2021.pptxA Comprehensive Learning Path to Become a Data Science 2021.pptx
A Comprehensive Learning Path to Become a Data Science 2021.pptx
 
JavaFest. Антон Лемешко. Model-Driven Development in the Open Java Universe
JavaFest. Антон Лемешко. Model-Driven Development in the Open Java UniverseJavaFest. Антон Лемешко. Model-Driven Development in the Open Java Universe
JavaFest. Антон Лемешко. Model-Driven Development in the Open Java Universe
 
Part C Developing Your Design SolutionThe Production Cycle.docx
Part C Developing Your Design SolutionThe Production Cycle.docxPart C Developing Your Design SolutionThe Production Cycle.docx
Part C Developing Your Design SolutionThe Production Cycle.docx
 
Net Magazine Feb 2010
Net Magazine Feb 2010Net Magazine Feb 2010
Net Magazine Feb 2010
 
Computer Programming
Computer ProgrammingComputer Programming
Computer Programming
 
Architecting a Large Software Project - Lessons Learned
Architecting a Large Software Project - Lessons LearnedArchitecting a Large Software Project - Lessons Learned
Architecting a Large Software Project - Lessons Learned
 
Importance of Documentation for programmers
Importance of Documentation for programmers Importance of Documentation for programmers
Importance of Documentation for programmers
 
Agilelessons scanagile-final 2013
Agilelessons scanagile-final 2013Agilelessons scanagile-final 2013
Agilelessons scanagile-final 2013
 
Design At Scale Workshop
Design At Scale WorkshopDesign At Scale Workshop
Design At Scale Workshop
 
Design At Scale Workshop
Design At Scale WorkshopDesign At Scale Workshop
Design At Scale Workshop
 
Separating Myth from Truth in Data Visualisation
Separating Myth from Truth in Data VisualisationSeparating Myth from Truth in Data Visualisation
Separating Myth from Truth in Data Visualisation
 
Architecting Solutions and Systems – Randy’s Secrets to Success
Architecting Solutions and Systems – Randy’s Secrets to SuccessArchitecting Solutions and Systems – Randy’s Secrets to Success
Architecting Solutions and Systems – Randy’s Secrets to Success
 
Why do most machine learning projects never make it to production
Why do most machine learning projects never make it to productionWhy do most machine learning projects never make it to production
Why do most machine learning projects never make it to production
 
Adopting Domain-Driven Design in your organization
Adopting Domain-Driven Design in your organizationAdopting Domain-Driven Design in your organization
Adopting Domain-Driven Design in your organization
 
Building Maintainable PHP Applications.pptx
Building Maintainable PHP Applications.pptxBuilding Maintainable PHP Applications.pptx
Building Maintainable PHP Applications.pptx
 
Inventing The Next Business Programming Language
Inventing The Next Business Programming LanguageInventing The Next Business Programming Language
Inventing The Next Business Programming Language
 
Redesigning everything (avanscoperta meeutp edition)
Redesigning everything (avanscoperta meeutp edition)Redesigning everything (avanscoperta meeutp edition)
Redesigning everything (avanscoperta meeutp edition)
 

Recently uploaded

%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
masabamasaba
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
mohitmore19
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
Health
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
masabamasaba
 
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
masabamasaba
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
VictorSzoltysek
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
VishalKumarJha10
 

Recently uploaded (20)

%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdfPayment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
 
SHRMPro HRMS Software Solutions Presentation
SHRMPro HRMS Software Solutions PresentationSHRMPro HRMS Software Solutions Presentation
SHRMPro HRMS Software Solutions Presentation
 
%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare
 
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
%in Durban+277-882-255-28 abortion pills for sale in Durban
%in Durban+277-882-255-28 abortion pills for sale in Durban%in Durban+277-882-255-28 abortion pills for sale in Durban
%in Durban+277-882-255-28 abortion pills for sale in Durban
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 

Diagrams as Code

  • 1. Diagrams as Code Sakir Temel Engineering Director @ CoverWallet, an Aon company 15/02/2022 coverwallet.engineering
  • 2. 2 Objectives Messages to be taken - Diagrams are useful - Diagrams as Code can help a lot - I can use diagrams as code starting from tomorrow - I should explore the diagrams more
  • 4. 4 Why a Diagram is (Sometimes) Worth Ten Thousand Words - A language is a system of communicating, usually between humans. It’s versatile, And you can communicate almost any idea - Many distinguished scientists and mathematicians (e.g., Einstein, Hadamard) have denied that they “think in words.”
  • 5. 5 Why a Diagram is (Sometimes) Worth Ten Thousand Words Why don’t we use diagrams?
  • 6. 6 Type of UML diagrams Software Diagrams - UML is standard visual modeling language intended to be used for modeling business and similar processes, analysis, design, and implementation of software-based systems - Software is a complex outcome
  • 7. 7 Where do we use the diagrams in Software Development Simplifying communication during remote meetings - Teams meetings → significant context onboarding, taking everyone into one picture quickly - After/during meetings → Decisions are reflected easily - Onboarding new people to a process / system → Reduce significant amount of time, fast ramp-up - Reonboard yourself → Use your existing know-how to help
  • 8. 8 Diagram is a communication tool - Human language is for social interaction for dialogs - Language of Architecture, how proficient you are?
  • 9. Diagrams as Code can help a lot
  • 10. 10 Ok, Diagrams as Code, what is it briefly
  • 11. 11 Where, my experience - I got better on the diagrams that I use Less text, more diagrams Helps to fill in the gaps of documentation - I don’t skip explaining some complex parts anymore <- fun now, as I “design” the things instead of “write” - Supporting text & documentation that is “around” diagrams
  • 12. 12 My thoughts - Drawing simple shapes and arrows are easy, but, some more “specific” and “efficient” diagrams
  • 13. I can use diagrams as code starting from tomorrow
  • 14. 14 How to include it into existing flows and projects - Documentation and the diagrams should be as close as they can be to the code - it helps to share the diagrams know-how and usage (simply copy paste)
  • 15. 15 Some practices You don’t have to be best at diagrams - Evaluate, do mistakes - Start with parts of your system which has a lot of Terminologies
  • 16. 16 What’s waiting for you Embed them in the documentation - It helps with diffing
  • 18. I should explore the diagrams more
  • 19. 19 Advanced diagrams tips (VScode, gitlab) where to use - VCS encourages drawing, avoids duplication - Treating diagrams as Code helps with structuring, as we always do with the code - Educates thanks to shared codebase for diagrams - Solves which tool to use problem - C4A, modeling, reusing - Some automation / web server
  • 21. 21 Thank You Legal Copy Helvetica Regular 8/9.6 White Thank You