2011-02-17 5 views
1

Ma société utilise TFS 2008 avec le modèle de processus MSF pour Agile. Nous sommes en train de planifier une mise à jour pour TFS 2010. Nous utilisons Scénarios comme un conteneur pour les exigences fonctionnelles avec des tâches de développement liées, des bogues, etc.Résoudre/Fermer le scénario TFS uniquement avec les enfants/liens inactifs

Pour enregistrer l'état d'un scénario comme 'Résolu' ou ' Fermé », je voudrais faire valoir que toute tâche de développement ou bug lié au scénario est également fermé. Avec TFS 2008, il s'agit de liens, dans TFS 2010, nous prévoyons d'utiliser des éléments de travail enfants.

J'ai passé en revue le schéma de définition de type d'élément de travail et la documentation MSDN, mais rien ne me semble être une solution à ce problème.

Cela peut-il être fait? Merci d'avance pour votre aide!

Répondre

0

Je ne pense pas que ce soit possible "out of the box". Je vous recommande d'écrire une requête pour trouver les cas où la "règle" est violée et gérer de cette façon.

Si vous DEVEZ l'automatiser - Vous pouvez utiliser le TFS Eventing Service qui peut appeler un service Web.

Set it up quand une tâche ou un bogue est fermé - interroger la base de données pour le scénario et si toutes les tâches/Bugs sont fermés - utiliser l'API TFS pour faire avancer le statut de résolu ou fermé. Vous pouvez limiter l'utilisateur autorisé à faire progresser le compte sous lequel le Service fonctionne.

0

Ce que vous voulez ne peut pas être fait directement. L'enregistrement d'un élément de travail est ce que l'on appelle une notification (plutôt qu'une décision). Cela signifie que vous ne pouvez effectuer que des tâches de l'API TFS dans un événement une fois l'opération terminée. Vous ne pouvez pas le bloquer.

Cependant, il existe des moyens d'obtenir «l'effet» de ce que vous recherchez. Si vous avez modifié votre modèle pour que votre élément de travail parent (je pense que vous l'appeliez Scenario) ait le contrôle d'état (pas le champ) en lecture seule, cela ferait en sorte que seuls les clients qui n'utilisent pas le Visual Studio normal les contrôles peuvent changer cette valeur. (Cela pourrait être travaillé par vos utilisateurs, mais il faudrait un certain effort pour enfreindre les règles).

Mais il y a un pas de plus. Vous devez obtenir l'élément de travail parent à "Résolu" en quelque sorte. Pour cela, je recommande un outil open source que j'ai écrit appelé TFS Aggregator. (Ou si vous prévoyez de « rouler votre propre » vous pouvez utiliser votre code comme point de départ.)

Vous pouvez trouver TFS Aggregatoron CodePlex ici: http://tfsaggregator.codeplex.com/

Il est un excellent outil pour enrouler des changements et totaux pour les éléments de travail parent. Vous pouvez définir une règle selon laquelle lorsque vos éléments enfants sont tous «terminés», le parent doit être «résolu».


EDIT: Je me rends compte maintenant de votre question que vous avez plus d'un type de travail Article comme un enfant de l'élément parent. TFS Aggregator ne le supporte pas actuellement (mais il pourrait le faire dans le futur). Il a été écrit pour agréger des tâches à Bugs ou PBI. Pourtant, il serait probablement plus facile de modifier le code de ce projet que de recommencer à zéro.

Questions connexes