One very interesting session I attended this year at AU was Inside the Factory: How Revit is designed. We were exposed to the rigorous approach that the team takes when assessing all the feedback they get from various sources and how they "storyboard" potential tools and prepare mockups. It helps to know what the tool should be capable of achieving so you don't push yourself into a corner.
One particular example that was used during this session was the infamous Edit Baluster Placement dialog box.
Attendees made lots of points about what could be improved, but I believe the governing question of all in this case should be"Why a dialog?". Dialogs are great at organizing a set of rules, but how will I model and document the following railing? I rest my case :)