Communicating Designs

Tin cans phone

Article Summary

Visual specifications are designed to communicate with readers as a speaker would communicate with an audience. They use simple illustrations that provide rich meaning, analogous to a speaker using an illustrated presentation. They use text to explain each illustration, and other details that are not covered in the illustration, analogous to speech. Ultimately, a good visual specification will engage its readers, inform them effectively and succinctly, and occasionally, perhaps even entertain them.

 

 

Communicating Designs

Communicating designs is usually a challenging task. The systems designer goes through the challenge of establishing a strong conceptual foundation, and builds functional and technical models from that foundation.

By far the greatest challenge to communicating an enterprise-scale design are the different perspectives on a common problem. Sometimes these different perspectives exist out of necessity, as roles within the enterprise require these perspectives. A conceptual foundation has to embrace these perspectives, and a systems design must be able to represent a complex business and system landscape.

Using a visual medium of communications simplifies the challenge of communicating systems designs to some extent. This site presents some ideas, patterns, and templates for representing system designs using visual techniques.

Examples of visual specifications

Fig.1: Examples of visual specifications

We're a visual species

Analysts typically have to extract meaningful information from situations, develop concepts or models that explain a problem domain, and design solutions based on a defined scope. Each of these areas require effective verbal and written communications. The past 20 years has provided us with an arsenal of tools for written communications, and visually-oriented communications are often the most appealing.

Sight is our strongest sense. When describing an object, most of us tend to use visual adjectives: e.g. "red car"; "ugly building". We sometimes describe emotions using visual cues: e.g. "she was red with anger"; "he was green with envy". Common adages along the lines of "a picture says a thousand words" serve to illustrate that most of us would prefer an illustration than the textual equivalent. Yet a document that is a collection of pictures often leave room for interpretation, and it is important to complement visual representations with textual clarifications. Visual specifications address the need to develop written communications that achieve a balance between illustrations and explanatory text. Visual specifications are based on structuring a document on a series of illustrations, with complementary text to explain the illustrations. Text is also used to capture information that is not addressed in the illustration. The advantages are clearly visible in these 3 documents, each trying to communicate a specification for user registration. The first uses only text. The second is structured primarily around text with complementing illustrations. The third is structured primarily around illustrations, with text playing a supporting role.

Examples of specifications

Fig.2: Three examples of specifications

Visual specifications are designed to communicate with readers as a speaker would communicate with an audience. They use simple illustrations that provide rich meaning, analogous to a speaker using an illustrated presentation. They use text to explain each illustration, and other details that are not covered in the illustration, analogous to speech. Ultimately, a good visual specification will engage its readers, inform them effectively and succinctly, and occasionally, perhaps even entertain them.

What standards do visual specifications use?

Visual specifications can use any representation standard, such as the Unified Modeling Language (UML), Business Process Markup Notation (BPMN), wireframes, semantic networks, or Object Role Models (ORM), as long as they adhere to the guideline that a format is selected only on the basis of how effectively it communicates the point. The communication objectives trump the standards, and illustration or notation standards are only interesting if they are applicable to the problem at hand.

The different types of diagrams and notations used in a visual specification should be seen as a representation inventory. There are several different forms of representation available to the author, and the author chooses the best form of representation depending on what needs to be communicated. If the existing forms of representation fall short, then, and only then, should the author consider inventing their own form of representation. There are several examples of different visual specifications in this site, and they draw from a wealth of diagramming and notation standards to select the most effective means of communication.

What processes are used to manage visual specifications?

Visual specifications are artifacts, and should be seen as a deliverable within a software process or methodology. Most software development methodologies such as DSDM, Extreme Programming, OpenUP, Prince2, Rational Unified Process, Scrum, or Waterfall development, can be used to manage visual specifications.If your organization has not used visual specifications before, it is easier to first write a complete visual specification before designing a process to manage them. The stress is on the quality of the analysis, and developing concise and communicative documentation, and these goals are a part of most organizational processes. The best way to understand how visual specifications are applied is to start writing one.

What tools do I need to write a visual specification?

Visual specifications can be developed in a variety of tools. The key features you need from a tool are:
- placement flexibility: you should be able to place anything you want anywhere in the page
- diagramming functionality: you should be able to draw basic shapes, pointers, and arrows
- pagination: it should be possible to have multiple pages within your document

Visual specifications can be written using a broad spectrum of tools. Some tools, like Microsoft Powerpoint, provide a great deal of flexibility and a rapid-working environment, but lack powerful diagramming and formatting options. Other tools like Adobe Photoshop provide extensive functionality for image manipulation and diagramming, but do not provide a rapid-working environment. Tools that find a balance between diagramming capabilities and rapid-working environments, like Microsoft Visio, ConceptDraw, or Omnigraffle, are best suited for writing visual specifications.

The following is a list of some of the tools that can be used to make visual specifications.

Microsoft Windows
- Adobe Illustrator [commercial]. Allows multiple pages with the Multipage plugin from Hotdoor [commercial]
- ConceptDraw [commercial]
- Dia [free/open source]
- Inkscape [free/open source]. Does not support multiple pages, but the functionality is planned for future releases.
- Microsoft Office Visio 2007 [commercial]
- SmartDraw [commercial]
For Microsoft Windows, I personally prefer using either Visio or ConceptDraw.

Apple Mac OS X
- Adobe Illustrator [commercial]. Allows multiple pages with the Multipage plugin from Hotdoor [commercial]
- ConceptDraw [commercial]
- Omnigraffle [commercial]
For Apple Mac OS X, I personally prefer using Omnigraffle.