{"id":499,"date":"2011-08-26T12:30:00","date_gmt":"2011-08-26T12:30:00","guid":{"rendered":"http:\/\/www.javacodegeeks.com\/2012\/10\/how-many-bugs-do-you-have-in-your-code.html"},"modified":"2012-10-21T20:05:06","modified_gmt":"2012-10-21T20:05:06","slug":"how-many-bugs-do-you-have-in-your-code","status":"publish","type":"post","link":"https:\/\/www.javacodegeeks.com\/2011\/08\/how-many-bugs-do-you-have-in-your-code.html","title":{"rendered":"How many bugs do you have in your code?"},"content":{"rendered":"<div dir=\"ltr\" style=\"text-align: left\">If you follow <a href=\"http:\/\/swreflections.blogspot.com\/2011\/02\/zero-bug-tolerance-intolerance.html\">Zero Bug Tolerance<\/a> of course you\u2019re not supposed to have any bugs to fix after the code is  done. But let\u2019s get real. Is there any way to know how many bugs you&#8217;re  missing and will have to fix later, and how many bugs you might already  have in your code? Are there any <a href=\"http:\/\/stackoverflow.com\/questions\/862277\/what-is-the-industry-standard-for-bugs-per-1000-lines-of-code\"><span style=\"text-decoration: underline\">industry<\/span> measures of code quality<\/a> that you can use as a starting point? <\/p>\n<p>For questions like these, the first place I look is one of the books  by Capers Jones: arguably the leading expert in all things to do with  software development metrics. There\u2019s <a href=\"http:\/\/www.amazon.com\/Applied-Software-Measurement-Analysis-Productivity\/dp\/0071502440\/ref=sr_1_2?s=books&amp;ie=UTF8&amp;qid=1310482050&amp;sr=1-2\">Applied Software Measurement<\/a>, or <a href=\"http:\/\/www.amazon.com\/Estimating-Software-Costs-Bringing-Realism\/dp\/0071483004\/ref=sr_1_3?s=books&amp;ie=UTF8&amp;qid=1310482050&amp;sr=1-3\">Estimating Software Costs<\/a>, or <a href=\"http:\/\/www.amazon.com\/Software-Engineering-Best-Practices-Successful\/dp\/007162161X\">Software Engineering Best Practices: Lessons from Successful Projects in the Top Companies<\/a>.  These books offer different views into a fascinating set of data that  Capers Jones has collected over decades from thousands of different  projects. It\u2019s easy to spend hours getting lost in this data set, and  reading through and questioning the findings that he draws from it. <\/p>\n<p>So what can we learn from Capers Jones about bugs and defect potentials and defect density rates? A lot, actually. <\/p>\n<p>On average 85% of bugs introduced in design and development are  caught before the code is released (this is the average in the US as of  2009). His research shows that this defect removal rate has stayed  roughly the same over 20 years, which is disappointing given the  advances in tools and methods over that time. <\/p>\n<p>We introduce 5 bugs per Function Point (Capers Jones is awfully fond of measuring everything by <a href=\"http:\/\/en.wikipedia.org\/wiki\/Function_point\">Function Points<\/a>,  which are an abstract way of measuring code size), depending on the  type of system being built. Web systems are a bit lower surprisingly, at  4 bugs per Function Point; other internal business systems are 5,  military systems average around 7. Using <a href=\"http:\/\/www.spr.com\/programming-languages-table.html\">backfiring<\/a> (a crude technique to convert function points back into LOC measures) you can equivalence 1 Function Point to about <a href=\"http:\/\/www.qsm.com\/resources\/function-point-languages-table\">50-55 lines of Java code<\/a>. <\/p>\n<p>For the sake of simplicity, let\u2019s use 1 Function Point = 50 LOC, and  keep in mind that all of these numbers are really rough, and that using  backfiring techniques to translate Function Points to source code  statements introduces a probability of error, but it\u2019s a lot easier than  trying to think in Function Points. And all I want here is a rough  indicator of how much trouble a team might be in. <div style=\"display:inline-block; margin: 15px 0;\"> <div id=\"adngin-JavaCodeGeeks_incontent_video-0\" style=\"display:inline-block;\"><\/div> <\/div><\/p>\n<p>If 85% of bugs are hopefully found and fixed before the code is  released, this leaves 0.75 bugs per Function Point unfound (and  obviously unfixed) in the code when it gets to production. Which means  that <span style=\"font-weight: bold\">for a small application of 1,000  Function Points (50,000 or so lines of Java code), you could expect  around 750 defects at release <\/span>. <\/p>\n<p>And this is only accounting for the bugs that you don\u2019t already know  about: a lot of code is released with a list of known bugs that the  development team hasn\u2019t had a chance to fix, or doesn\u2019t think is worth  fixing, or doesn\u2019t know how to fix. And, this is just your code: it  doesn\u2019t account for bugs in the technology stack that the application  depends on: the frameworks and application platform, database and  messaging middleware, and any open source libraries or COTS that you  take advantage of. <\/p>\n<p>Of these 750+ bugs around 25% will be severity 1 show stoppers \u2013  real production problems that cause something significant to break. <\/p>\n<p>Ouch \u2013 no wonder most teams will spend a lot of time on support and  fixing bugs after releasing a big system. Of course, if you\u2019re building  and releasing software incrementally, you\u2019ll find and fix more of these  bugs as you go along, but you\u2019ll still be fixing a lot of bugs in  production. <\/p>\n<p>Remember that these are rough averages. And remember (especially the  other guys out there), we can\u2019t all be above average, no matter how  much we would like to be. For risk management purposes, it might be best  to stick with averages, or even consider yourself below the bar. <\/p>\n<p>Also keep in mind that defect potentials increase with the size of the system \u2013 <a href=\"http:\/\/www.informationweek.com\/news\/development\/c\/225701340\">big apps have more bugs<\/a> on average. Not only is there a higher potential to write buggy code in  bigger systems, but as the code base gets bigger and more complex it\u2019s  also harder to find and fix bugs. So big systems get released with even  more bugs, and really big apps with a lot more bugs. <\/p>\n<p><span style=\"font-weight: bold\">All of this gets worse in maintenance<\/span><\/p>\n<p>In maintenance, the average defect potential for making changes is  higher than in development, about 6 bugs per Function Point instead of  5. And the chance of finding and fixing mistakes in your changes is  lower (83%).  This is all because it\u2019s harder to work with legacy code  that you didn\u2019t write and don\u2019t understand all that well. So you should  expect to release 1.08 bugs per Function Point when changing code in  maintenance, instead of 0.75 bugs per Function Point. <\/p>\n<p>And maintenance teams still have to deal with the latent bugs in the  system, some of which may hide in the code for years, or forever. This  includes heisenbugs and ghosts and weird timing issues and concurrency  problems that disappear when you try to debug them. On average, 50% of  residual latent defects are found each calendar year. The more people  using your code, the faster that these bugs will be found.  <\/p>\n<p>Of course, once you find these bugs, you still have to fix them. The  average maintenance programmer can be expected to fix around 10 bugs  per month \u2013 and maybe implement some small enhancements too. That&#8217;s not a  great return on investment. <\/p>\n<p>Then there\u2019s the problem of bug re-injections, or regressions \u2013   when a programmer breaks something accidentally as a side-effect of  making a fix. On average, programmers fixing a bug will introduce a new  bug 7% of the time \u2013 and this can run as high as 20% for complex,  poorly-structured code. Trying to fix these bad fixes is even worse \u2013  programmers trying to fix these mistakes have a 15% chance of still  messing up the fix, and a 30% chance of introducing yet another bug as a  side effect! It&#8217;s better to roll-back the fix and start again. <\/p>\n<p>Unfortunately, all of this gets worse over time. Unless you are  doing a perfect job of refactoring and continuously simplifying the  code, you can expect code complexity to increase an average of between  1% and 3% per year. And most systems get bigger over time, as you add  more features and copy-and-paste code (of course you don&#8217;t do that): the  code base for a system under maintenance increases between 5-10% per  year. As the code gets bigger and more complex, the chance for more bugs  also increases each year. <\/p>\n<p><span style=\"font-weight: bold\">But what if we\u2019re not average? What if we\u2019re best in class?<\/span><\/p>\n<p>What if you are doing an almost perfect job, if you are truly best  in class? Capers Jones finds that best in class teams create half as  many bugs as average teams (2.5 or fewer defects per Function Point  instead of 5), and they find and fix  95% or more of these bugs before  the code is released. That sounds impressive &#8211; it means only 0.125 bugs  per Function Point. But for a 50,000 LOC system, that\u2019s still somewhere  around 125 bugs on delivery. <\/p>\n<p>And as for zero bugs? In his analysis of 13,000 projects over a  period of more than 40 years, there were 2 projects with no defects  reported within a year of release. So you can aspire to it. But don\u2019t  depend on it.<\/p>\n<p><strong><i>Reference: <\/i><\/strong><a href=\"http:\/\/swreflections.blogspot.com\/2011\/08\/bugs-and-numbers-how-many-bugs-do-you.html\">Bugs and Numbers: How many bugs do you have in your code?<\/a> from our <a href=\"http:\/\/www.javacodegeeks.com\/p\/jcg.html\">JCG partner<\/a> Jim Bird at the <a href=\"http:\/\/swreflections.blogspot.com\/\">Building Real Software blog<\/a>.<\/p>\n<div style=\"margin: 0px\"><strong><i>Related Articles :<\/i><\/strong><\/div>\n<ul>\n<li><a href=\"http:\/\/www.javacodegeeks.com\/2011\/02\/using-findbugs-to-produce-substantially.html\">Using FindBugs to produce substantially less buggy code<\/a><\/li>\n<li><a href=\"http:\/\/www.javacodegeeks.com\/2011\/07\/java-tools-source-code-optimization-and.html\">Java Tools: Source Code Optimization and Analysis<\/a><\/li>\n<li><a href=\"http:\/\/www.javacodegeeks.com\/2011\/06\/not-doing-code-reviews-whats-your.html\">Not doing Code Reviews? What\u2019s your excuse?<\/a><\/li>\n<li><a href=\"http:\/\/www.javacodegeeks.com\/2011\/04\/automated-tests-boost-development-speed.html\">Why Automated Tests Boost Your Development Speed<\/a><\/li>\n<li><a href=\"http:\/\/www.javacodegeeks.com\/2011\/06\/lessons-in-software-reliability.html\">Lessons in Software Reliability<\/a>&nbsp; <\/li>\n<\/ul>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>If you follow Zero Bug Tolerance of course you\u2019re not supposed to have any bugs to fix after the code is done. But let\u2019s get real. Is there any way to know how many bugs you&#8217;re missing and will have to fix later, and how many bugs you might already have in your code? Are &hellip;<\/p>\n","protected":false},"author":41,"featured_media":2386,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[15],"tags":[212],"class_list":["post-499","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-software-development","tag-software-errors"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>How many bugs do you have in your code? - Java Code Geeks<\/title>\n<meta name=\"description\" content=\"If you follow Zero Bug Tolerance of course you\u2019re not supposed to have any bugs to fix after the code is done. But let\u2019s get real. Is there any way to\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.javacodegeeks.com\/2011\/08\/how-many-bugs-do-you-have-in-your-code.html\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How many bugs do you have in your code? - Java Code Geeks\" \/>\n<meta property=\"og:description\" content=\"If you follow Zero Bug Tolerance of course you\u2019re not supposed to have any bugs to fix after the code is done. But let\u2019s get real. Is there any way to\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.javacodegeeks.com\/2011\/08\/how-many-bugs-do-you-have-in-your-code.html\" \/>\n<meta property=\"og:site_name\" content=\"Java Code Geeks\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/javacodegeeks\" \/>\n<meta property=\"article:published_time\" content=\"2011-08-26T12:30:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2012-10-21T20:05:06+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/software-development-2-logo.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"150\" \/>\n\t<meta property=\"og:image:height\" content=\"150\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Jim Bird\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@javacodegeeks\" \/>\n<meta name=\"twitter:site\" content=\"@javacodegeeks\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Jim Bird\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2011\\\/08\\\/how-many-bugs-do-you-have-in-your-code.html#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2011\\\/08\\\/how-many-bugs-do-you-have-in-your-code.html\"},\"author\":{\"name\":\"Jim Bird\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#\\\/schema\\\/person\\\/3998192f3bf1e7750944bfa22630fdcc\"},\"headline\":\"How many bugs do you have in your code?\",\"datePublished\":\"2011-08-26T12:30:00+00:00\",\"dateModified\":\"2012-10-21T20:05:06+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2011\\\/08\\\/how-many-bugs-do-you-have-in-your-code.html\"},\"wordCount\":1325,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2011\\\/08\\\/how-many-bugs-do-you-have-in-your-code.html#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2012\\\/10\\\/software-development-2-logo.jpg\",\"keywords\":[\"Software Errors\"],\"articleSection\":[\"Software Development\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.javacodegeeks.com\\\/2011\\\/08\\\/how-many-bugs-do-you-have-in-your-code.html#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2011\\\/08\\\/how-many-bugs-do-you-have-in-your-code.html\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2011\\\/08\\\/how-many-bugs-do-you-have-in-your-code.html\",\"name\":\"How many bugs do you have in your code? - Java Code Geeks\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2011\\\/08\\\/how-many-bugs-do-you-have-in-your-code.html#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2011\\\/08\\\/how-many-bugs-do-you-have-in-your-code.html#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2012\\\/10\\\/software-development-2-logo.jpg\",\"datePublished\":\"2011-08-26T12:30:00+00:00\",\"dateModified\":\"2012-10-21T20:05:06+00:00\",\"description\":\"If you follow Zero Bug Tolerance of course you\u2019re not supposed to have any bugs to fix after the code is done. But let\u2019s get real. Is there any way to\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2011\\\/08\\\/how-many-bugs-do-you-have-in-your-code.html#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.javacodegeeks.com\\\/2011\\\/08\\\/how-many-bugs-do-you-have-in-your-code.html\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2011\\\/08\\\/how-many-bugs-do-you-have-in-your-code.html#primaryimage\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2012\\\/10\\\/software-development-2-logo.jpg\",\"contentUrl\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2012\\\/10\\\/software-development-2-logo.jpg\",\"width\":150,\"height\":150},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2011\\\/08\\\/how-many-bugs-do-you-have-in-your-code.html#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.javacodegeeks.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Software Development\",\"item\":\"https:\\\/\\\/www.javacodegeeks.com\\\/category\\\/software-development\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"How many bugs do you have in your code?\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#website\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/\",\"name\":\"Java Code Geeks\",\"description\":\"Java Developers Resource Center\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#organization\"},\"alternateName\":\"JCG\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.javacodegeeks.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#organization\",\"name\":\"Exelixis Media P.C.\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2022\\\/06\\\/exelixis-logo.png\",\"contentUrl\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2022\\\/06\\\/exelixis-logo.png\",\"width\":864,\"height\":246,\"caption\":\"Exelixis Media P.C.\"},\"image\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/javacodegeeks\",\"https:\\\/\\\/x.com\\\/javacodegeeks\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#\\\/schema\\\/person\\\/3998192f3bf1e7750944bfa22630fdcc\",\"name\":\"Jim Bird\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/12045e36cd5c3c349d8d92a3cb2ced977bd13b8f800bf76e882767daff8aad3b?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/12045e36cd5c3c349d8d92a3cb2ced977bd13b8f800bf76e882767daff8aad3b?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/12045e36cd5c3c349d8d92a3cb2ced977bd13b8f800bf76e882767daff8aad3b?s=96&d=mm&r=g\",\"caption\":\"Jim Bird\"},\"description\":\"Jim is an experienced CTO, software development manager and project manager, who has worked on high-performance, high-reliability mission-critical systems for many years, as well as building software development tools. His current interests include scaling Lean and Agile software development methodologies, software security and software assurance.\",\"sameAs\":[\"http:\\\/\\\/swreflections.blogspot.com\\\/\"],\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/author\\\/Jim-Bird\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"How many bugs do you have in your code? - Java Code Geeks","description":"If you follow Zero Bug Tolerance of course you\u2019re not supposed to have any bugs to fix after the code is done. But let\u2019s get real. Is there any way to","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.javacodegeeks.com\/2011\/08\/how-many-bugs-do-you-have-in-your-code.html","og_locale":"en_US","og_type":"article","og_title":"How many bugs do you have in your code? - Java Code Geeks","og_description":"If you follow Zero Bug Tolerance of course you\u2019re not supposed to have any bugs to fix after the code is done. But let\u2019s get real. Is there any way to","og_url":"https:\/\/www.javacodegeeks.com\/2011\/08\/how-many-bugs-do-you-have-in-your-code.html","og_site_name":"Java Code Geeks","article_publisher":"https:\/\/www.facebook.com\/javacodegeeks","article_published_time":"2011-08-26T12:30:00+00:00","article_modified_time":"2012-10-21T20:05:06+00:00","og_image":[{"width":150,"height":150,"url":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/software-development-2-logo.jpg","type":"image\/jpeg"}],"author":"Jim Bird","twitter_card":"summary_large_image","twitter_creator":"@javacodegeeks","twitter_site":"@javacodegeeks","twitter_misc":{"Written by":"Jim Bird","Est. reading time":"7 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.javacodegeeks.com\/2011\/08\/how-many-bugs-do-you-have-in-your-code.html#article","isPartOf":{"@id":"https:\/\/www.javacodegeeks.com\/2011\/08\/how-many-bugs-do-you-have-in-your-code.html"},"author":{"name":"Jim Bird","@id":"https:\/\/www.javacodegeeks.com\/#\/schema\/person\/3998192f3bf1e7750944bfa22630fdcc"},"headline":"How many bugs do you have in your code?","datePublished":"2011-08-26T12:30:00+00:00","dateModified":"2012-10-21T20:05:06+00:00","mainEntityOfPage":{"@id":"https:\/\/www.javacodegeeks.com\/2011\/08\/how-many-bugs-do-you-have-in-your-code.html"},"wordCount":1325,"commentCount":0,"publisher":{"@id":"https:\/\/www.javacodegeeks.com\/#organization"},"image":{"@id":"https:\/\/www.javacodegeeks.com\/2011\/08\/how-many-bugs-do-you-have-in-your-code.html#primaryimage"},"thumbnailUrl":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/software-development-2-logo.jpg","keywords":["Software Errors"],"articleSection":["Software Development"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.javacodegeeks.com\/2011\/08\/how-many-bugs-do-you-have-in-your-code.html#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.javacodegeeks.com\/2011\/08\/how-many-bugs-do-you-have-in-your-code.html","url":"https:\/\/www.javacodegeeks.com\/2011\/08\/how-many-bugs-do-you-have-in-your-code.html","name":"How many bugs do you have in your code? - Java Code Geeks","isPartOf":{"@id":"https:\/\/www.javacodegeeks.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.javacodegeeks.com\/2011\/08\/how-many-bugs-do-you-have-in-your-code.html#primaryimage"},"image":{"@id":"https:\/\/www.javacodegeeks.com\/2011\/08\/how-many-bugs-do-you-have-in-your-code.html#primaryimage"},"thumbnailUrl":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/software-development-2-logo.jpg","datePublished":"2011-08-26T12:30:00+00:00","dateModified":"2012-10-21T20:05:06+00:00","description":"If you follow Zero Bug Tolerance of course you\u2019re not supposed to have any bugs to fix after the code is done. But let\u2019s get real. Is there any way to","breadcrumb":{"@id":"https:\/\/www.javacodegeeks.com\/2011\/08\/how-many-bugs-do-you-have-in-your-code.html#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.javacodegeeks.com\/2011\/08\/how-many-bugs-do-you-have-in-your-code.html"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.javacodegeeks.com\/2011\/08\/how-many-bugs-do-you-have-in-your-code.html#primaryimage","url":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/software-development-2-logo.jpg","contentUrl":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/software-development-2-logo.jpg","width":150,"height":150},{"@type":"BreadcrumbList","@id":"https:\/\/www.javacodegeeks.com\/2011\/08\/how-many-bugs-do-you-have-in-your-code.html#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.javacodegeeks.com\/"},{"@type":"ListItem","position":2,"name":"Software Development","item":"https:\/\/www.javacodegeeks.com\/category\/software-development"},{"@type":"ListItem","position":3,"name":"How many bugs do you have in your code?"}]},{"@type":"WebSite","@id":"https:\/\/www.javacodegeeks.com\/#website","url":"https:\/\/www.javacodegeeks.com\/","name":"Java Code Geeks","description":"Java Developers Resource Center","publisher":{"@id":"https:\/\/www.javacodegeeks.com\/#organization"},"alternateName":"JCG","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.javacodegeeks.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.javacodegeeks.com\/#organization","name":"Exelixis Media P.C.","url":"https:\/\/www.javacodegeeks.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.javacodegeeks.com\/#\/schema\/logo\/image\/","url":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2022\/06\/exelixis-logo.png","contentUrl":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2022\/06\/exelixis-logo.png","width":864,"height":246,"caption":"Exelixis Media P.C."},"image":{"@id":"https:\/\/www.javacodegeeks.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/javacodegeeks","https:\/\/x.com\/javacodegeeks"]},{"@type":"Person","@id":"https:\/\/www.javacodegeeks.com\/#\/schema\/person\/3998192f3bf1e7750944bfa22630fdcc","name":"Jim Bird","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/12045e36cd5c3c349d8d92a3cb2ced977bd13b8f800bf76e882767daff8aad3b?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/12045e36cd5c3c349d8d92a3cb2ced977bd13b8f800bf76e882767daff8aad3b?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/12045e36cd5c3c349d8d92a3cb2ced977bd13b8f800bf76e882767daff8aad3b?s=96&d=mm&r=g","caption":"Jim Bird"},"description":"Jim is an experienced CTO, software development manager and project manager, who has worked on high-performance, high-reliability mission-critical systems for many years, as well as building software development tools. His current interests include scaling Lean and Agile software development methodologies, software security and software assurance.","sameAs":["http:\/\/swreflections.blogspot.com\/"],"url":"https:\/\/www.javacodegeeks.com\/author\/Jim-Bird"}]}},"_links":{"self":[{"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/posts\/499","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/users\/41"}],"replies":[{"embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/comments?post=499"}],"version-history":[{"count":0,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/posts\/499\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/media\/2386"}],"wp:attachment":[{"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/media?parent=499"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/categories?post=499"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/tags?post=499"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}