How To Improve Your Gantt Chart User Experience

Posted by Martin Karlowitsch on Mar 10, 2014 11:30:00 AM

Gantt chart software is commonly used to visualize production, project, personnell, logistics or resources information. One of the key values is that it provides a quick and intuitive overview of time-related planning and scheduling data that have dependencies. As such users can quickly identify scheduling issues. We call this the information value. The other key value of a proper Gantt chart software comes from the fact that it enables interactive drag & drop changes to the schedule. This allows the user to quickly take corrective actions, and not only analyze the data, but change it. This generates an agility value. This blog post discusses some fundamental concepts how to improve the drag & drop user experience when working with a Gantt diagram.

First of all, we recommend that you take into account three major aspects when designing an inspiring Gantt diagram software user experience:

  • Information relevance
  • User interaction purpose
  • User interaction experience

Information Relevance

Gantt Chart Data Focus

One of the key advantages of a Gantt diagram is that it can present complex information in a very intuitive way. However, we have been observing users who tend to load thousands (or more) activities into the chart following the wish to present any data. We found it as common best practice to only show only the relevant data at a given point of time to a given user. The user experience should not get impacted by displaying too many irrelevant details on the screen. In an ideal case, the Gantt diagram is capable of differentiating between relevant and irrelevant information. Alternatives to manage the amount of (relevant) information presented to the user are filters (more static) and a context-sensitive coloring of data (more dynamic) so that the respective less important data are automatically faded out or at least greyed out.

User Interaction Purpose

Any user interaction always serves a very specific purpose. Typically, there are also (implicit) limitations to an interaction. E.g. the user wants to move a task to another resource taking into the account the availability of the resource, or the user wants to move the task to another time without vioalating the committed delivery time. It goes without saying that these interactions should be completed in as short time time as possible. In order to achive this, the "interaction design" must be as such that the user can achieve the respective purpose with one interaction (which starts in a Windows environment when pressing the left mouse key, and finishes when releasing the left mouse key again). During this interaction, the user must get enabled to make make decisions (e.g.: can I drop the activity here or does this create a conflict with another parameter of the schedule?). Hence, an intelligent Gantt software provides decision support information during the user interaction process. These decision support information should be data which depend from the current movement of the node on the screen. When creating your application, make sure that you know about the decision needs of your users: this will help you to create the interaction process more meaningful as it becomes more purpose-driven.

User Interaction Experience

If you want to help your user focus only the decision-relevant information, make sure that the overall "picture" stays as stable as possible. We recommend that you work in a very selective manner with visual changes, and that you only use them to visualize changes in decision-relevant parameters. An intelligent Gantt scheduling application should also be able to differentiate change time (i.e. the movement of the node) and consideration time (i.e. when the movement of the node stops for a short moment). The consideration time can be used well to highlight relevant information or to point the user's attention to a certain incidence.

Do not know where to start?

Do you think, these three guiding principles are hard to follow, and result in ambitious user experience design and programming challenges? Here are seven questions that help you better structure your thoughts, and better understand the fundamental cornerstones for the Gantt diagram user experience of your customers (see also here for a more enhanced checklist):

  1. Which decision scenarios do you support with your scheduling application?
  2. Which information are needed to support these decision scenarios?
  3. Are there typical (and different) user interactions for each scenario?
  4. Which purposes do you want to support with each user interaction?
  5. How do you want to achieve these targets?
  6. Which information are needed for each target?
  7. Which decision do you want to support wich each interaction?

Do not know how to achieve this?

With VARCHART XGantt 5, we provide .NET Gantt scheduling application developers with some unique tools to create a compelling user interaction experience. We call this uniqe UI "live update" and would like to encourage you to test it out by yourself. Get started today and download your free trial version!



VARCHART XGantt free trial - Gantt chart control .NET


Topics: Planning & Scheduling Insight, Windows Forms Gantt Control, Gantt Chart Fundamentals