Antifragile software in a nutshell
Antifragile software engineering is the art of building ultra dependable software systems running in ultra open and unpredictable environments. Antifragile software is an extreme form of self-healing software.
Engineering of antifragile software has several dimensions:
- self-healing capabilities
- self-repair at runtime, automatic recovery, automatic remediation.
- randomization, diversification
- resilience testing, failure injection in production, chaos engineering
- self-checking software, self-testing software, sense of self
- program hardening, code rewriting
Research in my group
Community
The Chaos Community mailing list: https://groups.google.com/forum/#!forum/chaos-community
The LinkedIn group on Computational Antifragility moderated by V. De Florio
Good Pointers
- Design of self-checking software (S. S. Yau, R. C. Cheung) (1975)
- Elements of the self-healing system problem space (Koopman) (2003)
- Self-Healing: Science, Engineering, and Fiction (Locasto) (2007)
- Characterizing self-healing software systems (Keromytis) (2007).
- Principles of Antifragile Software (Monperrus) (2014)
- Chaos Engineering (the book by Casey Rosenthal et al.) (2017).