{"id":12845,"date":"2017-07-22T09:22:07","date_gmt":"2017-07-22T16:22:07","guid":{"rendered":"https:\/\/blogs.mentor.com\/verificationhorizons\/?p=12845"},"modified":"2026-03-27T08:38:19","modified_gmt":"2026-03-27T12:38:19","slug":"evolving-product-lifecycle-requires-new-debugging-skills","status":"publish","type":"post","link":"https:\/\/blogs.sw.siemens.com\/verificationhorizons\/2017\/07\/22\/evolving-product-lifecycle-requires-new-debugging-skills\/","title":{"rendered":"Evolving Product Lifecycle Requires New Debugging Skills"},"content":{"rendered":"<p>There\u2019s a wonderful quote in Brian Kernighan book The Elements of Programming Style, where he says \u201cEveryone knows that debugging is twice as hard as writing a program in the first place. So if you&#8217;re as clever as you can be when you write it, how will you ever debug it?\u201d Humor aside, our 2016 Wilson Research Group study supports the claim that debugging is a challenge today, where most projects spend more time involved in debugging than any other task.  <\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/blogs.sw.siemens.com\/wp-content\/uploads\/sites\/54\/2016\/10\/BLOG-2016-WRG-figure-8-5-520x293.png\" alt=\"\" width=\"520\" height=\"293\" class=\"aligncenter size-medium wp-image-12509\" \/><\/p>\n<p>One insidious aspect of debugging is that it is unpredictable if not properly managed.  For example, from a management perspective, it is easy to gather metrics on various processes involved in the product development lifecycle from previous projects in order to plan for the future. However, the unpredictability of debugging becomes a manager\u2019s nightmare. Guidelines for efficient debugging are required to improve productivity.<\/p>\n<p>In reality, debugging is required in every process that spans a products development lifecycle, from conception, architectural design, implementation, post-silicon, and even the test and testbenches we create to verify\/validate a design. The emergence of SystemVerilog and UVM has necessitated the development of new debugging skills and tools. Traditional debugging approaches that were adopted for simple RTL testbenches have become less productive. To address this dearth of new debugging process knowledge I\u2019m excited to announce that the Verification Academy has just released a new UVM debugging course. This course consists of five video sessions. Topics that are covered in this course include:<\/p>\n<p>\u2022\tA historical perspective on the general debugging problem<br \/>\n\u2022\tWays to effectively debug memory leaks in UVM environments<br \/>\n\u2022\tHow to debug connectivity issues between UVM components<br \/>\n\u2022\tGuidelines to effectively debug common issues related to UVM phases<br \/>\n\u2022\tMethods to debug common issues with the UVM configuration database<\/p>\n<p>As always, this course is available free to you. To learn more about our new Verification Academy debugging course, as well as all our other video courses, please visit <a href=\"http:\/\/www.verificationacademy.com\" target=\"_blank\" rel=\"noopener\">www.verificationacademy.com<\/a>. <\/p>\n","protected":false},"excerpt":{"rendered":"<p>There\u2019s a wonderful quote in Brian Kernighan book The Elements of Programming Style, where he says \u201cEveryone knows that debugging&#8230;<\/p>\n","protected":false},"author":71592,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"spanish_translation":"","french_translation":"","german_translation":"","italian_translation":"","polish_translation":"","japanese_translation":"","chinese_translation":"","footnotes":""},"categories":[1],"tags":[326,419,506,751,758,787,820],"industry":[],"product":[],"coauthors":[],"class_list":["post-12845","post","type-post","status-publish","format-standard","hentry","category-news","tag-accellera","tag-debug","tag-functional-verification","tag-systemverilog","tag-testbench","tag-uvm","tag-verification-academy"],"_links":{"self":[{"href":"https:\/\/blogs.sw.siemens.com\/verificationhorizons\/wp-json\/wp\/v2\/posts\/12845","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blogs.sw.siemens.com\/verificationhorizons\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blogs.sw.siemens.com\/verificationhorizons\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blogs.sw.siemens.com\/verificationhorizons\/wp-json\/wp\/v2\/users\/71592"}],"replies":[{"embeddable":true,"href":"https:\/\/blogs.sw.siemens.com\/verificationhorizons\/wp-json\/wp\/v2\/comments?post=12845"}],"version-history":[{"count":1,"href":"https:\/\/blogs.sw.siemens.com\/verificationhorizons\/wp-json\/wp\/v2\/posts\/12845\/revisions"}],"predecessor-version":[{"id":19845,"href":"https:\/\/blogs.sw.siemens.com\/verificationhorizons\/wp-json\/wp\/v2\/posts\/12845\/revisions\/19845"}],"wp:attachment":[{"href":"https:\/\/blogs.sw.siemens.com\/verificationhorizons\/wp-json\/wp\/v2\/media?parent=12845"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.sw.siemens.com\/verificationhorizons\/wp-json\/wp\/v2\/categories?post=12845"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.sw.siemens.com\/verificationhorizons\/wp-json\/wp\/v2\/tags?post=12845"},{"taxonomy":"industry","embeddable":true,"href":"https:\/\/blogs.sw.siemens.com\/verificationhorizons\/wp-json\/wp\/v2\/industry?post=12845"},{"taxonomy":"product","embeddable":true,"href":"https:\/\/blogs.sw.siemens.com\/verificationhorizons\/wp-json\/wp\/v2\/product?post=12845"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/blogs.sw.siemens.com\/verificationhorizons\/wp-json\/wp\/v2\/coauthors?post=12845"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}