This is funny. I saw the same pattern in Smalltalk apps: Reports being the locus of spaghetti code.<p>Reports are added as an afterthought. Then the resulting spaghetti code patterns are replicated cut &amp; paste, where they then slowly melt into surrounding code in a way that makes them impossible to extricate. After some years, it then becomes obvious that reports are the primary driver of value for those clients.