Software Architecture for Developers

2 days training by Simon Brown

What

Due to popular demand, we've asked Simon Brown to do this training again!

This training, given by Simon Brown, is aimed towards letting you take full advantage of the technical knowledge you already have to bring your software development skills to the next level.

You’ll learn how to apply software architecture pragmatically in the real-world and not just the classic “ivory tower” software architecture. You’ll define the architecture for a small software system, using small hands-on exercises along the way. In the end, you'll be more aware on architectural issues and will have learned to build much better software.

In this training, you'll learn to understand what software architecture is all about and understand what it means to be a software architect and the responsibilities that come with the territory. You'll find out which trade-offs can be made when making architectural decisions and that to build better software a bit of architecture can go a long way. In the end, you'll realize that sometimes, an architect needs to do some coding as well. It's not just diagrams.

Learning outcomes

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.

Target audience

Software developers and architects; all levels of experience.

Pre-requisites

Some experience building software; no laptops needed.

The agenda (deviations are possible)

Agenda - Day 1

  • [09:00 - 09:15] Introductions
  • [09:15 - 10:00] What is software architecture?
    • A definition of software architecture.
    • The importance of software architecture.
  • [10:00 - 10:30] Architectural drivers
    • Requirements.
    • Quality attributes.
    • Constraints.
    • Principles.
  • [10:30 - 12:30] Software design exercise
  • [12:30 - 13:30] Lunch
  • [13:30 - 14:30] Software design exercise review
  • [14:30 - 16:00] The software architecture role
    • Software architecture and the ideal software development team.
    • Technical leadership and the different leadership styles.
    • Technical skills.
    • Soft skills.
    • Software architecture and coding.
  • [16:00 - 17:00] Visualising software architecture
    • Software design exercise review

Agenda - Day 2

  • [09:00 - 12:30] Visualising software architecture
    • Diagramming anti-patterns and typical problems.
    • UML.
    • The “model-code gap”.
    • Creating a shared vocabulary and a ubiquitous language.
    • The “C4 model”.
    • Context diagrams.
    • Container diagrams.
    • Component diagrams.
    • Dynamic/behavioural diagrams.
    • Deployment diagrams.
  • [12:30 - 13:30] Lunch
  • [13:30 - 14:00] Documenting software architecture
    • The importance of documentation.
    • Writing lightweight supplementary documentation using a “software guidebook” or arc42.
  • [14:00 - 15:30] Tooling
    • Types of tooling used for visualising and documenting software architecture.
    • Bridging the “model-code gap” with architecturally-evident coding styles.
    • Software architecture as code.
    • Exploring the static structure of a codebase.
  • [15:30 - 16:30] Agility
    • Building software systems that have agility as a characteristic.
    • Approaching software architecture in an agile, lightweight way.
    • How much up front design is enough?
  • [16:30 - 17:00] Discussion, questions and wrap-up

Who's the trainer

Simon is an independent consultant specializing 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’s also the creator of the C4 software architecture model and the founder of Structurizr, which is a collection of open source and commercial tooling to help software teams visualise, document and explore their software architecture.

He regularly speaks at software development conferences, meetups and organisations around the world; delivering keynotes, presentations, training courses and workshops. In 2013, he won the IEEE Software sponsored SATURN 2013 "Architecture in Practice" Presentation Award for his presentation about the conflict between agile and architecture.

When

September 23-24 2019, starting at 9:00 and ending at 17:00. Early birds get coffee and danish.

Where

TBD: Location Brussels Centre (close to public transport)

How much does it cost

The price for the 2 days of training is (VAT not included) :

  • EUR 1.300 before June 1st
  • EUR 1.400 before July 31nd
  • EUR 1.500 starting August 1st

There are a limited amount of seats (25) so act quick.

What is included

  • 2 days of training by Simon Brown himself
  • Lunch
  • Water and coffee (and who knows, maybe even snacks)
  • Danish pastry for the early birds

How do I enroll

You can buy a ticket by clicking the button below. Please fill in your company details if you wish to receive an invoice. If you want an invoice sent to you by regular mail, please send a request to our email.

Register here



Tickets are non-refundable, but can be transferred to another person if you choose to do so (enrollments are not bound to a specific person).