Self-healing Software in Modern Computing