Design Decisions: Guided learning approach

Brent Schooley / Wednesday, November 16, 2011

As a developer interaction designer (Dev IxD), my primary focus is making developers’ jobs easier by providing consistent and easy to use tools and APIs. A lot of design decisions are made in the process of achieving that goal. In these “Design Decisions” posts, I want to share some of those decisions with you. Your feedback is critical to the success of the product, so if you have any comments please leave a comment on this post or come post in the Reporting Forums.

Reporting tools are difficult to learn

Reporting tools are notoriously difficult to learn and not particularly intuitive to use. Sometimes it is difficult to even tell what the first step would be in creating a report. This is especially true if you’ve never built a report before. What do I do once I’ve created the report file? Where do I get the data for my report? How do I get that data to display on the report? These are all questions that can be very difficult to figure out and sometimes the documentation isn’t very helpful. We wanted to make sure our users wouldn’t have this experience with NetAdvantage Reporting.

I created a report file, now what?

During the creation of NetAdvantage Reporting we conducted a few rounds of usability testing.  One of the most helpful (albeit somewhat uncomfortable) things that happen in the early testing is when people get stuck.  The reason it is so helpful at that point is because, as much as possible, I never want that to happen to a developer once we release the product.  The worst possible time for it to happen is at the first step, so when you create a new report you will see this:

This invitation right in the center of the report informs you what the common first steps are.  Even better than that, if you click on it, the Data Source Configuration Wizard will launch so that you can create your first data source.

What happens after the developer creates the data source?  Do we throw them to the wolves?  Of course not!  Here comes another informative invitation:

Just in case the developer didn’t know that they could drag items from the Report Data Explorer and drop them on the report, we let them know.  This also draws their attention to the Report Data Explorer in case they have not seen it yet (very possible since they probably created their first data source using the previous invitation).  So, the second invitation builds on the outcome of the first and provides some guidance for something the developer may not have seen.  These types of subtle teaching opportunities can make a big difference in the early learning experience.

Okay, sure, but how do I do ___________?

This type of guided learning approach can only go so far.  As much as we try to make the software intuitive and easy to use, eventually the developer is going to get stuck.  Hopefully at this point the developer can reliably turn to the product documentation for help.  Unfortunately, product documentation is usually not fantastic.  I have good news though!  The NetAdvantage Reporting Documentation *is* fantastic.  Use it with confidence!


Hopefully this look at one of our Design Decisions has been informative.  Let me know either way.  I’d love to hear any feedback you have so either drop a comment here, catch up with us in the forums, or send me at email to bschooley at infragistics dot com.