The C4 model for visualising software architecture
Speaker
About this talk
It's very likely that most software architecture diagrams you've seen are a confused mess of boxes and arrows. 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 talk explores the visual communication of software architecture, and is based upon years of experience working with software development teams large and small across the globe. We'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. The content is based upon the "C4 model", which I 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. It's a way to create maps of your code, at various levels of detail, allowing you to tell different stories to different audiences.
More talks to watch
Let’s use IntelliJ as a game engine, just because we canAlexander Chatzizacharias
Devoxx Greece 2024 - Small steps are the fastest way forwardSander Hoogendoorn
A fun and absurd introduction to Vector DatabasesAlexander Chatzizacharias
Devoxx Greece 2024 - The lost art of software designSimon Brown
The Era of AAP: Ai Augmented Programming using only JavaStephan Janssen
From k9s to OpenTelemetry: A guide to observability for your apps in K8sMatthias Haeussle