In Nassim Taleb's book Antifragile, he discusses behavior in complex systems and classifies them into three types:
- Fragile: These systems shatter when exposed to medium amounts of stress.
- Robust/Resilient: These systems are better than Fragile at handling stress, but are still vulnerable to low-probability failures.
- Antifragile: These systems have the thickest skin, and actually get stronger under stress. An example of this is the human body—when stressed at the right levels, muscles/bones get stronger:
(Source: https://developers.redhat.com/blog/2016/07/20/from-fragile-to-antifragile-software/)
Software systems play a vital aspect in everyday life; consumers expect systems to be always on. A great deal of the architect's brain cycles is spent on ensuring reliability and fault-tolerance, which is the ability for a system to remain operational...