views:

143

answers:

1

In my free time, I'm working on a risk analysis application. I have already finished the mathematical and simulation engines, but I'm stuck with the design of the user interface. I want my application to be as easy-to-use as possible for Excel users, but I don't want to make it an Excel add-in, because Excel takes ages to load add-ins. So I'm going to use the old and venerable MFC.

I want to make these things easy in my application:

Modeling tasks:

  • Defining probability and uncertainty distributions
  • Defining mathematical relations between the variables
  • Separating uncertainty from variability (second-order risk modeling)
  • Validating the risk model
  • What-if (sensitivity) analysis

Data manipulation/display tasks:

  • Importing/exporting data from/to Excel and databases
  • Displaying nice graphs to the user

Do you know any guidelines I could take into consideration in the design of the user interface? The only examples I know, LINGO and Rockwell Arena, are actually examples of what NOT to do. Perhaps I will need to include a simple scripting language in the system but, in that case, it will be an option for advanced users, not for everybody.

+1  A: 

1) For risk-specific functionality (at least, in financial world), one of the important guidelines is to allow easy viewing of summary level risk as well as easy drill-down to details (e.g. enterprise-wide down to security level)

2) Plus, don't forget standard GUI design guidelines - there's always Nielsen and there's JoelOnSoftware's Joel Spolsky's design book and series of articles. High level,

  • make sure your controls are intuitive (do what the user expects them to),

  • minimize the amount of work (eye and hand movements) user needs to do to accomplish most frequent tasks,

  • Allow easy linking (e.g. no dead ends - if you are displaying a list of securities, make an easy way to jump from security's name to detail screen for that security)

  • Always always usability-test.

DVK
I'm going to have some trouble with the last item. I don't know anybody willing to test my application. Anyways, thanks and +1!
Eduardo León
I'm not sure of what your life situation is so can't offer specific advice, but since you're writing a risk app, may be you have some co-workers or ex-coworkers who'd have enough subject area expertise and enough goodwill to provide either volunteer effort, or, if you can afford it, a modestly paid test ($10/hr is a good sweetener unless someone's extremely highly paid). Just my $0.01 worth of idea, adjusted for inflation.
DVK
I'm taking a course on risk analysis and my lecturer uses @RISK. It's a powerful tool for Monte-Carlo simulation, but it doesn't provide any facilities for separating variability (actual randomness of the system being analyzed, expressed by a probability distribution) from uncertainty (lack of information about a parameter of the system being analyzed, expressed by a confidence distribution), something that is fundamental in risk analysis, because people must deal with variability and uncertainty in *very* different ways.
Eduardo León