Technical Debt

Technical Debt is a way of describing the hidden cost of a poorly built system.

Often, software is produced on a very tight, if not unrealistic timeline. Cutting corners, along with quick and dirty hacks are par for the course. When software is developed without a deliberate effort to be maintainable, it is very likely to be difficult to maintain. The result is that it breaks more frequently, more easily, and it takes longer to add enhancements to the system, resulting in higher maintenance costs and less satisfied users.

Like any debt, there are times when it may be wise to take on technical debt, but it will always be important to understand that you are in debt, and it's not free. Cheap software is anything but cheap.

The true test of good code is how easy it is to change.

Martin Fowler
Refactoring

It can be minimized by following software best practices that have been established over many years, and not only within Salesforce projects.

  1. Understand requirements upfront as much as possible. As software morphs to be close to the desired result, you'll almost always end up with poorly designed code.
  2. Have clear standards for how code is to be developed. Coding conventions help to establish a more maintainable system.
  3. Take time to do design. Instead of diving in head-first, determine the best software architecture for the need at hand.
  4. Write effective unit tests. Having well-written tests can save significant time over the long term, and can help you measure the validity of a system.
  5. Encourage developers to always leave the code at least a little better than they found it. Reducing technical debt is usually done over a long period of time.

 

 

© 2001 – 2023 Object Factory Inc
marker marker marker marker marker