Adapting to failures or work around with other constraints, e.g. circumvention by avoiding use of failed parts