When I studied software development, we were taught that actual software “error free” was mathematically impossible for anything but the simplest programs. For the mathematical mind, it is very simple to understand how basic things, such as the number of possible inputs and the variability of the platforms, make a mistake not only impossible (in realistic time), but also economically stupid, aside from nuclear energy.
Nevertheless, I constantly hear how business people are draining themselves: "He understood that the software would be error-free, and if this is not all errors should be fixed for free." Usually I answer "No, we will fix any errors detected during the UAT (x) week period", where x is determined by the contract. This leads to many arguments and a loss of work for people who are ready to promise the impossible.
Does anyone know (or can express one thing) a good explanation of why the “error without errors” is NOT realistic or standard, as your average average manager understands?
source share