Object Oriented Software Engineering   View all facts   Glossary   Help
subject > problem > defect
Next problemdesign issue    Upproblem    Previous problemmistake   

defect comparison table
Subject cause by have design for be have specification encounter when have scope is a kind of is a subtopic of become occur in occur undergo divide develop as has part have testing strategy divide up into detect by has definition represent automate exist
defect in a numerical algorithm       defect10.4 - Defects in Numerical Algorithms              
defect in an ordinary algorithm       defect10.4 - Defects in Numerical Algorithms              
defect in handling stress and unusual situations     a system is being heavily used, or forced to its limits in some other way defect10.6 - Defects in Handling Stress and Unusual Situations         
  • running the system intensively
  • suppling the system with a very large amount of input
  • running many copies of the system
  • running the system on a computer or network that is busy running other systems
  • running the system in atypical environments
 a lack of robustness  
documentation defect       defect10.7 - Documentation Defects       
  • Examine all the end-user documentation (in both paper and on-line forms), making sure it is correct
  • Make sure it has correct solutions to problems that users might encounter, and correct instructions to help beginners learn how to use the software
  • Work through the use cases, making sure that each of then is adequately explained to the user
  A defect in a user manual, reference manual or on-line help that gives incorrect information or fails to give information relevant to a problem   
hung systemwell-described requirements if other systems or subsystems are going to use its services or communicate with itflexibility right from the startbetter at error handling if it effectively prevents the user from making errors, detects errors, and helps the user to correct errorswhich is then implemented by a collection of components  software system10.5 - Defects in Timing and Co-Ordination: Deadlock, Livelocks and Critical Racescomplex because it is easy to add new features and because software engineers typically add features without fully understanding a system, which may not have been originally designed to accommodate the features  evolution over its life-spanin many ways:a prototypesubsystem subsystems A system that appears to the user to not be doing anything, caused by such things as a crash, a deadlock, a livelock or an infinite loop business processeven if its components change over the course of time, or are replaced by equivalent components
timing and co-ordination defect       defect10.5 - Defects in Timing and Co-Ordination: Deadlock, Livelocks and Critical Races a situation involving some form of concurrencywhen several threads or processes interact in inappropriate ways           

Next problemdesign issue    Upproblem    Previous problemmistake