| Software development is, apart from a few rare outposts like GOV.UK, conducted in the private sector for a profit. That means that the number one consideration for the software is profitability. For internal-only software, this means that cost is the prime consideration. In support of that, often software startups are trying to capture a winner-takes-all market, so time-to-market is critical. Thirdly, consumer protection law is weak in the US, and product liability is almost nonexistant for software everywhere. The cost of failure is very low even if you leak all your customers' data or your product ceases to work after 18 months because you've "pivoted". Fourthly, a lot of software is ""free"" or ad-funded. This further weakens the cost of failure. There are techniques for delivering extremely high quality software. Few sectors of the industry care about them because it's not required and is unprofitable, but the aerospace people can usually get it right and the security people can usually get it right (when dealing with security products, not general purpose junk like Flash). The automotive industry is kind of on a boundary. The Toyota "unintended acceleration" bug revealed some tremendously poor quality software. This is one of the main worries about self-driving cars: how minimal is the quality assurance going to be? |
Dan Ariely (author of the book Predictably Irrational) called allowing free apps on AppStores to be a mistake made by the industry. The customers have now gotten used to free apps, making it harder for the industry/developers to offer better quality.