Visualising software architecture with the C4 model

Create a simple and powerful set of developer-friendly diagrams to describe software architecture
Simon Brown

Visualising software architecture with the C4 model

Visualising software architecture with the C4 model

Simon Brown
🇬🇧 English
Intermediate

Antwerp, Belgium
Carnot Wing
Total duration: 7h00

Timezone: Europe, Amsterdam
Tuesday June 3 09:30 - 17:30


Summary

It’s very likely that the majority of the software architecture diagrams you’ve seen are a confused mess of boxes and lines. Following the publication of the Manifesto for Agile Software Development in 2001, teams have abandoned UML, discarded the concept of modelling and instead place a heavy reliance on conversations centered around incoherent whiteboard diagrams or shallow “Marketecture” diagrams created with Visio. Moving fast and being Agile requires good communication, yet software development teams struggle with this fundamental skill. A good set of software architecture diagrams are priceless for aligning a team around a shared vision and for getting new-joiners productive fast.

This session explores the visual communication of software architecture and is based upon over a decade of Simon’s experiences working with software development teams large and small across the globe. He’ll look at what is commonplace today, the importance of creating a shared vocabulary, diagram notation, and the value of creating a lightweight model to describe your software system using the C4 model, which he created as a way to help software development teams describe and communicate software architecture, both during up-front design sessions and when retrospectively documenting an existing codebase.

For who?

This workshop is primarily for software developers and architects, but anybody involved with software development will gain some benefit.

Agenda

  • Introduction
  • Software diagramming exercise 1
  • Review and feedback Diagramming anti-patterns and typical problems The "model-code gap"
  • C4 model - core diagrams Abstractions and creating a shared vocabulary with a ubiquitous language An overview of the C4 model Notation and tips for better diagrams System Context diagrams Container diagrams Component diagrams
  • Software diagramming exercise 2
  • C4 model - supplementary diagrams C4 and UML System Landscape diagrams Dynamic diagrams Deployment diagrams Frequently asked questions
  • Tooling Diagrams vs models Structurizr DSL demo
  • Discussion, questions and wrap-up

Requirements

No prerequisites.

Simon Brown

About Simon Brown

Simon is an independent consultant specialising in software architecture, and the author of “Software Architecture for Developers” (a developer-friendly guide to software architecture, technical leadership and the balance with agility). He is also the creator of the C4 model for visualising software architecture, and the founder of Structurizr. Simon is a regular speaker at international software development conferences, and travels the world to help organisations visualise and document their software architecture.

All workshops by Simon Brown
@simonbrown

Visualising software architecture with the C4 model

Simon Brown
🇬🇧 English
Intermediate

Antwerp, Belgium
Carnot Wing
Total duration: 7h00

Timezone: Europe, Amsterdam
Tuesday June 3 09:30 - 17:30


Also check out