The Effect of Textual vs. Graphical Software Design Descriptions on Software Design Communication

Reviewed by Greg Wilson / 2022-03-31
Keywords: Communication, Design

One of the puzzles in software engineering is how useful visual representations of designs actually are. On the one hand, Petre2013 found that most developers are familiar with UML but choose not to use it. On the other hand is work like Jolak2020, which studied 240 software engineering students from four universities and found that graphical designs like the one shown below are better than text at promoting active discussion and improving recall of design details. This begs the question: if diagrams help, why don't people use them? One explanation is that programmers sketch as a way of thinking aloud rather than to create blueprints Cherubini2007, but Jolak2020 looked at the latter rather than the former. Perhaps the answer is that programmers just aren't patient enough to work more efficiently...

Graphical software design

Jolak2020 Rodi Jolak, Maxime Savary-Leblanc, Manuela Dalibor, Andreas Wortmann, Regina Hebig, Juraj Vincur, Ivan Polasek, Xavier Le Pallec, Sébastien Gérard, and Michel R. V. Chaudron: Software engineering whispers: the effect of textual vs. graphical software design descriptions on software design communication. Empirical Software Engineering, 25(6):4427–4471, 2020, doi:10.1007/s10664-020-09835-6.

Software engineering is a social and collaborative activity. Communicating and sharing knowledge between software developers requires much effort. Hence, the quality of communication plays an important role in influencing project success. To better understand the effect of communication on project success, more in-depth empirical studies investigating this phenomenon are needed. We investigate the effect of using a graphical versus textual design description on co-located software design communication. Therefore, we conducted a family of experiments involving a mix of 240 software engineering students from four universities. We examined how different design representations (i.e., graphical vs. textual) affect the ability to Explain, Understand, Recall, and Actively Communicate knowledge. We found that the graphical design description is better than the textual in promoting Active Discussion between developers and improving the Recall of design details. Furthermore, compared to its unaltered version, a well-organized and motivated textual design description---that is used for the same amount of time---enhances the recall of design details and increases the amount of active discussions at the cost of reducing the perceived quality of explaining.