Monday, November 24, 2008

Big improves to Portfolio

Big improves to Portfolio
Last week I have implemented a big improvement to Portfolio Page. The feature is to color the previous uncolored measures by the member participation. The idea is from here: http://code.google.com/p/hackystat-ui-wicket/issues/detail?id=118

Most of the previous uncolored measures are implemented using the member-level telemetry except FileMetric. Therefore, it is possible and useful to color the chart according to the participation of the members to the project according to these measures, because a health project anticipates equal contribution from each member.

When fixing Issue 97, I added a interface called StreamTrendClassifier to let user select different coloring method for a measure. I thought this would faciliate future development and it does in some extent. When implementing participation coloring, I am using the Classifier interface to specify new classifier to the measure. But the problem I did not realize in the beginning is that, configuration to the new classifier, which requires text fields of member percentage, threshold value and frequency percentage, is quite different from the stream trend one, which requires higher/lower threshold and higherbetter check box. So I modify the interface greatly to let each classifier provide its own configuration panel. And this idea may be apply to the DPD page, where each data model provides its own data panel instead of letting the session to create the panel for it.

After complete the functionality, I change the interface of the configuration panel greatly to make it looks better. The old format that each measure occupys a row of table and each field use a column works fine with uniform configuration fields, but not with various field between measures. For example the first three measures have higher/lower threshold and higherbetter, and the latter three have member percentage, threshold value and frequency percentage, then the higher threshold will aligned in the same column as member percentage, but they just have nothing in common. This may cost users' confusion in both concept and vision. After some tryings, I finally arrange fields of a stream classifier veritically inside a table cell. A screen shot of the new interface is like below:

This is much clear that different configuration fields are following the classifier selection, and do not implicit any common over different measures, or say classifiers. As a result of this change, the configuration panel now lays between the input panel and detail panel because it is too high and narrow to put it above the detail panel now.

Plan for this week
Two priority jobs for this week is issue 113, which provide sortable column in portfolio table. And the issue track for ant sensor.

No comments: