Advanced Software Architecture

Advanced Software Architecture

Design software systems for complex business environments with Residuality Theory

Once you’ve learned how to code and have several years of experience, what is the next step? Modern software engineering has long rejected the big, up-front, framework-heavy approaches of traditional enterprise architecture. This leads to the question of how we bring about quality in the solutions that we build.

Introducing Residuality Theory – a revolutionary new theory of software design that aims to make it easier to design software systems for complex business environments.
Residuality Theory models software systems as interconnected residues – an alternative to component and process modelling that uses applied complexity science to make managing uncertainty a fundamental part of the design process.

Join this three-day in-person workshop with Barry O’Reilly and learn how Residuality Theory will help you think differently when building robust, antifragile software that is fit for uncertain times.

Target Audience

This workshop is suitable for senior developers who want a head start in the world of architecture, for teams embarking on large, risk-filled projects, and seasoned architects seeking new techniques.
It has also successfully united teams around a common definition of architecture.


Day 1

  • Philosophy of Architecture
  • Concrete Complexity for Software Engineering
  • Representation in Architecture
  • Residuality Theory
  • Networks.

Day 2

  • Modelling stress: socio-economic architecture
  • Defining residues
  • Surviving unknown unknowns
  • Producing a real-world architecture.

Day 3

  • Contagion analysis and component decisions
  • Adjacency matrix techniques
  • Incidence matrix techniques
  • Testing the architecture.

Learning Objectives

The workshop introduces ideas on the philosophy of architecture, forcing participants to think outside of the technology and relate decision-making to markets, culture, economic and societal concerns.
It teaches practical techniques in stressor analysis and the use of matrices to make component decisions and gives participants the chance to work with these techniques in labs and groups.
The workshop also successfully unites teams around a common definition of architecture.

After completing the course, participants will be better able to design and test architectures, work in environments where requirements are complex and uncertain, and effectively work with non-functional requirements.

Expect to get your hands dirty

The workshop involves learning the theory and then putting it to practical use in intensive labs where students will use the ideas in group work to design solutions and verify that the system is increasing in quality.

A laptop with Excel/Google Sheets will be required in order to join the workshop.

Why should I buy a ticket

Join Barry and learn advanced, cutting-edge techniques based on ongoing research that is designed to identify and decrease risk, improve confidence in decision making and protect your architecture when the domain is characterized by uncertainty.


Do I need to know something beforehand in order to participate in this workshop?

You’ll get the most out of this workshop if you already have a good understanding of software design. Also be mindful that this workshop is designed for developers with an advanced background (please see the section “Target Audience” above for further info).

Do I need my laptop to attend this workshop?

You’ll need a laptop with Excel/Google Sheets.


This workshop will be confirmed upon reaching the minimum number of participants. We’ll send an official confirmation to all registered attendees 28 days prior to the workshop dates.

Last chance! The last date to buy a ticket for this workshop is Monday 11th March 2024. If we don’t reach the desired minimum number by then, the workshop will not be confirmed and it will be postponed… don’t wait until the day before to buy the tickets!
The sooner we reach the minimum numbers, the sooner the workshop gets confirmed.

About the workshop

Language: The workshop will be held in English.
Date and time: 10-11-12 April 2024, from 9.30 am to 5.00 pm.
Venue: Talent Garden (TAG) Calabiana, Via Arcivescovo Calabiana, 6, 20139, Milan.
Laptop: Check out the F.A.Q. section.
Dress code: Informal. We recommend you wear comfortable shoes as the majority of the activities will involve walking around and standing up most of the time.
Included in the price: coffee breaks and lunch with the trainer and the other attendees are also included in this ticket… because networking matters.

How to get to Milan?

You can get to Milano Centrale by flying into one of these three airports: Linate, Malpensa, and Bergamo Orio al Serio.

Check out the Talent Garden (TAG) Calabiana Venue Page and get it sorted! With plenty of handy information on accommodation, travel options, where to find the training venue, and much more!

Vuoi saperne di più sui nostri biglietti?


Under_Cover_LearnerSCONTO 20%

Se ti stai iscrivendo al corso a titolo personale e non hai la Partita IVA, c’è una tariffa speciale per te: uno sconto del 20% sul prezzo corrente del biglietto, che potrai ottenere inserendo il codice Under_Cover_Learner su Eventbrite qui sopra, dove trovi "Enter promo code" (prima di premere il tasto "checkout").

N.B.: Il codice non può essere utilizzato con nessun’altra offerta, ed è valido su tutti i tipi di biglietto.


Barry O' Reilly

Barry è un software architect e ricercatore e, tra gli altri ruoli, ha ricoperto quello di Chief Architect presso Microsoft. È stato anche CTO di startup, leader mondiale per la Solutions Architecture Community di Microsoft e fondatore dell'Azure User Group svedese.

Chi siamo, in breve :)

Avanscoperta è un ecosistema in espansione fatto di professionisti con una grande passione per l’apprendimento: ci piace imparare cose nuove e scambiare esperienze e idee, esplorando territori finora inesplorati in ambito software, nella sua accezione più ampia possibile.

Selezioniamo con attenzione gli argomenti più rilevanti e i migliori docenti da tutto il mondo, e diamo particolare importanza alle tecniche di insegnamento, preferendo approcci pratici e coinvolgenti.
Unisciti a noi!

Ti interessa questo corso?

Se hai delle domande specifiche, o vuoi ricevere maggiori informazioni, scrivici. Saremo felici di risponderti!


    Vuoi ricevere una volta a settimana i nostri contenuti esclusivi su tecnologia, sviluppo software, business e design?


    Iscriviti alla newsletter!