Tools for Managing Dependencies in Architecture Improvement (DSM, ArchUnit)

Over the past year and a half, I’ve been gradually improving a legacy system at my company. Queries containing business logic, tables composed of dozens of columns that look like random alphabets, complex code that requires careful examination to understand where to start making changes… I often had to confirm with team members if my understanding was correct, and I was never confident about modifying the code. One of the reasons why it’s difficult to easily touch the points we want to fix is the ‘dependency’ problem. If you want to modify B, but A, C, D… are using B in multiple places, modifying B becomes a challenging task. I want to briefly document the tools that helped analyze this dependency problem in the process of improving the architecture and the tools we used to make it into rules shared by the team. (We’ve made some improvements, but it’s still ongoing) ...

March 22, 2025 · 900 words · Mihyang Gu