Customizing iterations

My goal is to have a template for a process like this (Agile RUP)

Inception
- Iteration1
- Iteration2
- IterationN
Elaboration
- Iteration1
- Iteration2
- IterationM
Construction
- Iteration1
- Iteration2
- IterationX
Transition
- Iteration1
- Iteration2
- IterationY

There can be a variable number of iterations for each phase. The number is not known in advance, but will be added when needed. A number of work items must be added everytime an iteration is added. Is there an event i can subscribe to each time an iteration is added?

Second, iteration2 will be active/open when iteration1 is closed. I dont want to allow users to add workitems and other artifacts to a closed iteration - can I do that? Has an iteration a start and end time?

Is there any documents in the SDK that explains low level details like this? Any pointer is appreciated,

Tia

[955 byte] By [J?rgenThyme] at [2008-1-13]
# 1
This would be a really nice thing to have. Did you ever get any guidance on this?
JasonD.Camp at 2007-9-9 > top of Msdn Tech,Visual Studio Team System,Team Foundation Server - Process Templates...
# 2

No, unfortunately. It ended up to be manuel. How ever in the process template, we changed classification.xml to:

- <Node StructureType="ProjectLifecycle" Name="Iteration" xmlns="">
- <Children>
- <Node StructureType="ProjectLifecycle" Name="Inception">
- <Children>
<Node StructureType="ProjectLifecycle" Name="I1" />
</Children>
</Node>
- <Node StructureType="ProjectLifecycle" Name="Elaboration">
- <Children>
<Node StructureType="ProjectLifecycle" Name="E1" />
</Children>
</Node>
- <Node StructureType="ProjectLifecycle" Name="Construction">
- <Children>
<Node StructureType="ProjectLifecycle" Name="C1" />
</Children>
</Node>
- <Node StructureType="ProjectLifecycle" Name="Transition">
- <Children>
<Node StructureType="ProjectLifecycle" Name="T1" />
</Children>
</Node>
Then the projectleader can add I2, I2 etc.
J?rgenThyme at 2007-9-9 > top of Msdn Tech,Visual Studio Team System,Team Foundation Server - Process Templates...
# 3

You can get an event when an iteration is created by subscribing to the NodeCreatedEvent event. You could then create the default work items you want.

No iterations don't currently have start and end times nor can you set security by them. The only things you can do are:

1) Remove the old one (probably not a great answer)

2) Run a periodic query to see active work items in old ones and move them to the appropriate one (that's what we currently do internally).

Brian

BrianHarry at 2007-9-9 > top of Msdn Tech,Visual Studio Team System,Team Foundation Server - Process Templates...
# 4

Thanks, 2) isnt a bad idea. How do you run periodic queries? Using the Windows Scheduler on the TFS server?

I didnt try NodeCreatedEvent because it looked a little complicated but I'll give it a try.

J?rgenThyme at 2007-9-9 > top of Msdn Tech,Visual Studio Team System,Team Foundation Server - Process Templates...
# 5

Hmm, I'm a bit embarrased to say our project manager just checks it every few days and manually moves any misplaced bugs. You certainly could do it with a scheduled job.

Our next release of our power toys is going to include work item querying and editing support through the tfpt command line utility. That might make this even easier to automate.

Brian

BrianHarry at 2007-9-9 > top of Msdn Tech,Visual Studio Team System,Team Foundation Server - Process Templates...

Visual Studio Team System

Site Classified