|
As the customer (or rather, as the maintenance programmer at the end so one of the customers) of your software, I very much care. As a requirements provider for the actual users, I also care and they do as well. Your giant if-then conditional "works", but is not sustainable or maintainable. It is fragile and poor quality. Quality matters. I once got to speak with a materials engineer who had the task of trying to discover why a drone aircraft (ostensibly made the same way as always) was suddenly failing very frequently. This was, essentially, a one-off product. They had one customer, and built the drone from off-the-shelf components. The system was driven by a basic two-stroke engine, it accomplished what was needed. This worked for years, until it didn't. It turned out that the maker of the engine (which included the drive shaft) had changed their source (from the US to another country, but that change itself is unimportant). What was important was that while it was the same (weight, power, fuel consumption, etc.) engine, the manufacturing of the steel components was different. They had different qualities and the new one had a tendency to fracture due to the low quality steel (this took quite a bit of analysis to identify since the aircraft were, well, crashing and breaking apart). This quality (the quality of the steel) was not in the customer specs. They didn't think about it, it "just worked". Until it did matter, the aircraft were failing at higher rates than anticipated (driving up costs and losing out on the utility of the aircraft). The drone manufacturer was also risking losing this contract, which was quite lucrative to them, since the MTBF for their product was now below their promised thresholds. If you don't pay attention to these qualities, you'll end up like them. You'll have a "working" product that suddenly fails and drives you out of business, or otherwise diminishes you. Or, if you're the engineer or programmer, you'll give your customers a poor quality product that doesn't actually work for them, it only seems to. Until it doesn't, because you gave them a fragile piece of shit. Don't be the problem. |