App::HWD: The How We Doin'? project tracking tool

petdance on 2005-07-18T16:45:49

I've just released App::HWD 0.01 to CPAN. It's a project tracking tool based on the concepts that I discussed in my YAPC talk, and will be discussing at OSCON.

It's not at all documented right now, but I'm interested to see if anyone's interested.

It's very simple, and meant for being able to be tracked in Subversion. You have a schedule file that has tasks:

-Infrastructure --FOO* ---Add new columns to track by type (#101, 2h) ---Add new columns to record new checkout features (#102, 2h) ---Add FK constraints between FOOHEAD and FOODETAIL (#103, 2h) ---Add FK constraints between FOOHEAD and BARDETAIL (#104, 2h)

--ORDERFORM ---Create migration script to modify table automatically (#105, 2h)

-TW::DB::FooForm --Review (#106, 1h) --Refactor (#107, 1h)

-TW::DB::FooDefault --Review (#108, 1h) --Refactor (#109, 1h)


and then people do work on them (the X says the task is done)

Bruce 7/14 223 1.5 Bruce 7/14 188 2 Bruce 7/15 223 3 x Bruce 7/15 187 1 Bruce 7/15 188 1

Bob 7/11 127 .5 Bob 7/11 108 .75 X Bob 7/11 106 .25 X Bob 7/11 111 .5 X Bob 7/11 127 1.5 X Bob 7/11 110 .25 X Bob 7/11 117 1


and then hwd glomps them together and reports:

TW::Bar 190 14 API Pod Docs 191 4 Review 192 14 Tests 193 21 Code 194 4 Refactor TW::DB::BarItem 195 2 2 X Tests 196 3 3 X Code 197 1 Refactor TW::DB::BarHead 198 4 3.25 X API Pod Docs 199 1 Review 200 2 2 X Tests 201 3 1 Code 202 1 Refactor

I'm going to be adding switches so we can remove completed tasks, and give weekly totals for a velocity chart. If anyone actually wants to write the velocity chart, let me know.


Hmmm.... I'd want to glue the milestones to tests

Adrian on 2005-07-19T19:05:53

I'm interested to see if anyone's interested

Kinda :-)

There's too much manual updating of check boxes for my tastes. I tend to try and get milestones associated with failing tests as quickly as possible, so then all I have to do is track the pass/fail on the acceptance tests.

One of the things that I keep meaning to add to Test::Class (or maybe something at the Test::Builder level) is a way to annotate individual tests / test methods like you can in NUnit or JUnit 4.x so I can more easily reverse engineer my high level progress summaries from the test framework.

Re:Hmmm.... I'd want to glue the milestones to tes

petdance on 2005-07-19T19:18:07

I think you replied to the wrong node.

Re:Hmmm.... I'd want to glue the milestones to tes

Adrian on 2005-07-20T12:44:30

I think you replied to the wrong node.

I don't think I did :-)

As I understand it what App::HWD does is provide a nice framework for a project team to:

  1. Write down tasks/subtasks
  2. Track who is working on what
  3. Track task completion

Now with the way I work I try an embody (1) and (3) in tests. New tasks/subtasks are embodied in failing tests ASAP. Task/subtask completion is shown by the tests passing.

Make vague sense?

Re:Hmmm.... I'd want to glue the milestones to tes

petdance on 2005-07-21T03:32:18

Our tracking is way above the test-level. For us, the manual tracking is key. The amount of time it takes to do updating of a multi-hour task to say "3 hours, done" is not daunting.

flexible formats important

markjugg on 2005-07-21T02:23:22

I'm also kinda interested. It would be important for me that that the data structure formats be flexible: straight Perl or YAML by design.

Our time entries are formatted in XML and/or PostgreSQL, and translating that into a tab-delim format seems like a pain.

We have developed a web-based project tracking tool that we are using in-house, but it is too specific to us to be of general use to others at the moment.