Chris Nelson wrote:
> I've sometimes been frustrated by Trac milestones not having history so,
> for example, when I reschedule it I have an audit trail of what the
> original date was.  I was struck recently by the idea that MS Project (and
> maybe others) treat milestones as tasks with 0 duration.  A milestone can
> then depend on tasks just as a task can depend on other tasks, etc.  It
> seems to me a lot of simplification comes out of treating milestones as
> special tasks rather than a distinct entity.  I'd be interested in others'
> thoughts about how this affects Trac core and revisions.

It's very interesting that you say that because I realized just now that our 
Trac environment was moving this way.

First, we used milestones, but development on our project is non-linear due to 
deployment for several customers, so the milestone view is not condusive to 
having the same change affect multiple milestones.

Therefore, a first solution was to create tickets for the actual physical 
deployment itself. Then, over time we made these tickets have their own ticket 
type ("deployment"), and then eventually used master tickets plugin to link 
tickets that are blockers for that deployment. Now, we have a wiki page which 
does a ticket query to show you upcoming, open, "deployments". Now I realize 
that basically we replaced the roadmap with the deployment wiki page, and use 
the master tickets plugin field "blocking" as a replacement for "milestone".

Ultimately, the deployment ticket still really does represent the task of 
physical delivery of software to a customer, so it doesn't get closed until 
that happens. The "blockers" functionality makes natural sense since you can't 
deliver software not yet written.

You could follow the same idea, to get history for your "milestone." The 
description and even the blocking/blocked by history would be shown in the 
ticket. To replicate our system:

  * Create ticket type "deployment"
  * Install http://trac-hacks.org/wiki/MasterTicketsPlugin
  * Create "deployment" tickets with descriptions like "AwesomeApp 1.3.5 - May 
20, 2009"
  * Link tasks to deployments and each other using "blocking"/"blocked by" 
fields
  * Use the following wiki for a "milestone" view:
== Ongoing or Upcoming ==

[query:status!=closed&type=deployment Open deployment tickets:]

[[TicketQuery(status!=closed&type=deployment)]]

== Completed ==

[query:status=closed&type=deployment Closed deployment tickets:]

[[TicketQuery(status=closed&type=deployment)]]

Jason

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "Trac 
Users" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/trac-users?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to