The Value of Visual Thinking in Software Design.
Visual thinking is indispensable to working with software design. By visual thinking, we mean using visual tools such as pictures, sketches, diagrams, and sticky notes to construct and discuss meaning. Because in coming up with any form of a functioning software, is such a complex concept composed of various building blocks and their interrelationships, it is difficult to truly understand a software without sketching it out.
A software design process, really is a system where one element influences the other; it only makes sense as a whole. Capturing that big picture without visualizing it, is difficult. In fact, by visually depicting a software system, one turns its tacit assumptions into explicit information. This makes the system tangible and allows for clearer discussions, upgrades and changes. Visual techniques give “life” to a software design and facilitate co-creation.
Sketching a software design transforms it into a persistent object and a conceptual anchor to which discussions can always return. This is critical because it shifts discourse from the abstract toward the concrete and greatly improves the quality of debate. Typically, if you aim to improve an existing software, visually depicting it will unearth logical gaps and facilitate their discussion. Similarly, if you are designing a completely new software(system), drawing it will allow you to discuss different options easily by adding, removing, or moving features around.
Visual thinking enhances strategic inquiries by making the abstract concrete, by illuminating relationships between elements, and by simplifying the complex. In this post we describe how visual thinking can help you throughout the process of defining, discussing, and changing a software.
Visualizing with Sticky Notes
A set of sticky notes is an indispensable tool that everyone reflecting on designing a software should keep handy. Sticky notes function like idea containers that can be added, removed, and easily shifted between software building blocks. This is important because during software-design process, designers frequently do not immediately agree on which elements should appear in a system or where they should be placed. During exploratory discussions, some elements might be removed and replaced multiple times to explore new ideas.
Here are three simple guidelines:
(1) use thick marking pens,
(2) write only one element per Post-it note, and
(3) write only a few words per note to capture the essential point.
Using thick markers is more than a detail: it prevents you from putting too much information on a single sticky note, and makes for easier reading and overview. Keep in mind, too, that the discussion leading to the final software design created by all the sticky notes is just as important as the final software. Discussion around which notes to place on or remove from the flow and debate over how one element influences others give participants a deep understanding of the software and its dynamics. Consequently, a sticky note becomes more than just a piece of sticky paper representing a software building block; it becomes a vector for strategic discussion.
Visualizing With Drawings
Drawings can be even more powerful than sticky notes because people react more strongly to images than to words. Pictures deliver messages instantly. Simple drawings can express ideas that otherwise require many words. It’s easier than we think. A stick figure with a smiling face conveys emotion. A big bag of money and a small bag of money convey proportions. The problem is that most of us think we can’t draw. We’re embarrassed lest our sketches appear unsophisticated or childish. The truth is that even crude drawings, sincerely rendered, make things tangible and understandable. People interpret simple stick figures far more easily than abstract concepts expressed in text.
Sketches and drawings can make a difference in several ways. The most obvious one is explaining and communicating your software design based on simple drawings. Another is sketching out a typical client and her environment to illustrate one of your User Segments. This will trigger a more concrete, intensive discussion compared to outlining that person’s characteristics in writing. Finally, sketching out a User Segment’s needs and use-cases is a powerful way to exploit visual techniques. Such drawings will likely trigger constructive discussion from which new software feature ideas will emerge.
“If you freeze an idea too quickly, you fall in love with it. If you refine it too quickly, you become attached to it and it becomes very hard to keep exploring, to keep looking for better.” Jim Glymph, Gehry Partners
We hope we’ve shown you in plain text how software designers, game changers, and developers can tackle the vital issue of software design. We hope we’ve provided you with the tools and techniques, and the dynamic approach needed to design innovative and competitive new software. But much remains to be said. So here we touch on one topic. When speaking of software design, it is quite a vast topic that requires more than just 1000 words and practice.
This is conceptual in various fields of design and is not limited to software design and development. For instance, the above mentioned techniques, would perfectly work, when you are trying to design a data-set, or a business model.
Thanks for reading!
Did you enjoy reading this original work? Please share with your friends, for them to have a read as well.
To get a reminder from us, whenever we make a new post, ensure to join our Newsletter.