2 Days: Software architecture for developers

GOTO Copenhagen 2026
Monday Sep 28
09:00 –
17:00
Tuesday Sep 29
09:00 –
17:00
11,000.00 DKK
Register for this masterclass

This 2-day workshop will give you an introduction to a pragmatic and practical approach to software architecture; including technical leadership, communication and how to balance up front design with agile approaches.

Day 1

Introduction

Architecture

  • What is software architecture?
  • Architecture vs design
  • The importance of software architecture

Architectural drivers

  • Requirements
  • Quality attributes
  • Constraints
  • Principles
  • Agility

Software design exercise

  • Software design exercise
  • Design exercise review #1

Architects

  • A definition of the software architecture role
  • Technical leadership and the different leadership styles
  • Technical skills
  • Soft skills
  • Software architecture and coding

Visualising software architecture

  • Design exercise review #2
  • Diagramming anti-patterns and typical problems
  • The "model-code gap"

Discussion, questions and wrap-up

Day 2

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 design exercise

  • Software design exercise
  • Design exercise review #3

C4 model - supplementary diagrams

  • C4 and UML
  • System Landscape diagrams
  • Dynamic diagrams
  • Deployment diagrams
  • Frequently asked questions

Documenting software architecture

  • The importance of documentation
  • Writing lightweight supplementary documentation using a "software guidebook" or arc42
  • Architecture decision records

Tooling

  • Diagrams vs models
  • Extracting software architecture information from code and "architecturally-evident coding styles"

Software architecture in the delivery process

  • Quantifying and prioritising risk
  • Identifying risk with risk-storming
  • Design exercise review #4
  • Waterfall, RUP, agile, etc
  • The conflict between architecture and agile
  • Approaching software architecture in a pragmatic, lightweight way
  • How much up front design is enough?

Discussion, questions and wrap-up