Business logic is written by software engineers, not business people. Business people at most can levy requirements on the software, but it is up to the software engineers to convert these requirements into a clean, understandable design. That it totally the software team's responsibility. If you have business people dictating software design to you, you are already screwed comments or not. Not even unit testing or code reviews will save you.