Greetings, all,
We're very close to finishing off fundamental improvements to Hackystat's two most basic
metrics: size and time. I wanted to send out this message to review where we are and
what the most critical tasks need doing to get there.
SIZE
Our goal has been to weed out Java-specificity from Hackystat's size machinery, and
enhance Hackystat's data collection facilities to easily gather basic size data on a wide
variety of file types. So far, we've evolved the FileMetric SDT to be
language-independent, and we've finished an initial release of the UH Edition of SCLC, a
multi-language code counter. Finally, we've set up the SCLC XML output so that it can be
sent to Hackystat via our "generic" sensor, hackySensor_XmlData.
The following tasks remain:
* [HACK-545, Hongbing] Start sending SCLC size data to Hackystat as part of the nightly
build.
* [HACK-546, Cedric] Enhance the FileMetric DailyProjectData class to be multi-language
compatible.
* [HACK-535, Cedric] Enhance the Size-based Telemetry reduction functions to be
multi-language compatible.
* [HACK-547, Cedric] Produce multi-language Telemetry Wall reports.
TIME
Our goal has been to move away from the statechange-focussed Activity SDT that is
generated only within editors toward a more generic, "Developer Event" representation
that would be generated not only within Editors but also within other tools as an
additional piece of sensor data. This has two benefits: we can provide a proxy for
developer effort that is closer in magnitude to actual developer effort, and we can use
the DevEvent stream as a primary input source to workflow modeling research. So far,
we've implemented the DevEvent SDT and upgraded many of our current sensors to generate
that event type.
The following tasks remain:
* [HACK-548, Hongbing] Provide a DevEvent DailyAnalysis, which shows the list of
DevEvents received during each five minute interval. Augment this raw analysis with a
"DevTime" abstraction (analogous to the ActiveTime abstraction, but allowing _any_
DevEvent to count, not just statechange). Finally, provide DevTimeFile,
DevTimeWorkspace, and DevTimeProject abstractions so that we can decide which project
should get credit for a given five minute interval based upon DevTime data.
* [HACK-549, Philip] Provide a DevEvent DailyProjectData abstraction, which is similar to
Activity but provides data on DevEvents associated with a given project for the given day.
* [HACK-507, Cedric] Provide DevEvent telemetry reduction functions based upon the
DevEvent DailyProjectData abstraction.
* [HACK-???, Cedric] Produce DevEvent-based Telemetry Wall reports.
SUMMARY
I'd like to crank through these tasks in the next week or so. If you're wondering about
Julie, Austen, and Mike: don't worry, they've got plenty to do on the workflow modeling
side of things!
Cheers,
Philip