Problem: How should the artifact present the actions that the user may take?
Organize the tools according to how they are used, so that the most common ones are the most prominent (for instance), and localize them by task, so that the user doesn't have to jump around a lot as they're performing common complex tasks. Users can generally deal with seeing large sets of them -- no one minds a well-organized 20-item palette, and exposing them all means the user doesn't have to spend effort getting to them -- but break them up by function if necessary (Small Groups of Related Things).
Allow the user to introduce other tools from outside the artifact, if possible. Put the foreign tools with the others, so that the user doesn't have to deal with an artificial separation between "ours" and "theirs."
Resulting Context: In a software artifact, use Short Description or Pointer Shows Affordance if there's any doubt that the user will recognize the tools as they are statically represented. Try not to depend upon them, though -- it's easy to get lazy and use poor icons, knowing that a user can just use the tooltip for something they don't understand. The problem, of course, is that a user then has to move the mouse over every single tool to figure out what they all are. This is far from ideal.
Notes: The first force in this pattern is just my
intuition, based on empirical evidence. I freely admit that don't
have much of a basis for it. Unfortunately, the pattern's distinctiveness
hinges on it, so any help on this front would be welcome...
Copyright (c) 1999 by Jenifer Tidwell. All rights reserved.