Design Patterns For Resilience Systems