A former coworker of mine loved overengineered and complicated structures which are incredibly hard to understand. And there is often a lot of coupling. So in the long run we need to untangle it.
One of the greatest "WTF is this doing" is an Enum thats like every where and depending on it's value things are done / not done. To make things worse this Enum exists in backend and frontend but with slightly different values (like backend has "create-abc", frontend has "make-abc". Some enum values even have names we dont understand like"step0" or "step1" without an explanation what this means. We suspect this enum somehow correlates to certain status of an entity but are unsure about the exact mapping. At some points the enums value is calculated, at some points it is hardcoded by rules we dont know.
I already wrote an aspect to trace every occurence of this enum together with the entities status (like at which point in code does it have which value) in prod, but the results are even more confusing as they mismatch with the results from the calculating method.
Any suggestions on how to untangle it? I am aware that this will take a lot of time and effort. But at the moment I dont even know where to start.
submitted by /u/Shareil90
[link] [comments]
from Software Development – methodologies, techniques, and tools. Covering Agile, RUP, Waterfall + more! https://ift.tt/B1FulMy