Contents
- About this document
-
Ten usability lessons
- Produce the manual in HTML format
- Organize tutorials around biological analysis tasks rather than software functionality
- Simplify the data import process
- Provide a sample data directory which is small, simple, and complete
- Automate data import from external databases
- Increase the level of user feedback
- Simplify the interface for associating node/edge attributes and visual properties
- Simplify (or eliminate) the dialogs for visual style management
- Automate the extension (plugin) installation process
- Integrate the documentation and menus of the extensions (plugins) and the core
About this document
In the spring and summer of 2006, Cytoscapers at the Pasteur Institute studied biologists working with Cytoscape to assess Cytoscape usability. This document summarizes some key lessons learned in that study. For additional detail, a 23-page writeup is available as an attachment from this page, along with a presentation given at the 2006 Cytoscape Hackathon.
In this summary, ten points were chosen according to their impact and to the potential for constructive changes. The points are ordered in roughly order of user experience, not importance.
Ten usability lessons
Produce the manual in HTML format
When the manual is produced as one PDF file, users find it too monolithic. Finding the right section in one large PDF file can be difficult. Users are more comfortable searching in HTML documents. Even if the HTML file is large, sub-sections can be bookmarked. It is easy to follow the software if you start with the documentation, but if you start with the software, finding the right documentation as needed is not easy. One way to simplify this would be links from the software to the appropriate section of an HTML manual.
Organize tutorials around biological analysis tasks rather than software functionality
Users do not really care about using software, they care about getting their work done. If a tutorial details how to use certain aspects of Cytoscape, it will not be as useful as a tutorial that provides a simple description of one use case. Different use cases could describe different biological analysis scenarios - or even a scenario for non-biological analysis.
Simplify the data import process
Users often start with their data in Excel. There is no documentation that clearly describes how to export data from Excel and produce a text file of the right format. There is code available to import data directly from Excel, and direct import from Excel would be useful.
Many users associate file suffixes with programs that create certain types of files. If some type of file can be created by the users, then the users need to understand this. For instance, there should be simple, cookbook-style documentation on how to create a file of each type, starting with data in a spreadsheet.
Provide a sample data directory which is small, simple, and complete
There are currently files in the Cytoscape sample data directory which are really too large to serve as example data: namely, BINDHuman.sif and BINDYeast.sif. When users attempt to load these, Cytoscape is ground to a halt, the user sees no view, and a new user is left confused at best. Because these names come early in an alphabetical ordering, these will be the first files presented to the user in a directory list, and so new users will try them frequently.
As an alternative, create a demo directory which contains a small but illustrative network, and a full suite of related files: expression file, node attributes, and edge attributes.
Automate data import from external databases
All users, at all levels of expertise, benefit from automated import from external databases. For external network data, this saves the user the considerable job of finding appropriate data on the web. For both network and attribute data, this alleviates the user from the work of reformatting the input data.
Increase the level of user feedback
Users cannot always see the consequences of their selection or filtering actions, especially if the network is large. Add messages saying how many nodes (if any) were selected. In import actions, it's not apparent when the import is complete. Put up a message. If an import fails because of a file format error, the user isn't told where in the file the error occurred. These are just three examples, but they illustrate a principle: users benefit from feedback.
Simplify the interface for associating node/edge attributes and visual properties
Users find the current vizmapper interface confusing. Terms such as "Map Attribute" and "Calculator" reflects a programmer's thinking, not a user's thinking. A better option would be to provide controls to attach attributes and visual properties directly.
Simplify (or eliminate) the dialogs for visual style management
When users get the Visual Mapping Manager dialog box, and see terms such as "Delete" and "Define", they get intimidated and just close the dialog box. Many users stick with the default visual style. In particular, if the task of defining a visual style is simplified, then one visual style would be enough for most cases.
Automate the extension (plugin) installation process
The consensus opinion at the Cytoscape hackathon is that "extension" is a better term than "plugin", as it's more intuitive and descriptive.
Many users are not comfortable with the process of downloading JAR files into their plugin directory. This installation process is easy to automate. Follow the example of tools such as Firefox, which provide automated mechanisms to "search for extensions" and "install extensions".
Integrate the documentation and menus of the extensions (plugins) and the core
Users do not differentiate between Cytoscape extensions and core: to them, it's all Cytoscape functionality. Thus, they find it awkward if they cannot find any mention of the extensions in the Cytoscape manual. Provide a place for extension developers to add a brief entry into the Cytoscape manual, with a pointer to more-extensive documentation if needed. This would also give more visibility to the extensions, which many users are not aware of.
Along the same lines, the current Cytoscape "plugins" sub-menu comes across as a disorganized jumble of unrelated things. There is no requirement that extensions use the "plugins" sub-menu, and not all of them do. But most extensions use this sub-menu, in part because there is no other sub-menu which is more appropriate. Address this by adding new sub-menus with categories such as "Analysis".