In the past I talked about Personal Performance Indicators. The last months I've had a few hours to build basic tool support for Personal Performance Indicators. It's all pretty basic. The UI looks like the following.
The whole tool is based on plugin-support. The two personal goals are configured using a 'periodic' plugin which will be part of the first release.
I can think of other plugins, build by others, or by me. Think about an excel-sheet you use for keeping track of your productivity in hours a week. You already use this excel-sheet, but it could be nice to have an indicator showing if your productivity is on track, isn't it?
Now it's time for some technical details. The user interface makes use of Component Factory's Krypton Toolkit, and is very basic. By all means it should be very basic, a goal with an indicator, not much more. Off course the needs to be some additional buttons for configuration of the goals and/or plugins. But this needs to be a very clear user interface.
What about a class diagram for the plugin interface.
Every plugin has to implement a pretty basic IPlugin interface. It just delivers a few basic strings, and a more complex list of indicators. Every indicator has to implement a basic IIndicator interface.
Besides this the application as a host delivers an implementation of IPluginHost. This is some kind of repository based on db4o, but this basic interface can be easily mocked for testing purpose.
Maybe more on the Personal Performance Indicators tool in the near future.