For software to be reliable it must: