Architecture for Disaster Resistant Systems
Aviation has been an area of innovation and novelty in the past two centuries. From the small flying machines to the aircrafts that weigh tons the air industry has come a long way. They studied rigurously how to improve again and again their aircrafts, procedures, training system and so on.
What if we start learning from the aviation and try building software systems that can recover in near-disaster cases?
Who is it for?
Who is it for?
You will learn how protocols and checklists are essential tools that an aircraft crew uses to avoid mistakes. In the same way software architects use checklists when creating a system architecture. Programmers could use checklists and internal protocols when creating the software design and when writing the code that implements the architecture. We will discuss about emergent creation of design rules, architecture guidelines and protocols together with the teams and with the help of the architects.
You will learn how an aicraft crew is trained to behave in near-disaster situations, to take the situation under control. In the same way software could be written to adjust its internal function so that it avoids crashes and recovers from near-crash situations. We will discuss risk management with respect to cross-functional specifications and how an architect should plan for risks when creating an architecture. One particular technique we will touch is landing zones and how they can be useful.