We are designing a revamped part-time studies course catalogue at the post-secondary institution where I work. One of the features I have included is an authenticated planner for saving and registering for our courses.

This planner is not a planner in the timetable or calendar sense of the word, so much as being able to save courses for later, then also getting our part-time program data in front of users to ladder them from course registrations to program applications.

We are presently brainstorming and whiteboarding ideas for the user flow and interaction design for this. Where I am starting to get to, is the notion that the interaction should allow users to tick a checkbox to 'add to planner' from our course listings and search results, but then I'm not sure about the best approach to present the planner. They will have to be routed through authentication to save their data, so is the best approach to:

  1. provide a sidebar 'widget' type of clipboard that builds as the user saves courses, with an option to save the list to their planner when done, or;
  2. route them through authentication on the first selection, then once their session state is authenticated, allow them to add to planner via Ajax and not route them back to the planner.

This is very early idea generation so if anyone has seen really good, validated design patterns around this, would love some examples.

Thanks. (The edit to remove this one word of text was pointless so I'm just editing it back in to demonstrate further pointlessness - you might want to find more useful things to do with your time.)

1 Answer 1


Sounds like a "shopping cart" to me! That's a good place to start looking for solutions.

Preferrably from my POV:

  • have a widget showing "N course on your planner", which clicks through to the planner
  • for unauthenticated users, consider storing selection in a cookie (so they can come back later and still have their courses selected)
  • request authentication when clicking through to planner

You may even consider showign the planer to unauthenticated users. I would avoid that, because it is not obvious to the user how persistent his data is. Above is a common (?) compromise between delaying required sign up until after the user sees the benefit of creating an account, and making sure the user doesn't have to enter twice.

There's a ugly case with that, though: A temporary selection stored in a cookie, and I log in with my (existing) account. Merging the temporary with the server-stored shopping list might not be what I want. You might differentiate by login path (direct login with account that has items in cart doesn't transfer temporary selection, logging into fresh account by clicking through planner does), ask when logigng in, or similar.

For that reason, you may want to show login very close to the "Course Planner" widget.

  • Thanks Peter. I didn't get into authentication models because, being higher ed, we use an industry standard CRM tool called Banner. It's a Sungard behemoth and all student and prospective student CRM IDs are handled through it. I'm more inclined to display session data in a sidebar widgetm, by trying to use session cookies or PHP variables and then make it clear to the user that, if they want to save for later, they must create a user (Banner) ID to do so. This way we don't put the ugly Sungard acct creation in front of them. Poor UX and unnecessary complication too early. Nov 29, 2010 at 17:01
  • That's what I meant with unauthenticated vs. authenticated users: Allow selection for both, and make transitions easy. As you, I would delay the signup until the user has accumulated some data he wants to save.
    – peterchen
    Nov 29, 2010 at 17:48
  • Thanks Peter. We've actually settled on some session-based widgets for in-session interaction and then I'm presently developing a graffle flow that covers prompting users to login or create an ID to use a saved planner. Dec 2, 2010 at 23:32

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.