Quality Assurance

Causes of Software Errors

There are several causes for software errors listed below.

  1. Faulty Definition of Requirements
    • Incorrect requirement definitions
    • Important requirements are missing
    • Incomplete requirements
    • Unnecessary requirements were also included
  2. Client-developer Communication Failures
    • Misinterpretation of client requirements presented in writing, orally, or otherwise, etc.
    • Client responses to design problems are misunderstood
  3. Deliberate deviations from software requirements
    • Reusing existing software components from previous projects without conducting a thorough analysis
    • Due to budget or time constraints, functionality was omitted
    • “Improvements” to software that are not mandated
  4. Logical design errors
    • Errors in interpreting requirements into a design (for example, errors in boundary condition definitions, algorithms reactions to illegal operations, etc.)
  5. Coding errors
    • Errors in interpreting the design document, errors in incorrect use of programming language constructs, and so on
  6. Non-compliance with documentation and coding instructions
    • Errors caused by other team members coordinating with a non-compliant member’s code
    • Errors caused by individuals attempting to understand/maintain/test non-compliant member’s code
  7. Shortcomings of the testing process
    • Failure to report all errors/faults discovered during testing Incorrect error/fault reporting
    • Correction of detected errors that is insufficient
  8. Procedural errors
    • Incorrect user activity procedures that occur in the software
  9. Documentation errors
    • Design flaws or omissions in code comments
    • Errors in software user manuals