Knowledge (XXG)

Software bug

Source đź“ť

761: 1285:, choices are made for each bug about whether and when to fix it based on information such as the bug's severity and priority and external factors such as development schedules. Triage generally does not include investigation into cause. Triage may occur regularly. Triage generally consists of reviewing new bugs since the previous triage and maybe all open bugs. Attendees may include project manager, development manager, test manager, build manager, and technical experts. 3432: 1477:, since software flaws have the potential to cause human injury or even death, such software will have far more scrutiny and quality control than, for example, an online shopping website. In applications such as banking, where software flaws have the potential to cause serious financial damage to a bank or its customers, quality control is also more important than, say, a photo editing application. 1198: 1149:) that occurred only when the machine operator very rapidly entered a treatment plan; it took days of practice to become able to do this, so the bug did not manifest in testing or when the manufacturer attempted to duplicate it. Other bugs may stop occurring whenever the setup is augmented to help find the bug, such as running the program with a debugger; these are called 1871:, released a report "Bugs in the System" in August 2016 stating that U.S. policymakers should make reforms to help researchers identify and address software bugs. The report "highlights the need for reform in the field of software vulnerability discovery and disclosure." One of the report's authors said that 1679:
the telecommunication industry or the internet. In this case, smaller segments of a large system are upgraded individually, to minimize disruption to a large network. However, some sections could be overlooked and not upgraded, and cause compatibility errors which may be difficult to find and repair.
1678:
may seem to work when two systems use different versions, but errors may occur when a function or feature implemented in one version is changed or missing in another. In production systems which must run continually, shutting down the entire system for a major update may not be possible, such as in
1296:
is a measure of impact the bug has. This impact may be data loss, financial, loss of goodwill and wasted effort. Severity levels are not standardized, but differ by context such as industry and tracking tool. For example, a crash in a video game has a different impact than a crash in a bank server.
699:= "form") refers to the evolution of a defect in the final stage of software deployment. Transformation of a "mistake" committed by an analyst in the early stages of the software development lifecycle, which leads to a "defect" in the final stage of the cycle has been called 'mistake metamorphism'. 829:
is syntactically correct, but fails type checking since the right side, a string, cannot be assigned to a float variable. Compilation fails – forcing this defect to be fixed before development progress can resume. With an interpreted language, a failure would not occur until later at runtime.
1567:
A bug can be caused by insufficient or incorrect design based on the specification. For example, given that the specification is to alphabetize a list of words, a design bug might occur if the design does not account for symbols; resulting in incorrect alphabetization of words with symbols.
1934:, it is revealed that this action was caused by the computer having been programmed with two conflicting objectives: to fully disclose all its information, and to keep the true purpose of the flight secret from the crew; this conflict caused HAL to become paranoid and eventually homicidal. 1882:
The Computer Fraud and Abuse Act, the Digital Millennium Copyright Act and the Electronic Communications Privacy Act criminalize and create civil penalties for actions that security researchers routinely engage in while conducting legitimate security research, the report
1041:
wrote that "it is easy to hide vulnerabilities in complex, little understood and undocumented source code," because, "even if people are reviewing the code, that doesn't mean they're qualified to do so." An example of an open-source software bug was the
1833:. For example, in some languages x=5 will set the value of x to 5 while x==5 will check whether x is currently 5 or some other number. Interpreted languages allow such code to fail. Compiled languages can catch such errors before testing begins. 3158:
RFC 1263: "TCP Extensions Considered Harmful" quote: "the time to distribute the new version of the protocol to all hosts can be quite long (forever in fact). ... If there is the slightest incompatibly between old and new versions, chaos can
1480:
Other than the damage caused by bugs, some of their cost is due to the effort invested in fixing them. In 1978, Lientz et al. showed that the median of projects invest 17 percent of the development effort in bug fixing. In 2020, research on
1952:, three employees attempt (unsuccessfully) to exploit their company's preoccupation with the Y2K computer bug using a computer virus that sends rounded-off fractions of a penny to their bank account—a long-known technique described as 1374:
Priority may be a combination of the bug's severity with the level of effort to fix. A bug with low severity but easy to fix may get a higher priority than a bug with moderate severity that requires significantly more effort to fix.
833:
Some languages exclude features that easily lead to bugs, at the expense of slower performance – the principle being that it is usually better to write simpler, slower correct code than complicated, buggy code. For example, the
993:
help developers by inspecting the program text beyond the compiler's capabilities to spot potential problems. Although in general the problem of finding all programming errors given a specification is not solvable (see
1107:
It is not uncommon for a bug in one section of a program to cause failures in a different section, thus making it difficult to track, in an apparently unrelated part of the system. For example, an error in a graphics
1943:(99 Red Balloons) as a result of "bugs in the software", a release of a group of 99 red balloons are mistaken for an enemy nuclear missile launch, requiring an equivalent launch response, resulting in catastrophe. 1177:
Often, bugs come about during coding, but faulty design documentation may cause a bug. In some cases, changes to the code may eliminate the problem even though the code then no longer matches the documentation.
665:
concluded that "software bugs, or errors, are so prevalent and so detrimental that they cost the US economy an estimated $ 59 billion annually, or about 0.6 percent of the gross domestic product".
1506:
Another study in 1990 reported that exceptionally good software development processes can achieve deployment failure rates as low as 0.1 per 1000 SLOC. This figure is iterated in literature such as
1037:
has more chance of having few or no bugs than other software, because "given enough eyeballs, all bugs are shallow". This assertion has been disputed, however: computer security specialist
1878:
Government researchers, companies, and cyber security experts are the people who typically discover software flaws. The report calls for reforming computer crime and copyright laws.
1138:
Typically, the first step in locating a bug is to reproduce it reliably. If unable to reproduce the issue, a programmer cannot find the cause of the bug and therefore cannot fix it.
702:
Different stages of a mistake in the development cycle may be described as mistake, anomaly, fault, failure, error, exception, crash, glitch, bug, defect, incident, or side effect.
1071:, an early computing pioneer, described his realization in the late 1940s that “a good part of the remainder of my life was going to be spent in finding errors in my own programs”. 577: 1014:), or provided as tools. It is often a surprise to find where most of the time is taken by a piece of code, and this removal of assumptions might cause the code to be rewritten. 760: 1576:
Numerical operations can result in unexpected output, slow processing, or crashing. Such a bug can be from a lack of awareness of the qualities of the data storage such as a
531: 1081:
As an alternative to using a debugger, code may be instrumented with logic to output debug information to trace program execution and view values. Output is typically to
3214: 752:
directly challenged that portrayal, stating "I'm glad that they are fixing what they call bugs, but I take exception with their strong denial that they track users."
959:
Measurements during testing can provide an estimate of the number of likely bugs remaining. This becomes more reliable the longer a product is tested and developed.
3326: 662: 2402: 1875:
has not done enough to address cyber software vulnerability, even though Congress has passed a number of bills to combat the larger issue of cyber security.
498: 3181: 2992:
Just, René; Jalali, Darioush; Ernst, Michael D. (2014). "Defects4J: a database of existing faults to enable controlled testing studies for Java programs".
1843:
Unpropagated updates; e.g. programmer changes "myAdd" but forgets to change "mySubtract", which uses the same algorithm. These errors are mitigated by the
1453:
The amount and type of damage a software bug may cause affects decision-making, processes and policy regarding software quality. In applications such as
570: 1119:
Sometimes, the most difficult part of debugging is finding the cause of the bug. Once found, correcting the problem is sometimes easy if not trivial.
3870: 1078:
can help a programmer find faulty code by examining the inner workings of a program such as executing code line-by-line and viewing variable values.
2108: 1550:
Defects4J is a benchmark of 341 Java bugs from 5 open-source projects. It contains the corresponding patches, which cover a variety of patch type.
340: 2299: 1135:, stepping through the code and imagining or transcribing the execution process may often find errors without ever reproducing the bug as such. 1355:
describes the importance of resolving the bug in relation to other bugs. Priorities might be numerical, such as 1 through 5, or named, such as
488: 3847: 3248: 3143: 3116: 3089: 2384: 2351: 2252: 563: 463: 204: 2596:"Efficient feature extraction model for validation performance improvement of duplicate bug report detection in software bug triage systems" 3280: 1409:
It is common practice to release software with known, low-priority bugs or other issues. Possible reasons include but are not limited to:
483: 2455: 981:
are written while writing the production code, and the production code is not considered complete until all tests complete successfully.
887:
For example, a bug may be caused by a relatively minor, typographical error (typo) in the code. For example, this code executes function
3878: 3052: 2320: 1122:
Sometimes, a bug is not an isolated flaw, but represents an error of thinking or planning on the part of the programmers. Often, such a
788:
tend to be designed to prevent common bugs based on vulnerabilities of existing languages. Lessons learned from older languages such as
749: 521: 3319: 2910: 2664: 2578: 2540: 1635: 1221:
Bugs are managed via activities like documenting, categorizing, assigning, reproducing, correcting and releasing the corrected code.
430: 194: 3291: 1626:
bug, a.k.a. logic error, is characterized by code that does not fail with an error, but does not have the expected behavior, such as
1227:
are often used to track bugs and other issues with software. Typically, different tools are used by the software development team to
845:
Some languages include features that add runtime overhead in order to prevent some bugs. For example, many languages include runtime
714:
to describe the behavior of software is contentious due to perception. Some suggest that the term should be abandoned; replaced with
3810: 3019: 2951:
Le Goues, Claire; Holtschulte, Neal; Smith, Edward K.; Brun, Yuriy; Devanbu, Premkumar; Forrest, Stephanie; Weimer, Westley (2015).
2641: 2163: 1337:. The severity of a bug may be a separate category to its priority for fixing, or the two may be quantified and managed separately. 857: 297: 998:), these tools exploit the fact that human programmers tend to make certain kinds of simple mistakes often when writing software. 748:
for recording and storing users' locations in unencrypted files, Apple called the behavior a bug. However, Justin Brookman of the
3606: 2029: 420: 415: 171: 2084: 3860: 2899: 2688: 1784:, in which a program tries to store data past the end of allocated storage. This may or may not lead to an access violation or 669:
Since the 1950s, some computer systems have been designed to detect or auto-correct various software errors during operations.
643: 549: 2566:
Shipping Greatness - Practical Lessons on Building and Launching Outstanding Software, Learned on the Job at Google and Amazon
2703: 2284: 1803: 1064: 839: 797: 440: 153: 133: 1695:– a task cannot continue until a second finishes, but at the same time, the second cannot continue until the first finishes. 1010:
or to give assurance as to correct working, may be embedded in the code explicitly (perhaps as simple as a statement saying
3215:"Cyber reforms needed to strengthen software bug discovery and disclosure: New America report – Homeland Preparedness News" 3673: 3312: 1908: 1428:
It may be suspected, or known, that some users are relying on the existing buggy behavior; a proposed fix may introduce a
1423:
The changes required to fix the bug are too costly or affect too many other components, requiring a major testing activity
1109: 350: 239: 229: 179: 1976:
is about a computer programmer at the end of 1999 struggling to fix bugs at his company related to the year 2000 problem.
2415: 1914: 1717: 1631: 911:
A convention that tends to prevent this particular issue is to require braces for a block even if it has just one line.
861: 773: 526: 254: 219: 70: 936:
Some contend that formal specifications are impractical for anything but the shortest programs, because of problems of
3865: 3786: 3586: 1692: 1496: 835: 801: 651: 646:, killing 29; was initially blamed on pilot error, but was later thought to have been caused by a software bug in the 345: 317: 3842: 3800: 3456: 2930: 2721: 2399: 2280: 1868: 1263: 967: 941: 468: 312: 199: 189: 128: 2430: 3703: 3421: 2089: 2049: 1972: 765: 234: 214: 3170: 2530: 1006:
Tools to monitor the performance of the software as it is running, either specifically to find problems such as
3688: 3566: 3461: 2564: 1667: 1007: 820: 793: 375: 244: 224: 1844: 35: 1371:. The values might be similar or identical to severity ratings, even though priority is a different aspect. 970:
may involve frequent software releases with relatively small changes. Defects are revealed by user feedback.
3776: 3728: 3391: 2817: 1675: 1171: 974: 937: 865: 503: 385: 264: 138: 2503: 1596:, or from lack of awareness of how calculations are handled by different software coding languages such as 3904: 2997: 2695: 1953: 1872: 1743: 1713: 1540:
To facilitate reproducible research on testing and debugging, researchers use curated benchmarks of bugs:
658: 445: 355: 307: 249: 1141:
Some bugs are revealed by inputs that may be difficult for the programmer to re-create. One cause of the
3817: 3551: 2672: 2120: 2024: 1236: 1156: 930: 881: 842:
arithmetic which is generally fast, but is considered dangerous; relatively easy to cause a major bug.
635: 302: 269: 85: 75: 3108:
Multimedia Networking: Technology, Management and Applications: Technology, Management and Applications
3274: 2656: 3837: 3749: 3698: 3643: 3511: 3484: 3466: 3431: 3364: 3335: 1991: 1850:
Comments out of date or incorrect: many programmers assume the comments accurately describe the code.
1758: 1593: 1577: 1500: 1442: 1167: 1034: 990: 785: 365: 209: 143: 110: 90: 51: 3002: 642:
less than a minute after launch due to a bug in the on-board guidance computer program. In 1994, an
3621: 3396: 3354: 2054: 1639: 1589: 1585: 1441:"It's not a bug, it's a feature" A misunderstanding exists between expected and actual behavior or 1228: 1163: 816: 360: 279: 105: 2268: 1436:
The problem is in an area that will be obsolete with an upcoming release; fixing it is unnecessary
3805: 3733: 3638: 3025: 2876: 2797: 2778: 2615: 2595: 2044: 1996: 1600:
which in some languages may throw an exception, and in others may return a special value such as
1086: 478: 2796:
Amit, Idan; Feitelson, Dror G. (2020). "The Corrective Commit Probability Code Quality Metric".
1898: 3853: 3611: 3546: 3496: 3443: 3401: 3349: 3244: 3240: 3139: 3112: 3106: 3085: 3015: 2974: 2906: 2868: 2699: 2574: 2570: 2536: 2380: 2347: 2248: 2194: 2034: 1924: 1785: 1474: 1454: 1385: 1094: 877: 678: 639: 631: 621: 599: 595: 2994:
Proceedings of the 2014 International Symposium on Software Testing and Analysis – ISSTA 2014
2477: 1383:
Bugs of sufficiently high priority may warrant a special release which is sometimes called a
3822: 3762: 3526: 3516: 3411: 3079: 3060: 3007: 2964: 2860: 2768: 2668: 2607: 2240: 1826: 1764: 1709: 1705: 1643: 1597: 1470: 1401:
release – to differentiate it from a release that emphasizes new features or other changes.
1232: 1224: 953: 606: 435: 398: 380: 370: 95: 2737: 2690:
Show-stopper!: the breakneck race to create Windows NT and the next generation at Microsoft
2594:
Soleimani Neysiani, Behzad; Babamir, Seyed Morteza; Aritsugi, Masayoshi (October 1, 2020).
3713: 3693: 3416: 3406: 3284: 2894: 2434: 2410: 2406: 2376: 2369: 1781: 1525: 1513: 1429: 1182: 1026: 995: 846: 322: 274: 158: 80: 2633: 2167: 3883: 3781: 3631: 3581: 3556: 3521: 3501: 3381: 3369: 2104: 2001: 1939: 1796: 1754: 1698: 1275: 1146: 1082: 1068: 1030: 617: 3298: 2133: 3898: 3793: 3754: 3723: 3718: 3571: 3561: 3531: 2851: 2619: 2325: 2304: 1730: 1627: 1529: 1508: 1462: 1413:
A deadline must be met and resources are insufficient to fix all bugs by the deadline
1202: 1025:
development allows anyone to examine source code. A school of thought popularized by
65: 3029: 2782: 3827: 3386: 2842: 2059: 2039: 2011: 2006: 1986: 1967:, is about a programmer's attempt to find an elusive bug in a database application. 1964: 1948: 1819: 1789: 1736: 1623: 1113: 978: 148: 2880: 1499:
managed to reduce their average number of errors from 4.5 per 1000 lines of code (
856:
language allows for detecting some typos (such as a misspelled identifier) before
744:
an intentional design decision. In 2011, after receiving scrutiny from US Senator
3133: 2611: 616:
The effects of a software bug range from minor (such as a misspelled word in the
3767: 3601: 3576: 3541: 3376: 2244: 1930: 1775: 1771: 1617: 1466: 1132: 1124: 1022: 918: 808: 634:
machine were directly responsible for patient deaths in the 1980s. In 1996, the
2938:
Final Report: NASA Study on Flight Software Complexity (Daniel L. Dvorak (Ed.))
2145: 1418:
The bug is already fixed in an upcoming release, and it is not of high priority
3832: 3648: 3596: 3479: 3359: 2438: 1901: 1186: 1038: 745: 3064: 2978: 2969: 2952: 2872: 2846: 2198: 2189:"Testing experience : te : the magazine for professional testers". 1897:" is sometimes used to refer to a software bug. An example is the glitch and 3708: 3663: 3658: 3506: 3474: 3011: 1750: 1197: 1151: 1142: 1055: 812: 628: 100: 31: 17: 2953:"The ManyBugs and IntroClass Benchmarks for Automated Repair of C Programs" 2504:"Bug Tracking Basics: A beginner's guide to reporting and tracking defects" 2341: 2773: 2756: 3668: 3626: 3489: 1919: 1605: 1581: 1521: 1458: 1090: 1075: 853: 473: 425: 410: 405: 1274:. Items are often categorized by aspects such as severity, priority and 3678: 3653: 3616: 3304: 2427: 2233:
610.12-1990: IEEE Standard Glossary of Software Engineering Terminology
741: 3043:
Anthony Di Franco; Hui Guo; Cindy Rubio-González (November 23, 2017).
1922:, attempts to kill all its crew members. In the follow-up 1982 novel, 3591: 3536: 3451: 2864: 1894: 1482: 1282: 1043: 184: 1340:
A bug severe enough to delay the release of the product is called a
2802: 1547:
ManyBugs is a benchmark of 185 C bugs in nine open-source programs.
3055:
International Conference on Automated Software Engineering (ASE).
2343:
Automated Defect Prevention: Best Practices in Software Management
1196: 1128:
requires a section of the program to be overhauled or rewritten.
849:
and a way to handle out-of-bounds conditions instead of crashing.
789: 759: 647: 627:
Software bugs have been linked to disasters. Software bugs in the
259: 3081:
Feature Interactions in Telecommunications and Software Systems V
3045:
A comprehensive study of real-world numerical bug characteristics
2883:– via University of Tennessee – Harlan D. Mills Collection. 1830: 3056: 3048: 2236: 2064: 1166:
disaster, interest in automated aids to debugging rose, such as
764:
Error resulting from a software bug displayed on two screens at
493: 3308: 3268: 2719:"The Next Generation 1996 Lexicon A to Z: Slipstream Release". 1189:
a hardware bug since it's cheaper than modifying the hardware.
1671: 1601: 1098: 2940:. NASA Office of Chief Engineer Technical Excellence Program. 2663:(4 ed.). Fort Belvoir, Virginia: Department of Defense, 1397:
A software release that emphasizes bug fixes may be called a
3430: 1806:
is used after the system has freed the memory it references.
733:
instead since it more clearly connotates caused by a human.
3169:
Wilson, Andi; Schulman, Ross; Bankston, Kevin; Herr, Trey.
2300:"Apple faces questions from Congress about iPhone tracking" 2093:. Ariane 501 Inquiry Board report (33–1996). July 23, 1996. 933:
which states the behavior of a program, can prevent bugs.
2738:"'It's Not a Bug, It's a Feature.' Trite – or Just Right?" 2321:"Apple denies tracking iPhone users, but promises changes" 1778:) become exhausted by repeated allocation without release. 1104:
Some contend that locating a bug is something of an art.
2085:"ARIANE 5 Flight 501 Failure Report by the Inquiry Board" 796:
are used to inform the design of later languages such as
729:
implies that the defect arose on its own and push to use
2847:"Engineering software under statistical quality control" 1795:
Excessive recursion which—though logically valid—causes
1770:
Resource leaks, where a finite system resource (such as
2755:
Lientz, B. P.; Swanson, E. B.; Tompkins, G. E. (1978).
2535:(2nd ed.). Wiley India Pvt. Limited. p. 139. 2905:. Redmond, Washington: Microsoft Press. p. 611. 2757:"Characteristics of Application Software Maintenance" 2818:"An Overview of the Software Engineering Laboratory" 2367:
McDonald, Marc; Musson, Robert; Smith, Ross (2007).
1701:– multiple simultaneous tasks compete for resources. 1209:
Once reproducibility is confirmed, it is changed to
1145:
radiation machine deaths was a bug (specifically, a
819:. For example, for a typed, compiled language (like 3742: 3442: 3342: 3135:
Introduction to Computer Networks and Cybersecurity
2508:
Software Testing & Quality Engineering Magazine
1720:(TOCTOU) is a form of unprotected critical section. 917:Enforcement of conventions may be manual (i.e. via 902: 892: 888: 3299:Toward Understanding Compiler Bugs in GCC and LLVM 2898: 2687: 2368: 1749:Using an otherwise valid instruction on the wrong 1528:typewriter which consists of 63,000 SLOC, and the 2146:"Post Office scandal ruined lives, inquiry hears" 1867:The Open Technology Institute, run by the group, 3271:" – an expert webpage focus on bugs, at NIST.gov 2836: 2834: 2661:Glossary: defense acquisition acronyms and terms 1520:. Some projects even attained zero defects: the 807:Languages may include features such as a static 2340:Dorota Huizinga; Adam Kolawa (September 2007). 1880: 1664:Incorrect assumptions of a particular platform. 1213:. Once the issue is resolved, it is changed to 650:. Buggy software caused the early 21st century 3294:" – an email from 1981 about Adm. Hopper's bug 3132:Wu, Chwan-Hwa (John); Irwin, J. David (2016). 2227: 2225: 2223: 2221: 2219: 2217: 2215: 2213: 2211: 2193:. Germany: testingexperience: 42. March 2012. 1853:Differences between documentation and product. 663:National Institute of Standards and Technology 609:with many or serious bugs may be described as 3320: 1937:In the English version of the Nena 1983 song 571: 8: 1162:Since the 1990s, particularly following the 772:Preventing bugs as early as possible in the 1829:, such as performing assignment instead of 3327: 3313: 3305: 776:is a target of investment and innovation. 578: 564: 42: 3871:Security information and event management 3001: 2968: 2957:IEEE Transactions on Software Engineering 2801: 2772: 2510:. Vol. 4, no. 3. pp. 20–24 2371:The Practical Guide to Defect Prevention 1518:NASA study on Flight Software Complexity 657:In 2002, a study commissioned by the US 3187:from the original on September 21, 2016 2076: 1485:repositories showed the median is 20%. 50: 2825:Software Engineering Laboratory Series 2725:. No. 15. March 1996. p. 41. 1309:(user can still accomplish the task), 1205:project data). A new bug is initially 532:Electrical and electronics engineering 3848:Host-based intrusion detection system 3208: 3206: 3204: 3202: 3111:. Idea Group Inc (IGI). p. 398. 2346:. Wiley-IEEE Computer Society Press. 2014:, which classifies a bug as either a 1317:. Another example set of severities: 7: 3301:". A 2016 study of bugs in compilers 2482:christele.faure.pagesperso-orange.fr 2164:"Software bugs cost US economy dear" 1185:, the software is often modified to 1044:2008 OpenSSL vulnerability in Debian 3879:Runtime application self-protection 3281:Picture of the "first computer bug" 2600:Information and Software Technology 750:Center for Democracy and Technology 2931:"Appendix D – Software Complexity" 2665:Defense Systems Management College 2655:Jones, Wilbur D. Jr., ed. (1989). 2644:from the original on May 23, 2013. 1928:, and the accompanying 1984 film, 1918:, a spaceship's onboard computer, 1658:Incorrect protocol implementation. 25: 3811:Security-focused operating system 3213:Rozens, Tracy (August 12, 2016). 2929:Gerard Holzmann (March 5, 2009). 2109:"The Chinook Helicopter Disaster" 1305:(user cannot accomplish a task), 1063:can be a significant part of the 458:Standards and bodies of knowledge 3607:Insecure direct object reference 3287: (archived January 12, 2015) 2478:"PolySpace Technologies history" 2030:Orthogonal Defect Classification 1912:and the corresponding 1968 film 1313:(a misspelling for example), or 1157:Heisenberg uncertainty principle 679:Bug (engineering) § History 638:'s US$ 1 billion prototype 3861:Information security management 2319:Gregg Keizer (April 27, 2011). 2298:Gregg Keizer (April 21, 2011). 2166:. June 10, 2009. Archived from 1242:A tracked item is often called 1131:Some contend that as a part of 884:are intended to prevent typos. 876:Programming techniques such as 550:Outline of software development 3105:Syed, Mahbubur Rahman (2001). 2502:Allen, Mitch (May–June 2002). 2400:"Release Early, Release Often" 2285:Software Engineering Institute 1802:Use-after-free error, where a 1281:In a process sometimes called 1065:software development lifecycle 901:But this code always executes 644:RAF Chinook helicopter crashed 620:) to severe (such as frequent 34:error on Knowledge (XXG), see 1: 640:Ariane 5 rocket was destroyed 2827:(SEL-94-005). December 1994. 2612:10.1016/j.infsof.2020.106344 2532:Managing The Testing Process 2416:The Cathedral and the Bazaar 2269:"News at SEI September 1999" 1946:In the 1999 American comedy 1718:Time-of-check-to-time-of-use 1661:Incorrect hardware handling. 1634:, incorrect comparison in a 1559:Some notable types of bugs: 1532:software with 500,000 SLOC. 1155:(humorously named after the 929:Some contend that writing a 914:if (condition) { foo(); } 862:software development process 774:software development process 3866:Information risk management 3787:Multi-factor authentication 3343:Related security categories 3269:Common Weakness Enumeration 2686:Zachary, G. Pascal (1994). 2433:September 29, 2007, at the 2375:. Microsoft Press. p.  2245:10.1109/IEEESTD.1990.101064 1893:In video gaming, the term " 1863:"Bugs in the System" report 1682:Incorrect code annotations. 1503:) down to 1 per 1000 SLOC. 1497:Goddard Space Flight Center 652:British Post Office scandal 36:Knowledge (XXG):Bug reports 3921: 3843:Intrusion detection system 3801:Computer security software 3457:Advanced persistent threat 3138:. CRC Press. p. 500. 2281:Carnegie Mellon University 1899:unofficial PokĂ©mon species 1817: 1728: 1615: 1264:agile software development 1053: 968:Agile software development 921:) or via automated tools. 676: 313:Software quality assurance 29: 3428: 3422:Digital rights management 2915:– via archive.org. 2761:Communications of the ACM 2563:Chris Vander Mey (2012). 2090:The European Space Agency 2050:Software defect indicator 1297:Severity levels might be 766:La Croix de Berny station 3567:Denial-of-service attack 3462:Arbitrary code execution 3084:. IOS Press. p. 8. 3065:10.1109/ASE.2017.8115662 2970:10.1109/TSE.2015.2454513 2708:– via archive.org. 1638:such as using the wrong 860:which is earlier in the 298:Configuration management 3777:Computer access control 3729:Rogue security software 3392:Electromagnetic warfare 3292:The First Computer Bug! 3012:10.1145/2610384.2628055 2736:Carr, Nicholas (2018). 2675:– via Hathitrust. 2673:2027/mdp.39015061290758 2634:"5.3. Anatomy of a Bug" 2456:"Maurice Wilkes Quotes" 2204:(subscription required) 1970:The 2008 Canadian film 1906:In both the 1968 novel 1788:. These are frequently 1676:communications protocol 1172:abstract interpretation 1112:routine causing a file 975:test-driven development 938:combinatorial explosion 908:if (condition); foo(); 648:engine-control computer 522:Artificial intelligence 3823:Obfuscation (software) 3552:Browser Helper Objects 3436: 3235:Ullman, Ellen (2004). 1885: 1744:uninitialized variable 1712:and other features of 1218: 898:if (condition) foo(); 769: 659:Department of Commerce 446:Infrastructure as code 292:Supporting disciplines 3818:Data-centric security 3699:Remote access trojans 3434: 3178:Open Policy Institute 2917:(Cobb and Mills 1990) 2774:10.1145/359511.359522 2405:May 14, 2011, at the 2239:. December 31, 1990. 2123:on September 15, 1993 2025:List of software bugs 1915:2001: A Space Odyssey 1909:2001: A Space Odyssey 1845:Don't Repeat Yourself 1714:concurrent processing 1544:the Siemens benchmark 1201:Example bug history ( 1200: 1074:A program known as a 931:program specification 882:defensive programming 786:programming languages 763: 710:Sometimes the use of 677:Further information: 636:European Space Agency 303:Deployment management 3750:Application security 3644:Privilege escalation 3512:Cross-site scripting 3365:Cybersex trafficking 3336:Information security 3275:BUG type of Jim Gray 3171:"Bugs in the System" 3078:Kimbler, K. (1998). 2996:. pp. 437–440. 2895:McConnell, Steven C. 2287:. September 1, 1999. 2152:. February 14, 2022. 1992:Automatic bug fixing 1759:binary-coded decimal 1655:Incorrect API usage. 1586:numerically unstable 1443:undocumented feature 1229:track their workload 1168:static code analysis 1035:open-source software 991:static code analysis 689:Mistake metamorphism 123:Paradigms and models 52:Software development 3397:Information warfare 3355:Automotive security 2119:(2). Archived from 2055:Software regression 1640:comparison operator 1590:arithmetic overflow 1393:Maintenance release 1315:documentation error 1237:track user feedback 1164:Ariane 5 Flight 501 817:modular programming 46:Part of a series on 3806:Antivirus software 3674:Social engineering 3639:Polymorphic engine 3592:Fraudulent dialers 3497:Hardware backdoors 3437: 3277:– another Bug type 2841:Cobb, Richard H.; 2573:. pp. 79–81. 2529:Rex Black (2002). 2428:"Wide Open Source" 2191:Testing Experience 2045:Single-event upset 1997:Bug bounty program 1973:Control Alt Delete 1888:In popular culture 1809:Double free error. 1219: 1033:says that popular 956:is to find bugs. 770: 736:Some contend that 725:Some contend that 441:Release automation 318:Project management 3892: 3891: 3854:Anomaly detection 3759:Secure by default 3612:Keystroke loggers 3547:Drive-by download 3435:vectorial version 3402:Internet security 3350:Computer security 3250:978-1-250-00249-5 3145:978-1-4665-7214-0 3118:978-1-59140-005-9 3091:978-90-5199-431-5 2963:(12): 1236–1256. 2386:978-0-7356-2253-1 2353:978-0-470-04212-0 2254:978-0-7381-0391-4 2035:Racetrack problem 1925:2010: Odyssey Two 1825:Use of the wrong 1786:storage violation 1765:Access violations 1710:mutual exclusions 1706:critical sections 1578:loss of precision 1475:automotive safety 1455:human spaceflight 1116:routine to fail. 1012:PRINT "I AM HERE" 878:programming style 838:does not support 826:float num = "3"; 632:radiation therapy 600:computer software 588: 587: 479:ISO/IEC standards 16:(Redirected from 3912: 3763:Secure by design 3694:Hardware Trojans 3527:History sniffing 3517:Cross-site leaks 3412:Network security 3329: 3322: 3315: 3306: 3255: 3254: 3232: 3226: 3225: 3223: 3221: 3210: 3197: 3196: 3194: 3192: 3186: 3175: 3166: 3160: 3156: 3150: 3149: 3129: 3123: 3122: 3102: 3096: 3095: 3075: 3069: 3068: 3040: 3034: 3033: 3005: 2989: 2983: 2982: 2972: 2948: 2942: 2941: 2935: 2926: 2920: 2919: 2904: 2891: 2885: 2884: 2865:10.1109/52.60601 2843:Mills, Harlan D. 2838: 2829: 2828: 2822: 2814: 2808: 2807: 2805: 2793: 2787: 2786: 2776: 2752: 2746: 2745: 2733: 2727: 2726: 2716: 2710: 2709: 2693: 2683: 2677: 2676: 2652: 2646: 2645: 2630: 2624: 2623: 2591: 2585: 2584: 2560: 2554: 2553: 2551: 2549: 2526: 2520: 2519: 2517: 2515: 2499: 2493: 2492: 2490: 2488: 2474: 2468: 2467: 2465: 2463: 2452: 2446: 2445:, April 17, 2000 2425: 2419: 2397: 2391: 2390: 2374: 2364: 2358: 2357: 2337: 2331: 2330: 2316: 2310: 2309: 2295: 2289: 2288: 2265: 2259: 2258: 2229: 2206: 2205: 2202: 2186: 2180: 2179: 2177: 2175: 2170:on June 10, 2009 2160: 2154: 2153: 2142: 2136: 2132: 2130: 2128: 2101: 2095: 2094: 2081: 1644:off-by-one error 1628:infinite looping 1598:division by zero 1495:In 1994, NASA's 1471:public transport 1233:customer service 1013: 954:software testing 948:Software testing 904: 894: 890: 780:Language support 607:computer program 580: 573: 566: 527:Computer science 436:Build automation 43: 21: 3920: 3919: 3915: 3914: 3913: 3911: 3910: 3909: 3895: 3894: 3893: 3888: 3738: 3438: 3426: 3417:Copy protection 3407:Mobile security 3338: 3333: 3285:Wayback Machine 3264: 3259: 3258: 3251: 3234: 3233: 3229: 3219: 3217: 3212: 3211: 3200: 3190: 3188: 3184: 3173: 3168: 3167: 3163: 3157: 3153: 3146: 3131: 3130: 3126: 3119: 3104: 3103: 3099: 3092: 3077: 3076: 3072: 3042: 3041: 3037: 3022: 3003:10.1.1.646.3086 2991: 2990: 2986: 2950: 2949: 2945: 2933: 2928: 2927: 2923: 2913: 2893: 2892: 2888: 2840: 2839: 2832: 2820: 2816: 2815: 2811: 2795: 2794: 2790: 2754: 2753: 2749: 2735: 2734: 2730: 2722:Next Generation 2718: 2717: 2713: 2706: 2698:. p. 158. 2685: 2684: 2680: 2667:. p. 123. 2654: 2653: 2649: 2632: 2631: 2627: 2593: 2592: 2588: 2581: 2562: 2561: 2557: 2547: 2545: 2543: 2528: 2527: 2523: 2513: 2511: 2501: 2500: 2496: 2486: 2484: 2476: 2475: 2471: 2461: 2459: 2454: 2453: 2449: 2435:Wayback Machine 2426: 2422: 2411:Eric S. Raymond 2407:Wayback Machine 2398: 2394: 2387: 2366: 2365: 2361: 2354: 2339: 2338: 2334: 2318: 2317: 2313: 2297: 2296: 2292: 2273:SEI Interactive 2267: 2266: 2262: 2255: 2231: 2230: 2209: 2203: 2188: 2187: 2183: 2173: 2171: 2162: 2161: 2157: 2144: 2143: 2139: 2126: 2124: 2103: 2102: 2098: 2083: 2082: 2078: 2073: 1983: 1959:The 2004 novel 1890: 1865: 1860: 1840: 1822: 1816: 1782:Buffer overflow 1733: 1727: 1689: 1670:systems. A new 1652: 1620: 1614: 1574: 1565: 1557: 1538: 1526:IBM Wheelwriter 1514:Steve McConnell 1493: 1451: 1430:breaking change 1407: 1395: 1381: 1350: 1291: 1195: 1183:embedded system 1058: 1052: 1027:Eric S. Raymond 1020: 1011: 1004: 1002:Instrumentation 996:halting problem 987: 985:Static analysis 965: 963:Agile practices 950: 927: 915: 909: 899: 874: 847:bounds checking 827: 782: 758: 740:may be used to 708: 686: 681: 675: 584: 555: 554: 545: 537: 536: 517: 509: 508: 459: 451: 450: 401: 391: 390: 336: 328: 327: 323:User experience 293: 285: 284: 175: 164: 163: 124: 116: 115: 61: 60:Core activities 39: 28: 27:Bug in software 23: 22: 15: 12: 11: 5: 3918: 3916: 3908: 3907: 3897: 3896: 3890: 3889: 3887: 3886: 3884:Site isolation 3881: 3876: 3875: 3874: 3868: 3858: 3857: 3856: 3851: 3840: 3835: 3830: 3825: 3820: 3815: 3814: 3813: 3808: 3798: 3797: 3796: 3791: 3790: 3789: 3782:Authentication 3774: 3773: 3772: 3771: 3770: 3760: 3757: 3746: 3744: 3740: 3739: 3737: 3736: 3731: 3726: 3721: 3716: 3711: 3706: 3701: 3696: 3691: 3686: 3681: 3676: 3671: 3666: 3661: 3656: 3651: 3646: 3641: 3636: 3635: 3634: 3624: 3619: 3614: 3609: 3604: 3599: 3594: 3589: 3584: 3582:Email spoofing 3579: 3574: 3569: 3564: 3559: 3554: 3549: 3544: 3539: 3534: 3529: 3524: 3522:DOM clobbering 3519: 3514: 3509: 3504: 3502:Code injection 3499: 3494: 3493: 3492: 3487: 3482: 3477: 3469: 3464: 3459: 3454: 3448: 3446: 3440: 3439: 3429: 3427: 3425: 3424: 3419: 3414: 3409: 3404: 3399: 3394: 3389: 3384: 3382:Cyberterrorism 3379: 3374: 3373: 3372: 3370:Computer fraud 3367: 3357: 3352: 3346: 3344: 3340: 3339: 3334: 3332: 3331: 3324: 3317: 3309: 3303: 3302: 3295: 3288: 3278: 3272: 3263: 3262:External links 3260: 3257: 3256: 3249: 3227: 3198: 3161: 3151: 3144: 3124: 3117: 3097: 3090: 3070: 3035: 3020: 2984: 2943: 2921: 2912:978-1556154843 2911: 2886: 2830: 2809: 2788: 2767:(6): 466–471. 2747: 2728: 2711: 2704: 2696:The Free Press 2678: 2657:"Show stopper" 2647: 2625: 2586: 2580:978-1449336608 2579: 2571:O'Reilly Media 2555: 2542:978-8126503131 2541: 2521: 2494: 2469: 2447: 2420: 2392: 2385: 2359: 2352: 2332: 2311: 2290: 2260: 2253: 2207: 2181: 2155: 2137: 2107:(April 2002). 2105:Simon Rogerson 2096: 2075: 2074: 2072: 2069: 2068: 2067: 2062: 2057: 2052: 2047: 2042: 2037: 2032: 2027: 2022: 2009: 2004: 2002:Glitch removal 1999: 1994: 1989: 1982: 1979: 1978: 1977: 1968: 1957: 1954:salami slicing 1944: 1940:99 Luftballons 1935: 1904: 1889: 1886: 1864: 1861: 1859: 1856: 1855: 1854: 1851: 1848: 1839: 1836: 1835: 1834: 1815: 1812: 1811: 1810: 1807: 1800: 1797:stack overflow 1793: 1779: 1768: 1762: 1755:packed decimal 1747: 1740: 1726: 1723: 1722: 1721: 1702: 1699:Race condition 1696: 1688: 1685: 1684: 1683: 1680: 1665: 1662: 1659: 1656: 1651: 1648: 1613: 1610: 1573: 1570: 1564: 1561: 1556: 1553: 1552: 1551: 1548: 1545: 1537: 1534: 1492: 1489: 1450: 1447: 1446: 1445: 1438: 1437: 1433: 1432: 1425: 1424: 1420: 1419: 1415: 1414: 1406: 1403: 1394: 1391: 1380: 1377: 1349: 1346: 1307:has workaround 1290: 1287: 1276:version number 1194: 1191: 1147:race condition 1069:Maurice Wilkes 1054:Main article: 1051: 1048: 1019: 1016: 1003: 1000: 986: 983: 964: 961: 949: 946: 926: 923: 913: 907: 897: 873: 870: 825: 781: 778: 757: 754: 707: 704: 685: 682: 674: 671: 618:user interface 586: 585: 583: 582: 575: 568: 560: 557: 556: 553: 552: 546: 543: 542: 539: 538: 535: 534: 529: 524: 518: 515: 514: 511: 510: 507: 506: 501: 496: 491: 486: 481: 476: 471: 469:IEEE standards 466: 460: 457: 456: 453: 452: 449: 448: 443: 438: 433: 428: 423: 418: 413: 408: 402: 397: 396: 393: 392: 389: 388: 383: 378: 373: 368: 363: 358: 353: 348: 343: 337: 334: 333: 330: 329: 326: 325: 320: 315: 310: 305: 300: 294: 291: 290: 287: 286: 283: 282: 277: 272: 267: 262: 257: 252: 247: 242: 237: 232: 227: 222: 217: 212: 207: 202: 197: 192: 187: 182: 176: 174:and frameworks 170: 169: 166: 165: 162: 161: 156: 151: 146: 141: 136: 131: 125: 122: 121: 118: 117: 114: 113: 108: 103: 98: 93: 88: 83: 78: 73: 68: 62: 59: 58: 55: 54: 48: 47: 26: 24: 14: 13: 10: 9: 6: 4: 3: 2: 3917: 3906: 3905:Software bugs 3903: 3902: 3900: 3885: 3882: 3880: 3877: 3872: 3869: 3867: 3864: 3863: 3862: 3859: 3855: 3852: 3849: 3846: 3845: 3844: 3841: 3839: 3836: 3834: 3831: 3829: 3826: 3824: 3821: 3819: 3816: 3812: 3809: 3807: 3804: 3803: 3802: 3799: 3795: 3794:Authorization 3792: 3788: 3785: 3784: 3783: 3780: 3779: 3778: 3775: 3769: 3766: 3765: 3764: 3761: 3758: 3756: 3755:Secure coding 3753: 3752: 3751: 3748: 3747: 3745: 3741: 3735: 3732: 3730: 3727: 3725: 3724:SQL injection 3722: 3720: 3717: 3715: 3712: 3710: 3707: 3705: 3704:Vulnerability 3702: 3700: 3697: 3695: 3692: 3690: 3689:Trojan horses 3687: 3685: 3684:Software bugs 3682: 3680: 3677: 3675: 3672: 3670: 3667: 3665: 3662: 3660: 3657: 3655: 3652: 3650: 3647: 3645: 3642: 3640: 3637: 3633: 3630: 3629: 3628: 3625: 3623: 3620: 3618: 3615: 3613: 3610: 3608: 3605: 3603: 3600: 3598: 3595: 3593: 3590: 3588: 3585: 3583: 3580: 3578: 3575: 3573: 3572:Eavesdropping 3570: 3568: 3565: 3563: 3562:Data scraping 3560: 3558: 3555: 3553: 3550: 3548: 3545: 3543: 3540: 3538: 3535: 3533: 3532:Cryptojacking 3530: 3528: 3525: 3523: 3520: 3518: 3515: 3513: 3510: 3508: 3505: 3503: 3500: 3498: 3495: 3491: 3488: 3486: 3483: 3481: 3478: 3476: 3473: 3472: 3470: 3468: 3465: 3463: 3460: 3458: 3455: 3453: 3450: 3449: 3447: 3445: 3441: 3433: 3423: 3420: 3418: 3415: 3413: 3410: 3408: 3405: 3403: 3400: 3398: 3395: 3393: 3390: 3388: 3385: 3383: 3380: 3378: 3375: 3371: 3368: 3366: 3363: 3362: 3361: 3358: 3356: 3353: 3351: 3348: 3347: 3345: 3341: 3337: 3330: 3325: 3323: 3318: 3316: 3311: 3310: 3307: 3300: 3296: 3293: 3289: 3286: 3282: 3279: 3276: 3273: 3270: 3266: 3265: 3261: 3252: 3246: 3242: 3238: 3231: 3228: 3216: 3209: 3207: 3205: 3203: 3199: 3183: 3179: 3172: 3165: 3162: 3155: 3152: 3147: 3141: 3137: 3136: 3128: 3125: 3120: 3114: 3110: 3109: 3101: 3098: 3093: 3087: 3083: 3082: 3074: 3071: 3066: 3062: 3058: 3054: 3050: 3046: 3039: 3036: 3031: 3027: 3023: 3021:9781450326452 3017: 3013: 3009: 3004: 2999: 2995: 2988: 2985: 2980: 2976: 2971: 2966: 2962: 2958: 2954: 2947: 2944: 2939: 2932: 2925: 2922: 2918: 2914: 2908: 2903: 2902: 2901:Code Complete 2896: 2890: 2887: 2882: 2878: 2874: 2870: 2866: 2862: 2858: 2854: 2853: 2852:IEEE Software 2848: 2844: 2837: 2835: 2831: 2826: 2819: 2813: 2810: 2804: 2799: 2792: 2789: 2784: 2780: 2775: 2770: 2766: 2762: 2758: 2751: 2748: 2743: 2739: 2732: 2729: 2724: 2723: 2715: 2712: 2707: 2701: 2697: 2692: 2691: 2682: 2679: 2674: 2670: 2666: 2662: 2658: 2651: 2648: 2643: 2639: 2635: 2629: 2626: 2621: 2617: 2613: 2609: 2605: 2601: 2597: 2590: 2587: 2582: 2576: 2572: 2568: 2567: 2559: 2556: 2544: 2538: 2534: 2533: 2525: 2522: 2509: 2505: 2498: 2495: 2483: 2479: 2473: 2470: 2457: 2451: 2448: 2444: 2443:SecurityFocus 2440: 2436: 2432: 2429: 2424: 2421: 2418: 2417: 2412: 2408: 2404: 2401: 2396: 2393: 2388: 2382: 2378: 2373: 2372: 2363: 2360: 2355: 2349: 2345: 2344: 2336: 2333: 2328: 2327: 2326:Computerworld 2322: 2315: 2312: 2307: 2306: 2305:Computerworld 2301: 2294: 2291: 2286: 2282: 2278: 2274: 2270: 2264: 2261: 2256: 2250: 2246: 2242: 2238: 2234: 2228: 2226: 2224: 2222: 2220: 2218: 2216: 2214: 2212: 2208: 2200: 2196: 2192: 2185: 2182: 2174:September 24, 2169: 2165: 2159: 2156: 2151: 2147: 2141: 2138: 2135: 2122: 2118: 2114: 2110: 2106: 2100: 2097: 2092: 2091: 2086: 2080: 2077: 2070: 2066: 2063: 2061: 2058: 2056: 2053: 2051: 2048: 2046: 2043: 2041: 2038: 2036: 2033: 2031: 2028: 2026: 2023: 2021: 2020:nonconformity 2017: 2013: 2010: 2008: 2005: 2003: 2000: 1998: 1995: 1993: 1990: 1988: 1985: 1984: 1980: 1975: 1974: 1969: 1966: 1962: 1958: 1955: 1951: 1950: 1945: 1942: 1941: 1936: 1933: 1932: 1927: 1926: 1921: 1917: 1916: 1911: 1910: 1905: 1903: 1900: 1896: 1892: 1891: 1887: 1884: 1879: 1876: 1874: 1870: 1862: 1857: 1852: 1849: 1846: 1842: 1841: 1837: 1832: 1831:equality test 1828: 1824: 1823: 1821: 1813: 1808: 1805: 1801: 1798: 1794: 1791: 1790:security bugs 1787: 1783: 1780: 1777: 1773: 1769: 1766: 1763: 1760: 1756: 1752: 1748: 1745: 1741: 1738: 1735: 1734: 1732: 1731:Runtime error 1724: 1719: 1715: 1711: 1707: 1703: 1700: 1697: 1694: 1691: 1690: 1686: 1681: 1677: 1673: 1669: 1666: 1663: 1660: 1657: 1654: 1653: 1649: 1647: 1645: 1641: 1637: 1633: 1629: 1625: 1619: 1611: 1609: 1607: 1603: 1599: 1595: 1591: 1587: 1583: 1579: 1571: 1569: 1562: 1560: 1554: 1549: 1546: 1543: 1542: 1541: 1535: 1533: 1531: 1530:Space Shuttle 1527: 1523: 1519: 1515: 1511: 1510: 1509:Code Complete 1504: 1502: 1498: 1490: 1488: 1486: 1484: 1478: 1476: 1472: 1468: 1464: 1463:nuclear power 1460: 1456: 1448: 1444: 1440: 1439: 1435: 1434: 1431: 1427: 1426: 1422: 1421: 1417: 1416: 1412: 1411: 1410: 1404: 1402: 1400: 1392: 1390: 1388: 1387: 1378: 1376: 1372: 1370: 1366: 1362: 1358: 1354: 1347: 1345: 1343: 1338: 1336: 1332: 1328: 1324: 1320: 1316: 1312: 1311:visual defect 1308: 1304: 1303:no workaround 1300: 1299:crash or hang 1295: 1288: 1286: 1284: 1279: 1277: 1273: 1269: 1265: 1261: 1257: 1253: 1249: 1245: 1240: 1238: 1234: 1230: 1226: 1222: 1216: 1212: 1208: 1204: 1203:GNU Classpath 1199: 1192: 1190: 1188: 1184: 1179: 1175: 1173: 1169: 1165: 1160: 1158: 1154: 1153: 1148: 1144: 1139: 1136: 1134: 1129: 1127: 1126: 1120: 1117: 1115: 1111: 1105: 1102: 1100: 1097:output (i.e. 1096: 1092: 1088: 1084: 1079: 1077: 1072: 1070: 1066: 1062: 1057: 1049: 1047: 1045: 1040: 1036: 1032: 1028: 1024: 1017: 1015: 1009: 1001: 999: 997: 992: 984: 982: 980: 976: 971: 969: 962: 960: 957: 955: 947: 945: 943: 942:indeterminacy 939: 934: 932: 925:Specification 924: 922: 920: 912: 906: 896: 885: 883: 879: 871: 869: 867: 863: 859: 855: 850: 848: 843: 841: 837: 831: 824: 822: 818: 814: 811:, restricted 810: 805: 803: 799: 795: 791: 787: 779: 777: 775: 767: 762: 755: 753: 751: 747: 743: 739: 734: 732: 728: 723: 721: 717: 713: 705: 703: 700: 698: 694: 690: 683: 680: 672: 670: 667: 664: 660: 655: 653: 649: 645: 641: 637: 633: 630: 625: 623: 619: 614: 612: 608: 603: 601: 597: 593: 581: 576: 574: 569: 567: 562: 561: 559: 558: 551: 548: 547: 541: 540: 533: 530: 528: 525: 523: 520: 519: 513: 512: 505: 502: 500: 497: 495: 492: 490: 487: 485: 482: 480: 477: 475: 472: 470: 467: 465: 462: 461: 455: 454: 447: 444: 442: 439: 437: 434: 432: 429: 427: 424: 422: 419: 417: 414: 412: 409: 407: 404: 403: 400: 395: 394: 387: 384: 382: 379: 377: 374: 372: 369: 367: 364: 362: 359: 357: 354: 352: 349: 347: 344: 342: 339: 338: 332: 331: 324: 321: 319: 316: 314: 311: 309: 308:Documentation 306: 304: 301: 299: 296: 295: 289: 288: 281: 278: 276: 273: 271: 268: 266: 263: 261: 258: 256: 253: 251: 248: 246: 243: 241: 238: 236: 233: 231: 228: 226: 223: 221: 218: 216: 213: 211: 208: 206: 203: 201: 198: 196: 193: 191: 188: 186: 183: 181: 178: 177: 173: 172:Methodologies 168: 167: 160: 157: 155: 152: 150: 147: 145: 142: 140: 137: 135: 132: 130: 127: 126: 120: 119: 112: 109: 107: 104: 102: 99: 97: 94: 92: 89: 87: 84: 82: 79: 77: 74: 72: 69: 67: 66:Data modeling 64: 63: 57: 56: 53: 49: 45: 44: 41: 37: 33: 19: 3828:Data masking 3683: 3387:Cyberwarfare 3236: 3230: 3218:. Retrieved 3189:. Retrieved 3177: 3164: 3154: 3134: 3127: 3107: 3100: 3080: 3073: 3047:. 2017 32nd 3044: 3038: 2993: 2987: 2960: 2956: 2946: 2937: 2924: 2916: 2900: 2889: 2856: 2850: 2824: 2812: 2791: 2764: 2760: 2750: 2741: 2731: 2720: 2714: 2694:. New York: 2689: 2681: 2660: 2650: 2638:bugzilla.org 2637: 2628: 2603: 2599: 2589: 2565: 2558: 2546:. Retrieved 2531: 2524: 2514:December 19, 2512:. Retrieved 2507: 2497: 2485:. Retrieved 2481: 2472: 2460:. Retrieved 2458:. QuoteFancy 2450: 2442: 2423: 2414: 2395: 2370: 2362: 2342: 2335: 2324: 2314: 2303: 2293: 2276: 2272: 2263: 2232: 2190: 2184: 2172:. Retrieved 2168:the original 2158: 2149: 2140: 2125:. Retrieved 2121:the original 2116: 2113:IMIS Journal 2112: 2099: 2088: 2079: 2060:Software rot 2040:RISKS Digest 2019: 2015: 2012:ISO/IEC 9126 2007:Hardware bug 1987:Anti-pattern 1971: 1965:Ellen Ullman 1960: 1949:Office Space 1947: 1938: 1929: 1923: 1913: 1907: 1881: 1877: 1866: 1820:Syntax error 1776:file handles 1739:dereference. 1737:Null pointer 1668:Incompatible 1624:control flow 1621: 1612:Control flow 1588:algorithms, 1575: 1566: 1563:Design error 1558: 1539: 1517: 1507: 1505: 1494: 1487: 1479: 1452: 1449:Implications 1408: 1398: 1396: 1384: 1382: 1373: 1368: 1364: 1360: 1356: 1352: 1351: 1342:show stopper 1341: 1339: 1334: 1330: 1326: 1322: 1318: 1314: 1310: 1306: 1302: 1298: 1293: 1292: 1280: 1271: 1267: 1259: 1255: 1251: 1247: 1243: 1241: 1223: 1220: 1214: 1210: 1207:unconfirmed. 1206: 1180: 1176: 1161: 1150: 1140: 1137: 1130: 1123: 1121: 1118: 1106: 1103: 1080: 1073: 1060: 1059: 1021: 1005: 988: 972: 966: 958: 952:One goal of 951: 935: 928: 916: 910: 900: 886: 875: 864:than for an 851: 844: 832: 828: 806: 783: 771: 737: 735: 730: 726: 724: 719: 715: 711: 709: 701: 696: 695:= "change", 692: 691:(from Greek 688: 687: 668: 656: 626: 615: 610: 604: 592:software bug 591: 589: 426:UML Modeling 421:GUI designer 86:Construction 76:Requirements 40: 30:To report a 18:Computer bug 3768:Misuse case 3602:Infostealer 3577:Email fraud 3542:Data breach 3377:Cybergeddon 1869:New America 1858:In politics 1847:philosophy. 1687:Concurrency 1650:Interfacing 1636:conditional 1630:, infinite 1618:Logic error 1467:health care 1405:Known issue 1399:maintenance 1187:work around 1133:code review 1125:logic error 1031:Linus's law 1023:Open source 1018:Open source 1008:bottlenecks 919:code review 866:interpreted 809:type system 706:Controversy 684:Terminology 144:Prototyping 139:Incremental 111:Maintenance 91:Engineering 3833:Encryption 3709:Web shells 3649:Ransomware 3597:Hacktivism 3360:Cybercrime 3220:August 23, 3191:August 22, 2803:2007.10912 2705:0029356717 2606:: 106344. 2439:Elias Levy 2071:References 1902:MissingNo. 1818:See also: 1729:See also: 1725:Resourcing 1704:Errors in 1642:, and the 1616:See also: 1572:Arithmetic 1516:, and the 1193:Management 1152:heisenbugs 1039:Elias Levy 989:Tools for 979:unit tests 872:Techniques 868:language. 813:namespaces 756:Prevention 746:Al Franken 516:Glossaries 106:Deployment 3664:Shellcode 3659:Scareware 3507:Crimeware 3467:Backdoors 2998:CiteSeerX 2979:0098-5589 2873:1937-4194 2859:(6): 46. 2742:wired.com 2620:219733047 2487:August 1, 2462:April 28, 2199:1866-5705 1751:data type 1742:Using an 1632:recursion 1594:underflow 1536:Benchmark 1262:, or for 1211:confirmed 1143:Therac-25 1110:rendering 1061:Debugging 1056:Debugging 1050:Debugging 895:is true. 893:condition 768:in France 629:Therac-25 335:Practices 159:Waterfall 134:Cleanroom 101:Debugging 71:Processes 32:MediaWiki 3899:Category 3838:Firewall 3743:Defenses 3669:Spamming 3654:Rootkits 3627:Phishing 3587:Exploits 3182:Archived 3159:result." 3030:12796895 2897:(1993). 2845:(1990). 2783:14950091 2642:Archived 2548:June 19, 2431:Archived 2403:Archived 2150:BBC News 1981:See also 1920:HAL 9000 1873:Congress 1838:Teamwork 1693:Deadlock 1606:infinity 1582:rounding 1522:firmware 1459:aviation 1369:deferred 1357:critical 1353:Priority 1348:Priority 1319:critical 1294:Severity 1289:Severity 1231:than by 1095:hardware 1091:log file 1076:debugger 891:only if 854:compiled 622:crashing 544:Outlines 474:ISO 9001 416:Profiler 411:Debugger 406:Compiler 381:Stand-up 3679:Spyware 3622:Payload 3617:Malware 3557:Viruses 3537:Botnets 3444:Threats 3283:at the 3241:Picador 3237:The Bug 2134:Alt URL 2127:May 27, 1961:The Bug 1804:pointer 1580:due to 1524:in the 1335:trivial 1331:blocker 1260:feature 1083:console 977:(TDD), 858:runtime 840:pointer 742:coverup 673:History 215:Lean SD 154:V model 96:Testing 3873:(SIEM) 3850:(HIDS) 3734:Zombie 3471:Bombs 3452:Adware 3247:  3142:  3115:  3088:  3028:  3018:  3000:  2977:  2909:  2881:538311 2879:  2871:  2781:  2702:  2618:  2577:  2539:  2383:  2350:  2251:  2197:  2016:defect 1895:glitch 1814:Syntax 1772:memory 1483:GitHub 1367:, and 1283:triage 1252:ticket 1248:defect 1181:In an 1087:window 784:Newer 731:defect 716:defect 489:SWEBOK 210:Kanban 185:DevOps 149:Spiral 81:Design 3719:Worms 3714:Wiper 3632:Voice 3480:Logic 3185:(PDF) 3174:(PDF) 3026:S2CID 2934:(PDF) 2877:S2CID 2821:(PDF) 2798:arXiv 2779:S2CID 2616:S2CID 2279:(3). 2018:or a 1963:, by 1883:said. 1827:token 1753:(see 1555:Types 1386:patch 1379:Patch 1268:story 1256:issue 1225:Tools 1215:fixed 1093:or a 973:With 790:BASIC 720:error 697:morph 611:buggy 594:is a 484:PMBOK 399:Tools 260:SEMAT 255:Scrum 129:Agile 3485:Time 3475:Fork 3245:ISBN 3222:2016 3193:2016 3140:ISBN 3113:ISBN 3086:ISBN 3057:IEEE 3049:IEEE 3016:ISBN 2975:ISSN 2907:ISBN 2869:ISSN 2700:ISBN 2575:ISBN 2550:2021 2537:ISBN 2516:2017 2489:2019 2464:2024 2381:ISBN 2348:ISBN 2249:ISBN 2237:IEEE 2195:ISSN 2176:2012 2129:2024 2065:VUCA 1931:2010 1592:and 1501:SLOC 1491:Cost 1361:high 1323:high 1272:epic 940:and 880:and 836:Java 815:and 802:Rust 800:and 792:and 693:meta 499:IREB 494:ITIL 464:CMMI 341:ATDD 250:SAFe 220:LeSS 195:DSDM 3490:Zip 3061:doi 3053:ACM 3008:doi 2965:doi 2861:doi 2769:doi 2669:hdl 2608:doi 2604:126 2377:480 2241:doi 1774:or 1674:or 1672:API 1604:or 1602:NaN 1512:by 1473:or 1389:. 1365:low 1327:low 1270:or 1244:bug 1239:. 1235:to 1170:by 1159:). 1114:I/O 1101:). 1099:LED 1029:as 903:foo 889:foo 823:): 738:bug 727:bug 718:or 712:bug 661:'s 624:). 613:. 598:in 596:bug 504:OMG 431:IDE 386:TDD 376:SBE 366:DDD 351:CCO 346:BDD 270:TSP 265:TDD 245:RUP 240:RAD 235:PSP 230:MSF 225:MDD 205:IID 200:FDD 190:DAD 180:ASD 3901:: 3243:. 3239:. 3201:^ 3180:. 3176:. 3059:. 3024:. 3014:. 3006:. 2973:. 2961:41 2959:. 2955:. 2936:. 2875:. 2867:. 2855:. 2849:. 2833:^ 2823:. 2777:. 2765:21 2763:. 2759:. 2740:. 2659:. 2640:. 2636:. 2614:. 2602:. 2598:. 2569:. 2506:. 2480:. 2441:, 2437:, 2413:, 2409:, 2379:. 2323:. 2302:. 2283:: 2275:. 2271:. 2247:. 2235:. 2210:^ 2148:. 2117:12 2115:. 2111:. 2087:. 1761:). 1716:. 1708:, 1646:. 1622:A 1608:. 1584:, 1469:, 1465:, 1461:, 1457:, 1363:, 1359:, 1344:. 1333:, 1329:, 1325:, 1321:, 1301:, 1278:. 1266:, 1258:, 1254:, 1250:, 1246:, 1174:. 1089:, 1085:, 1067:. 1046:. 944:. 905:: 852:A 804:. 798:C# 722:. 654:. 605:A 602:. 590:A 371:PP 361:CD 356:CI 280:XP 275:UP 3328:e 3321:t 3314:v 3297:" 3290:" 3267:" 3253:. 3224:. 3195:. 3148:. 3121:. 3094:. 3067:. 3063:: 3051:/ 3032:. 3010:: 2981:. 2967:: 2863:: 2857:7 2806:. 2800:: 2785:. 2771:: 2744:. 2671:: 2622:. 2610:: 2583:. 2552:. 2518:. 2491:. 2466:. 2389:. 2356:. 2329:. 2308:. 2277:2 2257:. 2243:: 2201:. 2178:. 2131:. 1956:. 1799:. 1792:. 1767:. 1757:/ 1746:. 1217:. 821:C 794:C 579:e 572:t 565:v 38:. 20:)

Index

Computer bug
MediaWiki
Knowledge (XXG):Bug reports
Software development
Data modeling
Processes
Requirements
Design
Construction
Engineering
Testing
Debugging
Deployment
Maintenance
Agile
Cleanroom
Incremental
Prototyping
Spiral
V model
Waterfall
Methodologies
ASD
DevOps
DAD
DSDM
FDD
IID
Kanban
Lean SD

Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.

↑