Publicly defining how a team should work is like having a master branch for a companyβs practices. It lets them go off and try crazy experiments with the way they work. But it gives them a safety net to make sure that things donβt go too far off the rails. Declaring how teams should work keeps things sane.
The point is that Over-Engineering is subjective and the damage of its subjectiveness increase as the requirements fail to present the full picture of the problem the engineer is supposed to solve. However, even when the full picture is available, someone could argue that building a better foundaβ¦