{"id":9058,"date":"2022-03-16T17:10:38","date_gmt":"2022-03-16T16:10:38","guid":{"rendered":"https:\/\/moxieglobal.co.uk\/?p=9058"},"modified":"2023-02-05T15:14:13","modified_gmt":"2023-02-05T14:14:13","slug":"how-to-manage-technical-debt","status":"publish","type":"post","link":"https:\/\/moxieglobal.co.uk\/zh\/how-to-manage-technical-debt","title":{"rendered":"How to Manage Technical Debt"},"content":{"rendered":"<div id=\"toc\" style=\"background: #f9f9f9;border: 1px solid #aaa;display: table;margin-bottom: 1em;padding: 1em;width: 350px;\">\n<p class=\"toctitle\" style=\"font-weight: 700;text-align: center;\">Contents <\/p>\n<ul class=\"toc_list\">\n<li><a href=\"#toc-0\">How to transition tech debt from a burden to a strategic lever<\/a><\/li>\n<li><a href=\"#toc-1\">The 3 Best Tactics to Prevent Technical Debt<\/a><\/li>\n<li><a href=\"#toc-2\">The one cultural characteristic you need for a healthy codebase<\/a><\/li>\n<li><a href=\"#toc-3\">How To Reduce Context Switching as a Developer<\/a><\/li>\n<li><a href=\"#toc-4\">New products from Point A<\/a><\/li>\n<\/ul>\n<\/div>\n<p>All in all, there is no one right decision or approach to managing technical debt. Avoid taking on more technical debt without  knowing what that debt really means. You should also be intentional as you pay it off\u2014paying off technical debt for its own sake isn\u2019t always a smart idea. Sometimes keeping the technical debt saves resources you need now, for instance, and the benefits might outweigh the disadvantages.<\/p>\n<p>Applications built with OutSystems rely on standard architectures and frameworks\u2013no proprietary components, runtime engines, or interpreters required. With this in place, technical debt is limited before development even begins. Whatever the case, there are ways to reduce and manage technical debt.<\/p>\n<p><img decoding=\"async\" class='aligncenter' style='display: block;margin-left:auto;margin-right:auto;' src=\"https:\/\/globalcloudteam.com\/wp-content\/uploads\/2022\/08\/7f59f699-0a99-4dfd-a0ef-15aad693bd6d-300x178.jpg\" width=\"303px\" alt=\"managing tech debt\"\/><\/p>\n<p>Unintentional tech debt happens when the code needs improvement for a number of unintentional reasons. E.g., poor work the first time around, or code that\u2019s simply out of date and needs a refresh. Measuring technical debt can be complex, and there are many variables to consider. <a href=\"https:\/\/cryptominer.services\/12-best-practices-for-mobile-application-testing\/\">12 Best Practices for Mobile Application Testing O2I<\/a> The team\u2019s composition changes, technology changes, and even requirements change. Technical debt is inevitable regardless of the team\u2019s makeup or the company. Some debt may also come from insufficient support from the business to address technical debt itself.<\/p>\n<h2 id=\"toc-0\">How to transition tech debt from a burden to a strategic lever<\/h2>\n<p>The most significant consequence of a complex technical debt is that it hinders a company\u2019s ability to compete and innovate. It robs you of resources, time, energy, and the ability to innovate, adapt, and grow. Lucidchart is  the intelligent diagramming application that empowers teams to clarify complexity, align their insights, and build the future\u2014faster. With this intuitive, cloud-based solution, everyone can work visually and collaborate in real time while building flowcharts, mockups, UML diagrams, and more.<\/p>\n<p>If companies wait until every line of code is perfect, projects will never leave the development stage. With agile testing they can sustainably deliver new features with quality. Modularize your architecture, and take a firm stance on technical debt in new components or libraries in the application.<\/p>\n<p><img decoding=\"async\" class='aligncenter' style='display: block;margin-left:auto;margin-right:auto;' src=\"https:\/\/globalcloudteam.com\/wp-content\/uploads\/2021\/03\/e52ae396-382b-4cd8-a602-a47f2f57a890-300x200.jpg\" width=\"306px\" alt=\"managing tech debt\"\/><\/p>\n<p>A concurrent solution may turn out to be more elegant and easier to reason about than an equivalent sequential algorithm. To illustrate these concepts we use, as an example, the Hilbert\u2019s Hotel mathematical problem. If you manage it well, it can help you grow and thrive in a fast-moving market \u2014 but ignore it at your <a href=\"https:\/\/topbitcoinnews.org\/how-long-does-it-take-to-learn-to-code\/\">How Long Does It Take to Learn to Code<\/a> peril. Answering whether the cause of the debt was prudent or reckless behavior isn\u2019t an easy question to address. The team needs to be self-aware enough to know when it\u2019s doing good work , and that\u2019s down to nurturing a team culture of accountability \u2014 something we\u2019ll go into in a little more detail later on.<\/p>\n<h2 id=\"toc-1\">The 3 Best Tactics to Prevent Technical Debt<\/h2>\n<p>Reducing technical debt on time is crucial because accumulated code debt poses a risk not only to a product itself but also to the whole business. When a team struggles with constant changes, high customer expectations, changing requirements, new cyber threats, and developer turnover &#8211; team leaders often struggle with tech debt brought on by that. Learn how to deal with technical debt and how to prepare preventive processes for the future. An ongoing record of changes helps keep a central repository of quick solutions for potential issues. It allows teams to manage issues without having to work on them from scratch.<\/p>\n<ul>\n<li>Often both project managers and developers are reluctant to code refactoring, because, in their words, it doesn\u2019t fix bugs, it is too risky and takes time, or the existing code works fine.<\/li>\n<li>We\u2019ve described the definition of technical debt more in the video below.<\/li>\n<li>For daily practices, engineers can improve the breadcrumbs they leave by asking, \u201cAm I using clear variable names and function names?<\/li>\n<\/ul>\n<p>Poor design and coding practices might finish the project on time, but they create long-term trouble. Developers who come along later will have to deal with those missteps, and they may struggle to maintain and monitor the codebase. The team incurs technical debt because of this poor code design, resulting in a backlog of tasks related to code cleanup.<\/p>\n<h2 id=\"toc-2\">The one cultural characteristic you need for a healthy codebase<\/h2>\n<p>Each day they have at least a few production incidents that impact their users, and their NPS score is dropping month over month. Once you understand the type of tech debt you&#8217;d be taking on, you need to size the cost of it so you can compare it to the return you will get. When teams ask the valid question of &#8216;When will we have time to work on tech debt? &#8216; it&#8217;s hard to know if they mean something small or huge in terms of time, thought, and effort. One way to accomplish this sort of buy-in is to plan larger technical debt initiatives at the same time and in the same way that a company plans its product strategy and roadmap. Whether that\u2019s monthly, quarterly, or every half year, doing that hand-in-hand streamlines the process for the organization and increases visibility for the efforts.<\/p>\n<p><img decoding=\"async\" class='aligncenter' style='display: block;margin-left:auto;margin-right:auto;' src=\"https:\/\/globalcloudteam.com\/wp-content\/uploads\/2022\/01\/big-data-trends-for-2021-2022-you-should-know-3-768x409.jpg\" width=\"305px\" alt=\"managing tech debt\"\/><\/p>\n<p>Otherwise the team risks wasting time on unimportant refactorings. This approach must also be supported by the business side because it might delay new features. Of course this requires that business people understand Technical Debt.<\/p>\n<p>Returning to Goulet\u2019s home-maintenance metaphor, a worn-out roof is a natural part of an aging house, but it still needs replaced if the home will continue to be inhabitable. Unaddressed technical debt might get a team by for a while, but eventually the issues will start to affect greater areas of the production process and the codebase. This is what the credit card and mortgage analogies speak to \u2014 engineering teams are borrowing efficiency now in exchange for having to do more work mending the code later. Just as one can borrow capital in a responsible or careless manner, teams can create technical debt strategically or recklessly, as well.<\/p>\n<h2 id=\"toc-3\">How To Reduce Context Switching as a Developer<\/h2>\n<p>What Do You Need to Know about Software Maintenance Types as an EngineerSoftware developers need to constantly nurture their product to enhance its functionality. Article The one cultural characteristic you need for a healthy codebase Let&#8217;s look at the types of an engineering culture of code ownership and why it is so important. Article 7 examples of sneaky tech debt and how to spot them Some examples of tech debt we&#8217;ve spotted in the wild, to help you identify it in your codebase before it catches you off-guard. Article What Do You Need to Know about Software Maintenance Types as an Engineer Software developers need to constantly nurture their product to enhance its functionality. Product update Start Reducing Technical Debt with Stepsize Here is how to get started with Stepsize to reduce your technical debt in 3 simple steps. This allows the organization to make progress on any acute tech debt items and actually take action from current\/past incidents via the on-call team.<\/p>\n<p>Theproduct owneris empowered to focus the team on the most valuable work first, reducing the scope of the release instead of compromising on quality. As we mentioned in the introduction, the easiest way to accumulate technical debt is to ask too much of your developers in too short a timeframe. Consult with engineers as you develop your product roadmap to ensure your expectations for timelines align reasonably well with their bandwidth. At best, technical debt is an ever-present reminder that says \u201cHi, I\u2019m here, remember when you opted for that quick fix?<\/p>\n<h2 id=\"toc-4\">New products from Point A<\/h2>\n<p>Fix me at some point when you have time.\u201d At its worst, technical debt is a nightmare that haunts your development team\u2019s dreams and constantly eats away at the stability of your application. But that doesn\u2019t mean stakeholders want to listen to an explanation of why you\u2019re prioritizing some underlying architecture update over a new feature they\u2019re personally more excited about. Once you implement a tool, build a framework, etc., it immediately starts becoming outdated.<\/p>\n<p>On the contrary, bugs found during regression testing can be counted as the actual cause of the TD, since fixing the bugs becomes a higher priority than the development of new functionality. Finally, insufficient testing and postponed code refactoring are the most widespread technical causes of TD. Use metrics that indicate when and where your team is being slowed by technical debt. This information will help leaders identify the business impact of these problems and manage technical debt initiatives moving forward.<\/p>\n<p>While the first two of these aren\u2019t too grave, you should, indeed, avoid the latter. You can also break technical debt into design debt, code debt, documentation debt, etc. To avoid technical debt, compromise <a href=\"https:\/\/cryptonews.wiki\/cloud-security-assessments-cloud-security-audit\/\">Cloud Security Assessments Cloud Security Audit<\/a> the code quality only when necessary, and remember to always refactor the code according to the plan. Choose your set of preventive metrics like the number of bugs or the number of failed CD and CI.<\/p>","protected":false},"excerpt":{"rendered":"<p>Contents How to transition tech debt from a burden to a strategic lever The 3 Best Tactics to Prevent Technical Debt The one cultural characteristic you need for a healthy codebase How To Reduce Context Switching as a Developer New products from Point A All in all, there is no one right decision or approach&hellip;&nbsp;<a href=\"https:\/\/moxieglobal.co.uk\/zh\/how-to-manage-technical-debt\" rel=\"bookmark\">\u9605\u8bfb\u66f4\u591a &raquo;<span class=\"screen-reader-text\">How to Manage Technical Debt<\/span><\/a><\/p>","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"neve_meta_sidebar":"","neve_meta_container":"","neve_meta_enable_content_width":"","neve_meta_content_width":0,"neve_meta_title_alignment":"","neve_meta_author_avatar":"","neve_post_elements_order":"","neve_meta_disable_header":"","neve_meta_disable_footer":"","neve_meta_disable_title":"","_themeisle_gutenberg_block_has_review":false,"footnotes":""},"categories":[82],"tags":[],"_links":{"self":[{"href":"https:\/\/moxieglobal.co.uk\/zh\/wp-json\/wp\/v2\/posts\/9058"}],"collection":[{"href":"https:\/\/moxieglobal.co.uk\/zh\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/moxieglobal.co.uk\/zh\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/moxieglobal.co.uk\/zh\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/moxieglobal.co.uk\/zh\/wp-json\/wp\/v2\/comments?post=9058"}],"version-history":[{"count":1,"href":"https:\/\/moxieglobal.co.uk\/zh\/wp-json\/wp\/v2\/posts\/9058\/revisions"}],"predecessor-version":[{"id":9059,"href":"https:\/\/moxieglobal.co.uk\/zh\/wp-json\/wp\/v2\/posts\/9058\/revisions\/9059"}],"wp:attachment":[{"href":"https:\/\/moxieglobal.co.uk\/zh\/wp-json\/wp\/v2\/media?parent=9058"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/moxieglobal.co.uk\/zh\/wp-json\/wp\/v2\/categories?post=9058"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/moxieglobal.co.uk\/zh\/wp-json\/wp\/v2\/tags?post=9058"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}