Software is either important or critical to the operation of many systems. Therefore, all defects that could lead to a failure should be removed from the software before it is released to users. Unfortunately, we constantly hear from the media that software defects caused interruptions, malfunctions, accidents or errors in products. Knowing that techniques to identify and correct defects have been known for many decades, why does it take decades, for software developers and managers to use proven software engineering practices to detect and correct defects injected during the development of the software?
Is it possible that software people (e.g., managers, developers, customers, professors, students) could experience the ‘Semmelweis Reflex’, i.e., a metaphor for a certain type of human behaviour characterized by reflex-like rejection of new knowledge because it contradicts entrenched norms, beliefs or paradigms [ref]?
Recently, a small organization that provides paid services to hundreds of customers, decided to ignore the proven practices of a software engineering standard, such as the ISO/IEC 29110 series for very small entities, for the development of its new transactional web site. Unfortunately, the software project fell into many known and avoidable pitfalls which resulted in a project that exceeded the schedule by 100% and also exceeded the approved budget. We explore what went wrong and what should have been done to meet the needs of this small organization if the published software engineering practices had been used.