1.5.a. Abbreviations and acronyms should generally be avoided unless their meanings are widely and consistently understood in the engineering community.

1.5.b. A table of project-specific abbreviations and acronyms shall be maintained in a version-controlled document.

Example: Appendix A contains a sample table of abbreviations and their meanings.

Reasoning: Programmers too readily use cryptic abbreviations and acronyms in their code (and in their resumes!). Just because you know what ZYZGXL means today doesn’t mean the programmer(s) who have to read/maintain/port your code will later be able to make sense of your cryptic names that reference it.

Enforcement: These rules shall be enforced during code reviews.