Effective Diagramming Techniques
Dr. Roger Ferguson, email@example.com
Throughout the software development process there are countless numbers of meetings where information is being presented to clients, developers and business professionals using diagrams annotated with elements of "natural language". A number of these techniques (e.g. Entity/Relationship, Object Role Modeling, UML) available to the software developer claim to have features that facilitate communication of complex systems between the problem domain and the solution domain expert. However, the basis for what "facilitate" means is rarely if at all defined in concrete terms. The following paper presents several principles that if followed in designing a diagram (or model) will help maximize the effectiveness (e.g. comprehensibility, learnability and facility to support communications) of the diagram. These principles are based upon research performed by the linguist and philosopher Noam Chomsky and first theorized in 1953. Chomsky introduced a concept called "Universal Grammar" which established the idea that humans are "hard-wired" to learn languages in a specific way. This "hard-wired" nature of humans can be exploited to maximize the "communication" of a diagram (or model). A new metric for measuring the effectiveness of software modeling techniques based upon Noam Chomsky's Universal Grammar is proposed.
Palmer, Ralph, "Effective Diagramming Techniques" (2002). Technical Library. 130.