Dev.Chan64's Blog

Go Home

"Strategies to Avoid Technical Debt with Expiry-Ready Code"

gpt-4-turbo has translated this article into English.


Background

In environments with extensive End-to-End connectivity, functional changes are frequent, and integration with external interfaces is complex. Various temporary solutions and exception handling logics accumulate rapidly. Especially, ‘make-it-work’ codes if not organized in the long term:

Problem

Execution Strategy: Design and Operate with Expiry-Ready in Focus

It’s more important to design to prevent the accumulation of technical debt than to remove it.
The key lies in making the code deletable, in other words, designing a “structure that facilitates exit.”

Reason for Execution

How to Execute

  1. Specify Deletion Criteria

    • Clearly record the exit timing and reasons in the code using comments like REMOVE_BY, TODO (exp:), @deprecatedUntil
    • Manage through review checks and regular inspections
  2. Clarify Code Responsibility

    • Record why the code exists and how long it is needed, either inside the code or in a knowledge base
    • Manage traceability of code to be removed by linking with release notes, team documents, etc.
  3. Focus on Habituation Rather Than Automation

    • Although not yet introduced to automation infrastructure for CI/CD, substitute with a culture of repetitive reviews based on a manual checklist
  4. Design Exit Through Cleanup Time

Results

Insights

Key Message

“Cleanup is a preparation to enable the code’s exit.”
“Do not use code that cannot be deleted.”


Go Home
Tags: Technical Debt Design Philosophy