Abstract
TESTING can be described as a technique primarily used to discover that software fails, but finding a failure is only a first step toward improvement. To eliminate a software failure once it has been uncovered is called ‘debugging.’ Debugging, like most software terms involving ‘bug,’ is often misleading, because it suggests a minor correction to the code source. In reality the cause of failure is frequently an omission—the code fails because its author failed to provide for some circumstances, under which it failed. To search through source code looking for something that is not there is a good way to find nothing. It would be better to look at those places in the code where action should be, with an eye out to discover it is missing. Unfortunately, the code correction for an omission is not unique, seldom localized, and seldom small. This is another way of saying that many ‘bugs’ have no real existence: the failure is real and real work must be done to eliminate it, but the only localized cause is in human incompetence, impossible to ‘squash.’ One thing people are really good at is fastening a simple, misleading name on something complex, and ‘debugging’ is one of the best.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Author information
Authors and Affiliations
Rights and permissions
Copyright information
© 2010 Springer Science+Business Media, LLC
About this chapter
Cite this chapter
Hamlet, D. (2010). Debugging Components, Component-based Systems, and Support Tools. In: Composing Software Components. Springer, Boston, MA. https://doi.org/10.1007/978-1-4419-7148-7_15
Download citation
DOI: https://doi.org/10.1007/978-1-4419-7148-7_15
Published:
Publisher Name: Springer, Boston, MA
Print ISBN: 978-1-4419-7147-0
Online ISBN: 978-1-4419-7148-7
eBook Packages: Computer ScienceComputer Science (R0)