This week I discovered the GNOME design patterns, that represent the “elements that make up an application design”. As specified in the GNOME Human Interface Guidelines, these design patterns aim to help people and contributors to learn about GNOME design, but also to create quality GNOME applications, by maintaining a visual consistency across all GNOME programs .
After I learned about each GNOME design pattern, I started to analyze them , by exploring different applications like: Nautilus, Gedit, Calendar, Music, Maps, Weather, Browser, Image Viewer, the new “Characters” application, Clocks, Cheese, Notes, Gnote, Shotwell, Photos, Videos, Xchat, Evince, Contacts, Software.
In order to have an idea about which GNOME design patterns are used by which applications, I chose 10 programs from GNOME version 3.16 and I created a matrix with their corresponding design patterns. Let’s take a look at it (click on the image for a better quality):
In this matrix it is interesting to see that there are 13 GNOME design patterns and certain applications use almost all of them:
- Nautilus : 11 design patterns
- Music: 12 design patterns
- Gedit, the new “Characters” application and Evince: 9 design patterns
We can also observe that all applications use basic design patterns like Application menus, Primary windows and Header bars.
Another interesting thing I noticed during this analysis was the fact that some applications use a sort of meta-design pattern i.e. a set of design patterns frequently used together. For example, the About section of each application adopts the same style, defined by a particular composition of design patterns. In the figure below, we can observe the About section of three different applications. Each of them represents a dialog that contain a view switcher:
This analysis of GNOME design patterns will definitely help me to “shape” the scenario tasks of my future usability test. After a discussion with Jim Hall (my mentor) and Allan Day from the GNOME design team, in the usability test I am planning I will mainly focus on testing Nautilus, Evince, Calendar and Image Viewer . For these four applications, the test should cover all the design patterns they include. Depending on the duration of the test (it should not last more than one hour), we can expand it by adding scenario tasks for the new Characters application.
I strongly encourage you to take a look at the GNOME design patterns’ official page, they are really well explained 🙂
Related links:  - https://developer.gnome.org/hig/stable/patterns.html.en  - https://developer.gnome.org/hig/stable/