Daniel L. Moody from University of Twente gave a talk (and a full fledged tutorial) at OMG technical meeting in Reston, VA, on the principles for designing effective diagramming notations. His talk had this overall design:
|(click to enlarge)
Daniel Moody wrote a famous paper on IEEE Transactions of Software Engineering titled:
IEEE TSE. November/December 2009 (vol. 35 no. 6). pp. 756-779
Program flow charts have been invented long time ago, in 1947.
Visual notations are effective communication tools because they rely on the highly parallel way of reasoning an processing signals of the human brain.
Therefore, they should be optimized for human mind processing. It’s not something that can be designed based on opinions. There are ways of measuring and proving results.
The measure of optimization is cognitive effectiveness. Effectiveness of existing notations is hampered by:
- unclear goal of the notation
- low attention to this aspect
- lack of accepted design principles
Notations like ER diagrams expose significant flaws, but is accepted and preserved with no questions. UML has the same problem. In general, another point is that in current notations there is no motivation on why one choose one symbol or another for model elements. In other words, there is no rationale for design of notations. Basically, we are still in unselfconscious design culture (more or less the same as the way huts are built by primitive people: there are no architecture principles or books, the just build huts).
The same symbols are used again and again within the same language and across languages (e.g., think about the rectangle symbol).
There is lack of testing and principles. That’s why Moody proposes a set of objective principles based on scientific observation.
Out of that, he proposes a clear manifesto for design notations:
- At least equal effort and attention for notation and content
- Have a design rationale
- Decision must be based on evidence
- Design must be based on objective principles
- There must be explicit testing of the notations (user studies)
The purpose is to move diagramming from art to science.
To keep updated on my activities you can subscribe to the RSS feed of my blog or follow my twitter account (@MarcoBrambi).
Published by Marco Brambilla
I'm a Professor at Politecnico di Milano, Italy. I'm also with WebRatio and Fluxedo. I work on data science, big data analytics, software engineering, software modelling, and model-driven development. I co-authored the IFML standard at OMG. I research on Web technologies and smart cities, spanning topics such as crowdsourcing, Web engineering, social content analysis.
View all posts by Marco Brambilla